Upload
solielmutya
View
124
Download
3
Embed Size (px)
Citation preview
DRAG AND DROPand
COLLISION DETECTION
ENGR. SOLIEL G. MUTYAJUNE 2016
COLOR CODES• Variable Name –
• Data Type –
• Instance Name –
• Function Name –
• AS3 Keywords –
• COMMENTS –
EXAMPLE 1: Simple Drag and Dropstop(); //hat to be draggable upon mousedown
function DragHat(event:MouseEvent): void {hatMC.startDrag();}
hatMC.addEventListener(MouseEvent.MOUSE_DOWN, DragHat); //stop the hat from dragging when we release our left click button
function ReleaseHat(event:MouseEvent):void {hatMC.stopDrag(); //stop dragging the hat}
hatMC.addEventListener(MouseEvent.MOUSE_UP, ReleaseHat);
EXAMPLE 1: Simple Drag and Drop //drag undershirtfunction dragUnderShirtMC(event:MouseEvent):void {undershirtMC.startDrag();}
undershirtMC.addEventListener(MouseEvent.MOUSE_DOWN, dragUnderShirtMC); //release undershirtfunction releaseUnderShirtMC(event:MouseEvent):void { undershirtMC.stopDrag();}
undershirtMC.addEventListener(MouseEvent.MOUSE_UP, releaseUnderShirtMC);
EXAMPLE 1: Simple Drag and Drop //drag skirtfunction dragSkirt(event:MouseEvent):void {skirtMC.startDrag();}
skirtMC.addEventListener(MouseEvent.MOUSE_DOWN, dragSkirt); //release skirtfunction releaseSkirt(event:MouseEvent):void {skirtMC.stopDrag();}
skirtMC.addEventListener(MouseEvent.MOUSE_UP, releaseSkirt);
EXAMPLE 2: DRAG-AND-DROP WITH DIMENSIONS
circle_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag);square_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag);stage.addEventListener(MouseEvent.MOUSE_UP, drop); function drag(e:MouseEvent):void{ e.target.startDrag(false, new Rectangle(75,50,350,250));}
function drop(e:MouseEvent):void{ stopDrag();}
EXAMPLE 3: DRAG-AND-DROP WITH DYNAMIC TEXT
stop(); //drag circle
function dragCircle(event:MouseEvent):void {circleMC.startDrag();}
circleMC.addEventListener(MouseEvent.MOUSE_DOWN, dragCircle); //release circle
function releaseCircle(event:MouseEvent):void {circleMC.stopDrag();}
circleMC.addEventListener(MouseEvent.MOUSE_UP, releaseCircle);
EXAMPLE 3: DRAG-AND-DROP WITH DYNAMIC TEXT
circleMC.addEventListener(MouseEvent.MOUSE_UP, releaseCircle); //check if circle is inside the squarefunction checkCircleLocation(event:MouseEvent): void {if (circleMC.x > 300 && circleMC.x <425 && circleMC.y >130 && circleMC.y <250)
{myText.text = "Correct";}
}circleMC.addEventListener(MouseEvent.MOUSE_UP, checkCircleLocation);
DRAG-AND-DROP WITH COLLISION DETECTION
square1_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag);stage.addEventListener(MouseEvent.MOUSE_UP, drop); function drag(e:MouseEvent):void{ square1_mc.startDrag();} function drop(e:MouseEvent):void{ stopDrag(); if (square1_mc.hitTestObject(square2_mc)) { trace("Collision detected!"); } else { trace("No collision."); }}