欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

碰撞检测怎么用不了?

程序员文章站 2024-03-16 16:49:16
...

我的碰撞检测这么用不了?是参数问题吗/
cc.Class({
extends: cc.Component,

properties: {
    player:{
        default:null,
        type:cc.Node,
    },
    qiqiu:{
        default:null,
        type:cc.Node,
    }
},

start () {
    cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN,this.keyDown,this); // onLoad 在UI线程监听  而callback在事件线程调用   第三个参数为线程传参
    //cc.systemEvent.on(cc.SystemEvent.EventType.KEY_UP,this.keyUp,this);

    this.player.on(cc.Node.EventType.TOUCH_START,function(event){

        },this);//给节点绑定触摸事件
    this.player.on(cc.Node.EventType.TOUCH_MOVE,function(event){ 
        var delta=event.touch.getDelta();
        this.player.x+=delta.x;
        this.player.y+=delta.y;
        },this);
    this.player.on(cc.Node.EventType.TOUCH_END,function(event){

        },this);

    cc.director.getCollisionManager().enabled=true;// 这是一个全局属性,开启后就代表碰撞检测组件可以进行检测了 
    cc.director.getCollisionManager().enabledDebugDraw = true; //绘制碰撞区域
        
},

onCollisionEnter:function(other,self)
{
    console.log('ASD');
},
onCollisionStay: function (other,self)
{
    console.log('ASs');
},
onCollisionExit: function () {
    console.log('Ats');
},


keyDown(event)
{
    if(event.keyCode==cc.KEY.w)
    {
        this.player.y+=30;
    }
    else if(event.keyCode==cc.KEY.s)
    {
        this.player.y-=30;
    }
    else if(event.keyCode==cc.KEY.a)
    {
        this.player.x-=30;
    }
    else if(event.keyCode==cc.KEY.d)
    {
        this.player.x+=30;
    }
},
}
相关标签: cocos creator