Class: Level

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

Direct Known Subclasses

HopLevel, MessageLevel

Instance Method Summary collapse

Constructor Details

#initializeLevel

Returns a new instance of Level.



2
3
4
5
6
7
# File 'lib/rubyhop/level.rb', line 2

def initialize
  # Add callback holders
  @continue_callbacks = []
  @quit_callbacks = []
  @fail_callbacks = []
end

Instance Method Details

#continue!Object



21
22
23
# File 'lib/rubyhop/level.rb', line 21

def continue!
  @continue_callbacks.each { |c| c.call }
end

#drawObject



41
42
43
# File 'lib/rubyhop/level.rb', line 41

def draw
  raise "Must override"
end

#fail!Object



29
30
31
# File 'lib/rubyhop/level.rb', line 29

def fail!
  @fail_callbacks.each { |c| c.call }
end

#on_continue(&block) ⇒ Object



9
10
11
# File 'lib/rubyhop/level.rb', line 9

def on_continue &block
  @continue_callbacks << block
end

#on_fail(&block) ⇒ Object



17
18
19
# File 'lib/rubyhop/level.rb', line 17

def on_fail &block
  @fail_callbacks << block
end

#on_quit(&block) ⇒ Object



13
14
15
# File 'lib/rubyhop/level.rb', line 13

def on_quit &block
  @quit_callbacks << block
end

#quit!Object



25
26
27
# File 'lib/rubyhop/level.rb', line 25

def quit!
  @quit_callbacks.each { |c| c.call }
end

#start!Object



33
34
35
# File 'lib/rubyhop/level.rb', line 33

def start!
  raise "Must override"
end

#updateObject



37
38
39
# File 'lib/rubyhop/level.rb', line 37

def update
  raise "Must override"
end