制作日記

こういうの作った方が、逃げにくいじゃない

gametime固定

手元にMUGENがないから、記憶と下記記事から
http://drabs.blog40.fc2.com/blog-entry-1385.html

必要なとこだけ抜粋
movetypeがAのプレイヤー ステート処理
 ↓
残りのプレイヤー ステート処理
 ↓
全新規ヘルパー ステート処理
 ↓
上処理で新規ヘルパーが発生した場合、上処理へ戻る

ステート処理を行うプレイヤーの選別方法概要
基本的には、
[0x4B5B4C]+0xB950(存在しているプレイヤーの最少番号)から
[0x4B5B4C]+0xB954(存在しているプレイヤーの最大番号)まで、
[0x4B5B4C]+0xB750(全プレイヤーのアドレスリスト)を参照して一人ずつ処理。
行動済みかどうかはプレイヤー個別のgametimeと本来のgametimeを比較して判断。
ステート処理が終わったプレイヤーのgametimeを更新し、movetypeがAのプレイヤーの再行動を防止する。

新規ヘルパーのステート処理は全プレイヤー処理をループさせている。
新規ヘルパーの有無は[0x4B5B4C]+0xBB64(ヘルパー召喚フラグ)で行い、
ループ開始時にこれを初期化、ループ終了時にフラグが立っていれば再度処理、
フラグが立っていなければ、ループ終了。


つまるところ、
1.全プレイヤー見て行って、movetypeがAならステート処理
2.そいつのgametime更新
3.全プレイヤー見て行って、gametime的に行動前なら、ステート処理
ヘルパー召喚してたら、フラグ立てる
そいつのgametime更新
4.ヘルパー召喚フラグ立ってなかったら、終わり
5.ヘルパー召喚フラグ落として、3に戻る

gametime固定しても、1の段階で各プレイヤーのgametime調整すればどうにかなるんじゃね
3で調整してヘルパー召喚するとか、最終ヘルパーで調整するとか

他にプレイヤーのステート処理を制御する要因がないこと前提やけど

コメントの投稿

非公開コメント

プロフィール

Author:drab
霊夢改変キャラ
「12 3 ! {V} [_]」
公開中
L霊夢でもl_reimuでも好きなように読んでください

最新記事
最新コメント
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク