Esempio n. 1
0
    void Start()
    {
        bossCharacter = GetComponent <BossCharacter>();

        if (!bossCharacter)
        {
            Debug.LogError(gameObject + ": No character");
        }

        bossCharacter.autoMover.OnArrive = OnMoveEnd;


        randomGenerator = new RandomGenerator(
            new Vector2(-13, -13),
            new Vector2(13, 13),
            maxMove * 0.2f,
            maxMove);


        target = FindObjectOfType <HeroCharacter>().gameObject;

        if (!target)
        {
            Debug.LogError(gameObject + ": No target");
        }

        Wait();
    }
Esempio n. 2
0
 public void PlayerAttack()
 {
     if (Monster.getHealth() > 0 && showText)
     {
         if (PlayerCharacter.getAttack() > Monster.getDefense())
         {
             damage    = PlayerCharacter.getAttack() - Monster.getDefense();
             newHealth = Monster.getHealth() - damage;
             Monster.setHealth(newHealth);
             monsterHealth = "Enemy Health: " + Monster.getHealth();
         }
     }
     else if (SecurityCharacter.getHealth() > 0 && showMiniBossText)
     {
         if (PlayerCharacter.getAttack() > SecurityCharacter.getDefense())
         {
             damage    = PlayerCharacter.getAttack() - SecurityCharacter.getDefense();
             newHealth = SecurityCharacter.getHealth() - damage;
             SecurityCharacter.setHealth(newHealth);
             miniBossHealth = "Enemy Health: " + SecurityCharacter.getHealth();
         }
     }
     else if (BossCharacter.getHealth() > 0 && showBossText)
     {
         if (PlayerCharacter.getAttack() > BossCharacter.getDefense())
         {
             damage    = PlayerCharacter.getAttack() - BossCharacter.getDefense();
             newHealth = BossCharacter.getHealth() - damage;
             BossCharacter.setHealth(newHealth);
             bossHealth = "Boss Health: " + BossCharacter.getHealth();
         }
     }
 }
Esempio n. 3
0
 public void BossAttack()
 {
     if (PlayerCharacter.getHealth() > 0)
     {
         if (BossCharacter.getAttack() > PlayerCharacter.getDefense())
         {
             damage    = BossCharacter.getAttack() - PlayerCharacter.getDefense();
             newHealth = PlayerCharacter.getHealth() - damage;
             PlayerCharacter.setHealth(newHealth);
             pcHealth = "Player Health: " + PlayerCharacter.getHealth();
         }
     }
     else
     {
         PlayerCharacter.setHealth(0);
     }
 }
Esempio n. 4
0
    void Start()
    {
        monsterHealth  = "Enemy Health: " + Monster.getHealth();
        miniBossHealth = "Enemy Health: " + SecurityCharacter.getHealth();
        bossHealth     = "Boss Health: " + BossCharacter.getHealth();
        pcHealth       = "Player Health: " + PlayerCharacter.getHealth();

        showText         = false;
        showMiniBossText = false;
        showBossText     = false;

        originalHealth = PlayerCharacter.getMaxHealth();

        Camera.GetAllCameras(cams);
        miniBossCam = GameObject.Find("MiniBossCam");
        bossCam     = GameObject.Find("BossCam");
        gunBossCam  = GameObject.Find("GunBossCam");
        mainMenu    = GameObject.Find("TitleCam");
    }
