| 2007/08/09(Thu) 15:07:44 編集(投稿者)
>>中箱さん
>>これは、座標に加えて、ユニットIDもTalkで表示させるようにすれば確認できるかと。
これはやったのですが、使用イベントラベルでは相手ユニットIDが無いとは思わず、他に原因があるのだろうか?と悩んでいました。
>>千奈さん
火炎以外にも武装があるので下を使わせてもらいました。 反発して*使用 ド 火炎:を省略できないかと、if文を色々いじってみましたが出来ませんでした。 info関数でなんとかならないかと思ったのですが、結局そのまま引用するのが一番という結論になりました。
*使用 ド 火炎: Set 火炎使用 1 Exit
*攻撃 ド 全: If 火炎使用 = 0 Exit
Local x1 x2 y1 y2 Set x1 X(UnitID(対象ユニットID)) Set x2 X(UnitID(相手ユニットID)) Set y1 Y(UnitID(対象ユニットID)) Set y2 Y(UnitID(相手ユニットID))
If x1 = x2 Then If y1 < y2 Then Set y1 (y1 + 1) Do While (y1 <= y2) If info(マップ, y1, x1, ユニットID) != "" Then Cancel Break Endif Set y1 (y1 + 1) Loop Else Set y1 (y1 - 1) Do While (y1 >= y2) If info(マップ, y1, x1, ユニットID) != "" Then Cancel Break Endif Set y1 (y1 - 1) Loop Endif Endif
If y1 = y2 Then If x1 < x2 Then Set x1 (x1 + 1) Do While (x1 <= x2) If info(マップ, x1, y1, ユニットID) != "" Then Cancel Break Endif Set x1 (x1 + 1) Loop Else Set x1 (x1 - 1) Do While (x1 >= x2) If info(マップ, x1, y1, ユニットID) != "" Then Cancel Break Endif Set x1 (x1 - 1) Loop Endif Endif
MapAttack 対象ユニットID 火炎(イベント用) x1 y1 Set 火炎使用 0 Exit
まだ適当にしかテストしていませんがこんな形になりました、他のイベントはこれから仕込みます。 お二方返答ありがとうございました。
//メモ帳からコピーペーストしたのですが半角スペースは略されるんですね。全角にしました。
|