首页 游戏任务 正文

castsequence有什么用?提升代码效率实战技巧!

那天盯着屏幕发呆

中午啃着煎饼果子,突然想起手头那个魔兽插件又卡成了幻灯片。明明功能简单得要死,刷个BUFF而已,每次触发硬是拖慢半拍,队友的骂声都快从耳机里溢出来了。

鼠标烦躁地在屏幕角落的代码上戳来戳去,一堆重复的施法命令挤在触发器里,跟早高峰地铁似的密密麻麻。删了又写写了又删,折腾半小时还是那副死样子。气得我把凉掉的煎饼摔进垃圾桶,想着要不彻底重写算了。

论坛扒拉出个生僻词

摸到某小众插件论坛翻老帖,看见有人提了嘴castsequence,下面讨论全是缩写。刚开始以为是啥复杂玩意儿,耐着性子扒拉三页口水战,突然被一条回复点醒:“就是让技能排着队放,别一窝蜂挤上去卡住”。

眼前啪地亮了——这不就跟我把煎饼里的薄脆一片片叠好再咬一样嘛

castsequence有什么用?提升代码效率实战技巧!

动手改代码踩大坑

冲回电脑前,把插件里二十几行重复的CastSpellByName()全删光。改成:

  • /castsequence reset=10 开头,意思是十秒重置队伍
  • 接着把要放的BUFF名挨个写进去,逗号隔开,像写超市购物清单
  • 绑到快捷键G键上,手贱测试时差点把炉石搓出来

结果游戏里一按G键:只!放!了!第!一!个! 后面的BUFF全在队列里装死。气得我差点把键盘上G键抠下来。

熬夜找解决方案

晚上灌了两杯浓咖啡,翻外网文档看到眼冒金星。终于在角落发现reset=combat这个写法。意思是只要进战斗就重新排队,比定时器靠谱多了!赶紧爬起来改代码:

  • 把reset=10换成reset=combat
  • 每个技能后面加上逗号和英文问号?, 让它能跳过冷却中的技能
  • 在队列尾巴塞个null,防止循环放技能把蓝抽干

改完哆嗦着按了G键。

效果直接惊掉下巴

只见角色跟开了挂似的:保护祝福→智慧祝福→力量祝福→溜去砍怪!全程不到两秒丝滑得像德芙巧克力!以前卡顿的地方现在直接顺过去,队友在语音里吼:“今天插件吃伟哥了?!”

更绝的是,测试时故意让某个技能冷却,结果它真就自动跳过冷却技,接着放下一个。以前手动判断冷却的几十行代码直接报废,现在全交给问号?处理。

现在看代码清爽得要命

以前跟蜘蛛网似的触发器页面,现在缩成短短几行:

按钮按下时:执行序列
序列内容:技能A, 技能B, 技能C, null
重置条件:进战斗就重来

老婆催睡觉的骂声里,我盯着这简洁的代码傻笑到凌晨三点。早干嘛去了?

本文转载自互联网,如有侵权,联系删除

相关推荐