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

    土地(locations.yamlのexplorable trait実装オブジェクト)の包み(ObjectWrapper)。

    探索の入口はexploreに一本化: exploreアクションの実行に加え、設置物の公開(revealDueFixtures)まで 自分で行い、呼び出し側に後続手順を持たせない。

    階層 (一覧を見る)

    インデックス
    codex: WorldCodex
    instance: WorldObject
    • get ambientTemperature(): number | undefined

      この場所の今の気温(ClimateSystem.md 1.1節)。空の気温を土台に、海抜ぶんの差と、据えた炉の暖 (FireSystem.md 9.2節)が積まれた実効値。気温を持たない場所ではundefined。

      戻り値 number | undefined

    • get discoveredPathDestinations(): readonly WorldObject[]

      発見済みの道が繋がっている先の土地(道を持たない土地では空)。

      道かどうかも行き先も名乗るのは道自身(pathタグとPath)。ここへ訊けば、設置物の並びから それを見分けて辿る手順は要らない。

      戻り値 readonly WorldObject[]

    • get explorable(): boolean

      探索できる土地か(exploreアクションを宣言しているか、ExplorationSystem.md 2節)。今すぐ探索 できるかではない——条件を満たすかは実行の時点で決まる(explore)。探索の面を出すかの判断に使う。

      戻り値 boolean

    • get explorationProgressMax(): number

      探索率100%に当たる進捗(=exploration_progressのrange.max、土地ごとにYAMLで定義)。 ここに達した後も探索は続けられる(ExplorationSystem.md 2節)。

      戻り値 number

    • get itemStacks(): readonly (readonly WorldObject[])[]

      アイテムスロットの中身を、積み重なっているまとまり(ObjectStack)ごとに分けたもの(先頭が代表)。 平らに返すitemsでは見えない面(stacksOf)。

      戻り値 readonly (readonly WorldObject[])[]

    • get undiscoveredFixtures(): readonly WorldObject[]

      未発見の設置物スロットの中身。画面には出さない(locations.yaml参照)ので、外へ出すのは ここから導いた答え(undiscoveredPathDestinations)だけ。

      戻り値 readonly WorldObject[]

    • get undiscoveredPathDestinations(): readonly WorldObject[]

      まだ発見していない道が繋がっている先の土地。プレイヤーには見えていないので、 画面に出すものではなく、発見と同時に要るもの——行き先の土地の絵——を先に用意するために読む (PlayScene.requestLocationArt)。

      戻り値 readonly WorldObject[]

    • 設置物の並びに含まれる道の行き先(道でない設置物は挙げない)。行き先が世界のツリーに居ない道も 挙げない——指す先が無い道は、絵も名前も引けないため(Path.destination)。

      パラメータ

      戻り値 readonly WorldObject[]

    • この土地を1回探索する(exploreアクション+revealDueFixtures)。探索できない土地(exploreアクションを 持たない・条件を満たさない)ならfalse。探索率100%に達した後も探索は続けられる (ExplorationSystem.md 2節)。

      パラメータ

      戻り値 boolean

    • アイテムスロットへ受け入れる。受け入れられなければ(枠の型・容量)false。

      atは並びの中の位置(SlotPosition)。省略すると末尾(合流できる同種があればそのスタック)へ入る。

      どの枠へ入れるかを知っているのはこの包みなので、呼び出し側はスロットを引く手順を持たない (PlayerCharacter.takeと対)。同じことはinstance.getSlotとmoveToSlotOrRejectionでも書けるが、 それは包みが消した手順を呼び手へ戻す。今の呼び手がsrcに居るかは tests/architecture/readersOutsideSrc.test.tsの一覧が持つ。

      パラメータ

      戻り値 boolean

    • 隠しスロットの設置物を1つ公開する。道なら、移動先の土地にある帰り道(return_path_id)も一緒に 公開する。片側だけ見つかると、渡った先の土地を探索し直すまで戻れなくなるため (ExplorationSystem.md 3.1節)。

      パラメータ

      戻り値 void

    • undiscovered_fixturesの設置物のうち、required_progressが現在の探索進捗以下のものをfixturesへ移して 「発見」させる。冪等。

      戻り値 void

    • 設置物を、それ自身が今属している土地の公開スロットへ移す。帰り道は別の土地に居るため、 移し先はthis.instanceではなくその設置物の親を見る。既に公開済みなら何もしない(冪等)。

      パラメータ

      戻り値 void

    • 名指しの枠の中身を、積み重なっているまとまりごとに分けたものの写し(Slot.stacks)。宣言して いなければ空。

      平らに返す口(contentsOf)と別に持つのは、1枚に2個と2枚に1個ずつを区別するため。 束ねる/ 束ねない(stackable)の決まりが守られているかは、この分かれ方でしか確かめられない。

      パラメータ

      戻り値 readonly (readonly WorldObject[])[]