【cocos creater】9.仿《弓箭传说》- 子弹的碰撞

查看项目所有章节接着上一章,编辑bullet.ts脚本文件,添加碰撞函数,此方法在元素发生碰撞时会调用/***当碰撞产生的时候调用*@param{Collider}other产生碰撞的另一个碰撞组件*

by
江江
on
2025/10/15
Cocos游戏开发弓箭传说

 查看项目所有章节

接着上一章,编辑bullet.ts脚本文件,添加碰撞函数,此方法在元素发生碰撞时会调用

  /**
   * 当碰撞产生的时候调用
   * @param  {Collider} other 产生碰撞的另一个碰撞组件
   * @param  {Collider} self  产生碰撞的自身的碰撞组件
   */
  onCollisionEnter(other: cc.Collider, self: cc.Collider) {
    switch (other.node.name) {
      case 'enemy':
        if (this.pool !== null) {
          this.pool.put(this.node)
        }
        break
    }
  }

同时,编辑bullet精灵属性,添加碰撞组件

碰撞组件有三个,一个是矩形,一个是圆形,一个是自定义。这里我们任选一个都可以

分别给bullet,role,enemy三个元素都添加上碰撞组件

再打开enemy属性,选择group,点击编辑按钮,打开分组管理

分别添加role组,enemy组,bullet组。并勾选enemy和bullet碰撞

保存后,在分别编辑role,enemy,bullet精灵属性,添加对应的分组

添加完成后,运行效果如下:

源码:

江江江江于 2026-10-14 19:17:35 修改阅读 73评论 0点赞 0