Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package
- {
- import flash.display.MovieClip;
- import flash.events.Event;
- import flash.events.KeyboardEvent;
- import flash.ui.Keyboard;
- import flash.display.Sprite;
- import flash.events.MouseEvent;
- import flash.events.TimerEvent;
- import flash.utils.Timer;
- import flash.sensors.Accelerometer;
- public class TrainMain extends MovieClip
- {
- // The elements used in this game as the enviroment.
- private var ground1:LGround;
- private var introAni:LIntroAni;
- private var introPlayB:LIntroPlayB;
- private var introInstruB:LIntroInstruB;
- private var instructions:LInstructions;
- private var gameOverPoster:LGameOverPoster;
- private var kittenFodder:LKittenFodder;
- private var forgrunn:LForgrunn;
- private var background1:LBackground1;
- private var togbunn:LTogBunn;
- private var automat:LAutomat;
- private var boxes:LBoxes;
- private var alien:LAlien;
- private var emergency:LEmergency;
- private var nrKittens:LNrkittens;
- private var pillow:LPillow;
- private var zamuel:LZamuel;
- private var barell:LBarell;
- private var alex:LAlex;
- private var loo:LLoo;
- //Key pressing E and F
- private var using:Boolean = false;
- private var pewpew:Boolean = false;
- private var kittenL:Boolean = false;
- private var kittenR:Boolean = false;
- private var nextSpawn:Boolean = true;
- // Picking the cats up booleans to keep from spam picking!
- private var boxesP:Boolean = true;
- private var emergencyP:Boolean = true;
- private var pillowP:Boolean = true;
- private var zamuelP:Boolean = true;
- private var barellP:Boolean = true;
- private var alexP:Boolean = true;
- //Walking
- private var walkL:Boolean=false;
- private var walkR:Boolean=false;
- private var walkU:Boolean=false;
- private var walkD:Boolean=false;
- private var standStill:Boolean=false;
- var Y: Number= 10; //Walking speed
- var S: Number=0.3; //Scaling of the character
- var SZ:Number=1.3; //Scaling the zombies
- var ZS:Number = 2; //Zombie Spawn - number of zombies spawning
- //Jumping
- private var gravity:Number = 2;
- private var jumpY:Number = 0;
- private var jumpSpeed:Number = -25;
- private var jumpingNow = false;
- var KFC: Number = 3; // Kitten Fodder Count
- private var kittenTimer:Number = 0;
- //Timer and game over
- private var timer:Timer = new Timer(4000, 1);
- private var timerMonster:Timer = new Timer(30000, 100);
- private var gameOver:Boolean = false;
- // private var monstersInPlay:Boolean = false;
- private var shoot:Boolean = false;
- private var looResett:Boolean = true;
- // The character
- private var character:LCharacter;
- // Sprite added to make sure I can hid all the elements when the game ends, and make it easier to restart it again as soom as the button is pressed.
- private var trainCart1:Sprite;
- private var forGround:Sprite;
- private var intro:Sprite;
- private var monster:Sprite;
- public var Monster:Array;
- public function TrainMain()
- {
- // Sprites that contains our items, this makes it easier for the items to move when the character should be moving.
- background1 = new LBackground1();
- addChild(background1);
- background1.x = 1374;
- background1.y = 407;
- background1.play();
- trainCart1 = new Sprite();
- addChild(trainCart1);
- trainCart1.x = 0;
- trainCart1.y = 0;
- trainCart1.visible = false;
- kittenFodder = new LKittenFodder();
- addChild(kittenFodder);
- kittenFodder.x = 1500;
- kittenFodder.y = 1500;
- kittenFodder.visible = false;
- kittenFodder.scaleX = kittenFodder.scaleY = S;
- character= new LCharacter();
- addChild(character);
- character.x = 400;
- character.y = 400;
- character.gotoAndStop(1);
- character.scaleX = character.scaleY = S;
- monster = new Sprite();
- addChild(monster);
- monster.x = 0;
- monster.y = 0;
- monster.visible = true;
- forGround = new Sprite();
- addChild(forGround);
- forGround.x = 0;
- forGround.y = 0;
- forGround.visible = false;
- nrKittens = new LNrkittens();
- addChild (nrKittens);
- nrKittens.x = 1160;
- nrKittens.y = 77;
- gameOverPoster = new LGameOverPoster();
- addChild(gameOverPoster);
- gameOverPoster.x = 0;
- gameOverPoster.y = 0;
- gameOverPoster.visible = false;
- intro = new Sprite();
- addChild(intro);
- intro.x = 0;
- intro.y = 0;
- intro.visible = true;
- insideTrainCart1();
- introAndGuide();
- stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyPressed);
- stage.addEventListener(KeyboardEvent.KEY_UP, onKeyReleased);
- gameOverPoster.addEventListener(MouseEvent.CLICK, resett);
- timerMonster.addEventListener(TimerEvent.TIMER, thingsGettingHarder);
- Monster = new Array();
- }
- public function thingsGettingHarder (e:TimerEvent):void
- {
- trace(ZS);
- ZS += 1;
- nextSpawn = true;
- spawnZombie();
- }
- public function spawnZombie():void
- {
- var tempMonster:MovieClip = new LZombie();
- tempMonster.x = character.x + 200 + (Math.random() * 600);
- tempMonster.y = 400 + (Math.random() * 150);
- tempMonster.scaleX = tempMonster.scaleY = SZ;
- monster.addChild(tempMonster);
- Monster.push(tempMonster);
- monster.visible = true;
- }
- public function onFrameLoop(e:Event):void
- {
- trace (looResett);
- if(Monster.length < ZS && nextSpawn == true)
- spawnZombie();
- for (var i:int = 0; i < Monster.length; ++i)
- {
- if(Monster[i].x > character.x)
- {
- Monster[i].x -= 2;
- Monster[i].scaleX = -1;
- }
- if(Monster[i].x < character.x)
- {
- Monster[i].x += 2;
- Monster[i].scaleX = 1;
- }
- if(Monster[i].y > character.y)
- {
- Monster[i].y -= 2;
- }
- if(Monster[i].y < character.y)
- {
- Monster[i].y += 2;
- }
- if (Monster[i].hitTestObject(kittenFodder) && Monster[i].visible == true)
- {
- Monster[i].visible = false;
- kittenFodder.visible = false;
- kittenFodder.x = 1500;
- ZS += 1;
- trace(ZS);
- nextSpawn = false;
- }
- if (character.hitTestPoint(Monster[i].x, Monster[i].y, true) && Monster[i].visible == true && jumpingNow == false)
- {
- gameOver = true;
- }
- }
- moving();
- hitTestKittens();
- kittenInPlay();
- if (kittenTimer != 0)
- kittenTimer --;
- if (jumpingNow == true && jumpY < 25 || character.y < 300)
- {
- character.y += jumpY;
- jumpY += gravity;
- character.gotoAndPlay(153);
- if (jumpY == 25)
- {
- jumpingNow = false;
- jumpY = 0;
- standStill = true;
- if (character.y < 350 )
- character.y = 380;
- }
- }
- /* if (gameOver == true)
- {
- gameOverPoster.visible = true;
- }*/
- if (ground1.hitTestPoint(character.x,character.y,true) == false)
- {
- if (jumpingNow == false)
- gameOver = true;
- }
- }
- //Resett
- public function resett(event:MouseEvent)
- {
- gameOverPoster.visible = false;
- gameOver = false;
- trainCart1.x = 0;
- trainCart1.y = 0;
- trainCart1.visible = true;
- forGround.x = 0;
- forGround.y = 0;
- forGround.visible = true;
- character.x = 400;
- character.y = 400;
- ZS = 2;
- KFC = 3;
- trace (ZS);
- spawnZombie();
- }
- public function redButton ()
- {
- boxesP = true;
- emergencyP = true;
- pillowP = true;
- zamuelP = true;
- barellP = true;
- alexP = true;
- //Resetting the movieClip
- boxes.gotoAndStop(1);
- emergency.gotoAndStop(1);
- barell.gotoAndPlay(1);
- alex.gotoAndStop(1);
- ZS = 2;
- trace (ZS);
- KFC += 1;
- Monster.length(2);
- }
- //InsideTrain
- public function insideTrainCart1()
- {
- // Ground objects
- alien= new LAlien();
- trainCart1.addChild(alien);
- alien.x = 334;
- alien.y = 340;
- alien.scaleX = alien.scaleY = 0.8;
- togbunn= new LTogBunn();
- trainCart1.addChild(togbunn);
- togbunn.x = 845;
- togbunn.y = 700;
- togbunn.scaleX = togbunn.scaleY = 0.8;
- ground1= new LGround();
- trainCart1.addChild(ground1);
- ground1.x = 1825;
- ground1.y = 313;
- ground1.scaleX = ground1.scaleY = 0.8;
- //Extra objects you can interact with
- loo= new LLoo();
- trainCart1.addChild(loo);
- loo.x = 3900;
- loo.y = 385;
- loo.scaleX = loo.scaleY = 1.2;
- emergency = new LEmergency();
- trainCart1.addChild(emergency);
- emergency.x = 240;
- emergency.y = 320;
- emergency.gotoAndStop(1);
- emergency.scaleX = emergency.scaleY = 0.4;
- zamuel = new LZamuel();
- trainCart1.addChild(zamuel);
- zamuel.x = 1285;
- zamuel.y = 320;
- zamuel.gotoAndStop(1);
- zamuel.scaleX = zamuel.scaleY = 0.6;
- alex = new LAlex();
- trainCart1.addChild(alex);
- alex.x = 2425;
- alex.y = 320;
- alex.gotoAndStop(1);
- alex.scaleX = alex.scaleY = 0.6;
- automat = new LAutomat();
- trainCart1.addChild(automat);
- automat.x = -200;
- automat.y = 300;
- automat.scaleX = automat.scaleY = 1.2;
- pillow = new LPillow();
- trainCart1.addChild(pillow);
- pillow.x = 1105;
- pillow.y = 305;
- pillow.gotoAndStop(1);
- pillow.scaleX = pillow.scaleY = 0.6;
- barell = new LBarell();
- trainCart1.addChild(barell);
- barell.x = 3200;
- barell.y = 331;
- barell.gotoAndStop(1);
- //Infront
- forgrunn = new LForgrunn;
- forGround.addChild (forgrunn);
- forgrunn.x = 1797;
- forgrunn.y = 313;
- forgrunn.scaleX = forgrunn.scaleY = 0.8;
- boxes= new LBoxes();
- forGround.addChild(boxes);
- boxes.x = 3600;
- boxes.y = 460;
- boxes.gotoAndStop(1);
- }
- //Things inside the cart!! Kitteys
- public function hitTestKittens ()
- {
- nrKittens.kittenNr.text = "." + KFC + ".";
- if(character.hitTestObject(automat) && using == true)
- {
- looResett = true;
- using = false;
- }
- if (character.hitTestObject(automat) && KFC < 7)
- {
- KFC += 1;
- }
- if (character.hitTestObject(boxes) && using == true && boxesP == true)
- {
- boxes.play();
- KFC += 1;
- using = false;
- boxesP = false;
- }
- if (character.hitTestObject(emergency) && using == true && emergencyP == true)
- {
- emergency.play();
- KFC += 1;
- using = false;
- emergencyP = false;
- }
- if (character.hitTestObject(pillow) && using == true && pillowP == true)
- {
- pillow.play();
- KFC += 1;
- using = false;
- pillowP = false;
- }
- if (character.hitTestObject(zamuel) && using == true && zamuelP == true)
- {
- zamuel.play();
- using = false;
- zamuelP = false;
- }
- if (character.hitTestObject(barell) && using == true && barellP == true)
- {
- barell.play();
- KFC +=1;
- using = false;
- barellP = false;
- }
- if (character.hitTestObject(alex) && using == true && alexP == true)
- {
- alex.gotoAndStop(28);
- KFC +=2;
- using = false;
- alexP = false;
- }
- if (character.hitTestObject(loo) && using == true && looResett == true)
- {
- loo.play();
- using = false;
- looResett = false;
- redButton();
- }
- }
- //Keiitens
- public function kittenInPlay()
- {
- if (kittenR == true)
- {
- //trace("forward");
- kittenFodder.x += 15;
- kittenL = false;
- }
- if (kittenL == true)
- {
- kittenFodder.x -= 15;
- kittenR = false;
- }
- if (kittenTimer == 2)
- {
- kittenFodder.visible = false;
- }
- }
- //Monsters!
- //Monster damage
- //Intro
- public function introAndGuide()
- {
- introAni = new LIntroAni;
- intro.addChild(introAni);
- introAni.x = 640;
- introAni.y =359;
- introAni.play();
- timer.start();
- timer.addEventListener(TimerEvent.TIMER, timerListener);
- function timerListener (e:TimerEvent):void
- {
- introPlayB = new LIntroPlayB();
- intro.addChild(introPlayB);
- introPlayB.x = 680;
- introPlayB.y = 40;
- introInstruB = new LIntroInstruB();
- intro.addChild(introInstruB);
- introInstruB.x = 930;
- introInstruB.y = 400;
- introPlayB.addEventListener(MouseEvent.CLICK, drawEnviroment);
- introInstruB.addEventListener(MouseEvent.CLICK, introInstructions);
- function drawEnviroment(event:MouseEvent)
- {
- intro.visible = false;
- trainCart1.visible = true;
- forGround.visible = true;
- addEventListener(Event.ENTER_FRAME, onFrameLoop);
- timerMonster.start();
- }
- function introInstructions(event:MouseEvent)
- {
- intro.visible = false;
- instructions = new LInstructions();
- addChild(instructions);
- instructions.x = 0;
- instructions.y = 0;
- instructions.visible = true;
- introPlayB = new LIntroPlayB();
- addChild(introPlayB);
- introPlayB.x = 788;
- introPlayB.y = 357;
- introPlayB.visible = true;
- introPlayB.addEventListener(MouseEvent.CLICK, drawEnviroment);
- function drawEnviroment(event:MouseEvent)
- {
- intro.visible = false;
- instructions.visible = false;
- introPlayB.visible = false;
- trainCart1.visible = true;
- forGround.visible = true;
- }
- }
- }
- }
- // Walking!
- private function moving()
- {
- if(walkL && trainCart1.x < 660)
- {
- standStill=false;
- trainCart1.x += Y;
- forGround.x += Y;
- kittenFodder.x += Y;
- character.scaleX = -S;
- for (var i:int = 0; i < Monster.length; ++i)
- {
- Monster[i].x +=Y;
- }
- }
- if(walkR && trainCart1.x > -3570)
- {
- standStill=false;
- trainCart1.x -= Y;
- forGround.x -= Y;
- kittenFodder.x -= Y;
- character.scaleX = S;
- for (var i:int = 0; i < Monster.length; ++i)
- {
- Monster[i].x -=Y;
- }
- }
- if(walkU && character.y > 387 )
- {
- character.play();
- standStill=false;
- character.y -= Y;
- }
- if(walkD && character.y < 480)
- {
- character.play();
- standStill=false;
- character.y += Y;
- }
- if(standStill == true && pewpew == false)
- {
- character.gotoAndPlay(156);
- standStill = false;
- }
- }
- //Key Presses
- public function onKeyPressed(e:KeyboardEvent) : void
- {
- var key:uint = e.keyCode;
- switch (key)
- {
- case Keyboard.SPACE :
- if (jumpY < 0.1 && character.y > 300)
- {
- jumpY = jumpSpeed;
- jumpingNow = true;
- }
- break;
- case Keyboard.LEFT:
- if (walkL == false && pewpew == false)
- {
- walkL=true;
- character.gotoAndPlay(1);
- }
- break;
- case Keyboard.RIGHT:
- if (walkR == false && pewpew == false)
- {
- walkR=true;
- character.gotoAndPlay(1);
- }
- break;
- case Keyboard.UP:
- walkU=true;
- break;
- case Keyboard.DOWN:
- walkD=true;
- break;
- case Keyboard.E:
- using = true;
- break;
- case Keyboard.F:
- if (kittenTimer == 0 && KFC > 0)
- {
- KFC --;
- pewpew = true;
- shoot = true;
- character.gotoAndPlay(108);
- kittenFodder.x = character.x;
- kittenFodder.y = character.y - 85;
- kittenFodder.visible = true;
- kittenTimer = 80;
- kittenFodder.gotoAndPlay(1);
- //trace ("Kitten Finder: " + kittenFodder.x + ", " + kittenFodder.y);
- if (character.scaleX == S)
- {
- kittenR = true;
- kittenL = false;
- }
- if (character.scaleX == -S)
- {
- kittenR = false;
- kittenL = true;
- }
- }
- break;
- }
- }
- public function onKeyReleased(e:KeyboardEvent) : void
- {
- character.gotoAndStop(1);
- var key:uint = e.keyCode;
- switch (key)
- {
- case Keyboard.LEFT:
- walkL=false;
- standStill=true;
- break;
- case Keyboard.RIGHT:
- walkR=false;
- standStill=true;
- break;
- case Keyboard.UP:
- walkU=false;
- standStill=true;
- break;
- case Keyboard.DOWN:
- walkD=false;
- standStill=true;
- break;
- case Keyboard.E:
- using = false;
- break;
- case Keyboard.F:
- pewpew = false;
- break;
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment