class GameEcs::EntityStore::EntityQueryResult

Attributes

id[R]

Public Class Methods

new(id, components, queried_components) click to toggle source
# File lib/game_ecs/entity_store.rb, line 332
def initialize(id, components, queried_components)
  @id = id
  @components = components
  @queried_components = queried_components
end

Public Instance Methods

components() click to toggle source
# File lib/game_ecs/entity_store.rb, line 347
def components
  @comp_cache ||= comp_cache
end
get(klass) click to toggle source
# File lib/game_ecs/entity_store.rb, line 338
def get(klass)
  @components[klass]
end
update_component(component) click to toggle source
# File lib/game_ecs/entity_store.rb, line 342
def update_component(component)
  @components[component.class] = component
  @comp_cache = comp_cache
end

Private Instance Methods

comp_cache() click to toggle source
# File lib/game_ecs/entity_store.rb, line 352
def comp_cache
  @queried_components.map{|qc| @components[qc]}
end