const PlayerStateStatic = require('PlayerState'); cc.Class({ extends: cc.Component, properties: { }, // onCollisionEnter: function (other) { // if(other.node.name === 'PlayerCollisionLine') // { // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine"); // var PlayerStateScript = PlayerCollisionLine.Hero.getComponent("PlayerState"); // // PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.BehindAccelerationBand; // // cc.log(PlayerStateScript.CurrentInZoneType ); // // // // } // if(other.node.name === 'PlayerCollisionLine_ai') // { // console.log('相交 右 进'); // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine"); // var x =PlayerCollisionLine.Hero.x; // var userData = { // name: 2, // p: x, // }; // this.getComponent("Ai_count").addData("ai",userData); // } // }, // onCollisionExit: function (other) { // if(other.node.name === 'PlayerCollisionLine') { // // cc.log("我出去了吗",other.node.name); // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine"); // var HeroControlScript = PlayerCollisionLine.Hero.getComponent("HeroControl"); // var PlayerStateScript = PlayerCollisionLine.Hero.getComponent("PlayerState"); // if(!PlayerStateScript.BTouchedScreenInTheZone) // { // HeroControlScript.Stagger(); // } // PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.None; // PlayerStateScript.BTouchedScreenInTheZone = false; // var x =PlayerCollisionLine.Hero.x; // // cc.log("触碰点 右面 出",x); // // } // // if(other.node.name === 'PlayerCollisionLine_ai') // { // console.log('相交 右 出'); // // cc.log(PlayerStateScript.CurrentInZoneType ); // var userData = { // name: 3, // p: x, // }; // this.getComponent("Ai_count").addData("ai",userData); // // // } // }, // onCollisionStay: function (other) { // // if(other.node.name === 'PlayerCollisionLine_ai') // { // // console.log('相交 右 中'); // } // }, // 只在两个碰撞体开始接触时被调用一次 onBeginContact: function (contact, selfCollider, otherCollider) { // CustomLog("刚体 棍子 碰撞 进入,",selfCollider,otherCollider); // CustomLog("刚体 棍子限制 碰撞 进入 ,",otherCollider.node.name); if(otherCollider.node.name === 'Hero') { var PlayerStateScript = otherCollider.getComponent("PlayerState"); PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.BehindAccelerationBand; // cc.log("触碰点 左面 进",x); // cc.log("触碰点",PlayerStateScript.CurrentInZoneType ); } }, // 只在两个碰撞体结束接触时被调用一次 onEndContact: function (contact, selfCollider, otherCollider) { if(otherCollider.node.name === 'Hero') { // cc.log("我出去了吗",other.node.name); // var PlayerCollisionLine = other.getComponent("PlayerCollisionLine"); var HeroControlScript = otherCollider.getComponent("HeroControl"); var PlayerStateScript = otherCollider.getComponent("PlayerState"); if(!PlayerStateScript.BTouchedScreenInTheZone) { HeroControlScript.Stagger(); } PlayerStateScript.CurrentInZoneType = PlayerStateStatic.ZoneType.None; PlayerStateScript.BTouchedScreenInTheZone = false; // var x =PlayerCollisionLine.Hero.x; // cc.log("触碰点 右面 出",x); } }, // 每次将要处理碰撞体接触逻辑时被调用 onPreSolve: function (contact, selfCollider, otherCollider) { }, // 每次处理完碰撞体接触逻辑时被调用 onPostSolve: function (contact, selfCollider, otherCollider) { }, });