# SPDX-FileCopyrightText: 2021 DrSmugleaf <DrSmugleaf@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2022 Peptide90 <78795277+Peptide90@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Profane McBane <profanedbane+github@gmail.com>
# SPDX-FileCopyrightText: 2022 Rane <60792108+Elijahrane@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Visne <39844191+Visne@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <metalgearsloth@gmail.com>
# SPDX-FileCopyrightText: 2022 themias <89101928+themias@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Arendian <137322659+Arendian@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Bixkitts <72874643+Bixkitts@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 iller_saver <55444968+illersaver@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 lapatison <100279397+lapatison@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
#
# SPDX-License-Identifier: MIT

- type: entity
  description: "If you want to get cancer, might as well do it in style."
  id: BaseSmokable
  parent: BaseItem
  abstract: true
  components:
  - type: Reactive
    groups:
      Extinguish: [ Touch ]
  - type: ExtinguishableSetCollisionWake
  - type: Smokable
  - type: Sprite
  - type: Appearance
  - type: BurnStateVisuals
  - type: Tag
    tags:
    - Trash
  - type: SpaceGarbage
  - type: StaticPrice
    price: 5
  - type: InjectableSolution
    solution: smokable

# Base for all cigars and cigarettes.
- type: entity
  parent: BaseSmokable
  id: BaseCigar
  abstract: true
  components:
  - type: Smokable
    exposeTemperature: 1173.15
  - type: Cigar
  - type: Tag
    tags:
    - Trash
  - type: SolutionContainerManager
    solutions:
      smokable:
        maxVol: 25
        reagents:
          - ReagentId: Nicotine
            Quantity: 15

- type: entity
  parent: BaseSmokable
  id: BaseSmokingPipe
  abstract: true
  components:
  - type: Smokable
    exposeTemperature: 1173.15
  - type: ContainerContainer
    containers:
      bowl_slot: !type:ContainerSlot
  - type: ItemSlots
  - type: SmokingPipe
    bowl_slot:
      name: smoking-pipe-slot-component-slot-name-bowl
      whitelist:
        tags:
          - Smokable
      insertSound:
        path: /Audio/Weapons/Guns/Empty/empty.ogg
      ejectSound:
        path: /Audio/Weapons/Guns/Empty/empty.ogg
  - type: SolutionContainerManager
    solutions:
      smokable:
        maxVol: 30

- type: entity
  parent: BaseItem
  id: BaseVape
  abstract: true
  components:
  - type: Vape
    damage:
      types:
        Heat: 2
  - type: SolutionContainerManager
    solutions:
      smokable:
        maxVol: 10
  - type: RefillableSolution
    solution: smokable
  - type: ExaminableSolution
    solution: smokable