| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- const PlayerStateStatic = require('PlayerState');
- cc.Class({
- extends: cc.Component,
- properties: {
- Barrier: {
- default: null,
- type: cc.Node
- },
- },
- start : function() {
- },
- // onCollisionEnter: function (other) {
- // if(other.node.name === 'PlayerCollisionLine')
- // {
- // // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine");
- // // var PlayerStateScript = PlayerCollisionLine.Hero.getComponent("PlayerState");
- // // PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.PerfectHurdleBand;
- // // PlayerStateScript.AccelerationBandCenterTouched = this;
- // // cc.log(PlayerStateScript.CurrentInZoneType );
- // }
- // },
- // onCollisionStay: function (other) {
- // // console.log('on collision stay');
- // if(other.node.name === 'PlayerCollisionLine')
- // {
- // console.log('相交 中 中');
- // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine");
- // var PlayerStateScript = PlayerCollisionLine.Hero.getComponent("PlayerState");
- // PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.PerfectHurdleBand;
- // PlayerStateScript.AccelerationBandCenterTouched = this;
- // // cc.log(PlayerStateScript.CurrentInZoneType );
- //
- // }
- // },
- // onCollisionExit: function (other)
- // {
- // if(other.node.name === 'PlayerCollisionLine') {
- // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine");
- // var HeroControlScript = PlayerCollisionLine.Hero.getComponent("HeroControl");
- // var PlayerStateScript = PlayerCollisionLine.Hero.getComponent("PlayerState");
- // if(!PlayerStateScript.BTouchedScreenInTheZone)
- // {
- // HeroControlScript.Stagger();
- //
- // this.Barrier.getComponent("Barrier").FallingDown();
- // }
- // PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.None;
- // PlayerStateScript.BTouchedScreenInTheZone = false;
- // }
- // },
- // 只在两个碰撞体开始接触时被调用一次
- onBeginContact: function (contact, selfCollider, otherCollider) {
- // CustomLog("撞了",otherCollider);
- if(otherCollider.node.name === 'Hero')
- {
- CustomLog("刚体 跨栏 完美 ,",otherCollider.node.name);
- var PlayerStateScript = otherCollider.getComponent("PlayerState");
- // var PlayerCollisionLine = otherCollider.getComponent("PlayerCollisionLine");
- PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.PerfectHurdleBand;
- PlayerStateScript.AccelerationBandCenterTouched = this;
- }
- },
- // 只在两个碰撞体结束接触时被调用一次
- onEndContact: function (contact, selfCollider, otherCollider) {
- if(otherCollider.node.name === 'Hero')
- {
- // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine");
- var HeroControlScript = otherCollider.getComponent("HeroControl");
- var PlayerStateScript = otherCollider.getComponent("PlayerState");
- if(!PlayerStateScript.BTouchedScreenInTheZone)
- {
- HeroControlScript.Stagger();
- this.Barrier.getComponent("Barrier").FallingDown();
- }
- PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.None;
- PlayerStateScript.BTouchedScreenInTheZone = false;
- }
- },
- // 每次将要处理碰撞体接触逻辑时被调用
- onPreSolve: function (contact, selfCollider, otherCollider) {
- },
- // 每次处理完碰撞体接触逻辑时被调用
- onPostSolve: function (contact, selfCollider, otherCollider) {
- },
- });
|