Example #1
0
    // Use this for initialization
    void Start()
    {
        playerLocation = GameObject.Find("Player").transform;
        target         = new Vector3(0, 0, 0);
        ui             = GameObject.Find("PlayerUI").GetComponent <PlayerUI>();

        skinMeshRenderer = GetComponentInChildren <SkinnedMeshRenderer>();

        shooter = GameObject.Find("shooter");

        laser = gameObject.GetComponentInChildren <BossLaser>();

        chargerRenderer = GameObject.Find("Charger").GetComponent <Renderer>();
        chargerCollider = GameObject.Find("Charger").GetComponent <Collider>();

        cocoonCollider = gameObject.GetComponentsInChildren <Collider>()[1];
        cocoonRenderer = gameObject.GetComponentInChildren <MeshRenderer>();

        bossType = BossType.NULL;

        followingPlayer = false;

        chargerRenderer.enabled = false;
        chargerCollider.enabled = false;
    }
Example #2
0
    void Dot()
    {
        switch (WayDir)
        {
        case 0:
        case 1:
            GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay");
            obj.transform.position = SpreadPoses[WayDir].transform.position;
            obj.transform.rotation = SpreadPoses[WayDir].transform.rotation;

            BossLaser bullet = obj.GetComponent <BossLaser>();
            bullet.StopTime = 0.0f;
            break;

        case 2:
            for (int i = 0; i < WayDir; i++)
            {
                obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay");
                obj.transform.position = SpreadPoses[i].transform.position;
                obj.transform.rotation = SpreadPoses[i].transform.rotation;

                bullet          = obj.GetComponent <BossLaser>();
                bullet.StopTime = 0.0f;
            }
            break;
        }

        GameManager.Inst().SodManager.PlayEffect("Bs_Laser");
    }
Example #3
0
    void Laser()
    {
        GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossLaser");

        obj.transform.position = LaserPos.transform.position;
        obj.transform.rotation = LaserPos.transform.rotation;

        BossLaser bullet = obj.GetComponent <BossLaser>();

        bullet.StopTime = GameManager.Inst().UpgManager.BData[(int)Type].GetDuration();

        GameManager.Inst().SodManager.PlayEffect("Bs_Laser");
    }
Example #4
0
    void OnTriggerEnter2D(Collider2D other)
    {
        BossLaser bossLaser = other.GetComponent <BossLaser>();

        if (bossLaser)
        {
            Destroy(gameObject);
            return;
        }

        GameObject lasersObject;
        Lasers     lasers;

        lasersObject = Instantiate(projectilePreFab, other.GetComponent <Lasers>().GetRigidBody2D().position + Vector2.up * ver + Vector2.right * hor, Quaternion.identity);
        lasers       = lasersObject.GetComponent <Lasers>();
        lasers.Shoot(other.GetComponent <Lasers>().getLaserSpeed(), other.GetComponent <Lasers>().GetShotFrom());
        Destroy(other.gameObject);
    }
    void Shot()
    {
        int   maxCount = 6;
        float shotTime = 0.0f;

        switch (GameManager.Inst().StgManager.Stage)
        {
        case 1:
            shotTime = 0.1f;
            for (int i = 0; i < 12; i++)
            {
                GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossNormal");
                obj.transform.position = ShotDir[i].transform.position;
                obj.transform.rotation = ShotDir[i].transform.rotation;

                BossNormal bullet = obj.gameObject.GetComponent <BossNormal>();
                bullet.Shoot(ShotDir[i].transform.up);
            }

            GameManager.Inst().SodManager.PlayEffect("Bs_Normal");
            break;

        case 2:
            maxCount = 2;
            shotTime = 0.1f;
            for (int i = 0; i < 4; i++)
            {
                GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay");
                obj.transform.position = ShotDir[ShotCount + i * 3].transform.position;
                obj.transform.rotation = ShotDir[ShotCount + i * 3].transform.rotation;

                BossBounce bullet = obj.GetComponent <BossBounce>();
                bullet.SetStartPos(obj.transform.position);
                bullet.Shoot(obj.transform.up);
            }

            GameManager.Inst().SodManager.PlayEffect("Bs_OneWay");
            break;

        case 3:
            maxCount = 12;
            shotTime = 0.05f;
            for (int i = 0; i < 1; i++)
            {
                GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossNormal");
                obj.transform.position = ShotDir[ShotCount].transform.position;
                obj.transform.rotation = ShotDir[ShotCount].transform.rotation;

                BossBoomerang bullet = obj.GetComponent <BossBoomerang>();
                bullet.StartMove(obj.transform.position);
            }

            GameManager.Inst().SodManager.PlayEffect("Bs_Normal");
            break;

        case 4:
            maxCount = 5;
            shotTime = 0.1f;
            int rand = Random.Range(0, 12);
            for (int i = 0; i < 6; i++)
            {
                GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay");
                obj.transform.position = ShotDir[0].transform.position;
                obj.transform.rotation = ShotDir[(rand + (i % 2) * 6) % 12].transform.rotation;

                BossNormal bullet = obj.gameObject.GetComponent <BossNormal>();
                bullet.Shoot(ShotDir[(rand + (i % 2) * 6) % 12].transform.up, rand % 5 + 1);

                rand++;
            }

            GameManager.Inst().SodManager.PlayEffect("Bs_OneWay");
            break;

        case 5:
            shotTime = 0.1f;
            for (int i = 0; i < 2; i++)
            {
                GameObject obj = GameManager.Inst().ObjManager.MakeObj("BossOneWay");
                obj.transform.position = ShotDir[ShotCount + i * 6].transform.position;
                obj.transform.rotation = ShotDir[ShotCount + i * 6].transform.rotation;

                BossLaser bullet = obj.GetComponent <BossLaser>();
                bullet.StopTime = 0.0f;
            }

            GameManager.Inst().SodManager.PlayEffect("Bs_Laser");
            break;
        }

        //GameManager.Inst().SodManager.PlayEffect("Bigbullet trigger");

        ShotCount++;
        if (ShotCount >= maxCount)
        {
            Die();
        }
        else
        {
            Invoke("Shot", shotTime);
        }
    }
Example #6
0
    protected override void InitWeapon()
    {
        base.InitWeapon();

        currentWeapon = new BossLaser(shotPosTrans, false);
    }
Example #7
0
    // Use this for initialization
    void Start()
    {
        playerLocation = GameObject.Find("Player").transform;
        target = new Vector3(0, 0, 0);
        ui = GameObject.Find("PlayerUI").GetComponent<PlayerUI>();

        skinMeshRenderer = GetComponentInChildren<SkinnedMeshRenderer>();

        shooter = GameObject.Find("shooter");

        laser = gameObject.GetComponentInChildren<BossLaser>();

        chargerRenderer = GameObject.Find("Charger").GetComponent<Renderer>();
        chargerCollider = GameObject.Find("Charger").GetComponent<Collider>();

        cocoonCollider = gameObject.GetComponentsInChildren<Collider>()[1];
        cocoonRenderer = gameObject.GetComponentInChildren<MeshRenderer>();

        bossType = BossType.NULL;

        followingPlayer = false;

        chargerRenderer.enabled = false;
        chargerCollider.enabled = false;
    }