1.准备
例依上会例子所言,我们在画布中添加星星预制体,和射手射出的豌豆相碰。
我们分别需要制作豌豆和星星的预制体,并分别为他们绑定上碰撞组件,
2.运动
豌豆和星星,加载好游戏后初始化他们的位置,豌豆的初始位置固定不变,星星的初始化位置随机变化,并且星星移动方向正是豌豆初始化位置,,然而,使射手发射豌豆朝向星星所来位置射去,使他们相撞。
3.碰撞组件绑定
碰撞组件需要有自己的脚本,所以创建一个新脚本,在游戏初始化的时候【onLoad】方法中绑定碰撞监听
onLoad() {
// 碰撞监听
var collisionManager = cc.director.getCollisionManager();
collisionManager.enabled = true;
},
在碰撞组件中,调用 他们碰撞后的方法,碰撞后,可能销毁,也可能停止游戏..等等
onCollisionEnter: function (other, self){
// console.log(xing)
// 在画布下寻找节点,并找到节点上绑定的脚本,找到脚本中的方法
cc.find("Canvas/star").getComponent("star").xiaoHui();
cc.find("Canvas/wandou").getComponent("wandou").xiaoHui();
console.log("22222222222222222")
},
4.预制体
预制体是需要在游戏中不断生成的节点,
所以对预制体的具体操作要放到预制体的脚本中执行,例 销毁方法,将预制体的脚本挂载。
5.碰撞组件分类
多边形碰撞组件 Polygon Collider
圆形碰撞组件 Circle Collider
矩形碰撞组件 Box Collider