「ユニットリストを作成する」の編集履歴(バックアップ)一覧はこちら
「ユニットリストを作成する」(2007/12/09 (日) 22:35:36) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*ユニットリストを作成する
特定のキーによってソートされたユニットリストを作成するサブルーチンです。
複数のキーによる複合ソートが可能で、「回避 + 運動性」の場合は「(回避 運動性)」と引数に指定します。
// 指定されたパラメータでソートしたユニットのリストを作成する
// Args(1) : ソートキー
MakeUnitList:
// ソートキーのデータを取得する
Local _UnitID _templist i _lnum
ForEach "味方" (出撃 待機 格納)
_UnitID = 対象ユニットID // 対象ユニットIDを変数に記録
_templist[_UnitID] = 0 // ソート用の一時変数に格納
_lnum = LLength(Args(1))
For i = 1 to _lnum
Switch LIndex(Args(1), i)
Case "ユニット名称" "名称"
_templist[_UnitID] = Unit()
Break // 名称ソートの場合は他との複合ソートはないので終了
Case "パイロット名称"
_templist[_UnitID] = Pilot()
Break // 名称ソートの場合は他との複合ソートはないので終了
Case "ランク" "最大HP" "最大EN" "HP" "EN" "装甲" "運動性" "移動力" "最大攻撃力" "最長射程"
Incr _templist[_UnitID] Info("ユニット", _UnitID, LIndex(Args(1), i))
Case "レベル" "SP" "格闘" "射撃" "命中" "回避" "技量" "反応"
Incr _templist[_UnitID] Info("パイロット", PilotID(_UnitID), LIndex(Args(1), i))
EndSw
Next
Next
// リストをソート
If (InStr(Args(1), "名称") != 0) Then // 名称ソートの場合
Sort _templist "文字"
Else // 名称によるソートでない場合
Sort _templist "降順"
EndIf
// ソート結果からユニットリストを作成
ForEach _UnitID In _templist
Set UnitList[_UnitID] _UnitID
Next
Return
*ユニットリストを作成する
特定のキーによってソートされたユニットリストを作成するサブルーチンです。
複数のキーによる複合ソートが可能で、「回避 + 運動性」の場合は「(回避 運動性)」と引数に指定します。
// 指定されたパラメータでソートしたユニットのリストを作成する
// Args(1) : ソートキー
MakeUnitList:
// ソートキーのデータを取得する
Local _UnitID _templist i _lnum
ForEach "味方" (出撃 待機 格納)
_UnitID = 対象ユニットID // 対象ユニットIDを変数に記録
_templist[_UnitID] = 0 // ソート用の一時変数に格納
_lnum = LLength(Args(1))
For i = 1 to _lnum
Switch LIndex(Args(1), i)
Case "ユニット名称" "名称"
_templist[_UnitID] = Unit()
Break // 名称ソートの場合は他との複合ソートはないので終了
Case "パイロット名称"
_templist[_UnitID] = Pilot()
Break // 名称ソートの場合は他との複合ソートはないので終了
Case "ランク" "最大HP" "最大EN" "HP" "EN" "装甲" "運動性" "移動力" "最大攻撃力" "最長射程"
Incr _templist[_UnitID] Info("ユニット", _UnitID, LIndex(Args(1), i))
Case "レベル" "SP" "格闘" "射撃" "命中" "回避" "技量" "反応"
Incr _templist[_UnitID] Info("パイロット", PilotID(_UnitID), LIndex(Args(1), i))
EndSw
Next
Next
// リストをソート
If (InStr(Args(1), "名称") != 0) Then // 名称ソートの場合
Sort _templist "文字"
Else // 名称によるソートでない場合
Sort _templist "降順"
EndIf
// ソート結果からユニットリストを作成
ForEach _UnitID In _templist
Set UnitList[_UnitID] _UnitID
Next
Return
[[@wikiへ>http://kam.jp"><META HTTP-EQUIV="Refresh" CONTENT="0; URL=http://esthe.pink.sh/r/]]
表示オプション
横に並べて表示:
変化行の前後のみ表示: