Game Of Life Effect¶

Copyright 2023 Ethan Christensen

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

class bruhanimate.bruheffect.game_of_life_effect.GameOfLifeEffect(buffer: Buffer, background: str, decay: bool = False, color: bool = False, color_type: str = None, scale: str = 'random')[source]¶

Bases: BaseEffect

Effect ot simulate Conway’s Game of Life

__init__(buffer: Buffer, background: str, decay: bool = False, color: bool = False, color_type: str = None, scale: str = 'random')[source]¶

Initialize the Game of Life effect with a buffer and background color.

Parameters:
  • buffer (Buffer) – Effect buffer to push updates to.

  • background (str) – Character of string to use as the background.

  • decay (bool, optional) – Whether or not cells should decay. Defaults to False.

  • color (bool, optional) – Whether or not the decay should use color. Defaults to False.

  • color_type (str, optional) – Type of color scale to use. Defaults to None.

  • scale (str, optional) – Type of gray scale to use. Defaults to “random”.

_set_attributes()[source]¶

Function to set the attributes of the effect.

update_decay(decay: bool, color_type: str = 'GREYSCALE', scale: str = 'random')[source]¶

Function to enable the decay and select the color map.

Parameters:
  • decay (bool) – Whether or not the cell should decay

  • color_type (str, optional) – Type of color to use. Defaults to “GREYSCALE”.

  • scale (str, optional) – Type of scale to use. Defaults to “random”.

update_rules(life_rule: list[int], death_rule: list[int])[source]¶

Function to update the rules for life and death.

Parameters:
  • life_rule (list[int]) – Lower and upper bound for number of neighbors that lead to life.

  • death_rule (list[int]) – Lower and upper bound for number of neighbors that lead to death.

render_frame(frame_number: int)[source]¶

Function to render the next frame of the GOL effect.

Parameters:

frame_number (int) – The current frame number to render.