Esempio n. 1
0
        private void SetSimpleGoal(MissionType type)
        {
            var   text      = "";
            float goalValue = 0;

            switch (type)
            {
            case MissionType.Annihilation:
                var missionA = missionMgr.CurrentMission as MissionA;
                goalValue = Mathf.Clamp01((float)GameStatus.Instance.ActivedMonsterList.Count /
                                          (float)missionA.waves[missionA.currentWave - 1].monsterTypes.Length);
                text = gameStatus.ActivedMonsterList.Count + " / "
                       + missionA.waves[missionA.currentWave - 1].monsterTypes.Length;
                break;

            case MissionType.Survival:
                MissionB missionB = MissionManager.Instance.CurrentMission as MissionB;
                goalValue = Mathf.Clamp01((float)missionB.currentScore / (float)missionB.goalScore);
                text      = missionB.currentScore + " / 5";
                break;

            case MissionType.Defence:
                MissionC missionC = MissionManager.Instance.CurrentMission as MissionC;
                goalValue = Mathf.Clamp01((float)missionC.protectedTarget.hp / (float)missionC._ProtectedTargetHP);
                text      = missionC.protectedTarget.hp + " / " + missionC._ProtectedTargetHP;
                break;

            case MissionType.Boss:
                text = "리리스를 처치하시오";
                break;
            }

            CurrentGoal.text           = text;
            CurrentGoalBack.fillAmount = goalValue;
        }
Esempio n. 2
0
    private void SetTargetPriority()
    {
        if (GameStatus.currentGameState == CurrentGameState.EDITOR)
        {
            _manager.priorityTarget = PlayerFSMManager.Instance.Anim.GetComponent <Collider>();
            return;
        }

        if (GameStatus.currentGameState == CurrentGameState.Tutorial)
        {
            _manager.priorityTarget = PlayerFSMManager.Instance.Anim.GetComponent <Collider>();
            return;
        }

        if (MissionManager.Instance.CurrentMissionType == MissionType.Defence)
        {
            MissionC mission = MissionManager.Instance.CurrentMission as MissionC;
            _manager.priorityTarget = mission.protectedTarget.Collider;
        }
        else
        {
            _manager.priorityTarget = PlayerFSMManager.
                                      Instance.GetComponentInChildren <Animator>()
                                      .GetComponent <Collider>();
        }
    }
Esempio n. 3
0
    private void TargetPrioritySet()
    {
        if (MissionManager.Instance.CurrentMissionType == MissionType.Defence)
        {
            Collider[] allTarget = Physics.OverlapSphere(this.transform.position, _manager.detectingRange);

            foreach (Collider target in allTarget)
            {
                if (target.tag == "Player")
                {
                    _manager.priorityTarget = PlayerFSMManager.
                                              Instance.GetComponentInChildren <Animator>()
                                              .GetComponent <Collider>();
                    break;
                }
                else
                {
                    MissionC mission = MissionManager.Instance.CurrentMission as MissionC;
                    _manager.priorityTarget = mission.protectedTarget.Collider;
                }
            }
        }
        else
        {
            _manager.priorityTarget = PlayerFSMManager.
                                      Instance.GetComponentInChildren <Animator>()
                                      .GetComponent <Collider>();
        }
    }