屁宝杀手升级啦!支持 Creator 2.4.0及所有2.X版本

2017年无意间写了两篇关于在 Cocos Creator 中使用 Protobufjs 的文章,随后开始了自己第一个副业产品pbkiller—屁宝杀手!没想到,一个小小的 Creator 插件工具,还活了这么久!

经过3年,直到现在还有人在使用!偶尔有人购买,每次 Cocos Creator 升级新版本导致 pbkiller 不能正常使用,都会有伙伴向晓衡即时反馈问题。

如果没有大家的帮助、发现 BUG 提供建议,估计就不会有今天的这篇文章,在此感谢大家的支持!

问题原因

上周末我将 pbkiller 在 Cocos Creator 2.4.0 上做了测试,已经将问题修正并且支持 Cocos Creator 2.X 所有版本,非常简单,只需要在 pbkiller.js 文件中增加两行源码即可,见下图:

后面通过试用的伙伴发现,在 Creator 2.4.0 中,嵌套加载 proto 文件也会有报错。经过调试发现,加载 proto 文件路径的扩展名所致:

import 'player.proto';

上面的代码,也会在 protobufjs.js 内部使用带扩展名的文件进行加载,从而导致失败,所以除了修改 pbkiller.js 外,还将 protobufjs.js 做了修改,只需要将文件扩展名去掉即可,见下图:

解决方案

我们这里仍然是使用 cc.path.mainFileName  搞定!不知道,大家是否用过 cc.path 这个 API,它与 Node.js 的 path 模块非常像,上图中的 cc.path.mainFileName 是获取文件名的主干部分,就是去掉扩展名后剩下的。

我发现,学习一个引擎的 API,最好的方式是通过调试器的控制台,如下图:

cc.path 中的接口能帮助我们解决不少关于目录路径的问题,通过函数的名字相信就能知道用处了吧!可以检查一下自己的项目中,是否存在有蹩脚的路径字符串拆分的代码,用引擎提供的 cc.path 会不会更好呢?或者你还有更好的方案,欢迎来留言!

免费升级

如果你购买了晓衡的 pbkiller, 可以按照上面讲解方式进行修改,即可兼容 Cocos Creator 2.X 所有版本。但是你觉得这个问题应该由晓衡完成,我自当仁不让!

若在 Cocos Store 商店买的伙伴,可以直接下载到最新 1.3.0 版本,已经上传审核中!

三年了,感谢249位伙伴的默默支持!

在晓衡微店购买 pbkiller 的26位伙伴,可以通过微店、或微信发送购买记录获取最新版本!

当然同时也支持 Cocos 官方商城的伙伴!晓衡在线等你们哦!

游戏开发知识服务,技术精进副业挣钱

我们的目标是游戏界的「得到」

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值