# SPDX-FileCopyrightText: 2021 Fishfish458 <47410468+Fishfish458@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2021 Ygg01 <y.laughing.man.y@gmail.com>
# SPDX-FileCopyrightText: 2021 fishfish458 <fishfish458>
# SPDX-FileCopyrightText: 2021 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2022 Flipp Syder <76629141+vulppine@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Kara <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2022 Peptide90 <78795277+Peptide90@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Rane <60792108+Elijahrane@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Visne <39844191+Visne@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <metalgearsloth@gmail.com>
# SPDX-FileCopyrightText: 2023 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Ubaser <134914314+UbaserB@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 csqrb <56765288+CaptainSqrBeard@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Kanashi-Panda <lliamrtmc@gmail.com>
# SPDX-FileCopyrightText: 2024 Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 slarticodefast <161409025+slarticodefast@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  abstract: true
  parent: BaseItem
  id: Crayon
  name: crayon
  description: A colourful crayon. Looks tasty. Mmmm...
  components:
  - type: Sprite
    sprite: Objects/Fun/crayons.rsi
  - type: Item
    sprite: Objects/Fun/crayons.rsi
    size: Tiny
  - type: Tag
    tags:
    - Write
    - Crayon
    - Trash
  - type: SpaceGarbage
  - type: UserInterface
    interfaces:
      enum.CrayonUiKey.Key:
        type: CrayonBoundUserInterface
  - type: Crayon
    capacity: 25
  - type: Food
  - type: FlavorProfile
    flavors:
    - chewy
    - bitter
  - type: SolutionContainerManager
    solutions:
      food:
        reagents:
        - ReagentId: Nutriment
          Quantity: 3
        - ReagentId: MindbreakerToxin
          Quantity: 2
  - type: StaticPrice
    price: 5

- type: entity
  parent: Crayon
  id: CrayonWhite
  name: white crayon
  components:
  - type: Sprite
    state: white
  - type: Item
    heldPrefix: white
  - type: Crayon
    color: white
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonWhite
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonMime
  name: mime crayon
  components:
  - type: Sprite
    state: mime
  - type: Item
    heldPrefix: mime
  - type: Crayon
    color: white
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonWhite
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonRainbow
  name: rainbow crayon
  components:
  - type: Sprite
    state: rainbow
  - type: Item
    heldPrefix: rainbow
  - type: Crayon
    color: Red
    selectableColor: true
    capacity: 30
  - type: Tag
    tags:
    - Write
    - Crayon
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonBlack
  name: black crayon
  components:
  - type: Sprite
    state: black
  - type: Item
    heldPrefix: black
  - type: Crayon
    color: black
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonBlack
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonRed
  name: red crayon
  components:
  - type: Sprite
    state: red
  - type: Item
    heldPrefix: red
  - type: Crayon
    color: red
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonRed
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonOrange
  name: orange crayon
  components:
  - type: Sprite
    state: orange
  - type: Item
    heldPrefix: orange
  - type: Crayon
    color: orange
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonOrange
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonYellow
  name: yellow crayon
  components:
  - type: Sprite
    state: yellow
  - type: Item
    heldPrefix: yellow
  - type: Crayon
    color: yellow
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonYellow
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonGreen
  name: green crayon
  components:
  - type: Sprite
    state: green
  - type: Item
    heldPrefix: green
  - type: Crayon
    color: "#A8E61D"
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonGreen
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonBlue
  name: blue crayon
  components:
  - type: Sprite
    state: blue
  - type: Item
    heldPrefix: blue
  - type: Crayon
    color: "#00B7EF"
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonBlue
    - Recyclable
    - Trash

- type: entity
  parent: Crayon
  id: CrayonPurple
  name: purple crayon
  components:
  - type: Sprite
    state: purple
  - type: Item
    heldPrefix: purple
  - type: Crayon
    color: purple
  - type: Tag
    tags:
    - Write
    - Crayon
    - CrayonPurple
    - Recyclable
    - Trash

- type: entity
  parent: BoxCardboard
  id: CrayonBox
  name: crayon box
  description: It's a box of crayons.
  components:
  - type: Sprite
    sprite: Objects/Fun/crayons.rsi
    state: box
  - type: Storage
    grid:
    - 0,0,7,0
    maxItemSize: Tiny
  - type: Item
    sprite: Objects/Fun/crayons.rsi
    size: Small
    heldPrefix: box
  - type: StorageFill
    contents:
    - id: CrayonRed
    - id: CrayonOrange
    - id: CrayonYellow
    - id: CrayonGreen
    - id: CrayonBlue
    - id: CrayonPurple
    - id: CrayonBlack
    - id: CrayonWhite
  - type: ItemMapper
    mapLayers:
      black_box:
        whitelist:
          tags:
          - CrayonBlack
      blue_box:
        whitelist:
          tags:
          - CrayonBlue
      green_box:
        whitelist:
          tags:
          - CrayonGreen
      orange_box:
        whitelist:
          tags:
          - CrayonOrange
      purple_box:
        whitelist:
          tags:
          - CrayonPurple
      red_box:
        whitelist:
          tags:
          - CrayonRed
      yellow_box:
        whitelist:
          tags:
          - CrayonYellow
      white_box:
        whitelist:
          tags:
          - CrayonWhite
  - type: Appearance