diff --git a/Runtime/Collider/ColliderTriggerAreaBase.cs b/Runtime/Collider/ColliderTriggerAreaBase.cs index fc3700a..ab0a85f 100644 --- a/Runtime/Collider/ColliderTriggerAreaBase.cs +++ b/Runtime/Collider/ColliderTriggerAreaBase.cs @@ -21,7 +21,7 @@ namespace Syntriax.Modules.Trigger { int triggerCount = TriggerCount; - if (triggerCount != previousTriggerCount) + if (!IsArrayAndListIdentical(triggerCount)) { ColliderList.Clear(); for (int i = 0; i < triggerCount; i++) @@ -33,5 +33,17 @@ namespace Syntriax.Modules.Trigger previousTriggerCount = triggerCount; return triggerCount > 0; } + + private bool IsArrayAndListIdentical(int triggerCount) + { + if (previousTriggerCount != triggerCount) + return false; + + for (int i = 0; i < triggerCount; i++) + if (!ColliderList.Contains(nonAllocResults[i])) + return false; + + return true; + } } } diff --git a/package.json b/package.json index c2febd6..d5f3b6e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "com.syntriax.trigger", - "version": "0.5.0", + "version": "0.5.1", "displayName": "Trigger Module", "unity": "2019.1", "documentationUrl": "https://git.syntriax.com/Syntriax/Trigger.git",