summaryrefslogtreecommitdiff
path: root/SurvivalTest/Assets/Scripts/Test/TestSeperator.cs
blob: d1819c042fae5e4778c620abfe57692386b57984 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestSeperator : MonoBehaviour
{
	HashSet<GameObject> m_Seperated = new HashSet<GameObject>(); 

	private void OnTriggerEnter2D(Collider2D collision)
	{
		GameObject go = collision.gameObject;
		if (go && go.CompareTag("bullet") && !m_Seperated.Contains(go))
		{
			//Debug.Log("seperate");

			TestBeamBullet bullet1 = TestBeamBullet.Instantiate(go.GetComponent<TestBeamBullet>());
			bullet1.direction = Quaternion.Euler(0,0, 30) * bullet1.direction;
			bullet1.enabled = true;
			bullet1.gameObject.SetActive(true);

			TestBeamBullet bullet2 = TestBeamBullet.Instantiate(go.GetComponent<TestBeamBullet>());
			bullet2.direction = Quaternion.Euler(0, 0, -30) * bullet2.direction;
			bullet2.enabled = true;
			bullet2.gameObject.SetActive(true);

			m_Seperated.Add(go);
			m_Seperated.Add(bullet1.gameObject);
			m_Seperated.Add(bullet2.gameObject);
		}
	}

	private void OnTriggerExit2D(Collider2D collision)
	{
		GameObject go = collision.gameObject;
		if (go.CompareTag("bullet") && m_Seperated.Contains(go))
		{
			m_Seperated.Remove(go);
		}
	}

}