class CyberarmEngine::Timer

Public Class Methods

new(interval, looping = true, &block) click to toggle source
# File lib/cyberarm_engine/timer.rb, line 3
def initialize(interval, looping = true, &block)
  @interval = interval
  @looping = looping
  @block = block

  @last_interval = Gosu.milliseconds
  @triggered = false
end

Public Instance Methods

update() click to toggle source
# File lib/cyberarm_engine/timer.rb, line 12
def update
  return if !@looping && @triggered

  if Gosu.milliseconds >= @last_interval + @interval
    @last_interval = Gosu.milliseconds
    @triggered = true

    @block.call if @block
  end
end