示例#1
0
    void OnCollisionEnter(Collision other)
    {
        if (bossType == BossType.Escaper)
        {
            if (other.gameObject.tag == "Enemy")
            {
                if (!mounted)
                {
                    EnemyMovement moveScript = GetComponent <EnemyMovement>();
                    moveScript.setCurrentNode(Escaper_initNode);
                    moveScript.enabled = true;

                    mounted = true;
                }
            }
        }

        else if (bossType == BossType.Betrayer)
        {
            if (other.gameObject.tag == "Enemy")
            {
                BankRobbery otherRobbery = other.gameObject.GetComponent <BankRobbery>();
                BankRobbery robbery      = GetComponent <BankRobbery>();

                otherRobbery.iCurRobAmount = robbery.iCurRobAmount;
                otherRobbery.bRobbed       = true;

                Destroy(this.gameObject);
            }
        }
    }
示例#2
0
    // Use this for initialization
    void Start()
    {
        bankrobbery = GetComponent <BankRobbery>();

        if (bossType == BossType.Betrayer)
        {
            if (Escaper)
            {
                GameObject  gameManager   = GameObject.FindGameObjectWithTag("GameManager");
                GameManager managerScript = gameManager.GetComponent <GameManager>();

                GameObject escaper = Instantiate(Escaper, managerScript.objWaypointNode.transform.GetChild(Escaper_initNode).position, Quaternion.identity) as GameObject;

                escaper.transform.parent = GameObject.Find("Enemy Group").transform;
            }
        }
        else if (bossType == BossType.Escaper)
        {
            EnemyMovement enemyMove = GetComponent <EnemyMovement>();

            GameObject  gameManager   = GameObject.FindGameObjectWithTag("GameManager");
            GameManager managerScript = gameManager.GetComponent <GameManager>();

            enemyMove.Route = managerScript.objWaypointNode;
        }
    }
示例#3
0
    void DestoryedByPlayer(GameObject objKiller)
    {
        // 파괴 효과
        if (DestroyEffect)
        {
            GameObject effect = Instantiate(DestroyEffect, gameObject.transform.position, Quaternion.identity) as GameObject;
            effect.transform.parent = null;
        }

        // 처치한 포탑 킬수 증가
        objKiller.GetComponent <LTH.Abs_Tower>().SendMessage("AddKillCount", (int)1);

        // 은행 잔고 복구
        BankRobbery script = GetComponent <BankRobbery>();

        if (script != null && script.bRobbed == true && script.bRobbed == true)
        {
            // 잔고 복구
            StaticManager.game.objBank.GetComponent <LTH.EnvBank>().AddBalanceLeft(script.iCurRobAmount);

            // 메시지
            Debug.Log(name + "이(가) 강탈한 " + script.iCurRobAmount + "$ 를 되찾았습니다!"); // test

            // 복구 이펙트 생성
            StaticManager.game.CreateResEffect(gameObject.transform.position, "Balance", script.iCurRobAmount);
        }

        // 보상 획득
        StaticManager.game.AddResDollar(iBonusDollar);
        StaticManager.game.AddResCosmic(iBonusCosmic);

        // 보상 이펙트 생성
        if (iBonusDollar > 0)
        {
            StaticManager.game.CreateResEffect(gameObject.transform.position, "Dollor", iBonusDollar);
        }
        if (iBonusCosmic > 0)
        {
            StaticManager.game.CreateResEffect(gameObject.transform.position, "Cosmic", iBonusCosmic);
        }

        // 오브젝트 파괴
        Destroy(this.gameObject);
    }