// Update is called once per frame void Update() { nvAgent.destination = Closest().position; distance = Vector3.Distance(Closest().position, wifeTr.position); WNDistance = Vector3.Distance(tempTr.position, wifeTr.position); if (distance < 20) { Current_State = Unit_State.Get_State; } else { Current_State = Unit_State.Find_State; } if (WNDistance < 0.3f) { nvAgent.destination = wifeTr.position; isStaying = true; if (isComplete) { StartCoroutine(Chase_Complete()); } } WHDistance = Vector3.Distance(wifeTr.position, playerTr.position); }
// Update is called once per frame void Update() { if (Input.GetKey(KeyCode.W) == true) { PlayerTr.transform.Translate(Vector3.forward * Speed * Time.deltaTime); } else if (Input.GetKey(KeyCode.S) == true) { PlayerTr.transform.Translate(-Vector3.forward * Speed * Time.deltaTime); } else if (Input.GetKey(KeyCode.A) == true) { PlayerTr.transform.Translate(Vector3.left * Speed * Time.deltaTime); } else if (Input.GetKey(KeyCode.D) == true) { PlayerTr.transform.Translate(-Vector3.left * Speed * Time.deltaTime); } if (Input.GetKey(KeyCode.Space) == true) { Current_State = Unit_State.Get_State; flag = Cube_distance.get(); if (flag) { flag = false; Destroy(CubeTr.gameObject); Text.SetActive(true); Button.SetActive(true); //CubeTr = GameObject.FindWithTag("cube").GetComponent<Transform>(); //Cube_distance = GameObject.FindWithTag("cube").gameObject.GetComponent<Cube>(); } StartCoroutine(Get_Time()); } }
void Battle() { mAnimator.SetBool("Iswalk", false); mAnimator.SetBool("Isattack", true); if (SBattleManager.Instance.EnemyList.Count == 0) { Current_State = Unit_State.Wining_State; return; } else if (target == null) { Current_State = Unit_State.Find_State; return; } switch (target.tag) { case "Goblin": target.GetComponent <Monster_Goblin>().SetUnitHp(ATK); if (target.GetComponent <Monster_Goblin>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Skeleton": target.GetComponent <Monster_Skeleton>().SetUnitHp(ATK); if (target.GetComponent <Monster_Skeleton>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Boss": target.GetComponent <Monster_Boss>().SetUnitHp(ATK); if (target.GetComponent <Monster_Boss>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "EnemySaber": target.GetComponent <Monster_Saber>().SetUnitHp(ATK); if (target.GetComponent <Monster_Saber>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; } Agil = Random.Range(0.90f, 0.96f); }
void Win() { mAnimator.SetBool("Iswalk", false); LockOn = false; if (SBattleManager.Instance.EnemyList.Count != 0) { FindTarget(); Current_State = Unit_State.Find_State; } }
// Update is called once per frame void Update() { mAnimator.SetBool("Isattack", false); CheckAlive(); if (SBattleManager.Instance.UnitList.Count <= 0 && SBattleManager.Instance.HeroList.Count <= 0) { Current_State = Unit_State.Wining_State; } }
void MoveToTarget() // 적한테 이동함수 { if (SBattleManager.Instance.EnemyList.Count > 0) { nvAgent.destination = target.transform.position; mAnimator.SetBool("Iswalk", true); switch (target.tag) { case "Goblin": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Skeleton": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Boss": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; } } }
void Win() { mAnimator.SetBool("Isidle", true); mAnimator.SetBool("Iswalk", false); LockOn = false; if (SBattleManager.Instance.UnitList.Count != 0 || SBattleManager.Instance.HeroList.Count != 0) { FindTarget(); Current_State = Unit_State.Find_State; } }
// Update is called once per frame void Update() { mAnimator.SetBool("Isattack", false); mAnimator.SetBool("Isattack2", false); CheckAlive(); if (SBattleManager.Instance.EnemyList.Count == 0) { Current_State = Unit_State.Wining_State; } }
void Start() { LockOn = false; nvAgent = gameObject.GetComponent <NavMeshAgent>(); mAnimator = gameObject.GetComponent <Animator>(); //애니메이션할 객체 얻기 mAnimator.SetBool("Isattack", false); mAnimator.SetBool("Iswalk", true); Current_State = Unit_State.Find_State; StartCoroutine(SetAnimator()); }
void Start() { LockOn = false; GameObject Curespell = (GameObject)Instantiate(SummonPrefab, gameObject.transform.position, Quaternion.identity); nvAgent = gameObject.GetComponent <NavMeshAgent>(); mAnimator = gameObject.GetComponent <Animator>(); //애니메이션할 객체 얻기 mAnimator.SetBool("Isattack", false); mAnimator.SetBool("Isattack2", false); mAnimator.SetBool("Iswalk", true); Current_State = Unit_State.Find_State; Destroy(Curespell, Curespell.GetComponent <ParticleSystem>().duration + 1f); StartCoroutine(SetAnimator()); }
void Battle() { ATKAnimaton(); if (SBattleManager.Instance.EnemyList.Count == 0) { Current_State = Unit_State.Wining_State; return; } else if (target == null) { Current_State = Unit_State.Find_State; return; } switch (target.tag) { case "Goblin": target.GetComponent <Monster_Goblin>().SetUnitHp(ATK); if (target.GetComponent <Monster_Goblin>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Skeleton": target.GetComponent <Monster_Skeleton>().SetUnitHp(ATK); if (target.GetComponent <Monster_Skeleton>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Boss": target.GetComponent <Monster_Boss>().SetUnitHp(ATK); if (target.GetComponent <Monster_Boss>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; } }
IEnumerator Get_Time() { yield return(new WaitForSeconds(3.0f)); Current_State = Unit_State.Find_State; }
void Battle() { mAnimator.SetBool("Iswalk", false); mAnimator.SetBool("Isattack", true); if (SBattleManager.Instance.UnitList.Count <= 0 && SBattleManager.Instance.HeroList.Count <= 0) { Current_State = Unit_State.Wining_State; return; } else if (target == null) { Current_State = Unit_State.Find_State; return; } switch (target.tag) { case "Saber": target.GetComponent <Unit_Saber>().SetUnitHp(ATK); if (target.GetComponent <Unit_Saber>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Archer": target.GetComponent <Unit_Archer>().SetUnitHp(ATK); if (target.GetComponent <Unit_Archer>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Lancer": target.GetComponent <Unit_Lancer>().SetUnitHp(ATK); if (target.GetComponent <Unit_Lancer>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Rider": target.GetComponent <Unit_Rider>().SetUnitHp(ATK); if (target.GetComponent <Unit_Rider>().GetUnitHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "SpartanKing": target.GetComponent <Hero_SpartanKing>().SetHeroHp(ATK); if (target.GetComponent <Hero_SpartanKing>().GetHeroHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Stealth": target.GetComponent <Hero_Stealth>().SetHeroHp(ATK); if (target.GetComponent <Hero_Stealth>().GetHeroHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; case "Unitychan": target.GetComponent <Hero_Unitychan>().SetHeroHp(ATK); if (target.GetComponent <Hero_Unitychan>().GetHeroHP() <= 0) { LockOn = false; Current_State = Unit_State.Find_State; } break; } }
void MoveToTarget() // 적한테 이동함수 { if (SBattleManager.Instance.UnitList.Count > 0 || SBattleManager.Instance.HeroList.Count > 0) { nvAgent.destination = target.transform.position; mAnimator.SetBool("Iswalk", true); switch (target.tag) { case "Saber": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Archer": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Lancer": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Rider": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "SpartanKing": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Stealth": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; case "Unitychan": if (!LockOn) { if (Vector3.Distance(target.transform.position, gameObject.transform.position) <= RANGE) { LockOn = true; } } else { Current_State = Unit_State.Battle_State; } break; } } }