然后说补充研究。
关于 imp 的坐标,是从被扔出的同一帧就开始变化(也就是说,被扔出的这帧结束的时候,imp 的X坐标已经在初始X坐标基础上减少3.0),还是从下一帧开始变化。
结论是“不一定”= =
如图,巨人的X坐标被固定为 410.0,理论上 imp 的状态应该是一致的,然而被扔出的 imp 位置并不统一,X坐标相差了3.0。

其原因是,程序的处理是按照对象在内存中的顺序(下标顺序)进行的。
假如在程序处理巨人僵尸对象 A 时,产生了小鬼僵尸对象 B。
如果 B 在僵尸对象序列中的位置(下标)比 A 靠后,就会在同一帧进行处理 B。如果 B 在僵尸对象序列中的位置(下标)比 A 靠前,按照下标顺序,在这一帧就处理不到新产生的 B,于是这种情况下 imp 的坐标就是从下一帧开始变化。
对于简单的情况,可以构造出特定的下标顺序,然而在真实的游戏过程中,这个顺序几乎不可控。于是在应用中,大概需要把两种情况都考虑到。
不过似乎不影响最终落点。