| お世話になります。龍神です。 現在、Y座標、13を境界とした、上下に分割されたマップのシナリオを作成しています。 境界線を越えて互いのユニットは行き来できない、という設定になっているので、敵のユニットも、それそれ境界から上側に存在するなら上側のプレイヤーユニットを、下側なら下側のプレイヤーユニットを狙うよう設定したいのですが、上手くいきません。 下記のようにソースを書いたのですが、どこか間違いがあるのでしょうか?
*ターン 全 敵: ############################ #上と下のフィールド別にターゲットを設定 ############################ Foreach 敵 Set TempID 対象ユニットID #現在のターゲット Set TempL 999 #現在のターゲット候補 Changemode 対象ユニットID 固定 Foreach 味方 Set 上下判定値 Eval(((Y(TempID) - 13) * (Y(対象ユニットID) - 13))) TALK システム $(対象ユニットID)の上下判定値、$(上下判定値) END If (上下判定値 > 0) then SET NTempL Eval((abs(X(対象ユニットID) - X(TempID)) + abs(Y(対象ユニットID) - Y(TempID)))) If NtempL < TempL then Changemode TempID 対象ユニットID Set TempL NTempL SET TEMPtgt 対象ユニットID EndIF EndIF Next TALK システム $(TempID)のターゲット、$(Status(TempID,思考モード)) END Next Exit
|