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; }
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>(); } }
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>(); } }