Class: Model::BoardSetup

Inherits:
Object
  • Object
show all
Defined in:
lib/tic_tac_toe/model/board_setup.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args) ⇒ BoardSetup

Returns a new instance of BoardSetup.



5
6
7
8
9
10
11
12
13
# File 'lib/tic_tac_toe/model/board_setup.rb', line 5

def initialize(args)
  @board_klass = args[:board_klass]
  @tile_collection_klass = args[:tile_collection_klass]
  @team_collection_klass = args[:team_collection_klass]
  @game_state = args[:game_state]
  @tile_klass = args[:tile_klass]
  @dimensions = args[:dimensions]
  @teams = []
end

Instance Attribute Details

#teamsObject

Returns the value of attribute teams.



3
4
5
# File 'lib/tic_tac_toe/model/board_setup.rb', line 3

def teams
  @teams
end

Instance Method Details

#create_boardObject



15
16
17
18
19
20
21
# File 'lib/tic_tac_toe/model/board_setup.rb', line 15

def create_board
  tiles = create_tiles

  @board_klass.new(tile_collection: @tile_collection_klass.new(tiles, @dimensions),
                   team_collection: @team_collection_klass.new(@teams),
                   game_state: @game_state.new)
end