/// <summary> /// Called by the Draggable2D object when the drag starts. /// </summary> public virtual void OnDragStarted(Draggable2D draggableObject) { if (draggableObject == this.draggableObject) { ExecuteBlock(); } }
/// <summary> /// Called by the Draggable2D object when the drag exits from the targetObject. /// </summary> public virtual void OnDragExited(Draggable2D draggableObject, Collider2D targetObject) { if (draggableObject == this.draggableObject && targetObject == this.targetObject) { ExecuteBlock(); } }
/// <summary> /// Called by the Draggable2D object when the it enters the drag target. /// </summary> public virtual void OnDragEntered(Draggable2D draggableObject, Collider2D targetObject) { if (this.targetObject != null && draggableObject == this.draggableObject && targetObject == this.targetObject) { overTarget = true; } }
/// <summary> /// Called by the Draggable2D object when the the drag ends over the drag target. /// </summary> public virtual void OnDragCompleted(Draggable2D draggableObject) { if (draggableObject == this.draggableObject && overTarget) { // Assume that the player will have to do perform another drag and drop operation // to complete the drag again. This is necessary because we don't get an OnDragExited if the // draggable object is set to be inactive. overTarget = false; ExecuteBlock(); } }
public DragStartedEvent(Draggable2D draggableObject) { DraggableObject = draggableObject; }
public DragCompletedEvent(Draggable2D draggableObject) { DraggableObject = draggableObject; }
public DragExitedEvent(Draggable2D draggableObject, Collider2D targetCollider) { DraggableObject = draggableObject; TargetCollider = targetCollider; }
public DragCancelledEvent(Draggable2D draggableObject) { DraggableObject = draggableObject; }