ポケモンクリスタルを楽しむ

ポケモンクリスタルを色々な観点から遊びます

スクリプト(Part8:固定トレーナー戦)

この記事では「固定トレーナー戦」について取り扱います。

<仕組み>

トレーナー種類(アバター)と番号を指定して呼び出します。

キキョウシティジムのハヤトを例とします。

 

<構造>
  構造名 バイト数 構造要領
命令 1

固定値:"63"(戦闘勝利後のメッセージ設定)

メッセージ開始位置

1

可変値

ポインタ

1

可変値

命令

1

固定値:"5C"(戦闘をロード)

固定値

1

固定値:"00"

固定値

1

固定値:"00"

命令

1

固定値:"5D"(トレーナー設定)

トレーナー種類

1

トレーナーの内部番号

トレーナー番号

1

数値

命令

1

固定値:"5E"(戦闘開始)

命令

1

固定値:"5F"(戦闘から戻る)

 

実際の動きは以下のようになります。(トレーナー戦以外の部分は割愛)

  • 「31 XX YY」でフラグチェック(戦闘済かどうか)
  • 「09 XX YY」で戦闘済の場合の処理へ遷移(メッセージのみ)
  • 「4C XX YY」でメッセージ表示
  • 「53」で入力待機
  • 「49」でメッセージウィンドウ解放
  • 「63 XX YY」で「戦闘勝利後」のメッセージを設定
  • 「5C 00 00」でトレーナー戦をロード
  • 「5D XX YY」でトレーナーを設定
  • 「5E」で戦闘開始
  • 「5F」で戦闘から戻る

以下は補足です。

 

■「戦闘勝利後のメッセージ」について

入力規則は通常のメッセージと同じです。"00"開始で、"57"終了です。

 

■「トレーナー種類」と「トレーナー番号」について

「トレーナー種類」でトレーナーの設定(肩書、グラフィック、賞金倍率等)を読み込みます。
「トレーナー番号」では「トレーナー種類」の何番目の設定を読み込むかを設定します。例えば「たんパンこぞう」であれば"01"はゴロウ、"02"はアキラ等になります。

 

本例のようにジムリーダーの場合は一人しかいない為、おのずと設定値も"01"になります。
ここで"02"等を設定すると、次の番号のデータを読み込みます。ハヤトの次はアカネのデータが格納されている為、「ハヤトの設定」で「アカネの手持ち」を読み込みます。

 

 

<実践>

ナナミさんのイベントを作ってみました。
グラフィックについては、初代の「ミニスカート」の方が近いかもしれません。