void Update() { GuardMushroom.TurnToDestination(); GuardMushroom.GoToPullPush(); GuardMushroom.NowisHit(); GuardMushroom.PlayerisDead(); GuardMushroom.QueenisADead(); if (GuardMushroom.GetDistanceFromPlayer() < GuardMushroom.MStat.AttackDistance && GuardMushroom.AttackTimer > GuardMushroom.AttackDelay) { GuardMushroom.SetState(GuardMushroomState.Attack); return; } if (GuardMushroom.GetDistanceFromPlayer() < GuardMushroom.MStat.ChaseDistance && GuardMushroom.GetDistanceFromPlayer() > GuardMushroom.MStat.AttackDistance) { GuardMushroom.SetState(GuardMushroomState.Chase); return; } }
/*GuardMushroom.MoveToDestination(); * transform.position = new Vector3(GuardMushroom.GoHomePositionX,GuardMushroom.GoHomePositionY, GuardMushroom.GoHomePositionZ); * * GuardMushroom.MoveToTarget(new Vector3(GuardMushroom.GoHomePositionX, * GuardMushroom.GoHomePositionY, GuardMushroom.GoHomePositionZ));*/ void Update() { if (GuardMushroom.GetDistanceFromPlayer() > GuardMushroom.MStat.ChaseDistance) { GuardMushroom.GoToDestination(GuardMushroom.HomePosition, GuardMushroom.MStat.MoveSpeed, GuardMushroom.rotAnglePerSecond); if (Vector3.Distance(transform.position, new Vector3(GuardMushroom.GoHomePositionX, GuardMushroom.GoHomePositionY, GuardMushroom.GoHomePositionZ)) <= 2.0f) { GuardMushroom.SetState(GuardMushroomState.Idle); return; } } else { GuardMushroom.SetState(GuardMushroomState.Return); return; } }
void Update() { if (GuardMushroom.GetDistanceFromPlayer() < GuardMushroom.MStat.ChaseDistance && GuardMushroom.GetDistanceFromPlayer() > GuardMushroom.MStat.AttackDistance) { GuardMushroom.GoToDestination(GuardMushroom.Player.position, GuardMushroom.MStat.MoveSpeed, GuardMushroom.rotAnglePerSecond); } if (GuardMushroom.GetDistanceFromPlayer() < GuardMushroom.MStat.AttackDistance) { if (GuardMushroom.attackTimer > GuardMushroom.attackDelay) { GuardMushroom.SetState(GuardMushroomState.Attack); return; } } else { GuardMushroom.SetState(GuardMushroomState.Return); return; } }