| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- cc.Class({
- extends: cc.Component,
- properties: {
- numberOfCollisions: 0,
- },
- start() {
- //只要是空白区域,直接结束游戏
- // console.log('GlobalData.game.playerCurrentZone', GlobalData.game.playerCurrentZone)
- if (GlobalData.game.playerCurrentZone == GlobalData.GameManager.EnterZoneName.null) {
- //游戏结束
- GlobalData.gameMode.GameOver();
- }
- },
- onCollisionEnter: function (other) {
- // console.log(other.node.name)
- //只有第一个碰撞有效
- if (this.numberOfCollisions >= 1)
- return;
- // console.log(other.node.name)
- this.numberOfCollisions++;
- GlobalData.game.isMustTouch = true;
- // return;
- if (other.node.name === 'AccelerationBandNormal')//AccelerationBand
- {
- GlobalData.gameMode.AddGameSpeed(100);
- GlobalData.game.getHeroControl().resetPerfectGrade();//非完美点击,则重置perfectGrade
- GlobalData.game.getHeroControl().playAudioByName("ClickNormal");
- if (GlobalData.game.currentSpawnSport == 3) {//标枪项目
- GlobalData.game.javeCount += 7;
- }
- else if (GlobalData.game.currentSpawnSport == 1) {//跳远
- GlobalData.game.longJumpCount += 0.7;
- }
- GlobalData.game.getHeroControl().PlayerAnimControl.SpeedChange();
- //加分
- GlobalData.game.GameScore += 100;
- }
- else if (other.node.name === 'AccelerationBandPerfect') {
- GlobalData.gameMode.AddGameSpeed(300);
- // this.PlayerControlPro.SpeedUp(PlayerStateStatic.ColliderSpeedUpPoint.AccelerationBandCenter);
- //perfect完美提示
- GlobalData.game.getGameUIState().OnPayPerfectAnimation();
- GlobalData.game.getHeroControl().addPerfectGradeAndPlay();
- if (GlobalData.game.currentSpawnSport == 3) {//标枪项目
- GlobalData.game.javeCount += 10.5;
- }
- else if (GlobalData.game.currentSpawnSport == 1) {//跳远
- GlobalData.game.longJumpCount += 0.9;
- }
- GlobalData.game.getHeroControl().PlayerAnimControl.SpeedChange();
- //提示白色速度带
- other.node.parent.getChildByName('WhiteAccelerationBandCenter').active = true;
- //加分
- GlobalData.game.GameScore += 300;
- } else if (other.node.name === 'EndNormalLongJumpBand') {//最后一个跳远点,蓝色区域
- GlobalData.game.longJumpCount += 0.7;
- GlobalData.game.getHeroControl().takeOffDistance = this.node.convertToWorldSpaceAR(cc.Vec2.ZERO).x + 100
- - GlobalData.game.getHeroControl().node.convertToWorldSpaceAR(cc.Vec2.ZERO).x;
- GlobalData.game.getHeroControl().HeroLongJump();
- }
- else if (other.node.name === 'EndPerfectfLongJumpBand') {//最后一个跳远点,黄色区域
- GlobalData.game.getHeroControl().HeroLongJump();
- GlobalData.game.longJumpCount += 0.9;
- //提示白色速度带
- other.node.parent.getChildByName('WhiteAccelerationBandCenter').active = true;
- }
- else if (other.node.name === 'NormalHurdleBand') {
- //跨栏 加速带 todo
- GlobalData.game.getHeroControl().PlayerAnimControl.JumpToHurdle();
- var animCtrl = other.node.parent.getChildByName('Railing').getComponent(cc.Animation);
- this.scheduleOnce(function() {
- animCtrl.play("RailingShake");
- }, 0.25);
- //加分
- GlobalData.game.GameScore += 100;
- }
- else if (other.node.name === 'PerfectHurdleBand') {
- //跨栏 加速带 todo
- GlobalData.game.getHeroControl().PlayerAnimControl.JumpToHurdle();
- //提示白色速度带
- other.node.parent.getChildByName('WhiteAccelerationBandCenter').active = true;
- //加分
- GlobalData.game.GameScore += 300;
- } else if (other.node.name === 'GroundCollision') {
- GlobalData.game.isMustTouch = false;
- //游戏结束
- GlobalData.gameMode.GameOver();
- }
- },
- });
|