예제 #1
0
    void OnTriggerEnter2D(Collider2D col)
    {
        if (col.gameObject.tag == "Player")
        {
            PlayerData.addScore(250);
            switch (pUpType)
            {
            case PUTypes.SPEED_INC:
                ProjectileManager2D.actFireRate();
                GetComponent <SpriteRenderer>().enabled        = false;
                GetComponent <CircleCollider2D>().enabled      = false;
                GetComponent <BoxCollider2D>().enabled         = false;
                GetComponent <ParticleSystem>().enableEmission = false;
                speeding   = true;
                timeToStop = Time.time + (blinkTime * 2);
                //Add extra speed
                break;

            case PUTypes.ONE_UP:
                PlayerData.lives++;
                Destroy(gameObject);
                //Add extra life
                break;

            case PUTypes.TRIPLE_SHOOT:
                ProjectileManager2D.actTripleShoot();
                GetComponent <SpriteRenderer>().enabled        = false;
                GetComponent <CircleCollider2D>().enabled      = false;
                GetComponent <BoxCollider2D>().enabled         = false;
                GetComponent <ParticleSystem>().enableEmission = false;
                tripling   = true;
                timeToStop = Time.time + (blinkTime * 2);
                //Set as Shotgun in Gund
                break;

            case PUTypes.FOLLOW:
                Projectile2D.followOn();
                GetComponent <SpriteRenderer>().enabled        = false;
                GetComponent <CircleCollider2D>().enabled      = false;
                GetComponent <BoxCollider2D>().enabled         = false;
                GetComponent <ParticleSystem>().enableEmission = false;
                following  = true;
                timeToStop = Time.time + blinkTime;
                //Set to Follow
                break;

            default:
                break;
            }
        }
    }
예제 #2
0
    // Update is called once per frame
    void Update()
    {
        if (following == true)
        {
            if (Time.time >= timeToFollow)
            {
                timeToFollow = Time.time + blinkSpeed;
            }

            if (Time.time >= timeToStop)
            {
                Projectile2D.followOff();
                following = false;
                Destroy(gameObject);
            }
        }

        if (tripling == true)
        {
            if (Time.time >= timeToFollow)
            {
                timeToFollow = Time.time + blinkSpeed;
            }

            if (Time.time >= timeToStop)
            {
                ProjectileManager2D.disTripleShoot();
                tripling = false;
                Destroy(gameObject);
            }
        }

        if (speeding == true)
        {
            if (Time.time >= timeToFollow)
            {
                timeToFollow = Time.time + blinkSpeed;
            }

            if (Time.time >= timeToStop)
            {
                ProjectileManager2D.disFireRate();
                speeding = false;
                Destroy(gameObject);
            }
        }
    }