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);
}
}
}
|