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

    インターフェイス CraftingMaterial

    材料スロットが要求している1件ぶん。

    interface CraftingMaterial {
        allocated: ReadonlySet<number>;
        held: number;
        inCurrentStep: boolean;
        needed: number;
        objectGlobalIds: readonly ObjectGlobalId[];
    }
    インデックス
    allocated: ReadonlySet<number>

    この要求へ当てた物のインスタンスID(crafting.heldPerRemainingRequirement)。入っている物の縁の色と 数をどの要求の枠に出すかは、型ではなくこれで引く——タグの要求は当てはまる型が複数あるので、型 から引くと、当てる先が振り替えられた物を実際とは別の要求の枠に出してしまう(slotCells.materialCells)。

    個体ではなくIDなのは、子ウィンドウへ貸し出して枠に待ち印だけが残った札(awaited)も同じ鍵で 引けるようにするため。

    held: number
    inCurrentStep: boolean

    今の工程が要求しているか(後の工程のぶんならfalse)。

    needed: number

    残りの工程が要求する数と、そのうち入っている中身で満たせている数 (crafting.heldPerRemainingRequirement)。

    heldは枠ごとに数え直した数ではない——同じ工程の中では1つの物が1つの要求しか満たさないので、 尖った石1つをcutting_toolとsharp_stoneの両方で数えると、どちらの枠も満ちて見えるのに 作業できない形になる。

    objectGlobalIds: readonly ObjectGlobalId[]

    要求に当てはまる型(PlayScreenView.cardOfTypeで札にする)。

    1つとは限らない。 要求はタグでも書けるので(刃物・縫い道具)、当てはまる型が複数になる。 どれを出すかは画面の都合——今は1秒ごとに順に出して、どれでもよいことを見せている。