giganciprogramowania

ShieldScript l16

Jun 16th, 2023
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using UnityEngine;
  2.  
  3. public class ShieldScript : MonoBehaviour
  4. {
  5.    
  6.     int life = 3; //ilość trafień
  7.     Renderer rend; //połączenie z komponentem Renderer
  8.  
  9.     void Start()
  10.     {
  11.         rend = GetComponent<Renderer>();
  12.     }
  13.  
  14.     void OnTriggerEnter2D(Collider2D other)
  15.     {
  16.         //Jeżeli tarcza dotknie samego obcego to zostanie całkowicie zniszczona
  17.         if(other.gameObject.tag == "Alien")
  18.         {
  19.             Destroy(gameObject);
  20.         }
  21.  
  22.         //Jeżeli dotknie pocisku, to pocisk zostanie zniszczony a także obniży wytrzymałość tarczy
  23.         if (other.gameObject.tag == "AlienBullet")
  24.         {
  25.             Destroy(other.gameObject);
  26.             ChangeLife();
  27.         }
  28.     }
  29.  
  30.  
  31.     void ChangeLife()
  32.     {
  33.         //Określamy kolejne stany jakie będą miały kolory
  34.         Color[] col = {Color.red, Color.green, Color.blue};  
  35.        
  36.         //obniżamy liczbę trafień
  37.         life--;
  38.  
  39.         //Jeżeli zejdziemy poniżej 0
  40.         if (life < 0)
  41.         {
  42.             //tarcza się niszczy
  43.             Destroy(gameObject);
  44.             //kończymy działanie metody
  45.             return;
  46.         }
  47.         //zmieniamy stan
  48.         rend.material.color = col[life];
  49.        
  50.     }
  51. }
Add Comment
Please, Sign In to add comment