Skip to content
This repository was archived by the owner on May 4, 2023. It is now read-only.
tenpaMk2 edited this page Aug 12, 2015 · 2 revisions

アルゴリズムの概要

極簡単に流れだけ乗せておく。

  1. 次のターンの(ゲーム内での)時間がくる。
  2. TurnManagerTurnQueueEntrystart_turn()メソッドを呼び出す
  3. TurnQueueEntryCharacterの行動を開始する。
  4. CharacterHero(プレーヤー)なら、 1. 現在の画面がviewerによって描画される。 2. Controllerがユーザの入力待ちを開始する。 3. Heroがユーザの入力に沿って行動する。
  5. CharacterNPCなら、 1. AIによって行動が決定される。 2. NPCAIに決定された行動をする。
  6. 行動を終了したCharacterTurnManagerTurnQueueEntryを登録する。
  7. 1の繰り返し。

このrogueではTurnManagerがゲームの時間的な流れを管理する。 TurnManagerは(ゲーム内での)特定の時間が来たらTurnQueueEntryをポップし、 対応するCharacterの行動を開始する。

開始する行動は、CharacterHeroNPCかで分かれる。 Heroのターンが来たら、Controllerがユーザの入力を開始する。 NPCのターンが来たら、AINPCの行動を決定する。 どちらの場合も、行動が終了したら、TurnQueueEntryTurnManagerに登録する。

Clone this wiki locally