|
马上注册,下载996引擎,与更多游戏开发者交流。
您需要 登录 才可以下载或查看,没有账号?注册
×
昨天有个朋友问我捡物非会员绑定,就是现在版本非常流行的功能,他说会卡,问我有什么好的方案。
因为我写脚本很不喜欢在频繁触发的地方写东西,以前我都针对这种事都是限制交易的。但是他说一定要绑定效果不一样。
然后我就测试了一下,传统的入包绑定:
[@PickUpItemfrontEX]
#if
#act
LINKPICKUPITEM
SetItemState -1 0 1
SetItemState -1 1 1
SetItemState -1 4 1
SetItemState -1 5 1
SetItemState -1 8 1
SENDUPGRADEITEM
绑定种类型一条的耗时800多,因为这个是频繁触发的,这个耗时肯定会出问题的
然后我试了一下LUA,耗时就非常低,我想是因为TXT需要LINKPICKUPITEM关联了再进行操作的原因所以耗时高。
但是很多小伙伴都不会用lua所以我就封装了一个txt的函数给大家用(如果不会用的就直接下载附件)
function binding(actor, uniqueid)
local itemObj = getitembymakeindex(actor,uniqueid)
setitemstate(itemObj, 0, 1)
setitemstate(itemObj, 1, 1)
setitemstate(itemObj, 4, 1)
setitemstate(itemObj, 5, 1)
setitemstate(itemObj, 8, 1)
refreshitem(actor,itemObj)
end
原理就是通过入包触发把唯一ID传给这个函数,然后获取物品对象再进行绑定。
如果不刷新到前端的话一条耗时11-30多这个样子,刷新到前端也就140左右一条的耗时。
刷新和不刷新的区别就是,绑定之后前端没有那个锁的图标,但是实际是绑定了的,如果你穿戴一下就可以看到锁的图标,或者小退后锁图标就出来了
大家按需使用。
|
|