| 2011/08/25(Thu) 15:53:20 編集(投稿者) 2011/08/25(Thu) 15:47:49 編集(投稿者) 2011/08/25(Thu) 13:00:44 編集(投稿者)
こんにちは。風邪を引いていて少しお返事が遅れました。いやはや( =ω=)
前回の仕組みが 敵のターン開始時に全員を味方に→CPUには操作させない 味方のターン開始時に、手番の人のユニット以外を全部敵に というものだったので、3人以上の対戦でも同様にして実装します。
1. 1〜2人目のプレイヤーのユニットは前回と同様にして作成します。 3人目のユニットは中立陣営で作成すると、プレイヤー毎に色が分けられて、対戦がやりやすくなると思います。 4人目以降は、ふさわしい陣営がSRC側に用意されていないので、ひとまず敵陣営でCreateします。 Createする際、扱うプレイヤー毎に、ユニットにグループIDを付けるのを忘れずに。 例) Create 味方 テストアーチャー 0 テスチャー 1 2 3 "プレイヤー1" Create 敵 テストファイター 0 テスタ 1 7 13 "プレイヤー2" Create 中立 テストソシアルナイト 0 テストナイト(ザコ) 10 11 6 "プレイヤー3" Create 敵 テストペガサスナイト 0 テストナイト(ザコ) 10 17 15 "プレイヤー4"
2. 陣営が多いので、敵のターン開始時、全てのユニットをまとめて味方に変更します。 手番を表す変数には、次のプレイヤーをセットします。(例では、陣営が増えたのでIfコマンドを使わずにSwitchコマンドを使用しています) 例) *ターン 全 敵: ForEach 全 ChangeParty 味方 Next Switch フェイズオブ Case "プレイヤー1" Set フェイズオブ "プレイヤー2" Case "プレイヤー2" Set フェイズオブ "プレイヤー3" Case "プレイヤー3" Set フェイズオブ "プレイヤー4" Case "プレイヤー4" Set フェイズオブ "プレイヤー1" EndSw Exit
3. やはり前回と同様に、味方ターン開始時に、手番プレイヤー以外のユニットを全て敵(含む中立)に変更します。 例) *ターン 全 味方: Switch フェイズオブ Case "プレイヤー1" ForEach "プレイヤー2" ChangeParty 敵 Next ForEach "プレイヤー3" ChangeParty 中立 Next ForEach "プレイヤー4" ChangeParty 敵 Next Talk プレイヤー1の番です。 End
Case "プレイヤー2" ForEach "プレイヤー1" ChangeParty 敵 Next ForEach "プレイヤー3" ChangeParty 中立 Next ForEach "プレイヤー4" ChangeParty 敵 Next Talk プレイヤー2の番です。 End
Case "プレイヤー3" ... .. EndSw
プレイヤー3以降は、「Case "プレイヤー1"」の内容を丸々コピーして、例えば「Case "プレイヤー3"」の場合は ForEach "プレイヤー3" を ForEach "プレイヤー1" とだけ書き換えています。
こんなところでしょうか。 前回も今回も結構具体的にソース書いちゃってますが、例はイメージの助けになれば幸いですー。
(2011/08/25 12:59 追記) ブログにコメント頂いていたのですねΣ(・ω・ノ)ノ わ、気がつくのが遅れてごめんなさい‥!
|