骑马与砍杀中文站论坛

 找回密码
 注册(Register!)

QQ登录

只需一步,快速开始

搜索
查看: 83|回复: 0

[求助] 各位有没有遇到过一次按键代码执行两次的情况?

[复制链接]
鲜花(128) 鸡蛋(0)
发表于 2018-7-8 07:26:54 | 显示全部楼层 |阅读模式
如题,战团版本1.168下面说下具体情况。

在下写了一段按键触发的代码,其中一部分是把目标部队的某种健康的成员移除,再在俘虏里添加等量的这种成员。但出现了这样一种情况,就是在移除最后一个该种健康士兵的时候,出现了代码执行两次的情况。
为此,在下给这个按键触发器的开端加了个-99的短消息做标记,在这段代码中获取stack_size时将获取的数量也以短消息形式发出。结果就是,当上述情况时,会出现-99 50 50 的情况(50是stack_size),也就是说触发器本身执行了一次,但代码却执行了两次!!!

补充的是,这绝不是在下一时大意把代码复制了两次的问题,因为这种情况只会出现一次。之后,在这支部队中的移动就不会再出现这种情况(如果换了部队还会再出现一次)。
另外,只出现在移动最后一个士兵的时候出现。比如目标stack的数量为50,一个个移动最终会得到51个新俘虏,10个10个移动会得到60个,50个一起动会得到100个。都是在最后一个士兵被移动时出现执行两次的情况。
再另,更奇怪的是,在下写的反向命令却没有出现过这样的情况——这两段代码除了几个命令不一样,结构完全相同。如下折叠中。

(点击展开 / 收起)




(点击展开 / 收起)




所以,在下的问题就是,这种情况究竟是怎么导致的?这种情况究竟该如何避免?
您需要登录后才可以回帖 登录 | 注册(Register!)

本版积分规则

Archiver|手机版|小黑屋|骑马与砍杀中文站 ( 鄂ICP备07001403号 )

GMT+8, 2018-7-21 10:04 , Processed in 0.084864 second(s), 16 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表