Esempio n. 5
0
    void OnGUI()
    {
        if (showText)
        {
            GUIStyle HUDStyle = new GUIStyle(GUI.skin.label);
            HUDStyle.normal.textColor = Color.red;
            HUDStyle.fontSize         = 18;

            GUIStyle buttonStyle = new GUIStyle(GUI.skin.button);
            buttonStyle.fontSize = 18;

            GUI.Label(enemyRect, monsterHealth, HUDStyle);
            GUI.Label(pcRect, pcHealth, HUDStyle);

            if (PlayerCharacter.getItem())
            {
                if (GUI.Button(itemRect, "Use Item", buttonStyle))
                {
                    UseItem();
                }
            }

            if (GUI.Button(attackRect, "Attack", buttonStyle))
            {
                PlayerAttack();
                if (Monster.getHealth() > 0)
                {
                    MonsterAttack();
                }
            }

            if (GUI.Button(fleeRect, "Flee", buttonStyle))
            {
                Flee();
            }
        }
        else if (showMiniBossText)
        {
            GUIStyle HUDStyle = new GUIStyle(GUI.skin.label);
            HUDStyle.normal.textColor = Color.red;
            HUDStyle.fontSize         = 18;

            GUIStyle buttonStyle = new GUIStyle(GUI.skin.button);
            buttonStyle.fontSize = 18;

            GUI.Label(enemyRect, miniBossHealth, HUDStyle);
            GUI.Label(pcRect, pcHealth, HUDStyle);

            if (GUI.Button(attackRect, "Attack", buttonStyle))
            {
                PlayerAttack();
                if (SecurityCharacter.getHealth() > 0)
                {
                    MiniBossAttack();
                }
            }

            if (GUI.Button(fleeRect, "Flee", buttonStyle))
            {
                Flee();
            }
        }
        else if (showBossText)
        {
            GUIStyle HUDStyle = new GUIStyle(GUI.skin.label);
            HUDStyle.normal.textColor = Color.red;
            HUDStyle.fontSize         = 18;

            GUIStyle buttonStyle = new GUIStyle(GUI.skin.button);
            buttonStyle.fontSize = 18;

            GUI.Label(enemyRect, miniBossHealth, HUDStyle);
            GUI.Label(pcRect, pcHealth, HUDStyle);

            if (PlayerCharacter.getItem())
            {
                if (GUI.Button(itemRect, "Use Item", buttonStyle))
                {
                    UseItem();
                }
            }

            if (GUI.Button(attackRect, "Attack", buttonStyle))
            {
                PlayerAttack();
                if (BossCharacter.getHealth() > 0)
                {
                    BossAttack();
                }
            }
        }
    }
Esempio n. 6
0
    void Update()
    {
        originalHealth = PlayerCharacter.getMaxHealth();

        if (cams[1].isActiveAndEnabled)
        {
            if (cams[1].transform.position == miniBossCam.transform.position)
            {
                showMiniBossText = true;
            }
            else if (cams[1].transform.position == gunBossCam.transform.position ||
                     cams[1].transform.position == bossCam.transform.position)
            {
                showBossText = true;
            }
            else
            {
                showText = true;
            }
        }

        if (PlayerCharacter.getHealth() <= 0)
        {
            MainScreen.onMenu = true;
            cams[1].enabled   = false;
            cams[0].enabled   = true;
            cams[0].depth     = Camera.main.depth + 1;

            cams[0].transform.position = mainMenu.transform.position;
            showText         = false;
            wonBattle        = false;
            showMiniBossText = false;
            showBossText     = false;
            Monster.setHealth(10);
            SecurityCharacter.setHealth(20);
            BossCharacter.setHealth(30);
        }


        if (Monster.getHealth() <= 0 && showText)
        {
            cams[1].enabled = false;
            cams[0].enabled = true;
            cams[0].depth   = Camera.main.depth + 1;
            showText        = false;
            wonBattle       = true;
            Monster.setHealth(10);
            monsterHealth = "Enemy Health: " + Monster.getHealth();

            PlayerCharacter.setHealth(PlayerCharacter.getMaxHealth());
            pcHealth = "Player Health: " + PlayerCharacter.getHealth();
        }
        else if (SecurityCharacter.getHealth() <= 0 && showMiniBossText)
        {
            cams[1].enabled  = false;
            cams[0].enabled  = true;
            cams[0].depth    = Camera.main.depth + 1;
            showMiniBossText = false;
            wonBattle        = true;

            PlayerCharacter.setHealth(PlayerCharacter.getMaxHealth());
            PlayerCharacter.setItem(true);
            pcHealth = "Player Health: " + PlayerCharacter.getHealth();
        }
        else if (BossCharacter.getHealth() <= 0 && showBossText)
        {
            cams[1].enabled            = false;
            cams[0].enabled            = true;
            cams[0].depth              = Camera.main.depth + 1;
            cams[0].transform.position = mainMenu.transform.position;
            showBossText      = false;
            wonBattle         = false;
            MainScreen.onMenu = true;

            PlayerCharacter.setHealth(PlayerCharacter.getMaxHealth());
            pcHealth = "Player Health: " + PlayerCharacter.getHealth();
        }
    }
