おそらく123行目~のFOR NEXTの変数Iが、サブルーチン内でもループに使われているので、全ての敵が毎回@TEKI0を実行しているからです。 動き的には最後に実行された@TEKInで上書きされているので気付きにくいですね。