From bf6769c6b1658c5f6a7b02fc8fc0400fc4f61dec Mon Sep 17 00:00:00 2001 From: realtradam Date: Fri, 28 Jan 2022 16:41:23 -0500 Subject: fix order of attr triggers --- mrbgem/mrblib/felecs.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'mrbgem/mrblib/felecs.rb') 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 -- cgit v1.2.3