import flash.events.*;
var rightArrow:Boolean;
var leftArrow:Boolean;
var upArrow:Boolean;
var downArrow:Boolean;
var speed:uint = 10;
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
stage.addEventListener(Event.ENTER_FRAME, moveClip);
function keyDownHandler(event:KeyboardEvent):void{
if (event.keyCode == Keyboard.RIGHT) {
rightArrow = true;
}
if (event.keyCode == Keyboard.LEFT) {
leftArrow = true;
}
if (event.keyCode == Keyboard.UP) {
upArrow = true;
}
if (event.keyCode == Keyboard.DOWN) {
downArrow = true;
}
}
private function keyUpHandler(event:KeyboardEvent) {
if (event.keyCode == Keyboard.RIGHT) {
rightArrow = false;
}
if (event.keyCode == Keyboard.LEFT) {
leftArrow = false;
}
if (event.keyCode == Keyboard.UP) {
upArrow = false;
}
if (event.keyCode == Keyboard.DOWN) {
downArrow = false;
}
}
function enterFrameHandler(event:Event):void{
if (rightArrow) {
_clip.x += speed;
}
if (leftArrow) {
_clip.x -= speed;
}
if (upArrow) {
_clip.y -= speed;
}
if (downArrow) {
_clip.y += speed;
}
}
Now we are going to make it so that when it goes off the right side of the stage, it will appear on the left. In the enter frame function, within the right arrow if stetment, put this code:
if(object_mc.x > stage.stageWidth){
object_mc.x = -(object_mc.width);
}
This makes it so that once the movieclip's x coordinate is off of the stage, It appears just off the left side of the screen. Now here is the enterframe function again with the wrap stage code inserted:
import flash.events.*;
var rightArrow:Boolean;
var leftArrow:Boolean;
var upArrow:Boolean;
var downArrow:Boolean;
var speed:uint = 10;
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
stage.addEventListener(Event.ENTER_FRAME, moveClip);
function keyPressed(event:KeyboardEvent) {
if (event.keyCode == Keyboard.RIGHT) {
rightArrow = true;
}
if (event.keyCode == Keyboard.LEFT) {
leftArrow = true;
}
if (event.keyCode == Keyboard.UP) {
upArrow = true;
}
if (event.keyCode == Keyboard.DOWN) {
downArrow = true;
}
}
function keyReleased(event:KeyboardEvent) {
if (event.keyCode == Keyboard.RIGHT) {
rightArrow = false;
}
if (event.keyCode == Keyboard.LEFT) {
leftArrow = false;
}
if (event.keyCode == Keyboard.UP) {
upArrow = false;
}
if (event.keyCode == Keyboard.DOWN) {
downArrow = false;
}
}
function moveClip(event:Event) {
if (rightArrow) {
object_mc.x += speed;
if (object_mc.x > stage.stageWidth) {
object_mc.x = -(object_mc.width);
}
}
if (leftArrow) {
object_mc.x -= speed;
if (object_mc.x < -(object_mc.width)) { object_mc.x = stage.stageWidth; } } if (upArrow) { object_mc.y -= speed; if (object_mc.y < -(object_mc.height)) { object_mc.y = stage.stageHeight; } } if (downArrow) { object_mc.y += speed; if (object_mc.y > stage.stageHeight) {
object_mc.y = -(object_mc.height);
}
}
}
This code all works basically the same as the first example. Post or email me any questions.
No comments:
Post a Comment