Class: Game

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

Instance Method Summary collapse

Constructor Details

#initializeGame

Returns a new instance of Game.



7
8
9
# File 'lib/rofltim.rb', line 7

def initialize
  reset
end

Instance Method Details

#on_exitObject



38
39
40
# File 'lib/rofltim.rb', line 38

def on_exit
  @screen.on_exit
end

#render(start_time) ⇒ Object



28
29
30
31
32
33
34
35
36
37
# File 'lib/rofltim.rb', line 28

def render start_time
  @world.buildings.each do |building|
    @screen.draw(building)
  end
  @screen.draw(@world.player)
  @world.misc.each do |object|
    @screen.draw(object)
  end
  @screen.render start_time
end

#resetObject



10
11
12
13
14
# File 'lib/rofltim.rb', line 10

def reset
  @run = true
  @world = World.new(SCREEN_WIDTH)
  @screen = Screen.new(SCREEN_WIDTH, SCREEN_HEIGHT, @world)
end

#runObject



15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/rofltim.rb', line 15

def run
  Signal.trap(:INT) do
    @run = false
  end
  while @run
    start_time = Time.new.to_f
    unless @world.tick
      reset
    end
    render start_time
  end
  on_exit
end