summaryrefslogtreecommitdiffhomepage
path: root/lib
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2022-02-17 07:55:00 -0500
committerrealtradam <[email protected]>2022-02-17 07:55:00 -0500
commitfcd25e47987a8fd35a1712201dcc035707fd462c (patch)
tree74e5513a0859bc9ed2e0843071c341730a992260 /lib
parent99ebe846c1f2aeb63d21eb2a0ddebcf751d28aae (diff)
downloadFelECS-fcd25e47987a8fd35a1712201dcc035707fd462c.tar.gz
FelECS-fcd25e47987a8fd35a1712201dcc035707fd462c.zip
fix code climate and remove deprecated files
Diffstat (limited to 'lib')
-rw-r--r--lib/felecs/entity_manager.rb2
-rw-r--r--lib/felecs/system_manager.rb38
2 files changed, 21 insertions, 19 deletions
diff --git a/lib/felecs/entity_manager.rb b/lib/felecs/entity_manager.rb
index c1f8cd8..3aab1db 100644
--- a/lib/felecs/entity_manager.rb
+++ b/lib/felecs/entity_manager.rb
@@ -106,6 +106,7 @@ module FelECS
# @return [Nil]
def group(*component_managers, &block)
return nil if component_managers.empty?
+
if component_managers.length == 1
component_managers.first.each do |cmp|
block.call(cmp, cmp.entity)
@@ -116,6 +117,7 @@ module FelECS
keep = true
component_managers.drop(1).each do |mgr|
next unless ent.components[mgr].nil?
+
keep = false
break
end
diff --git a/lib/felecs/system_manager.rb b/lib/felecs/system_manager.rb
index 6cd260b..2d56336 100644
--- a/lib/felecs/system_manager.rb
+++ b/lib/felecs/system_manager.rb
@@ -159,28 +159,28 @@ module FelECS
if trigger_types.include? :attr_triggers
if (trigger_types - %i[addition_triggers
- removal_triggers
- attr_triggers]).empty?
+ removal_triggers
+ attr_triggers]).empty?
- if component_or_manager.nil?
- # remove all attrs
- attr_triggers.each do |cmp_or_mgr, attrs|
- attrs.each do |attr|
- next if cmp_or_mgr.attr_triggers[attr].nil?
+ if component_or_manager.nil?
+ # remove all attrs
+ attr_triggers.each do |cmp_or_mgr, attrs|
+ attrs.each do |attr|
+ next if cmp_or_mgr.attr_triggers[attr].nil?
- cmp_or_mgr.attr_triggers[attr].delete self
- end
- self.attr_triggers = {}
+ cmp_or_mgr.attr_triggers[attr].delete self
end
- else
- # remove attrs relevant to comp_or_man
- unless attr_triggers[component_or_manager].nil?
- attr_triggers[component_or_manager].each do |attr|
- component_or_manager.attr_triggers[attr].delete self
- end
- attr_triggers[component_or_manager] = []
+ self.attr_triggers = {}
+ end
+ else
+ # remove attrs relevant to comp_or_man
+ unless attr_triggers[component_or_manager].nil?
+ attr_triggers[component_or_manager].each do |attr|
+ component_or_manager.attr_triggers[attr].delete self
end
+ attr_triggers[component_or_manager] = []
end
+ end
elsif component_or_manager.nil?
@@ -191,8 +191,8 @@ module FelECS
end
end
attr_triggers.delete(trigger_types - %i[addition_triggers
- removal_triggers
- attr_triggers])
+ removal_triggers
+ attr_triggers])
else
# remove attr from component_or_manager
(trigger_types - %i[addition_triggers removal_triggers attr_triggers]).each do |attr|