Class: Gosu::AnimationBlock
- Inherits:
-
Object
- Object
- Gosu::AnimationBlock
- Defined in:
- lib/gosu/spritesheet/animation_block.rb
Instance Attribute Summary collapse
-
#duration ⇒ Object
readonly
Returns the value of attribute duration.
-
#duration_in_millisecs ⇒ Object
readonly
Returns the value of attribute duration_in_millisecs.
-
#frames ⇒ Object
readonly
Returns the value of attribute frames.
Instance Method Summary collapse
-
#initialize(frames, duration) ⇒ AnimationBlock
constructor
A new instance of AnimationBlock.
-
#step ⇒ Object
Calculates the next animation frame.
- #stop ⇒ Object
Constructor Details
#initialize(frames, duration) ⇒ AnimationBlock
Returns a new instance of AnimationBlock.
7 8 9 10 11 |
# File 'lib/gosu/spritesheet/animation_block.rb', line 7 def initialize(frames, duration) @frames = frames @duration = duration @duration_in_millisecs = @duration * 1000 end |
Instance Attribute Details
#duration ⇒ Object (readonly)
Returns the value of attribute duration.
5 6 7 |
# File 'lib/gosu/spritesheet/animation_block.rb', line 5 def duration @duration end |
#duration_in_millisecs ⇒ Object (readonly)
Returns the value of attribute duration_in_millisecs.
5 6 7 |
# File 'lib/gosu/spritesheet/animation_block.rb', line 5 def duration_in_millisecs @duration_in_millisecs end |
#frames ⇒ Object (readonly)
Returns the value of attribute frames.
5 6 7 |
# File 'lib/gosu/spritesheet/animation_block.rb', line 5 def frames @frames end |
Instance Method Details
#step ⇒ Object
Calculates the next animation frame.
16 17 18 |
# File 'lib/gosu/spritesheet/animation_block.rb', line 16 def step @frames[Gosu::milliseconds / @duration_in_millisecs % @frames.size] end |
#stop ⇒ Object
20 21 22 23 |
# File 'lib/gosu/spritesheet/animation_block.rb', line 20 def stop # Just gets back to the first frame. @frames[0] end |