private void OnDragItemInputInteractionStateTouchPhaseStationary(RaycastHit topHit, TouchEquivalent touch) { PositionDragItem(topHit, touch); if (this.DragStateStationary != null) { ObjectManipulator componentInParent = CurrentlySelectedObject.GetComponentInParent <ObjectManipulator>(); this.DragStateStationary(componentInParent.gameObject, touch); } }
protected override void processOneTouch(TouchEquivalent touch) { }
private void OnDragItemInputInteractionStateTouchPhaseEnded(RaycastHit topHit, TouchEquivalent touch) { CurrentState.ExitState(); CurrentState = activeSelectionState; bool flag = false; if (CurrentlySelectedObject != null) { if (topHit.Equals(default(RaycastHit))) { CurrentlySelectedObject.transform.position = new Vector3(0f, 1000f, 0f); DeleteSelectedItem(deleteChildren: true); InputProcessingPaused = false; CurrentState = noSelectionState; CurrentState.EnterState(TargetLayerMask, MinTimeToMoveInput); return; } PositionDragItem(topHit, touch); ObjectManipulator i = CurrentlySelectedObject.GetComponentInParent <ObjectManipulator>(); if (i != null && i.IsAllowed) { if (BeforeDragComplete != null) { flag = true; BeforeDragComplete.InvokeSafe(i, delegate(bool success) { if (success) { storeOldObject(); CurrentState.EnterState(TargetLayerMask, MinTimeToMoveInput); } else { i.BaseLocationIsValid = false; } }); } else { storeOldObject(); } } } if (!flag) { CurrentState.EnterState(TargetLayerMask, MinTimeToMoveInput); } }
protected abstract void processOneTouch(TouchEquivalent touch);