// PACMAN "game" EXAMPLE package { import flash.display.*; // includes MovieClip class import flash.events.*; // includes KeyboardEvent class import flash.ui.*; // includes Keyboard class public class Wk5EnhancedPacman extends MovieClip { var leftArrow = false; var rightArrow = false; var upArrow = false; var downArrow = false; public function Wk5EnhancedPacman( ) { // Set the speed of Pacman pacman.speed = 30; // Event listener to check which key has been pressed stage.addEventListener( KeyboardEvent.KEY_DOWN, keyPressedDown ); // Event listener to check which key has been released stage.addEventListener( KeyboardEvent.KEY_UP, keyPressedUp ); // Frame Loop Event listener to move pacman stage.addEventListener( Event.ENTER_FRAME, movePacman ); } // end constructor function function keyPressedDown( evt: KeyboardEvent ) { if( evt.keyCode == Keyboard.RIGHT ) { rightArrow = true; } else if ( evt.keyCode == Keyboard.LEFT ) { leftArrow = true; } else if ( evt.keyCode == Keyboard.UP ) { upArrow = true; } else if ( evt.keyCode == Keyboard.DOWN ) { downArrow = true; } } // end keyPressedDown function function keyPressedUp( evt: KeyboardEvent ) { if( evt.keyCode == Keyboard.RIGHT ) { rightArrow = false; } else if ( evt.keyCode == Keyboard.LEFT ) { leftArrow = false; } else if ( evt.keyCode == Keyboard.UP ) { upArrow = false; } else if ( evt.keyCode == Keyboard.DOWN ) { downArrow = false; } } // end keyPressedUp function // Frame Event Handler function to move pacman around the stage function movePacman( evt: Event ) { if( leftArrow == true ) { pacman.x = pacman.x - pacman.speed; // move pacman to the left by the value of speed pacman.rotation = -180; // and rotate pacman to face left } if( upArrow == true ) { pacman.y = pacman.y - pacman.speed; pacman.rotation = -90; } if( rightArrow == true ) { pacman.x = pacman.x + pacman.speed; pacman.rotation = 0; } if( downArrow == true ) { pacman.y = pacman.y + pacman.speed; pacman.rotation = 90; } } // end movePacman function } // end class } // end package