public void Move(Plataforma newDest) { if (!waiting) { path.Enqueue(newDest); Plataforma destino = path.Dequeue(); if (startPlatform.isReachable(destino)) { if (destino.entity == null) { attackPlatform = path.Peek(); mAnimator.SetBool("walk", true); agent.SetDestination(destino.transform.position + offset); startPlatform.entity = null; startPlatform = destino; startPlatform.entity = this.gameObject; destino.moved(); } } else { Debug.Log("no reachable"); path = new Queue <Plataforma>(); waiting = true; } } }