using System.Collections; using System.Collections.Generic; using UnityEngine; public class TestSeperator : MonoBehaviour { HashSet m_Seperated = new HashSet(); 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()); bullet1.direction = Quaternion.Euler(0,0, 30) * bullet1.direction; bullet1.enabled = true; bullet1.gameObject.SetActive(true); TestBeamBullet bullet2 = TestBeamBullet.Instantiate(go.GetComponent()); 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); } } }