MUGEN State Controller

MUGENで良いキャラを作るポイントは… 「良いキャラのソースコードを読む」->「コピペ」->「記述を理解」->「自分でアレンジ」

Type = VictoryQuote

演出 > 勝利画面のセリフを変更 | 実装されたバージョン: 2011.01.18 | 対象: 画面


”M.U.G.E.N 1.0”から追加されたステートコントローラで、勝利画面に表示するプレイヤーのセリフを選択します。

”VictoryQuote”はプレイヤーの試合中に読み込まれますが、試合後にしか効果がありません。また、ヘルパーで実行しても効果がないです。勝利のセリフは、CNSファイル内の[Quotes]グループに指定します。

勝利画面では、 ”9000,2” のスプライトが必要になります。キャラの ”Localcoord” が ”320, 240” の場合、画像の大きさは左上基準で横幅120、高さ115になります。

 

パラメーター

value = セリフの番号 (整数)
使用するセリフの番号を指定します。無効な番号が指定された場合、ランダムに選択されます。
最小値: 0 , 最大値: 99
省略時のデフォルト値: -1
Persistent = HitPause無視時間 (整数)

Persistentの値をNに設定した場合、設定したステートコントローラーはNフレーム後にもう一度実行されます。0の場合、トリガーが成立しても1回しかステートコントローラーが実行されません。※トリガーは読み込みますが、パラメーターは完全に無視されます。

Persistentが管理されている配列が初期化される条件は、ステート処理開始(ChangeState,SelfState,TagOut,TagInなどでステート移動)でTime=0の場合に実行されます。また、初期化される個数が決まっており、10個のPersistentしか初期化されません。ですので、Persistentの多様やChangeStateでの使用は避けましょう。もし、特定のステートが実行されない場合は、この仕様を疑ったほうがいいかもしれません。

その他にも、var,fvar,sysvar変数は利用できない・常時ステート([StateDef -1],[StateDef -2],[StateDef -3])では、常にPersistent=1の状態・IgnoreHitPause=1が設定されていた場合、アドレスを書き換え(Alive偽装・Persistent偽装?など)・バージョンによる動作の違いなどバグが満載です。

結論、Persistentの値が0以外の場合は省略して、TriggerTimevarを使って管理した方がいいです。

最小値: 0 , 最大値: 128
省略時のデフォルト値: 1
IgnoreHitPause = HitPauseを無視フラグ (0か1)

IgnoreHitPauseの記述されたステートコントローラー処理がHitPause(ヒット停止時間)を無視して実行されます。基本的に1に設定しておくべきパラメーター。

パラメーター自身にvar,fvar,sysvar変数は利用できません。

攻撃を当てたり受けたりした時にVarSetしたり、Explodの演出をずれないようにしたり用途はさまざま。

最小値: 0 , 最大値: 1
省略時のデフォルト値: 0


省略した時のデフォルト値

  • [State ,VictoryQuote]
  • Type = VictoryQuote
  • Trigger1 = 1
  • value = -1
  • Persistent = 1
  • IgnoreHitPause = 0


パラメーターの読み込み順

value(1) => Persistent(?) => IgnoreHitPause(?) =>


*バージョンや実行環境,パラーメーターの指定の仕方によって、読み込まれる順番が変わる可能性があります。参考程度なものだと思ってください。
 

コードサンプル

設定方法

  • ; system.def で有無を設定。デフォルトは 1 で、有効になります。
  • [Victory Screen]
  • enabled = 1

.cnsの[Quotes]設定方法

  • ; ”[Quotes]”はデフォルトの言語で指定されるセリフです。
  • ; 基本的に”[Quotes]”は英語で書かなければいけません。
  • ; 各言語ごとにセリフは 100 まで指定出来ます。 (例:victory0 - victory99)
  • [Quotes]
  • victory1 = "You must defeat Tu Shou to stand a chance."
  • victory2 = "You need a lot of training. Come back in ten years."
  • victory3 = "You look familiar. Did I see you on TV?"
  • victory4 = "Your moves are too predictable. You want to learn Kung Fu Palm? It's not for novices."
  • victory5 = "That was a good workout."
  • victory6 = "I want to challenge more skilled fighters."
  • victory7 = "What do you mean my girlfriend is in another temple?"

別言語の[Quotes]設定方法1

  • ; 日本語のセリフを指定するには”[ja.Quotes]”のように書きます。
  • ; 別の言語(例: en, es, ja, etc.)を指定する場合
  • ; ISO 639-1を参考にして設定してください。(例:中国語の場合”[zh.Quotes]”)
  • ; それ以降は”[Quotes]”と同じ書き方ですが、ファイルを必ずutf-8で保存してください。
  • [ja.Quotes]
  • victory1 = "カンフー突き手を破らぬ限り、お前に勝ち目はない!"
  • victory2 = "十年早いんだぞ"
  • victory3 = "お前は見覚えがあるな。テレビにでも…?"
  • victory4 = "お前の動きは見破りやすすぎる。 なに、カンフー突き手が覚えたいんだと? 素人には無理だぞ"
  • victory5 = "ふー。 いい汗だった"
  • victory6 = "もっと強い相手に挑戦したい"
  • victory7 = "なんだと!彼女はここにもいないと?"

別言語の[Quotes]設定方法2

  • ; mugen.cfg を開いて Language を設定します
  • ; language はISO 639-1を参考に指定してください。
  • Language = "ja"

P2の名前が”Kung Fu Man”の時に、3番目の勝利ゼリフを出す

  • [State ,VictoryQuote]
  • Type = VictoryQuote
  • Trigger1 = P2Name = "Kung Fu Man"
  • value = 3


公開日:
最終更新日:
この記事は役に立ちましたか?
ご意見・ご要望はございますか?
記事を編集してみませんか?

問題点があればGithubTwittersuteadddayov@gmail.comにご報告下さい。また、ページ編集にご協力いただける方を募集しております。お気軽にご連絡下さい。Please report any problems to the Github · Twitter · suteadddayov@gmail.com. In addition, we are looking for the person who cooperate with page editing and translation. Please do not hesitate to contact me.