diff options
| author | realtradam <[email protected]> | 2022-02-17 07:55:00 -0500 |
|---|---|---|
| committer | realtradam <[email protected]> | 2022-02-17 07:55:00 -0500 |
| commit | fcd25e47987a8fd35a1712201dcc035707fd462c (patch) | |
| tree | 74e5513a0859bc9ed2e0843071c341730a992260 /mrbgem | |
| parent | 99ebe846c1f2aeb63d21eb2a0ddebcf751d28aae (diff) | |
| download | FelECS-fcd25e47987a8fd35a1712201dcc035707fd462c.tar.gz FelECS-fcd25e47987a8fd35a1712201dcc035707fd462c.zip | |
fix code climate and remove deprecated files
Diffstat (limited to 'mrbgem')
| -rw-r--r-- | mrbgem/mrbgem.rake | 2 | ||||
| -rw-r--r-- | mrbgem/mrblib/felecs.rb | 46 |
2 files changed, 25 insertions, 23 deletions
diff --git a/mrbgem/mrbgem.rake b/mrbgem/mrbgem.rake index e998dd1..31e3ff4 100644 --- a/mrbgem/mrbgem.rake +++ b/mrbgem/mrbgem.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + MRuby::Gem::Specification.new('mruby-felecs') do |spec| spec.license = 'MIT' spec.author = '_Tradam' diff --git a/mrbgem/mrblib/felecs.rb b/mrbgem/mrblib/felecs.rb index 77e70cd..9fa6097 100644 --- a/mrbgem/mrblib/felecs.rb +++ b/mrbgem/mrblib/felecs.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 @@ -633,28 +635,28 @@ module FelECS if trigger_types.include? :attr_triggers if (trigger_types - %i[addition_triggers - 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? - - cmp_or_mgr.attr_triggers[attr].delete self - end - self.attr_triggers = {} + 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? + + 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? @@ -665,8 +667,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| @@ -886,8 +888,6 @@ end # frozen_string_literal: true - - # The FelECS namespace where all its functionality resides under. module FelECS class << self |
