kinugasa.contents.saveData

## クラス ReplayData

- java.lang.Object
- - kinugasa.contents.resource.Storage<ReplayInputState>
  - - kinugasa.contents.saveData.ReplayData

- すべての実装されたインタフェース:
    java.io.Serializable, java.lang.Iterable<ReplayInputState>

      public final class ReplayData
      extends Storage<ReplayInputState>
      implements java.io.Serializable

  このクラスを使用して、ランダムシードと入力状態を発行／復元することが出来ます.
  リプレイのデータ量は入力の多さに比例して多くなります。
  関連項目:
    直列化された形式

- - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `ReplayData()` 新しいリプレイを作成します.
    `ReplayData(int fps, float minute)` 新しいリプレイを作成します.

  - ### メソッドのサマリー

    All Methods Instance Methods Concrete Methods
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `add(long frame, InputState inputState)` フレーム数と入力状態を指定して、入力イベントを登録します.
    `InputState` | `get(long frame)` 現在のフレームで入力された状態を復元します.
    `void` | `playStart()` 保存されたシードを使用して、ランダムクラスを初期化し、リプレイの再生を開始します.
    `ReplayData` | `recStart()` 適当なシードを使用してリプレイの保存を開始します.
    `ReplayData` | `recStart(long seed)` シードを初期化し、リプレイの保存を開始します.

    - ### クラスから継承されたメソッド kinugasa.contents.resource.Storage

      `add, addAll, addAll, asList, clear, contains, contains, containsAll, get, getAll, getIfContains, getProperties, isEmpty, iterator, keySet, printAll, printAll, put, putAll, putAll, remove, remove, removeAll, removeAll, removeAll, size, toString`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド java.lang.Iterable

      `forEach, spliterator`

- - ### コンストラクタの詳細

    - #### ReplayData

          public ReplayData()

      新しいリプレイを作成します. FPSは60、時間は5分になります。

    - #### ReplayData

          public ReplayData(int fps,
                            float minute)

      新しいリプレイを作成します.
      パラメータ:
        `fps` - 実行中のゲームの最大FSPを指定します。初期データ量に影響します。
        `minute` - ゲームの実行時間を指定します。初期データ量に影響します。

  - ### メソッドの詳細

    - #### recStart

          public ReplayData recStart(long seed)

      シードを初期化し、リプレイの保存を開始します.
      パラメータ:
        `seed` - シードを指定します。kinugasa Randomクラスのシードが初期化されます。
      戻り値:
        thisインスタンスを返します。

    - #### recStart

          public ReplayData recStart()

      適当なシードを使用してリプレイの保存を開始します.
      戻り値:
        thisインスタンスを返します。

    - #### playStart

          public void playStart()

      保存されたシードを使用して、ランダムクラスを初期化し、リプレイの再生を開始します.

    - #### add

          public void add(long frame,
                          InputState inputState)

      フレーム数と入力状態を指定して、入力イベントを登録します. このメソッドはadd(new ReplayInputState(frame, inputState))と同じ動作をします。
      パラメータ:
        `frame` - 入力が検知されたフレームを指定します。GameTimeManagerから取得できます。
        `inputState` - 入力状態を送信します。ReplayInputStateでクローニングされます。

    - #### get

          public InputState get(long frame)

      現在のフレームで入力された状態を復元します.
      パラメータ:
        `frame` - 入力を行うフレームを指定します。GameTimeManagerから取得できます。
      戻り値:
        指定されたフレームの入力状態を返します。このフレームに入力が無かった場合はnullを返します。