diff options
| author | realtradam <[email protected]> | 2022-01-28 16:41:23 -0500 |
|---|---|---|
| committer | realtradam <[email protected]> | 2022-01-28 16:41:23 -0500 |
| commit | bf6769c6b1658c5f6a7b02fc8fc0400fc4f61dec (patch) | |
| tree | 774e8174ead6b7d726a3b5342fe457faebaa3449 /mrbgem | |
| parent | eb84d916fb2b14db386d9f1f69fe0f310a5f1d8a (diff) | |
| download | FelECS-bf6769c6b1658c5f6a7b02fc8fc0400fc4f61dec.tar.gz FelECS-bf6769c6b1658c5f6a7b02fc8fc0400fc4f61dec.zip | |
fix order of attr triggers
Diffstat (limited to 'mrbgem')
| -rw-r--r-- | mrbgem/mrblib/felecs.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/mrbgem/mrblib/felecs.rb b/mrbgem/mrblib/felecs.rb index acc7f29..56726b2 100644 --- a/mrbgem/mrblib/felecs.rb +++ b/mrbgem/mrblib/felecs.rb @@ -197,8 +197,10 @@ module FelECS attrs_with_defaults[attr] = _default.dup FelECS::Components.const_get(component_name).attr_reader attr FelECS::Components.const_get(component_name).define_method("#{attr}=") do |value| - attr_changed_trigger_systems(attr) unless value.equal? send(attr) - instance_variable_set("@#{attr}", value) + unless value.equal? send(attr) + instance_variable_set("@#{attr}", value) + attr_changed_trigger_systems(attr) + end end end FelECS::Components.const_get(component_name).define_method(:set_defaults) do |
