Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- stop();
- stage.addEventListener(Event.ENTER_FRAME, startLevel1);
- //ENGINE LISTENERS
- stage.addEventListener(Event.ENTER_FRAME, frameHandler);
- stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
- stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
- //PLAYER VARIABLE
- var Player:MovieClip;
- //MOVEMENT VARIABLES
- var jumpCount:Number;
- var _isGrounded:Boolean;
- var _canMoveRight:Boolean;
- var _canMoveLeft:Boolean;
- //ARROW KEY BOOLEANS
- var _rightKeydown:Boolean;
- var _leftKeydown:Boolean;
- var _upKeydown:Boolean;
- var _downKeydown:Boolean;
- //ARRAYS FOR TERRAIN, KEYS, LADDERS, ETC.
- var _solidsArray:Array = [];
- var _keysArray:Array = [];
- var _doorsArray:Array = [];
- var _laddersArray:Array = [];
- //LEVEL
- var _currentLevel:Number = 0;
- //STARTS THE LEVEL
- function startLevel1(evt:Event):void
- {
- //REMOVES EVENT LISTENER
- stage.removeEventListener(Event.ENTER_FRAME, startLevel1);
- //DEFINES CURRENT LEVEL
- _currentLevel = 1;
- //CREATES THE PLAYER
- Player = new mcPlayer();
- Player.x = 20;
- Player.y = stage.stageHeight - 50;
- Player.vx = 0;
- Player.vy = 0;
- //ADDS PLAYER TO THE STAGE
- stage.addChild(Player);
- //DEFINES EACH ARRAY
- _solidsArray = [sldTerrain1, sldTerrain2, sldTerrain3, sldTerrain4, sldTerrain5, sldTerrain6, sldTerrain7, sldTerrain8];
- _keysArray = [key01];
- _doorsArray = [door01];
- _laddersArray = [ladder01];
- }
- function frameHandler(evt:Event):void
- {
- //runs these functions every frame
- applyMovement();
- checkCollision();
- }
- function keyDownHandler(evt:KeyboardEvent):void
- {
- //turns on boolean if key is being pressed
- if (evt.keyCode == Keyboard.UP)
- {
- _upKeydown = true;
- }
- if (evt.keyCode == Keyboard.DOWN)
- {
- _downKeydown = true;
- }
- if (evt.keyCode == Keyboard.RIGHT)
- {
- _rightKeydown = true;
- }
- if (evt.keyCode == Keyboard.LEFT)
- {
- _leftKeydown = true;
- }
- }
- function keyUpHandler(evt:KeyboardEvent):void
- {
- //when you let go of the keys, the booleans turn off
- if (evt.keyCode == Keyboard.UP)
- {
- _upKeydown = false;
- }
- if (evt.keyCode == Keyboard.DOWN)
- {
- _downKeydown = false;
- }
- if (evt.keyCode == Keyboard.RIGHT)
- {
- _rightKeydown = false;
- }
- if (evt.keyCode == Keyboard.LEFT)
- {
- _leftKeydown = false;
- }
- }
- function applyMovement():void
- {
- //HANDLES Y VELOCITY
- for (var i:int = 0; i < 10; i++)
- {
- if (_upKeydown == true)
- {
- if (_isGrounded == true)
- {
- if (_doorsArray[i] != undefined)
- {
- if (Player.hitTestObject(_doorsArray[i]))
- {
- if (_keysArray[i].visible == false)
- {
- changeLevel();
- }
- else
- {
- _isGrounded = false;
- Player.vy += 12;
- }
- }
- else
- {
- _isGrounded = false;
- Player.vy += 12;
- }
- }
- }
- }
- }
- //handles velocity in the y direction
- if (_isGrounded == false)
- {
- Player.vy -= 1;
- }
- else
- {
- Player.vy = 0;
- }
- //moves the player in the y direction
- Player.y -= Player.vy;
- }
- function checkCollision():void
- {
- //TERRAIN TOP COLLISION
- for (var i:int = 0; i < _solidsArray.length; i++)
- {
- //if the player hits the top of any solid in the array, he won't move down any more
- if (Player.bottomSide.hitTestObject(_solidsArray[i].hitTop))
- {
- _isGrounded = true;
- jumpCount = 0;
- break;
- }
- else
- {
- _isGrounded = false;
- }
- }
- }
- function changeLevel():void
- {
- //CHANGES CURRENT LEVEL
- if (_currentLevel == 1)
- {
- clearLevel();
- toLevel2();
- }
- }
- function clearLevel():void
- {
- //REMOVES PLAYER FROM THE STAGE
- Player.parent.removeChild(Player);
- //REMOVES EVENT LISTENERS
- stage.removeEventListener(Event.ENTER_FRAME, frameHandler);
- stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
- stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
- }
- function toLevel2():void
- {
- gotoAndStop(10);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement