override public void Exit(CellBehavior cell) { if (cell.GetType() == typeof(PointerController)) { if (originalPointer != null && originalTarget != null) { // Debug.Log("exited with original Pointer"); originalPointer.Target = originalTarget; originalPointer.CurrentOffset = null; originalPointer = null; originalTarget = null; } } }
override public void Enter(CellBehavior cell) { if (cell.GetType() == typeof(PointerController)) { GameObject pointer = player.GetOnPointer(); if (pointer != null) { // Debug.Log("entered while on Pointer"); PointerController controller = pointer.GetComponent <PointerController>(); CellBehavior target = controller.Target; // find the next object in the controller's array if (target != null && target.owningArray != null) { originalTarget = target; originalPointer = controller; originalPointer.CurrentOffset = this; ReTarget(); } } } }