コード例 #1
0
ファイル: Player.cs プロジェクト: LTStorm/Space-Shooter
    void OnTriggerEnter2D(Collider2D other)                              //Hàm nhận dạng vật thể va chạm với người chơi
    {
        DamageDealer damageDealer = other.GetComponent <DamageDealer>(); //Lấy phần scipt chứa sát thương cảu vật thể va chạm

        if (damageDealer)
        {
            ProcessHit(damageDealer);              //Nếu tồn tại scipt chứa sát thương gây ra thì xử lý nó với người chơi
        }
        PrizeDealer prizeDealer = other.GetComponent <PrizeDealer>();

        if (prizeDealer)
        {
            PrizeReceive(prizeDealer);                                //Nếu vật thể va chạm là gift thì xử lý
        }
        if (other.gameObject.layer != LayerMask.NameToLayer("Enemy")) //Nếu vật thể không phải là kẻ địch thì phá hủy vật thể va chạm
        {
            Destroy(other.gameObject);
        }
        //Phần trên được dùng chủ yếu để phá hủy đạn của kẻ địch và gift khi va chạm với người chơi
    }
コード例 #2
0
ファイル: Player.cs プロジェクト: LTStorm/Space-Shooter
 //Hàm xử lý sự kiện khi nhận được gift
 void PrizeReceive(PrizeDealer prizeDealer)
 {
     if (prizeDealer.GetScore() > 0)
     {
         FindObjectOfType <GameSessions>().AddToScore(prizeDealer.GetScore());                           //Xử lý khi nhận được gift cho điểm
     }
     health += (int)prizeDealer.GetHeath();
     gameSessions.SetHealth(health);
     if (prizeDealer.isUprade())//Xử lý khi nhận được gift upgrade đạn
     {
         if (laserPrefabs == laserUpgrade1)
         {
             laserPrefabs = laserUpgrade2;
         }
         else if (laserPrefabs == laser)
         {
             laserPrefabs = laserUpgrade1;
         }
     }
     prizeDealer.Hit();//Phá hủy đối tượng gift trên màn hình
 }