Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var INIT_LEVEL5 = false;
- var level5 = baseLayer.extend
- ({
- gravGradient:null,
- boostObj:null,
- ctor:function ()
- {
- //Check if accel level then turn off
- if(GameVars.isAccelLvl) GameVars.isAccelLvl = false;
- this._super();
- //Init with current level
- this.init(5);
- //Array for boost collision bodies
- this.boostObj = [];
- this.collEnt = [];
- //Unlock the current level
- this.unlockLevel();
- //start Physics system
- this.initPhysics();
- //Create Hud Layer
- this.HudLayer = new HudLayer();
- this.map00 = new cc.TMXTiledMap(res.level5_tmx);
- //Create bg Graident
- this.createBakcgroundGradient();
- GameVars.mapWidth = this.map00.getContentSize().width;
- GameVars.mapHeight = this.map00.getContentSize().height;
- GameVars.mapX = this.map00.getPositionX();
- GameVars.mapY = this.map00.getPositionY();
- //Create Layer structure
- this.gameLayer = new cc.Layer();
- this.gameLayer.addChild(this.gradient,0);
- this.loadBaseObjects(this.map00, true);
- this.loadObjects(this.map00, 0);
- this.mPlayer = new Player(GameVars.startPosx,GameVars.startPosy,this.space,this.sendId);
- this.gameLayer.addChild(this.mPlayer);
- this.gameLayer.addChild(this.gravGradient);
- this.gameLayer.addChild(this.map00,0);
- this.addChild(this.gameLayer);
- this.addChild(this.HudLayer);
- this.addChild(this.startTimerLabel);
- this.HudLayer.setVisible(false);
- //Start offset sequence
- if(GameVars.scaleFactor == 2)
- this.startGameSeq(0.53,1550,360);
- else
- this.startGameSeq(0.45,1150,180);
- //create the intro numbers
- this.createNumbers();
- if(GameVars.scaleFactor == 2)
- this.startSequnce(1550,360);
- else
- this.startSequnce(1150, 180);
- //Create follow action on player to create a camera effects
- var followAction = cc.Follow.create(this.mPlayer.shape.image,cc.rect(0,0,this.map00.getContentSize().width, this.map00.getContentSize().height));
- this.gameLayer.runAction(followAction);
- this.stopHud = true;
- this.createPauseMenu(this.mPlayer,this);
- this.pauseBtn.visible = false;
- this.startMusic();
- GameVars.canMove = false;
- },
- loadObjects:function(map,mapIndex)
- {
- //Load boost Objects
- var boosters = map.getObjectGroup("boostObj");
- var boostArray = boosters.getObjects();
- for(var i = 0; i < boostArray.length; i++)
- {
- var boost = new Boost(this.space,cc.p(boostArray[i]["x"],boostArray[i]["y"]),boostArray[i]["width"],boostArray[i]["height"],boostArray[i]["type"]);
- this.gameLayer.addChild(boost);
- this.boostObj.push(boost);
- }
- //Load gravity Switch Objects
- var gravSwitch = map.getObjectGroup("switch");
- var switchArray = gravSwitch.getObjects();
- for(var i = 0; i < switchArray.length; i++)
- {
- var collType = SpriteTag.gravOn;
- if(switchArray[i]["type"] == 1)
- {
- collType = SpriteTag.gravOff;
- }
- createStaticBody(this.space,cc.p(switchArray[i]["x"] + switchArray[i]["width"] / 2, switchArray[i]["y"] + switchArray[i]["height"] / 2),
- switchArray[i]["width"],switchArray[i]["height"],true,collType);
- }
- //Load swing saw objects
- var swingSaw = map.getObjectGroup("swingSaw");
- var swingArray = swingSaw.getObjects();
- for(var i = 0; i < swingArray.length; i++)
- {
- var swingSaw = new SpinningSaw(this.space,cc.p(swingArray[i]['x'], swingArray[i]['y']), swingArray[i]['type']);
- this.gameLayer.addChild(swingSaw);
- }
- //Load gravity switch gradient
- this.gravGradient = cc.LayerGradient.create(cc.color(217,205,90,255),cc.color(242,205,90,255));
- this.gravGradient.setStartOpacity(100);
- this.gravGradient.setEndOpacity(100);
- this.gravGradient.setContentSize(360 * GameVars.scaleFactor,1000 * GameVars.scaleFactor);
- this.gravGradient.x = switchArray[1]["x"];
- if(GameVars.scaleFactor == 1)
- this.gravGradient.y = switchArray[1]["y"] + GameVars.TileSize;
- else
- this.gravGradient.y = switchArray[1]["y"];
- //Load Saws
- var saws = map.getObjectGroup("saws");
- var sawArray = saws.getObjects();
- for (var i = 0; i < sawArray.length; i++)
- {
- var saw = new Saw(this.space,cc.p(sawArray[i]["x"] + sawArray[i]["width"] / 2,sawArray[i]["y"] + sawArray[i]["height"] / 2));
- this.gameLayer.addChild(saw);
- }
- },
- collisionBoost:function(arbiter,space)
- {
- this.mPlayer.boost(1500);
- this.boostObj[0].startAnim();
- cc.audioEngine.playEffect(res.bounceSnd_wav);
- },
- collisionGravOn:function()
- {
- //Flip Gravity
- this.space.gravity = cp.v(0, (GameVars.gravity * GameVars.scaleFactor));
- if(!GameVars.isGravityFlipped)
- {
- //If its not flipped already then flip it
- cc.audioEngine.playEffect(res.gravitySwitch_mp3, 0);
- var action = cc.RotateBy.create(0.1, 180);
- this.mPlayer.shape.image.runAction(action);
- }
- GameVars.isGravityFlipped = true;
- },
- collisionGravOff:function()
- {
- //Flip gravity back
- this.space.gravity = cp.v(0, -(GameVars.gravity * GameVars.scaleFactor));
- if(GameVars.isGravityFlipped)
- {
- //If its flipped back then rotate sprite
- cc.audioEngine.playEffect(res.gravityOff_wav, 0);
- var action = cc.RotateBy.create(0.1, 180);
- this.mPlayer.shape.image.runAction(action);
- }
- GameVars.isGravityFlipped = false;
- },
- collisionGoal:function (arbiter,space)
- {
- this.createParticleSys();
- //stop time and play particles
- //and play sequence
- this.mPlayer.stopMoving();
- cc.audioEngine.playEffect(res.sparkleSound_mp3);
- this.stopHud = true;
- GameVars.levelTime = this.time / 100;
- GameVars.canMove = false;
- var sprite_action = cc.moveBy(1, -100, 0);
- var endLev = cc.callFunc(this.endLevel,this);
- this.mPlayer.runAction(cc.sequence(cc.delayTime(1),sprite_action,endLev));
- }
- });
- var gameSceneLvl5 = cc.Scene.extend({
- onEnter:function ()
- {
- this._super();
- if (INIT_LEVEL5 == false)
- {
- GameVars.canMove = true;
- INIT_LEVEL5 = true;
- var gameLay = new level5();
- this.addChild(gameLay);
- }
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement