// ------------------------------------------------------------------------ // prepare movement: try to go to you right field void FixedUpdate() { if (!Enable) { return; } if (actor.Walking || actor.nextFloor || Random.value % 0.25f == 0) { return; } if (actor.nextFieldAvailable(transform.right)) { actor.turnRight(); actor.move(transform.forward); } else if (actor.nextFieldAvailable(transform.forward)) { actor.move(transform.forward); } else if (actor.nextFieldAvailable(-transform.right)) { actor.turnLeft(); actor.move(transform.forward); } else if (actor.nextFieldAvailable(-transform.forward)) { actor.turnRight(); actor.turnRight(); actor.move(transform.forward); } }
// ------------------------------------------------------------------------ public virtual void turnRight() { MoveActor m = GetComponent <MoveActor>(); if (m) { m.turnRight(); } }