RandomRide: Local UC i Set i 0 ForEach 味方 待機 If CountPilot() = 0 Then Incr i 1 Set UC[i] UnitID() EndIf Next If i > 0 Then Ride Args(1) UC[Random(i)] EndIf Return
専用指定を考慮しないなら >>406のIf CountPilot() = 0 Then を If CountPilot() = 0 And InStr(Info(Args(1),ユニットクラス),Info(Unit(対象ユニットID),ユニットクラス)) <> 0 Then にすればいけると思う 専用指定を考慮した場合については>>413以降の誰かよろしく
ForEach 味方 待機 For i = 1 To LLength(Info(Args(1), ユニットクラス)) If CountPilot() = 0 Then If RideType[i] = Info(Unit(対象ユニットID),ユニットクラス) Or (RideType[i] & "(" & NickName(Args(1)) & "専用)") = Info(Unit(対象ユニットID),ユニットクラス) Or (RideType[i] & "(" & Info(Args(1), 名称) & "専用)") = Info(Unit(対象ユニットID),ユニットクラス) Then # 行が長すぎると掲示板に怒られた。使うときは改行消してね Incr cnt RideUnit[cnt] = UnitID() EndIf EndIf Next Next
If cnt > 0 Then Ride Args(1) RideUnit[Random(cnt)] Else Talk システム 何よ!!!!!;乗れる機体がないじゃない!!!!!!! End EndIf