class Asteroids::GameObject

Public Class Methods

new(object_pool) click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 4
def initialize(object_pool)
  @components = []
  @object_pool = object_pool
  @object_pool.objects << self
end

Public Instance Methods

components() click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 10
def components
  @components
end
draw() click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 18
def draw
  @components.map(&:draw)
end
mark_for_removal() click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 26
def mark_for_removal
  @removable = true
end
removable?() click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 22
def removable?
  @removable
end
update() click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 14
def update
  @components.map(&:update)
end

Protected Instance Methods

object_pool() click to toggle source
# File lib/asteroids/componenets/game_object.rb, line 32
def object_pool
  @object_pool
end