(六)、“仙剑出鞘”---碰撞检测

主要代码

在场景中开启碰撞检测

1
2
3
var manager = cc.director.getCollisionManager();//获取碰撞检测系统
manager.enabled = true;//默认碰撞检测系统是禁用的,需要手动开启碰撞检测系统
manager.enabledDebugDraw = true;//开启后可在debug中显示碰撞区域

飞剑中的碰撞监听函数onCollisionEnter

1
2
3
4
5
6
onCollisionEnter(other:any , self:any) {
if(other.node.name.indexOf('guaiwu') > -1){
other.node.emit('guaiwu__attackby__feijian',{feijian_gj:this.feijian_gj},this); // 触发被飞剑攻击事件(加分事件在里面)
other.node.emit('guaiwu_buffby_feijian',{},this) // 触发被飞剑添加了buff事件
}
}

主要界面设置

项目>>项目设置>>分组管理 中设置可以碰撞的组gongji test

ss

主要涉及的cocos函数

1、onCollisionEnter

碰撞监听事件

2、this.node.emit

节点通知事件

3、this.node.on

节点监听事件