Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package
- {
- import Characters.FireBoy;
- import Characters.WaterGirl;
- import flash.display.Bitmap;
- import flash.display.DisplayObject;
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.events.KeyboardEvent;
- import Map.Level;
- import Platforms.Platform;
- /**
- * ...
- * @author Andrew Dean
- */
- public class Main extends Sprite
- {
- //adding background image
- [Embed(source="Assets/Background2.jpg")]
- public var BackGround:Class;
- var picture:Bitmap = new BackGround();
- //adding characters as vars
- public var FireHero:FireBoy
- public var WaterHero:WaterGirl
- //platforms use
- //movement
- public var leftKeyDown:Boolean = false;
- public var rightKeyDown:Boolean = false;
- public var aKeyDown:Boolean = false;
- public var dKeyDown:Boolean = false;
- //jumping
- public var upKeyDown:Boolean = false;
- public var wKeyDown:Boolean = false;
- //jumping math
- private var jumpHeight:Number = 10;
- private var orginalFireYpos:Number;
- private var ground:Number = 800;
- private var orginalWaterYpos:Number;
- private var Gravity:Number = 0.5;
- private var FireJumpVelocity:Number;
- private var WaterJumpVelocity:Number;
- //adding level map as var
- public var levelDesign:Level;
- public function Main():void
- {
- if (stage) init();
- else addEventListener(Event.ADDED_TO_STAGE, init);
- }
- private function init(e:Event = null):void
- {
- removeEventListener(Event.ADDED_TO_STAGE, init);
- // entry point
- //adding background
- stage.addChild(picture);
- //adding level/platforms
- levelDesign = new Level();
- stage.addChild(levelDesign);
- //adding fireboy
- FireHero = new FireBoy();
- FireHero.x = 50
- FireHero.y = 500
- stage.addChild(FireHero);
- //adding watergirl
- WaterHero = new WaterGirl();
- WaterHero.x = 60
- WaterHero.y = 500
- stage.addChild(WaterHero);
- //adding event listeners for when charcters are in the frame
- WaterHero.addEventListener(Event.ENTER_FRAME, WaterMove);
- FireHero.addEventListener(Event.ENTER_FRAME, FireMove);
- //adding keyboard listeners
- stage.addEventListener(KeyboardEvent.KEY_DOWN, checkKeysDown);
- stage.addEventListener(KeyboardEvent.KEY_UP, checkKeysUp);
- }
- public function FireMove(event:Event):void
- {
- //move the character based on which keys are down
- //fireboy
- if (leftKeyDown)
- {
- FireHero.x = FireHero.x - 5;
- }
- if (rightKeyDown)
- {
- FireHero.x = FireHero.x + 5;
- }
- if (upKeyDown)
- {
- FireHero.y -= FireJumpVelocity;
- FireJumpVelocity -= Gravity;
- }
- if (upKeyDown && FireHero.y >= orginalFireYpos)
- {
- upKeyDown = false;
- }
- FireCollision();
- }
- public function WaterMove(event:Event):void{
- {
- //move the character based on which keys are down
- //watergirl
- if (aKeyDown)
- {
- WaterHero.x = WaterHero.x - 5;
- }
- if (dKeyDown)
- {
- WaterHero.x = WaterHero.x + 5;
- }
- if (wKeyDown)
- {
- WaterHero.y -= WaterJumpVelocity;
- WaterJumpVelocity -= Gravity;
- }
- if (wKeyDown && WaterHero.y >= orginalFireYpos)
- {
- wKeyDown = false
- }
- }
- }
- public function checkKeysDown (event:KeyboardEvent):void {
- //fireboy
- //left
- if (event.keyCode == 37)
- {
- leftKeyDown = true;
- }
- //right
- if (event.keyCode == 39)
- {
- rightKeyDown = true;
- }
- //jumping
- if (event.keyCode == 38 && !upKeyDown)
- {
- upKeyDown = true;
- orginalFireYpos = FireHero.y;
- FireJumpVelocity = jumpHeight;
- }
- //watergirl
- //left
- if (event.keyCode == 65)
- {
- aKeyDown = true;
- }
- //right
- if (event.keyCode == 68)
- {
- dKeyDown = true;
- }
- //jumping
- if (event.keyCode == 87)
- {
- wKeyDown = true;
- orginalWaterYpos = WaterHero.y;
- WaterJumpVelocity = jumpHeight;
- }
- }
- public function checkKeysUp(event:KeyboardEvent):void {
- //fireboy
- if (event.keyCode == 37)
- {
- leftKeyDown = false;
- }
- if (event.keyCode == 39)
- {
- rightKeyDown = false;
- }
- //watergirl
- if (event.keyCode == 65)
- {
- aKeyDown = false;
- }
- if (event.keyCode == 68)
- {
- dKeyDown = false;
- }
- }
- public function FireCollision():void{
- for (var i:int = 0; i < levelDesign.platformHolder.numChildren; i++)
- {
- var platform:Platform = Platform(levelDesign.platformHolder.getChildAt(i));
- if (FireHero.hitTestObject(platform))
- {
- orginalFireYpos = platform.y - FireHero.height;
- }
- else
- {
- orginalFireYpos = stage.stageHeight - FireHero.height;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment