3と5のリビジョン間の差分 (その間の編集: 2回)
2020-11-21 15:20:17時点のリビジョン3
サイズ: 2176
編集者: keitaroh
コメント:
2020-11-22 00:47:46時点のリビジョン5
サイズ: 4592
編集者: keitaroh
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 39: 行 39:
= 出現前ウェイトフェイズ =

 * ナイトが出現するまでの待ち時間処理のフェイズ。
  * ナイトは(ハイパーナイト・スーパーを除き)フロア開始から出現までに若干の時間がかかる。
  * 負荷分散や重なりナイトの防止か?
 * ウェイト値の算出法は3種。
 * 定められた時間待ち終わると初期化フェイズへ移行する。

== ウェイト値1型 ==

 * $2100から自身のワークエリア基準アドレスの値を引き、下位8ビットを 1/2 した値を基本ウェイト値とする。
  * 自身のワークエリア基準アドレスは $2100 + n * 32 + 16 である。
  * ※この値はタスク呼び出し時、Xレジスタにセットされる。
  * ※詳しくはスプライトワークエリアの項でと言いたいがまだ書いていない。
  * ウェイト値2型と違い、1/2する際は8ビット値で計算している点に注意。
  * たとえば基準アドレスが $2110 と $2210 のナイト(1型)は同じタイミングで出現する。
 * 基本ウェイト値+1フレーム待ったあと、内部タイマが偶数ならさらに1フレーム待つ。
  * +1フレーム分のウェイト処理は、タスクの先頭に置かれている。

== ウェイト値2型 ==

 * $2100から自身のワークエリア基準アドレスの値を引き、その値を 1/8 したものの下位8ビットを基本ウェイト値とする。
  * ウェイト値1型と違い、1/8する際は 16ビット値で計算している点に注意。
 * 基本ウェイト値+1フレーム待ったあと、内部タイマが偶数ならさらに1フレーム待つ。

== ウェイト値3型 ==

 * 1フレームだけ待つ。

= 初期化フェイズ =

 * 以下の処理を行う。
  * 乱数による出現位置の決定。
  * 向きを下向きに設定。
  * 歩行中フラグを $01 に設定。
  * 剣動作番号を初期化。
  * 戦闘態勢フラグを初期化。
  * 倒した時の得点を設定。
   * ミラーナイト/ハイパーナイト/ハイパーナイト・スーパーは行わない。
  * HPの設定。
  * 攻撃中フラグの値を +1。
 * 初期化を終えたらメインフェイズへ移行する。

----

 * ★以下、まだ。
  • ナイトは、剣と盾で武装した人型の敵である。

概要

  • 迷路を右手法(亜種)で移動している。
  • ギルが同じ軸線上にいるとき、ギルに接近しようとする。
  • HP制。
    • ギルが剣を鞘から抜いていれば、ナイトに一撃で倒される事はない。
    • ナイトはギルに一撃で倒される事はない。
  • ナイトを倒すと、ギルの HPがいくらか増える。

ナイトの一覧

グラフィック

名前

出現ウェイト

速度

攻撃力

HP

点数

リカバーポイント

knight_blue.png

ブルーナイト

1型

1/f

1/f

24

1000

$18(24)/$09(09)

knight_black.png

ブラックナイト

1型

1/f

1/f

48

1000

$30(48)/$15(21)

knight_mirror.png

ミラーナイト

2型

ギルと同じ

1/f

48

2000

$30(48)/$15(21)

knight_hyper.png

ハイパーナイト

2型

1/f

1/f

96

200

$60(96)/$30(48)

knight_lizardman.png

リザードマン

1型

1/f

2/f

48

1000

$60(96)/$30(48)

knight_red.png

レッドナイト

1型

1/f

1/f

144

1200

$18(24)/$09(09)

knight_hyper.png

ハイパーナイト・スーパー

3型

2/f

1/f

96

0

$30(48)

仕様

  • 全モンスターで唯一、ナイトだけ共通ルーチンがない。全て別々に書かれている。
  • ナイトの処理は、概ね以下のフェイズ/ステップから成る。
    • 出現前ウェイトフェイズ。
    • 初期化フェイズ。
    • メインフェイズ。
      • 方向転換ステップ。
      • 移動ステップ。
    • 死亡フェイズ。
    • ギル死因演出フェイズ。
    • 処理終了フェイズ。
  • ★以下、まだ。

出現前ウェイトフェイズ

  • ナイトが出現するまでの待ち時間処理のフェイズ。
    • ナイトは(ハイパーナイト・スーパーを除き)フロア開始から出現までに若干の時間がかかる。
    • 負荷分散や重なりナイトの防止か?
  • ウェイト値の算出法は3種。
  • 定められた時間待ち終わると初期化フェイズへ移行する。

ウェイト値1型

  • $2100から自身のワークエリア基準アドレスの値を引き、下位8ビットを 1/2 した値を基本ウェイト値とする。
    • 自身のワークエリア基準アドレスは $2100 + n * 32 + 16 である。
    • ※この値はタスク呼び出し時、Xレジスタにセットされる。
    • ※詳しくはスプライトワークエリアの項でと言いたいがまだ書いていない。
    • ウェイト値2型と違い、1/2する際は8ビット値で計算している点に注意。
    • たとえば基準アドレスが $2110 と $2210 のナイト(1型)は同じタイミングで出現する。
  • 基本ウェイト値+1フレーム待ったあと、内部タイマが偶数ならさらに1フレーム待つ。
    • +1フレーム分のウェイト処理は、タスクの先頭に置かれている。

ウェイト値2型

  • $2100から自身のワークエリア基準アドレスの値を引き、その値を 1/8 したものの下位8ビットを基本ウェイト値とする。
    • ウェイト値1型と違い、1/8する際は 16ビット値で計算している点に注意。
  • 基本ウェイト値+1フレーム待ったあと、内部タイマが偶数ならさらに1フレーム待つ。

ウェイト値3型

  • 1フレームだけ待つ。

初期化フェイズ

  • 以下の処理を行う。
    • 乱数による出現位置の決定。
    • 向きを下向きに設定。
    • 歩行中フラグを $01 に設定。
    • 剣動作番号を初期化。
    • 戦闘態勢フラグを初期化。
    • 倒した時の得点を設定。
      • ミラーナイト/ハイパーナイト/ハイパーナイト・スーパーは行わない。
    • HPの設定。
    • 攻撃中フラグの値を +1。
  • 初期化を終えたらメインフェイズへ移行する。


  • ★以下、まだ。


カテゴリ:モンスター

ナイト (最終更新日時 2020-11-22 06:46:27 更新者 keitaroh)