public void SetBookmarkMode() { canceledMovement = false; if (navAgent.isOnNavMesh) { navAgent.Stop(); } if (mode != WanderMode.Bookmark) { prevMode = mode; } mode = WanderMode.Bookmark; CalcDestination(); StartMovement(); }
void Update() { if (navAgent.remainingDistance < .5f && !canceledMovement && !navAgent.pathPending && !IsInvoking()) { if (navAgent.isOnNavMesh) { navAgent.Stop(); } animator.SetFloat("Speed", 0f); animator.SetFloat("Direction", 0f); moving = false; if (mode == WanderMode.Bookmark) { poiDestination = -1; mode = prevMode; localWanderCenter = transform.position; } Invoke("SetWanderMode", idleTime); } }
public Rectangle rect; // If mode = Rectangle, this defines the wanderable tile region #endregion Fields #region Constructors public WanderState(Entity entity) { ent = entity; mode = WanderMode.Scripted; delay = 0; rect = default(Rectangle); }