| 複数のパイロットに同一のグループIDをつけた場合、 二人目以降からは、変数「対象パイロット」から取得できるIDが 「グループID + :(コロン) + 数字」という形になります。
ex) Create 敵 ザコガーディアン水2 1 エルフ兵(ザコ) 15 16 8 部隊1 Create 敵 ザコガーディアン水2 1 エルフ兵(ザコ) 15 15 11 部隊1 Create 敵 ザコガーディアン水2 1 エルフ兵(ザコ) 15 13 13 部隊1 Create 敵 ザコガーディアン水2 1 エルフ兵(ザコ) 15 10 14 部隊1 Create 敵 ザコガーディアン雷2 1 エルフ兵(ザコ) 15 7 13 部隊1 Create 敵 ザコガーディアン雷2 1 エルフ兵(ザコ) 15 5 11 部隊1 Create 敵 ザコガーディアン雷2 1 エルフ兵(ザコ) 15 4 8 部隊1 Create 敵 ザコガーディアン雷2 1 エルフ兵(ザコ) 15 5 5 部隊1
Cls PaintString 0 0 "" ForEach 部隊1 PaintString 対象パイロット Next Refresh Wait Click
上記のようなコードを実行すると
部隊1 部隊1:2 部隊1:3 部隊1:4 部隊1:5 部隊1:6 部隊1:7 部隊1:8
などと表示されます。
※ver.1.753にて確認 Talkだと「:」が表示されないのでPaintString使ってます
ForEachやEscapeなどのグループIDを引数に指定できるコマンドでは 気にする必要はありませんけど、 変数「対象パイロット」からグループIDを取得して 条件分岐等に使用するなら数字を取っ払う必要がありますね。
この場合は、
group_id = 対象パイロット If InStr(group_id,":") > 0 Then group_id = Left(group_id,InStr(group_id ,":") - 1) EndIf
などとして、「:」以降の文字列を取り除いたものを使えばいいんではないかと
以上です。それでは
|