Esempio n. 7
0
 void Start()
 {
     _boss = GetComponent <BossCharacter>();
 }
Esempio n. 8
0
    public void RewardShowAndAdd(int _bossWeaponIndex01, int _bossWeaponIndex02)
    {
        BossCharacter bossCharacter = null;

        if (_bossWeaponIndex01 == 0 && _bossWeaponIndex02 == 1)
        {
            bossCharacter = bossIce;
        }
        if (_bossWeaponIndex01 == 2 && _bossWeaponIndex02 == 3)
        {
            bossCharacter = bossSasin;
        }
        if (_bossWeaponIndex01 == 4 && _bossWeaponIndex02 == 5)
        {
            bossCharacter = bossFire;
        }
        if (_bossWeaponIndex01 == 6 && _bossWeaponIndex02 == 7)
        {
            bossCharacter = bossMusic;
        }


        float nRandom_Weapon01 = UnityEngine.Random.Range(0f, 1f);

        if (nRandom_Weapon01 <= bossCharacter.bossInfo.fDropPercent)
        {
            GameObject Reward = rewardObjPool.GetObject();
            Reward.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
            Reward.transform.localScale = Vector3.one;
            Text RewardText = Reward.GetComponentInChildren <Text> ();
            RewardText.text = "장비";
            Image RewardImage = Reward.transform.GetChild(1).GetComponent <Image> ();
            RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(GameManager.Instance.bossWeaponInfo [_bossWeaponIndex01].strResource);
            GameManager.Instance.player.inventory.GetEquimnet(GetEquiment(_bossWeaponIndex01));
        }

        float nRandom_Weapon02 = UnityEngine.Random.Range(0f, 1f);

        if (nRandom_Weapon02 <= bossCharacter.bossInfo.fDropPercent)
        {
            GameObject Reward = rewardObjPool.GetObject();
            Reward.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
            Reward.transform.localScale = Vector3.one;
            Text RewardText = Reward.GetComponentInChildren <Text> ();
            RewardText.text = "장비";
            Image RewardImage = Reward.transform.GetChild(1).GetComponent <Image> ();
            RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(GameManager.Instance.bossWeaponInfo [_bossWeaponIndex02].strResource);
            GameManager.Instance.player.inventory.GetEquimnet(GetEquiment(_bossWeaponIndex02));
        }
        //BossSoul
        float nRandom_Weapon03 = UnityEngine.Random.Range(0f, 1f);

        if (nRandom_Weapon02 <= 0.3f)
        {
            GameObject Reward = rewardObjPool.GetObject();
            Reward.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
            Reward.transform.localScale = Vector3.one;
            Text RewardText = Reward.GetComponentInChildren <Text> ();
            RewardText.text = "소울";
            Image RewardImage = Reward.transform.GetChild(1).GetComponent <Image> ();

            if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_ICE)
            {
                GameManager.Instance.GetPlayer().changeStats.nIceMaterial++;
                RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strBossIceMaterial);
            }
            else if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_SASIN)
            {
                GameManager.Instance.GetPlayer().changeStats.nSasinMaterial++;
                RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strBossSasinMaterial);
            }
            else if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_FIRE)
            {
                GameManager.Instance.GetPlayer().changeStats.nFireMaterial++;
                RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strBossFireMaterial);
            }
            else
            {
                GameManager.Instance.GetPlayer().changeStats.nRusiuMaterial++;
                RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strBossMusicMaterial);
            }
        }

        //Gold
        GameObject Gold = rewardObjPool.GetObject();

        Gold.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
        Gold.transform.localScale = Vector3.one;
        Text GoldText = Gold.GetComponentInChildren <Text> ();

        Image GoldRewardImage = Gold.transform.GetChild(1).GetComponent <Image> ();

        GoldRewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strGoldImagePath);

        double goldValue = 0f;

        if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_ICE)
        {
            goldValue = 250 * Math.Pow(1.09f, 24 + nCurBossLevel * 5) * 8;
        }
        else if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_SASIN)
        {
            goldValue = 250 * Math.Pow(1.09f, 44 + nCurBossLevel * 5) * 8;
        }
        else if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_FIRE)
        {
            goldValue = 250 * Math.Pow(1.09f, 64 + nCurBossLevel * 5) * 8;
        }
        else if (nBossIndex == (int)E_BOSSNAME.E_BOSSNAME_MUSIC)
        {
            goldValue = 250 * Math.Pow(1.09f, 84 + nCurBossLevel * 5) * 8;
        }
        else
        {
            goldValue = 0;
        }

        string strGold = repairObj.ChangeValue(goldValue);

        GoldText.text = string.Format("{0}", strGold);

        ScoreManager.ScoreInstance.GoldPlus(goldValue);

        //{(기본값)+2.4*(현재일차-1)}


        //Honor
        GameObject Honor = rewardObjPool.GetObject();

        Honor.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
        Honor.transform.localScale = Vector3.one;
        Text HonorText = Honor.GetComponentInChildren <Text> ();

        Image HonorRewardImage = Honor.transform.GetChild(1).GetComponent <Image> ();

        HonorRewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strHonorImagePath);


        double dHonor = 0;

        if (nCurBossLevel <= 1)
        {
            dHonor = (double)Mathf.RoundToInt(GameManager.Instance.bossInfo [nBossIndex].nHonor + (2.4f));
            ScoreManager.ScoreInstance.HonorPlus(dHonor);
            HonorText.text = string.Format("{0}", dHonor);
        }
        else
        {
            dHonor = (double)Mathf.RoundToInt(GameManager.Instance.bossInfo [nBossIndex].nHonor + (2.4f * (nCurBossLevel - 1)));
            ScoreManager.ScoreInstance.HonorPlus(dHonor);
            HonorText.text = string.Format("{0}", dHonor);
        }


        //Dia

        /*
         * GameObject Dia = rewardObjPool.GetObject ();
         * Dia.transform.SetParent (PopUpWindow_RewardPanel.transform, false);
         * Dia.transform.localScale = Vector3.one;
         * Text DiaText = Dia.GetComponentInChildren<Text> ();
         *
         * Image DiaRewardImage = Dia.transform.GetChild(1).GetComponent<Image> ();
         * DiaRewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache (strRubyImagePath);
         * DiaText.text = string.Format("{0}", bossCharacter.bossInfo.nDia);
         */
    }
