Game Development Reference
In-Depth Information
attr_accessor :fire_rate_modifier
# ...
def can_shoot?
Gosu . milliseconds - ( @last_shot || 0 ) >
( SHOOT_DELAY / @fire_rate_modifier )
end
# ...
def reset_modifiers
@fire_rate_modifier = 1
end
# ...
end
Tank#reset_modifier should be called when respawning, since we want tanks to
lose their powerups when they die. It can be done in TankHealth#after_death :
class TankHealth < Health
# ...
def after_death
object . reset_modifiers
# ...
end
end
Implementing Tank Speed Boost
Tank speed boost is very similar to fire rate powerup:
11-powerups/entities/powerups/tank_speed_powerup.rb
1 class TankSpeedPowerup < Powerup
2 def pickup (object)
3 if object . class == Tank
4 if object . speed_modifier < 1.5
5 object . speed_modifier += 0.10
6 end
7 true
8 end
9 end
10
11 def graphics
12 :wingman
13 end
14 end
Search WWH ::




Custom Search