UnmappedIsland ソースリファレンス - v0.1.0
    検索インデックスを準備しています...

    クラス LocationArtLoader

    土地の絵の遅延ロード。起動時にはロードされない土地の絵(artFiles参照)を、プレイ中に シーンのローダで読み込む。

    ロード済みかどうかはTextureManager(全シーン共有)で判定するため、シーンを開き直しても 読み直しは起きない。ロードに失敗した絵は「届いた」扱いにする——絵が無くても表示は絵文字・単色で 成り立つ(Card・CardLane)ので、待ち続けるより先へ進む。

    インデックス
    codex: WorldCodex

    土地の識別子から絵の名前を引くために持つ(artFiles)。

    failed: Set<string> = ...

    ロードに失敗したテクスチャキー(再試行しない)。

    inFlight: Set<string> = ...

    ロードを頼んだが、まだ完了も失敗もしていないテクスチャキー。

    queue: ArtFile[] = []

    ローダへまだ渡していない絵。ローダの実行中に追加した絵は黙って処理されないことがあるため、 自前で待たせておき、手が空いたとき(pump)にまとめて渡す。

    scene: Scene
    waiters: { location: string; onLoaded: () => void }[] = []
    • その土地の絵がすべて届いているか(失敗した絵は待っても来ないので届いた扱い)。

      パラメータ

      • location: string

      戻り値 boolean

    • その土地の絵がすべて届いたらonLoadedを1回呼ぶ。既に届いていればその場で同期に呼ぶ—— 待ちが無いときの呼び出し側の流れ(場面転換)を従来どおりに保つため。

      パラメータ

      • location: string
      • onLoaded: () => void

      戻り値 void

    • 1枚の完了・失敗を受けて、揃った待ちを呼ぶ。

      パラメータ

      • key: string

      戻り値 void

    • 待たせている絵をローダへ渡して読み始める。ローダの実行中なら何もしない(完了時に呼び直される)。

      戻り値 void

    • その土地の絵のうち未ロードのものを読み始める(冪等)。

      パラメータ

      • location: string

      戻り値 void

    • その土地の土地カードの絵1枚だけを読み始める(冪等)。未発見の道の行き先用——道のカードは 発見と同時に行き先の絵で現れるため、発見してからでは間に合わない。背景はまだ読まない。

      パラメータ

      • location: string

      戻り値 void