Skip to content

antillas21/game_of_life

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game of Life

This is a sample implementation of Conway's Game of Life in Ruby. Usage is simple, clone this repo and open a Ruby console (via IRB or Pry)

# load project main entry
load 'game_of_life.rb'

# instantiate and configure a world
world = World.new
world.config.width = 6
world.config.height = 6

# setup cell coordinates to start as living cells
cells = [
  { x: 1, y: 2 },
  { x: 2, y: 2 },
  { x: 1, y: 3 },
  { x: 3, y: 2 },
  { x: 1, y: 4 },
  { x: 4, y: 2 },
  { x: 4, y: 1 },
  { x: 0, y: 2 },
  { x: 1, y: 0 },
  { x: 2, y: 1 },
  { x: 0, y: 4 },
  { x: 4, y: 0 },
  { x: 3, y: 0 },
  { x: 2, y: 4 },
  { x: 3, y: 3 }
]

world.setup(cells: cells)

# inspect cells are really living
world.living_cells.map(&:coordinates)

# play and inspect the world after as many iterations as you want
world.play(iterations: 5)
world.living_cells.map(&:coordinates)
# they should not be the ones orginally set as living

About

Game of Life Sample

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages