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;
- public class ladyBuggMain extends MovieClip
- {
- // Items
- private var ladyBugg:LLadyBugg;
- private var backg:LBackg;
- private var leaves:LLeaves;
- private var gameOverPoster:LGameOverPoster;
- private var flowers:LFlowers;
- private var starting:LStart;
- private var flowerS:Sprite;
- //Array
- private var maxFlowers:int = 10;
- private var flowerArray:Array;
- // Booleans
- private var frikActive = false;
- private var flowerQuota = false;
- //Speed
- private var speed:Number = 0;
- private var maxSpeed:Number = 7;
- private var frik:Number = 0.8;
- private var leavesSpeed:Number = 0;
- //Directions
- private var directions:Number = 0;
- private var turnLadyBugg:Number = 0;
- private var lbts:Number = 7; //ladyBugTurnSpeed
- //score
- private var score:Number = 0;
- public function ladyBuggMain()
- {
- backg = new LBackg();
- addChild (backg);
- backg.x = 90;
- backg.y = -57;
- leaves = new LLeaves();
- addChild (leaves);
- leaves.x = 90;
- leaves.y = -57;
- flowerS = new Sprite();
- addChild (flowerS);
- flowerS.x = 0;
- flowerS.y = 0;
- ladyBugg = new LLadyBugg();
- addChild (ladyBugg);
- ladyBugg.x = 400;
- ladyBugg.y = 300;
- gameOverPoster = new LGameOverPoster();
- addChild (gameOverPoster);
- gameOverPoster.x = 0;
- gameOverPoster.y = 0;
- gameOverPoster.visible = false;
- starting = new LStart();
- addChild (starting);
- starting.x = 40;
- starting.y = 40;
- starting.visible = true;
- addEventListener(Event.ENTER_FRAME, onFrameLoop);
- stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed );
- stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased );
- }
- public function onFrameLoop(e:Event):void
- {
- //trace(speed);
- leavesSpeed = speed * 0.5;
- balancingTheLeaves();
- if (starting.visible == false && flowerQuota == false)
- makeFlowers();
- //Friktion
- if (frikActive == true && speed != 0)
- speed *= frik;
- if (speed < 2 && speed > -2)
- {
- trace("fartX satt til 0!");
- speed = 0;
- frikActive = false;
- }
- /* if(speed < 2 && frikActiveU == true)
- {
- speed = 0;
- frikActiveU = false;
- }
- if (frikActiveD == true)
- speed *= frik;
- if(speed > -2 && frikActiveD == true)
- {
- speed = 0;
- frikActiveD = false;
- }*/
- if (speed !=0 && turnLadyBugg < 40 && turnLadyBugg > -40)
- directions += turnLadyBugg;
- backg.x -= Math.cos(directions*Math.PI/180) * leavesSpeed;
- backg.y -= Math.sin(directions*Math.PI/180) * leavesSpeed;
- flowerS.x -= Math.cos(directions*Math.PI/180) * speed;
- flowerS.y -= Math.sin(directions*Math.PI/180) * speed;
- leaves.x -= Math.cos(directions*Math.PI/180) * speed; //Tar vinkler i radialer
- leaves.y -= Math.sin(directions*Math.PI/180) * speed;
- ladyBugg.rotation = directions; //Tar vinkel i grader deform må vi mauelt fine ut av litt ting. Rundt en sirkel har du 3.14 radianer x 2 altså 2 pi. radian = grader * (Math.PI/180)
- if ( flowerQuota == true)
- {
- for (var j:int = 0; j < flowerArray.length; j++)
- {
- if (flowerArray[j].hitTestObject(ladyBugg))
- {
- score += 1;
- trace(score);
- this.flowerS.removeChild(flowerArray[j]);
- trace(flowerArray.length);
- flowerArray.splice(j, 1);
- trace(flowerArray.length);
- }
- }
- }
- }
- public function balancingTheLeaves()
- {
- if (leaves.hitTestPoint(ladyBugg.x,ladyBugg.y,true) == false)
- {
- trace('gameOver');
- gameOverPoster.visible = true;
- }
- }
- public function makeFlowers ():void
- {
- flowerArray = new Array();
- for (var i:Number = 0; i < maxFlowers; i++) // ; i++ forteller hva som skal skje på slutten av dette inlegget.
- {
- var flower:LFlowers = new LFlowers();
- flowerS.addChild(flower);
- flower.y = Math.random() * 600;
- flower.x = Math.random() * 800;
- trace("i = " + i);
- flowerArray.push(flower);
- }
- flowerQuota = true;
- }
- public function keyPressed(e:KeyboardEvent):void
- {
- starting.visible = false;
- var key:uint = e.keyCode;
- switch (key)
- {
- case Keyboard.SPACE:
- ladyBugg.gotoAndPlay(2);
- break;
- case Keyboard.UP:
- speed = maxSpeed;
- break;
- case Keyboard.DOWN:
- speed = -maxSpeed;
- break;
- case Keyboard.LEFT:
- turnLadyBugg += -lbts;
- break;
- case Keyboard.RIGHT:
- turnLadyBugg += lbts;
- break;
- }
- }
- public function keyReleased(e:KeyboardEvent):void
- {
- var key:uint = e.keyCode;
- switch (key)
- {
- case Keyboard.SPACE:
- ladyBugg.gotoAndStop(1);
- break;
- case Keyboard.UP:
- frikActive = true;
- break;
- case Keyboard.DOWN:
- frikActive = true;
- break;
- case Keyboard.LEFT:
- turnLadyBugg = 0;
- break;
- case Keyboard.RIGHT:
- turnLadyBugg = 0;
- break;
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment