Removed entity management from Game, refactored Map to MapLoader and added Map to manage world

This commit is contained in:
2019-09-27 14:30:23 -05:00
parent 1bfc6e6929
commit b091a489af
20 changed files with 260 additions and 239 deletions

View File

@@ -4,15 +4,15 @@ class IMICFPS
attr_reader :opengl_renderer, :bounding_box_renderer
def initialize(game_state:)
@game_state = game_state
def initialize(map:)
@map = map
@bounding_box_renderer = BoundingBoxRenderer.new(game_state: game_state)
@bounding_box_renderer = BoundingBoxRenderer.new(map: map)
@opengl_renderer = OpenGLRenderer.new
end
def draw
@game_state.entities.each do |object|
@map.entities.each do |object|
if object.visible && object.renderable
# Render bounding boxes before transformation is applied
@bounding_box_renderer.create_bounding_box(object, object.model.bounding_box, object.debug_color, object.object_id) if $debug.get(:boundingboxes)