Class: GameMachine::Grid

Inherits:
Object
  • Object
show all
Defined in:
lib/game_machine/grid.rb

Class Method Summary collapse

Class Method Details

.configObject



6
7
8
9
10
11
12
# File 'lib/game_machine/grid.rb', line 6

def config
  if @config
    return @config
  else
    @config = java.util.concurrent.ConcurrentHashMap.new
  end
end

.default_gridObject



35
36
37
# File 'lib/game_machine/grid.rb', line 35

def default_grid
  find_or_create('default')
end

.find_or_create(name) ⇒ Object



39
40
41
42
43
# File 'lib/game_machine/grid.rb', line 39

def find_or_create(name)
  grid_config = config.fetch(name)
  JavaLib::Grid.find_or_create(name,grid_config.fetch(:grid_size),
                             grid_config.fetch(:cell_size))
end

.load_from_configObject



18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/game_machine/grid.rb', line 18

def load_from_config
  ['default','local_chat','aoe'].each do |name|
     value = Application.config.grids.send(name.to_sym)
    grid_size,cell_size,update_frequency = value.split(',')
    config[name] = {
      :grid_size => grid_size.to_i,
      :cell_size => cell_size.to_i,
      :update_frequency => update_frequency.to_i
    }
    find_or_create(name)
  end
end

.reset_gridsObject



31
32
33
# File 'lib/game_machine/grid.rb', line 31

def reset_grids
  JavaLib::Grid.reset_grids
end

.update_frequency_for(name) ⇒ Object



14
15
16
# File 'lib/game_machine/grid.rb', line 14

def update_frequency_for(name)
  config.fetch(name)[:update_frequency]
end