summaryrefslogtreecommitdiff
path: root/SurvivalTest/Assets/Scripts/Test/TestMirror.cs
diff options
context:
space:
mode:
Diffstat (limited to 'SurvivalTest/Assets/Scripts/Test/TestMirror.cs')
-rw-r--r--SurvivalTest/Assets/Scripts/Test/TestMirror.cs30
1 files changed, 30 insertions, 0 deletions
diff --git a/SurvivalTest/Assets/Scripts/Test/TestMirror.cs b/SurvivalTest/Assets/Scripts/Test/TestMirror.cs
new file mode 100644
index 0000000..832c785
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Test/TestMirror.cs
@@ -0,0 +1,30 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class TestMirror : MonoBehaviour
+{
+ HashSet<GameObject> m_Mirrored = new HashSet<GameObject>();
+
+ private void OnTriggerEnter2D(Collider2D collision)
+ {
+ GameObject go = collision.gameObject;
+ if (go && go.CompareTag("bullet") && !m_Mirrored.Contains(go))
+ {
+ //Debug.Log("mirror");
+
+ go.GetComponent<TestBeamBullet>().direction.x = -go.GetComponent<TestBeamBullet>().direction.x;
+
+ m_Mirrored.Add(go);
+ }
+ }
+
+ private void OnTriggerExit2D(Collider2D collision)
+ {
+ GameObject go = collision.gameObject;
+ if (go && go.CompareTag("bullet") && m_Mirrored.Contains(go))
+ {
+ m_Mirrored.Remove(go);
+ }
+ }
+}