OnTriggerEnter









How do I use On Trigger Enter
Below are practical examples compiled from projects for learning and reference purposes

Featured Snippets


File name: SideWalls.cs Copy
7  void OnTriggerEnter2D(Collider2D hitInfo) {
8   if (hitInfo.name == "Ball")
9   {
10    string wallName = transform.name;
11    GameManager.Score (wallName);
12    hitInfo.gameObject.SendMessage ("RestartGame", 1, SendMessageOptions.RequireReceiver);
13   }
14  }
File name: OnCollideSwitchTeam.cs Copy
9     public void OnTriggerEnter(Collider other)
10     {
11         // it's ridiculously easy to switch teams. you only have to make sure you do it for your own characters
12         // (this trigger is called on all clients, when a user's character enters the trigger...)
13
14         // find a PhotonView and check if the character "isMine". Only then, set this client's player-team.
15         PhotonView otherPv = other.GetComponent();
16         if (otherPv != null && otherPv.isMine)
17         {
18             PhotonNetwork.player.SetTeam(this.TeamToSwitchTo);
19         }
20     }
File name: PickupTriggerForward.cs Copy
14     public void OnTriggerEnter(Collider other)
15     {
16         PickupItem parentPickupItem = this.transform.parent.GetComponent();
17         if (parentPickupItem != null)
18         {
19            parentPickupItem.OnTriggerEnter(other);
20         }
21
22         // by enabling this log, you can see that more triggers are forwarded than necessary.
23         // collisions with any collider will trigger, which is not perfect but OK in the demo.
24         //Debug.Log("Triggered. Called parent: " + ((parentPickupItem != null)));
25     }
File name: PickupItem.cs Copy
59     public void OnTriggerEnter(Collider other)
60     {
61         // we only call Pickup() if "our" character collides with this PickupItem.
62         // note: if you "position" remote characters by setting their translation, triggers won't be hit.
63
64         PhotonView otherpv = other.GetComponent();
65         if (this.PickupOnTrigger && otherpv != null && otherpv.isMine)
66         {
67             //Debug.Log("OnTriggerEnter() calls Pickup().");
68             this.Pickup();
69         }
70     }
File name: PickupItemSimple.cs Copy
14     public void OnTriggerEnter(Collider other)
15     {
16         // we only call Pickup() if "our" character collides with this PickupItem.
17         // note: if you "position" remote characters by setting their translation, triggers won't be hit.
18
19         PhotonView otherpv = other.GetComponent();
20         if (this.PickupOnCollide && otherpv != null && otherpv.isMine)
21         {
22             //Debug.Log("OnTriggerEnter() calls Pickup().");
23             this.Pickup();
24         }
25     }
File name: GroundDestroyer.cs Copy
12  void OnTriggerEnter2D(Collider2D target){
13   if(target.tag == "Grounded") {
14
15    target.gameObject.SetActive (false);
16   }
17  }
File name: PlayerMoveScript.cs Copy
111  void OnTriggerEnter2D(Collider2D coin) {
112   if(coin.tag == "Coin") {
113    audioSource.PlayOneShot (coinClip);
114    coinScore++;
115    FindObjectOfType ().SetCoinScore (coinScore);
116    coin.gameObject.SetActive (false);
117   }
118  }
File name: BossBullet.cs Copy
17  void OnTriggerEnter2D(Collider2D collider){
18   if(collider.CompareTag("Player")){
19    collider.transform.GetComponent ().PlayerDied ();
20   }
21  }
File name: GameBoundary.cs Copy
17  void OnTriggerEnter2D(Collider2D collider){
18   if(collider.CompareTag("Player Bullet") || collider.CompareTag("Enemy") || collider.CompareTag("Coin") || collider.CompareTag("Boss Bullet")){
19    Destroy (collider.gameObject);
20   }
21
22  }
File name: EnemyController.cs Copy
29  void OnTriggerEnter2D(Collider2D collider){
30   if(collider.CompareTag("Player")){
31    collider.transform.GetComponent ().PlayerDied ();
32   }
33  }

OnTriggerEnter 231 lượt xem

Gõ tìm kiếm nhanh...