
关键代码差不多就是这一部分了,本来格式就乱,复制粘贴出来估计没法看,直接贴个图。
a4是个结构体指针,应该保存着Tank当前的状态信息(MSG的参数,没贴出来)。
一大堆的goto确实很要命,不花上点时间慢慢trace估计没结果,而且LABEL_84里面涉及到了类IntervalTimer、一大堆magic number和几个静态变量(dword),水平不够不上动态调试来不了。
当然瞎猜不用负责(ze)任这点我还是明(min)白的【溜】
a3是指向Tank的对象指针,应该继承了IntervalTimer,这个是不分对抗和战役的,因此战役中也存在类似对抗的控制权系统。
整个程序搜索只能搜索到这一处和处死Tank有关的内容,因此假定处死Tank的机制只在此时生效,考虑到前面大量引用了和距离有关的函数(计算绝对距离、可移动路径及其距离之类),因此有理由相信战役的Tank会在长时间丢失生还者视野或超过指定距离的情况下被Director直接处死。