Esempio n. 9
0
 public void GetBossInfo(BossCharacter _bossCharacter)
 {
     bossInfo = _bossCharacter;
 }
Esempio n. 10
0
    public void RewardShowAndAdd(int _bossWeaponIndex01, int _bossWeaponIndex02)
    {
        BossCharacter bossCharacter = null;

        if (_bossWeaponIndex01 == 0 && _bossWeaponIndex02 == 1)
        {
            bossCharacter = bossIce;
        }
        if (_bossWeaponIndex01 == 2 && _bossWeaponIndex02 == 3)
        {
            bossCharacter = bossSasin;
        }
        if (_bossWeaponIndex01 == 4 && _bossWeaponIndex02 == 1)
        {
            bossCharacter = bossFire;
        }
        if (_bossWeaponIndex01 == 6 && _bossWeaponIndex02 == 7)
        {
            bossCharacter = bossMusic;
        }


        float nRandom_Weapon01 = Random.Range(0f, 1f);

        if (nRandom_Weapon01 <= bossCharacter.bossInfo.fDropPercent)
        {
            GameObject Reward = rewardObjPool.GetObject();
            Reward.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
            Reward.transform.localScale = Vector3.one;
            Text RewardText = Reward.GetComponentInChildren <Text> ();
            RewardText.text = "장비";
            Image RewardImage = Reward.transform.GetChild(1).GetComponent <Image> ();
            RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(GameManager.Instance.bossWeaponInfo [_bossWeaponIndex01].strResource);
            GameManager.Instance.player.inventory.inventorySlots [GameManager.Instance.bossWeaponInfo [_bossWeaponIndex01].nSlotIndex].AddItem
                (GameManager.Instance.bossWeaponInfo [_bossWeaponIndex01]);
        }

        float nRandom_Weapon02 = Random.Range(0f, 1f);

        if (nRandom_Weapon02 <= bossCharacter.bossInfo.fDropPercent)
        {
            GameObject Reward = rewardObjPool.GetObject();
            Reward.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
            Reward.transform.localScale = Vector3.one;
            Text RewardText = Reward.GetComponentInChildren <Text> ();
            RewardText.text = "장비";
            Image RewardImage = Reward.transform.GetChild(1).GetComponent <Image> ();
            RewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(GameManager.Instance.bossWeaponInfo [_bossWeaponIndex02].strResource);
            GameManager.Instance.player.inventory.inventorySlots [GameManager.Instance.bossWeaponInfo [_bossWeaponIndex02].nSlotIndex].AddItem
                (GameManager.Instance.bossWeaponInfo [_bossWeaponIndex02]);
        }
        //Gold
        GameObject Gold = rewardObjPool.GetObject();

        Gold.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
        Gold.transform.localScale = Vector3.one;
        Text GoldText = Gold.GetComponentInChildren <Text> ();

        GoldText.text = "골드";
        Image GoldRewardImage = Gold.transform.GetChild(1).GetComponent <Image> ();

        GoldRewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strGoldImagePath);
        ScoreManager.ScoreInstance.GoldPlus(bossCharacter.bossInfo.nGold);
        //Honor
        GameObject Honor = rewardObjPool.GetObject();

        Honor.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
        Honor.transform.localScale = Vector3.one;
        Text HonorText = Honor.GetComponentInChildren <Text> ();

        HonorText.text = "명예";
        Image HonorRewardImage = Honor.transform.GetChild(1).GetComponent <Image> ();

        HonorRewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strHonorImagePath);
        ScoreManager.ScoreInstance.HonorPlus(bossCharacter.bossInfo.nHonor);
        //Dia
        GameObject Dia = rewardObjPool.GetObject();

        Dia.transform.SetParent(PopUpWindow_RewardPanel.transform, false);
        Dia.transform.localScale = Vector3.one;
        Text DiaText = Dia.GetComponentInChildren <Text> ();

        DiaText.text = "보석";
        Image DiaRewardImage = Dia.transform.GetChild(1).GetComponent <Image> ();

        DiaRewardImage.sprite = ObjectCashing.Instance.LoadSpriteFromCache(strRubyImagePath);
        //ScoreManager.ScoreInstance.HonorPlus (bossCharacter.bossInfo.nDia);
    }
Esempio n. 11
0
 void Awake()
 {
     healthSlider = gameObject.transform.Find("Sld_BossHealth").GetComponent <Slider>();
     boss         = GetComponentInParent <BossCharacter>();
     healthSlider.gameObject.SetActive(false);
 }