示例#1
0
 void OnTriggerEnter2D(Collider2D coll)
 {
     if(coll.gameObject.tag == "Player")
     {
         playerController = coll.gameObject.GetComponent<PlayerController>();
         playerController.DoDamage(1);
         Destroy(gameObject);
     }
     else if(coll.gameObject.tag == "Starbase")
     {
         starbaseController = coll.gameObject.GetComponentInParent<StarbaseController>();
         starbaseController.StarbaseDamage(1);
         Destroy(gameObject);
     }
 }
    // Use this for initialization
    void Start()
    {
        playerController = FindObjectOfType<PlayerController>();
        starbaseController = FindObjectOfType<StarbaseController>();
        sfxManager = FindObjectOfType<SFXManager>();

        Rigidbody2D body = GetComponent<Rigidbody2D>();
        Invoke("KillPowerUp",4f);
        body.velocity = new Vector2(0f, -1f);

        if(this.tag == "1Up")
        {
            SpriteRenderer playerRenderer = playerController.GetComponent<SpriteRenderer>();
            SpriteRenderer thisRenderer = GetComponent<SpriteRenderer>();
            PolygonCollider2D shipCollider = GetComponent<PolygonCollider2D>();

            shipCollider.isTrigger = true;
            thisRenderer.sprite = playerRenderer.sprite;
            this.transform.localScale = new Vector3(0.4f, 0.4f, 0.4f);
        }
    }
 public void Activate()
 {
     if(!shieldsUp)
     {
         shieldHealth = 10;
         starbaseController = GameObject.FindObjectOfType<StarbaseController>();
         shieldsUp = true;
         Invoke("Deactivate", 15f);
         InvokeRepeating("ChangeColor",0f,0.1f);
     }
     else
     {
         print ("refreshing shield");
         CancelInvoke();
         shieldHealth = 10;
         starbaseController = GameObject.FindObjectOfType<StarbaseController>();
         shieldsUp = true;
         Invoke("Deactivate", 15f);
         InvokeRepeating("ChangeColor",0f,0.1f);
     }
 }
    void OnTriggerEnter2D(Collider2D coll)
    {
        if(this.transform.position.y <= 5f)
        {
            if(coll.gameObject.tag == "Easy" || coll.gameObject.tag == "Medium" || coll.gameObject.tag == "Hard")
            {
                enemyController = coll.gameObject.GetComponent<EnemyController>();
                bool isDead = enemyController.IsDead();

                if (!isDead && coll.transform.position.y <= 5f)
                {
                    enemyController.KillEnemyNoBonus();
                    KillMeteor();
                }
                else
                {
                    return;
                }
            }
            else if(coll.gameObject.tag == "Player" || coll.gameObject.tag == "StarbaseShield")
            {
                KillMeteorNoPoints();
            }

            if(coll.gameObject.tag == "Laser")
            {
                DamageMeteor();
                Destroy(coll.gameObject);
            }
            else if(coll.gameObject.tag == "Starbase")
            {
                starbaseController = coll.gameObject.GetComponentInParent<StarbaseController>();
                starbaseController.StarbaseDamage(2);
                KillMeteorNoPoints();
            }
        }
    }
 // Use this for initialization
 void Start()
 {
     starbaseController = FindObjectOfType<StarbaseController>();
     health = 50;
     difficulty = PlayerPrefsManager.GetDifficulty();
     InvokeRepeating("FireLasers",0.1f,fireRate);
 }