diff --git a/Assembly-CSharp.csproj b/Assembly-CSharp.csproj
index 46c9b62..20de6a7 100644
--- a/Assembly-CSharp.csproj
+++ b/Assembly-CSharp.csproj
@@ -54,19 +54,23 @@
+
+
+
+
diff --git a/Assets/IsoTools/Examples/Scenes/Scene01.unity b/Assets/IsoTools/Examples/Scenes/Scene01.unity
index 0c0ffe8..84d25bc 100644
--- a/Assets/IsoTools/Examples/Scenes/Scene01.unity
+++ b/Assets/IsoTools/Examples/Scenes/Scene01.unity
@@ -102,7 +102,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalPosition.z
- value: 20.5
+ value: 18.5
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalRotation.x
@@ -204,7 +204,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 32
+ value: 30
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -290,7 +290,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 7
+ value: 5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -392,7 +392,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 6
+ value: 3.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -466,7 +466,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 11.5
+ value: 9.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -568,7 +568,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 25
+ value: 23
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -650,7 +650,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 26.5
+ value: 24.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -790,7 +790,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 26
+ value: 24
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -868,7 +868,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 25.5
+ value: 23.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -1020,7 +1020,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 21.5
+ value: 19.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -1118,7 +1118,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalPosition.z
- value: 12.5
+ value: 10.5
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalRotation.x
@@ -1220,7 +1220,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 24.5
+ value: 22.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -1322,7 +1322,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 7.5
+ value: 5.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -1473,7 +1473,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 16
+ value: 14
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -1579,7 +1579,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 15.5
+ value: 13.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -1677,7 +1677,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 434702, guid: b89b96b93724d4f7489cd31f4f2fda48, type: 2}
propertyPath: m_LocalPosition.z
- value: 9
+ value: 7
objectReference: {fileID: 0}
- target: {fileID: 434702, guid: b89b96b93724d4f7489cd31f4f2fda48, type: 2}
propertyPath: m_LocalRotation.x
@@ -1735,7 +1735,8 @@ Prefab:
propertyPath: _position.z
value: 0.53
objectReference: {fileID: 0}
- m_RemovedComponents: []
+ m_RemovedComponents:
+ - {fileID: 11492740, guid: b89b96b93724d4f7489cd31f4f2fda48, type: 2}
m_ParentPrefab: {fileID: 100100000, guid: b89b96b93724d4f7489cd31f4f2fda48, type: 2}
m_IsPrefabParent: 0
--- !u!1001 &566324953
@@ -1755,7 +1756,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalPosition.z
- value: 21
+ value: 19
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalRotation.x
@@ -1857,7 +1858,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 23.5
+ value: 21.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -1935,7 +1936,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 14.5
+ value: 12.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -2013,7 +2014,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 5.5
+ value: 3
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -2115,7 +2116,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 31.5
+ value: 29.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -2256,7 +2257,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 28.5
+ value: 26.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -2338,7 +2339,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 5
+ value: 2.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -2416,7 +2417,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 14
+ value: 12
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -2518,7 +2519,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 24
+ value: 22
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -2635,7 +2636,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 23
+ value: 21
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -2839,7 +2840,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 27
+ value: 25
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -2917,7 +2918,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 30.5
+ value: 28.5
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -3023,7 +3024,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 9.5
+ value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -3101,7 +3102,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 30
+ value: 28
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -3207,7 +3208,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 22
+ value: 20
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -3285,7 +3286,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 31
+ value: 29
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -3363,7 +3364,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 18.5
+ value: 16.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -3441,7 +3442,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalPosition.z
- value: 19.5
+ value: 17.5
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalRotation.x
@@ -3543,7 +3544,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 13
+ value: 11
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -3621,7 +3622,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 27.5
+ value: 25.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -3991,7 +3992,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 460460, guid: d0e2c3af2985847769c6fc2e016c0e4d, type: 2}
propertyPath: m_LocalPosition.z
- value: 19
+ value: 17
objectReference: {fileID: 0}
- target: {fileID: 460460, guid: d0e2c3af2985847769c6fc2e016c0e4d, type: 2}
propertyPath: m_LocalRotation.x
@@ -4053,7 +4054,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 460460, guid: d0e2c3af2985847769c6fc2e016c0e4d, type: 2}
propertyPath: m_LocalPosition.z
- value: 1
+ value: 2
objectReference: {fileID: 0}
- target: {fileID: 460460, guid: d0e2c3af2985847769c6fc2e016c0e4d, type: 2}
propertyPath: m_LocalRotation.x
@@ -4115,7 +4116,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 28
+ value: 26
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -4316,7 +4317,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 29.5
+ value: 27.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -4418,7 +4419,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 10
+ value: 8
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -4520,7 +4521,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 22.5
+ value: 20.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -4724,6 +4725,43 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 7
+--- !u!1 &1452576132 stripped
+GameObject:
+ m_PrefabParentObject: {fileID: 121016, guid: b89b96b93724d4f7489cd31f4f2fda48, type: 2}
+ m_PrefabInternal: {fileID: 555992081}
+--- !u!114 &1452576133
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_PrefabParentObject: {fileID: 0}
+ m_PrefabInternal: {fileID: 0}
+ m_GameObject: {fileID: 1452576132}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5528e050e2d53409f9a4f1662625b0bf, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+--- !u!114 &1452576134
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_PrefabParentObject: {fileID: 0}
+ m_PrefabInternal: {fileID: 0}
+ m_GameObject: {fileID: 1452576132}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: c9634e461d1e942de8174ee80528a2d3, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+--- !u!114 &1452576135
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_PrefabParentObject: {fileID: 0}
+ m_PrefabInternal: {fileID: 0}
+ m_GameObject: {fileID: 1452576132}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 1925507eee33e42c2a04a1ae1eaa1ec5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
--- !u!1 &1458715212
GameObject:
m_ObjectHideFlags: 0
@@ -4820,7 +4858,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 29
+ value: 27
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -4902,7 +4940,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 448996, guid: 6b1a35db98b93441a95be70a9ce3a621, type: 2}
propertyPath: m_LocalPosition.z
- value: 32.5
+ value: 30.5
objectReference: {fileID: 0}
- target: {fileID: 448996, guid: 6b1a35db98b93441a95be70a9ce3a621, type: 2}
propertyPath: m_LocalRotation.x
@@ -4960,7 +4998,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalPosition.z
- value: 11
+ value: 9
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalRotation.x
@@ -5062,7 +5100,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 18
+ value: 16
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -5168,7 +5206,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalPosition.z
- value: 20
+ value: 18
objectReference: {fileID: 0}
- target: {fileID: 436798, guid: a60889c79802a4d04a26f078003a2a8d, type: 2}
propertyPath: m_LocalRotation.x
@@ -5270,7 +5308,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 2
+ value: 1
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -5376,7 +5414,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 442828, guid: b8db6246266d74904b7ba9e26a570589, type: 2}
propertyPath: m_LocalPosition.z
- value: 13.5
+ value: 11.5
objectReference: {fileID: 0}
- target: {fileID: 442828, guid: b8db6246266d74904b7ba9e26a570589, type: 2}
propertyPath: m_LocalRotation.x
@@ -5434,7 +5472,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalPosition.z
- value: 17.5
+ value: 15.5
objectReference: {fileID: 0}
- target: {fileID: 482272, guid: c1da36e1b472b4195a4780c9d03c52de, type: 2}
propertyPath: m_LocalRotation.x
@@ -5579,7 +5617,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 15
+ value: 13
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -5657,7 +5695,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalPosition.z
- value: 8.5
+ value: 6.5
objectReference: {fileID: 0}
- target: {fileID: 452232, guid: bdd4e0dbed4fd4ea980de2f39dac8c71, type: 2}
propertyPath: m_LocalRotation.x
@@ -5763,7 +5801,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 17
+ value: 15
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -5845,7 +5883,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 6.5
+ value: 4.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -5919,7 +5957,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 16.5
+ value: 14.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -5997,7 +6035,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 12
+ value: 10
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -6075,7 +6113,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 3
+ value: 1.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -6149,7 +6187,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 10.5
+ value: 8.5
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
@@ -6227,7 +6265,7 @@ Prefab:
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalPosition.z
- value: 8
+ value: 6
objectReference: {fileID: 0}
- target: {fileID: 436736, guid: 30a269be2fc864c9ea00c7a65636d543, type: 2}
propertyPath: m_LocalRotation.x
diff --git a/Assets/IsoTools/Examples/Scripts/IsoEchoListener.cs b/Assets/IsoTools/Examples/Scripts/IsoEchoListener.cs
index 4ba1c9d..a48158a 100644
--- a/Assets/IsoTools/Examples/Scripts/IsoEchoListener.cs
+++ b/Assets/IsoTools/Examples/Scripts/IsoEchoListener.cs
@@ -2,6 +2,7 @@
using System.Collections;
namespace IsoTools.Examples {
+ [RequireComponent(typeof(IsoTriggerListener), typeof(IsoCollisionListener))]
public class IsoEchoListener : MonoBehaviour {
void OnIsoTriggerEnter(IsoCollider iso_collider) {
Debug.LogFormat(
diff --git a/Assets/IsoTools/Scripts/Internal/IsoFakeCollisionListener.cs b/Assets/IsoTools/Scripts/Internal/IsoFakeCollisionListener.cs
new file mode 100644
index 0000000..f396cf1
--- /dev/null
+++ b/Assets/IsoTools/Scripts/Internal/IsoFakeCollisionListener.cs
@@ -0,0 +1,30 @@
+using UnityEngine;
+
+namespace IsoTools.Internal {
+ public class IsoFakeCollisionListener : MonoBehaviour {
+ IsoCollisionListener _isoListener = null;
+
+ public IsoFakeCollisionListener Init(IsoCollisionListener iso_listener) {
+ _isoListener = iso_listener;
+ return this;
+ }
+
+ IsoCollisionListener isoListener {
+ get { return _isoListener; }
+ }
+
+ void OnCollisionEnter(Collision collision) {
+ isoListener.gameObject.SendMessage(
+ "OnIsoCollisionEnter",
+ new IsoCollision(collision),
+ SendMessageOptions.DontRequireReceiver);
+ }
+
+ void OnCollisionExit(Collision collision) {
+ isoListener.gameObject.SendMessage(
+ "OnIsoCollisionExit",
+ new IsoCollision(collision),
+ SendMessageOptions.DontRequireReceiver);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/IsoTools/Scripts/Internal/IsoFakeCollisionListener.cs.meta b/Assets/IsoTools/Scripts/Internal/IsoFakeCollisionListener.cs.meta
new file mode 100644
index 0000000..1830065
--- /dev/null
+++ b/Assets/IsoTools/Scripts/Internal/IsoFakeCollisionListener.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: b3ba702b17e9f4b85aad7b29b1a06eed
+timeCreated: 1461097028
+licenseType: Free
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/IsoTools/Scripts/Internal/IsoFakeObject.cs b/Assets/IsoTools/Scripts/Internal/IsoFakeObject.cs
index 747b4a5..1738cc5 100644
--- a/Assets/IsoTools/Scripts/Internal/IsoFakeObject.cs
+++ b/Assets/IsoTools/Scripts/Internal/IsoFakeObject.cs
@@ -31,33 +31,5 @@ namespace IsoTools.Internal {
_lastPosition = isoObject.position = transform.position;
}
}
-
- void OnTriggerEnter(Collider collider) {
- isoObject.gameObject.SendMessage(
- "OnIsoTriggerEnter",
- IsoUtils.IsoConvertCollider(collider),
- SendMessageOptions.DontRequireReceiver);
- }
-
- void OnTriggerExit(Collider collider) {
- isoObject.gameObject.SendMessage(
- "OnIsoTriggerExit",
- IsoUtils.IsoConvertCollider(collider),
- SendMessageOptions.DontRequireReceiver);
- }
-
- void OnCollisionEnter(Collision collision) {
- isoObject.gameObject.SendMessage(
- "OnIsoCollisionEnter",
- new IsoCollision(collision),
- SendMessageOptions.DontRequireReceiver);
- }
-
- void OnCollisionExit(Collision collision) {
- isoObject.gameObject.SendMessage(
- "OnIsoCollisionExit",
- new IsoCollision(collision),
- SendMessageOptions.DontRequireReceiver);
- }
}
}
diff --git a/Assets/IsoTools/Scripts/Internal/IsoFakeTriggerListener.cs b/Assets/IsoTools/Scripts/Internal/IsoFakeTriggerListener.cs
new file mode 100644
index 0000000..06b28a5
--- /dev/null
+++ b/Assets/IsoTools/Scripts/Internal/IsoFakeTriggerListener.cs
@@ -0,0 +1,30 @@
+using UnityEngine;
+
+namespace IsoTools.Internal {
+ public class IsoFakeTriggerListener : MonoBehaviour {
+ IsoTriggerListener _isoListener = null;
+
+ public IsoFakeTriggerListener Init(IsoTriggerListener iso_listener) {
+ _isoListener = iso_listener;
+ return this;
+ }
+
+ IsoTriggerListener isoListener {
+ get { return _isoListener; }
+ }
+
+ void OnTriggerEnter(Collider collider) {
+ isoListener.gameObject.SendMessage(
+ "OnIsoTriggerEnter",
+ IsoUtils.IsoConvertCollider(collider),
+ SendMessageOptions.DontRequireReceiver);
+ }
+
+ void OnTriggerExit(Collider collider) {
+ isoListener.gameObject.SendMessage(
+ "OnIsoTriggerExit",
+ IsoUtils.IsoConvertCollider(collider),
+ SendMessageOptions.DontRequireReceiver);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/IsoTools/Scripts/Internal/IsoFakeTriggerListener.cs.meta b/Assets/IsoTools/Scripts/Internal/IsoFakeTriggerListener.cs.meta
new file mode 100644
index 0000000..b7fbc22
--- /dev/null
+++ b/Assets/IsoTools/Scripts/Internal/IsoFakeTriggerListener.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 85a92cf713a8c4da68454e88e803bbce
+timeCreated: 1461097013
+licenseType: Free
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/IsoTools/Scripts/Internal/IsoPhysicHelper.cs b/Assets/IsoTools/Scripts/Internal/IsoPhysicHelper.cs
index 4549ac5..5e027e5 100644
--- a/Assets/IsoTools/Scripts/Internal/IsoPhysicHelper.cs
+++ b/Assets/IsoTools/Scripts/Internal/IsoPhysicHelper.cs
@@ -6,18 +6,23 @@ namespace IsoTools.Internal {
[RequireComponent(typeof(IsoObject))]
public class IsoPhysicHelper : MonoBehaviour {
- static List _tmpColliders = new List(7);
- static List _tmpRigidbodies = new List(7);
+ static List _tmpColliders = new List(7);
+ static List _tmpRigidbodies = new List(7);
+ static List _tmpTriggerListeners = new List(7);
+ static List _tmpCollisionListeners = new List(7);
GameObject _isoFakeObject = null;
public GameObject isoFakeObject {
get { return _isoFakeObject; }
}
+ //TODO: fix copy-paste
public void DestroyIfUnnecessary(Component except) {
var unnecessary = true;
- GetComponents(_tmpColliders);
- GetComponents(_tmpRigidbodies);
+ GetComponents (_tmpColliders);
+ GetComponents (_tmpRigidbodies);
+ GetComponents (_tmpTriggerListeners);
+ GetComponents(_tmpCollisionListeners);
if ( unnecessary ) {
for ( int i = 0, e = _tmpColliders.Count; i < e; ++i ) {
if ( _tmpColliders[i] != except ) {
@@ -34,8 +39,26 @@ namespace IsoTools.Internal {
}
}
}
+ if ( unnecessary ) {
+ for ( int i = 0, e = _tmpTriggerListeners.Count; i < e; ++i ) {
+ if ( _tmpTriggerListeners[i] != except ) {
+ unnecessary = false;
+ break;
+ }
+ }
+ }
+ if ( unnecessary ) {
+ for ( int i = 0, e = _tmpCollisionListeners.Count; i < e; ++i ) {
+ if ( _tmpCollisionListeners[i] != except ) {
+ unnecessary = false;
+ break;
+ }
+ }
+ }
_tmpColliders.Clear();
_tmpRigidbodies.Clear();
+ _tmpTriggerListeners.Clear();
+ _tmpCollisionListeners.Clear();
if ( unnecessary ) {
Destroy(this);
}
diff --git a/Assets/IsoTools/Scripts/IsoCollisionListener.cs b/Assets/IsoTools/Scripts/IsoCollisionListener.cs
new file mode 100644
index 0000000..96c0613
--- /dev/null
+++ b/Assets/IsoTools/Scripts/IsoCollisionListener.cs
@@ -0,0 +1,30 @@
+using UnityEngine;
+using IsoTools.Internal;
+
+namespace IsoTools {
+ [DisallowMultipleComponent]
+ [RequireComponent(typeof(IsoObject))]
+ public class IsoCollisionListener : MonoBehaviour {
+
+ IsoFakeCollisionListener _fakeListener;
+
+ GameObject fakeObject {
+ get { return physicHelper.isoFakeObject; }
+ }
+
+ IsoPhysicHelper physicHelper {
+ get { return IsoUtils.GetOrCreateComponent(gameObject); }
+ }
+
+ void Awake() {
+ _fakeListener = fakeObject.AddComponent().Init(this);
+ }
+
+ void OnDestroy() {
+ if ( _fakeListener ) {
+ Destroy(_fakeListener);
+ }
+ physicHelper.DestroyIfUnnecessary(this);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/IsoTools/Scripts/IsoCollisionListener.cs.meta b/Assets/IsoTools/Scripts/IsoCollisionListener.cs.meta
new file mode 100644
index 0000000..dd038e2
--- /dev/null
+++ b/Assets/IsoTools/Scripts/IsoCollisionListener.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: c9634e461d1e942de8174ee80528a2d3
+timeCreated: 1461096905
+licenseType: Free
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/IsoTools/Scripts/IsoTriggerListener.cs b/Assets/IsoTools/Scripts/IsoTriggerListener.cs
new file mode 100644
index 0000000..184f2a3
--- /dev/null
+++ b/Assets/IsoTools/Scripts/IsoTriggerListener.cs
@@ -0,0 +1,30 @@
+using UnityEngine;
+using IsoTools.Internal;
+
+namespace IsoTools {
+ [DisallowMultipleComponent]
+ [RequireComponent(typeof(IsoObject))]
+ public class IsoTriggerListener : MonoBehaviour {
+
+ IsoFakeTriggerListener _fakeListener;
+
+ GameObject fakeObject {
+ get { return physicHelper.isoFakeObject; }
+ }
+
+ IsoPhysicHelper physicHelper {
+ get { return IsoUtils.GetOrCreateComponent(gameObject); }
+ }
+
+ void Awake() {
+ _fakeListener = fakeObject.AddComponent().Init(this);
+ }
+
+ void OnDestroy() {
+ if ( _fakeListener ) {
+ Destroy(_fakeListener);
+ }
+ physicHelper.DestroyIfUnnecessary(this);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/IsoTools/Scripts/IsoTriggerListener.cs.meta b/Assets/IsoTools/Scripts/IsoTriggerListener.cs.meta
new file mode 100644
index 0000000..2754ae9
--- /dev/null
+++ b/Assets/IsoTools/Scripts/IsoTriggerListener.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 1925507eee33e42c2a04a1ae1eaa1ec5
+timeCreated: 1461096892
+licenseType: Free
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: