- type: entity
  abstract: true
  parent: BaseStorageItem
  id: BoxBase
  components:
  - type: Sprite
    sprite: Objects/Storage/boxes.rsi
  - type: Item
    sprite: Objects/Storage/boxes.rsi
    size: Large
    shape:
    - 0,0,2,2
  - type: Storage
    maxItemSize: Small
    grid:
    - 0,0,2,2
  - type: ContainerContainer
    containers:
      storagebase: !type:Container
  - type: StaticPrice
    price: 10

- type: entity
  abstract: true
  parent: BoxBase
  id: BoxBaseSmall
  components:
  - type: Item
    size: Small
    shape:
    - 0,0,1,1
  - type: Storage
    grid:
    - 0,0,1,1
  - type: StaticPrice # Half of the "regular" box
    price: 5

- type: entity
  abstract: true
  parent: BoxBaseSmall
  id: BoxBaseHug
  components:
  - type: Item
    heldPrefix: hug

- type: entity
  parent: BoxBase
  id: ToteBase
  name: circuit tote
  description: A large tote for carrying circuit boards.
  components:
  - type: Sprite
    layers:
      - state: tote-0
        map: ["enum.StorageFillLayers.Fill"]
      - state: circuit
  - type: Appearance
  - type: StorageFillVisualizer
    maxFillLevels: 3
    fillBaseName: tote
  - type: Storage
    maxItemSize: Small
    grid:
    - 0,0,5,2
    whitelist:
      components:
      - MachineBoard
      - Circuitboard
  - type: Construction
    graph: ToteBase
    node: totebase
  - type: PhysicalComposition
    materialComposition:
      Cardboard: 75
      Cloth: 25
  - type: StaticPrice
    price: 15
