# SPDX-License-Identifier: AGPL-3.0-or-later
# Shitmed Change: This file was mostly reorganized by shitmed to use composition

# Just copypasta of some human basic body parts for interaction,
# only differences for now is that limbs work in pairs,

- type: entity
  abstract: true
  parent: BasePart
  id: PartAnimalBase
  components:
  # yes these sprites dont make sense i dont care its better than them being invisible
  - type: Sprite
    sprite: Mobs/Species/Reptilian/parts.rsi
  - type: Icon
    sprite: Mobs/Species/Reptilian/parts.rsi
  - type: StaticPrice
    price: 50

- type: entity
  parent: PartAnimalBase
  id: HandsAnimal
  name: animal hands
  components:
  - type: Sprite
    layers:
    - state: l_hand
    - state: r_hand
  - type: Icon
    state: l_hand # cba to make a state for it
  - type: BodyPart
    partType: Hand
    #symmetry: Left
    slotId: hands # Shitmed

- type: entity
  parent: PartAnimalBase
  id: LegsAnimal
  name: animal legs
  components:
  - type: Sprite
    layers:
    - state: l_leg
    - state: r_leg
  - type: Icon
    state: l_leg # cba to make a state for it
  - type: BodyPart
    partType: Leg
    slotId: legs # Shitmed
  - type: MovementBodyPart

- type: entity
  parent: PartAnimalBase
  id: FeetAnimal
  name: animal feet
  components:
  - type: Sprite
    layers:
    - state: r_foot
    - state: l_foot
  - type: Icon
    state: l_foot # cba to make a state for it
  - type: BodyPart
    partType: Foot
    slotId: feet # Shitmed

- type: entity
  parent: [ PartAnimalBase, BaseChest ]
  id: ChestAnimal
  name: animal chest
  components:
  - type: Sprite
    layers:
    - state: chest_m
  - type: BodyPart # Shitmed - remove head so you cant turn people into literally ANY simblemob (it should at least be a tech and surgery to add the slot)
    children:
      groin:
        id: groin
        type: Groin
  - type: Extractable
    juiceSolution:
      reagents:
      - ReagentId: Fat
        Quantity: 10
      - ReagentId: Blood
        Quantity: 20

- type: entity
  parent: [ PartAnimalBase, BaseGroin ]
  id: GroinAnimal
  name: animal groin
  components:
  - type: Sprite
    layers:
    - state: groin_m
  - type: BodyPart
    # standard organs are good for most animals
    children: # most animals have no hands (primate is unused) so just legs by default
      legs:
        id: legs
        type: Leg
  - type: Extractable
    juiceSolution:
      reagents:
      - ReagentId: Fat
        Quantity: 10
      - ReagentId: Blood
        Quantity: 20

- type: entity
  parent: [ PartAnimalBase, BaseLeftHand ]
  id: LeftHandSmartCorgi
  name: corgi hand
  categories: [ HideSpawnMenu ]
  components:
  - type: Sprite
    layers:
    - state: l_hand
  - type: BodyPart
    partType: Hand
    symmetry: Left

- type: entity
  parent: [ PartAnimalBase, BaseRightHand ]
  id: RightHandSmartCorgi
  name: corgi hand
  categories: [ HideSpawnMenu ]
  components:
  - type: Sprite
    layers:
    - state: r_hand
  - type: BodyPart
    partType: Hand
    symmetry: Right
