Cþ<ý<- type: entity
  abstract: true
  parent:
  - CMXenoDeveloped
  - CMXenoTail
  - RMCXenoSpeechSounds
  - RMCXenoMobCollision
  id: RMCXenoQueenBase
  name: Queen
  description: A huge, looming alien creature. The biggest and the baddest.
  components:
  - type: GuideHelp
    guides:
    - RMCGuideRoleQueen
  - type: GhostRole
    name: cm-job-name-xeno-queen
  - type: Sprite
    sprite: _RMC14/Mobs/Xenonids/Queen/queen.rsi
    layers:
    - map: [ "enum.XenoVisualLayers.Base" ]
      state: alive
    - map: [ "enum.XenoVisualLayers.Ovipositor" ]
      sprite: _RMC14/Mobs/Xenonids/Queen/ovipositor.rsi
    - map: [ "enum.RMCDamageVisualLayers.Base" ]
      visible: false
    - map: [ "enum.XenoInhandVisualLayers.Left" ]
      visible: false
    - map: [ "enum.XenoInhandVisualLayers.Right" ]
      visible: false
    - map: [ "focused" ]
      sprite: _RMC14/Interface/xeno_hud.rsi
      state: hudeye
      visible: false
    - map: [ "targetedDirection" ]
      sprite: _RMC14/Effects/targeted.rsi
      state: sniper_lockon_direction
      visible: false
    - map: [ "targetedDirectionIntense" ]
      sprite: _RMC14/Effects/targeted.rsi
      state: sniper_lockon_intense_direction
      visible: false
  - type: MobState
    allowedStates:
    - Alive
    - Critical
    - Dead
  - type: MobThresholds
    thresholds:
      0: Alive
      500: Critical
      600: Dead
  - type: Tag
    tags:
    - DoorBumpOpener
    - FootstepSound
  - type: Xeno
    role: CMXenoQueen
    spawnAtLeaderPoint: true
    actionIds:
    - ActionXenoRest
    - ActionXenoRegurgitate
    - ActionXenoWatch
    - ActionXenoTailStab
    - ActionXenoOrderConstruction
    - ActionXenoAcidNormal
    - ActionXenoPheromones
    - ActionXenoWordQueen
#    - ActionXenoPsychicWhisper
#    - ActionXenoPsychicRadiance
    - ActionXenoGut
    - ActionXenoPlantWeeds
    - ActionXenoChooseStructure
    - ActionXenoSecreteStructure
    - ActionXenoGrowOvipositor
    - ActionXenoManageHive
#    - ActionXenoRoyalJelly
#    - ActionXenoMarkResin
    tier: 0
    bypassTierCount: true
    unlockAt: 0
    hudOffset: -0.1,0
  - type: XenoHeavy
  - type: XenoAcid
  - type: XenoConstruction
    buildDelay: 2
    canBuild:
    - WallXenoResin
    - WallXenoMembrane
    - DoorXenoResin
    - XenoStickyResin
    - XenoFastResin
    canOrderConstruction:
    - HiveCoreXenoConstructionNode
    - HiveEggMorpherXenoConstructionNode
    - HiveClusterXenoConstructionNode
    - HiveRecoveryNodeXenoConstructionNode
  - type: XenoDevour
  - type: XenoPheromones
    pheromonesMultiplier: 4
    pheroSuffix: queen
  - type: XenoPlasma
    plasma: 1000
    maxPlasma: 1000
    plasmaRegenOnWeeds: 4
  - type: CMArmor
    xenoArmor: 25
    explosionArmor: 100
  - type: XenoWordQueen
  - type: XenoGut
  - type: XenoClaws
    clawType: VerySharp
  - type: MeleeWeapon
    damage:
      groups:
        Brute: 40
  - type: XenoTailStab
    tailDamage:
      groups:
        Brute: 54
  - type: XenoOvipositorCapable
  - type: Tackle
    chance: 0.55
    stunMin: 5
    stunMax: 6
  - type: TunnelRenamer
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeCircle
          radius: 0.35
        density: 185
        mask:
        - MobMask
        - BarbedBarricade
        layer:
        - MobLayer
      fix2:
        shape:
          !type:PhysShapeCircle
          radius: 0.52
        density: 185
        layer:
        - BulletImpassable
  - type: DropshipHijacker
  - type: MovementSpeedModifier
    baseWalkSpeed: 1.4
    baseSprintSpeed: 2.5
  - type: SlowOnPull
    slowdowns:
    - multiplier: 0.505
      whitelist:
        components:
        - Marine
    - multiplier: 0.5475
      whitelist:
        components:
        - XenoLight
    - multiplier: 0.43
      whitelist:
        components:
        - XenoHeavy
  - type: MobMover
  - type: FootstepModifier
    footstepSoundCollection:
      collection: XenoFootstepLarge
      params:
        volume: -6
#  - type: RandomSound
#    sound:
#      collection: XenoQueenBreath # TODO RMC14
#      params:
#        volume: -10
#    min: 45
#    max: 60
  - type: SoundOnDeath
    sound:
      path: /Audio/_RMC14/Xeno/alien_queen_died.ogg
      params:
        volume: -6
  - type: WhitelistPickup
    whitelist:
      components:
      - XenoEgg
      - XenoFruit
  - type: XenoEvolutionGranter
  - type: XenoEvolutionCapped
    id: CMXenoQueen
    max: 1
  - type: EmitSoundOnSpawn
    sound:
      path: /Audio/_RMC14/Xeno/alien_queen_command.ogg
      params:
        volume: -8
  - type: XenoAnnounceDeath
    message: cm-xeno-death-queen
    color: "#921992"
  - type: XenoMaturing
    critThreshold: 1000
    deadThreshold: 1100
    addComponents:
    - type: XenoScreech
      paralyzeTime: 2
    - type: XenoToggleSpit
    addActions:
    - ActionXenoScreech
    - ActionXenoSpitQueen
    - ActionXenoToggleSpitType
  - type: RMCSize
    size: Immobile
  - type: RMCXenoDamageVisuals
    prefix: queen
  - type: PreventPulledWhileAlive
    whitelist:
      components:
      - Xeno
    exceptEffects:
    - Stun
    - KnockedDown
  - type: TacticalMapUser
    xenos: true
    canDraw: true
    liveUpdate: true
  - type: TacticalMapIcon
    icon:
      sprite: _RMC14/Interface/map_blips.rsi
      state: xenoqueen
    background:
      sprite: _RMC14/Interface/map_blips.rsi
      state: xeno_ruler
  - type: AcidTrap
  - type: TacticalMapLiveUpdateOnOvi
    enabled: false
  - type: RMCPointing
    arrow: RMCPointingArrowBigQueen
  - type: ManageHive
  - type: HiveLeaderGranter
  - type: XenoHeal
  - type: StunOnExplosionReceived
    weak: false
  - type: XenoSpit
    projectileId: XenoQueenNeuroSpitProjectile
    plasmaCost: 50
  - type: CommendationGiver
  - type: XenoInhands
    prefix: queen
  - type: XenoOmitNumber
  - type: RMCFireArmorDebuffModifier
    debuffModifier: 1.4
  - type: IntelRecoverCorpseObjectiveOnDeath
    value: 1.4
  - type: QueenEyeAction
  - type: StunFriendlyXenoOnStep
  - type: XenoToggleChargingKnockback
    enabled: false
  - type: XenoToggleChargingStop
  - type: FixedIdentity
    name: cm-job-name-xeno-queen

- type: entity
  parent: RMCXenoQueenBase
  id: CMXenoQueen
  #components:
  # - type: XenoEvolution #can be enabled for events like april fools.
  #   strains:
  #   - RMCXenoQueenMaid

- type: entity
  id: XenoLeaderPheromoneRelay
  components:
  - type: XenoPheromones

- type: entity
  parent: RMCXenoQueenBase
  id: RMCXenoQueenMaid
  suffix: Cat Maid Queen
  components:
  - type: Sprite
    sprite: _RMC14/Mobs/Xenonids/Extras/Maid_queen/maid_queen.rsi
    layers:
    - map: [ "enum.XenoVisualLayers.Base" ]
      state: alive
    - map: [ "enum.XenoVisualLayers.Ovipositor" ]
      sprite: _RMC14/Mobs/Xenonids/Extras/Maid_queen/maid_ovipositor.rsi
    - map: [ "enum.RMCDamageVisualLayers.Base" ]
      visible: false
  - type: XenoStrain
    name: rmc-xeno-maid-name
    description: rmc-xeno-maid-description
    popup: rmc-xeno-maid-popup
  - type: OwOAccent
  - type: Speech
    speechSounds: Cat

- type: entity
  parent: StationAiHolo
  id: RMCQueenEye
  name: queen eye
  description: It seems to be a visual projection of someone.
  categories: [ HideSpawnMenu, DoNotMap ]
  components:
  - type: Sprite
    color: "#a800a8"
    sprite: _RMC14/Effects/xeno_eye.rsi
    layers:
    - state: hologram
  - type: Eye
    drawFov: false
  - type: QueenEye
  - type: MotionDetectorTracked
    isQueenEye: true
  - type: Visibility
    layer: 32770
CÏÎ- type: entity
  id: AegisBox
  name: AEGIS Secure Crate
  description: A secure storage crate for transportation of AEGIS equipment. It is locked and requires an AEGIS ID card to open.
  components:
  - type: WarpPoint
  - type: PointLight
    radius: 20
    energy: 5.0
    color: "#FFE4CEFF"
    mask: /Textures/Effects/LightMasks/double_cone.png
  - type: RotatingLight
    speed: 90
  - type: Sprite
    sprite: _RMC14/Secure-Box.rsi
    layers:
    - state: aegis_crate
      map: ["enum.AegisCrateVisualLayers.Base"]
  - type: AegisCrate
    openSound: /Audio/_RMC14/Structures/secure_box_opening/secure_box_opening.ogg
  - type: TacticalMapIcon
    icon:
      sprite: _RMC14/Interface/map_blips.rsi
      state: aegiscrate
  - type: TacticalMapTracked
  - type: XenoMapTracked
  - type: MarineMapTracked
  - type: InteractionOutline
  - type: Clickable
  - type: Physics
    bodyType: Static
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.49,-0.49,0.49,0.49"   # 1x1 tile, centered
        density: 100
        mask:
        - FullTileMask
        layer:
        - WallLayer
  - type: AccessReader
    access: [["CMAccessAegis"]]
  - type: Lock
  - type: Appearance
  - type: AnimationPlayer
  - type: Corrodible
    isCorrodible: False
  - type: DestroyedByExplosionType
    explosion: RMCOBXenoTunnel

- type: entity
  id: RMCIDCardAegis
  name: AEGIS Access Badge
  description: High-Level AEGIS Access Badge, granting access to many of their restricted areas and equipment. Required to unlock AEGIS crates.
  components:
  - type: WarpPoint
  - type: Sprite
    sprite: _RMC14/Objects/CMIDs/aegis.rsi
    state: keycard
  - type: Item
    size: Tiny
  - type: Clothing
    slots:
    - idcard
  - type: Clickable
  - type: InteractionOutline
  - type: Access
    groups:
    - CMAccessAegis

- type: entity
  parent: RMCOrbitalCannonWarheadBase
  id: RMCOrbitalCannonWarheadAegis
  description: "An experimental phoron-based AEGIS Orbital Warhead, straight from the R&D Division of AEGIS. Designed to be used against targets where a single orbital warhead is simply not enough."
  name: AEGIS orbital warhead
  components:
  - type: WarpPoint
  - type: TacticalMapIcon
    icon:
      sprite: _RMC14/Interface/map_blips.rsi
      state: aegis_ob_2
  - type: TacticalMapTracked
  - type: XenoMapTracked
  - type: MarineMapTracked
  - type: Sprite
    sprite: _RMC14/Structures/ob_warhead_aegis.rsi
    state: ob_warhead_aegis
  - type: OrbitalCannonWarhead
    explosion: RMCOrbitalCannonExplosionAegis
    isAegis: true
    firstWarningRange: 60
    secondWarningRange: 55
    thirdWarningRange: 45
  - type: PowerLoaderGrabbable
    virtualRight: RMCVirtualWarheadRightAegis
    virtualLeft: RMCVirtualWarheadLeftAegisCê!é!- type: entity
  name: pill
  parent: BaseItem
  id: CMPill
  description: "A pill."
  components:
  - type: Sprite
    sprite: _RMC14/Objects/Chemistry/pills.rsi
    layers:
    - state: pill1
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: Item
    size: Tiny
    sprite: _RMC14/Objects/Chemistry/pills.rsi
  - type: ReagentExaminationRequiresSkill
    skilledExamineContains: cm-pill-contains
    skilledExamineNone: cm-pill-contains-none
    skills:
      RMCSkillMedical: 1
  - type: ExamineRequiresSkill
    unskilledExamine: cm-pill-contents-unknown
    skilledExamine: cm-pill-contents-none
    skills:
      RMCSkillMedical: 1
  - type: Pill
  - type: Food
    delay: 0
    forceFeedDelay: 1
    transferAmount: null
    eatMessage: food-swallow
    useSound: /Audio/Items/pill.ogg
  - type: BadFood
  - type: FlavorProfile
    ignoreReagents: []
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 60
  - type: SolutionSpiker
    sourceSolution: food
  - type: Extractable
    grindableSolutionName: food
  - type: StaticPrice
    price: 0
  - type: Tag
    tags:
    - Pill
  - type: Clothing
    quickEquip: false
    slots:
    - suitstorage
  - type: RMCSmartFridgeInsertable

# TODO RMC14 these need to have a random state per round
- type: entity
  parent: CMPill
  id: CMPillBicaridine
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 15
        reagents:
        - ReagentId: CMBicaridine
          Quantity: 15
  - type: Sprite
    layers:
    - state: pill3
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: cm-pill-contents-bicaridine

- type: entity
  parent: CMPill
  id: CMPillDexalin
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 15
        reagents:
        - ReagentId: CMDexalin
          Quantity: 15
  - type: Sprite
    layers:
    - state: pill16
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: cm-pill-contents-dexalin

- type: entity
  parent: CMPill
  id: CMPillDylovene
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 15
        reagents:
        - ReagentId: CMDylovene
          Quantity: 15
  - type: Sprite
    layers:
    - state: pill13
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: cm-pill-contents-dylovene

- type: entity
  parent: CMPill
  id: CMPillInaprovaline
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 15
        reagents:
        - ReagentId: CMInaprovaline
          Quantity: 15
  - type: Sprite
    layers:
    - state: pill1
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: cm-pill-contents-inaprovaline

- type: entity
  parent: CMPill
  id: CMPillKelotane
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 15
        reagents:
        - ReagentId: CMKelotane
          Quantity: 15
  - type: Sprite
    layers:
    - state: pill5
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: cm-pill-contents-kelotane

- type: entity
  parent: CMPill
  id: CMPillTricordrazine
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 15
        reagents:
        - ReagentId: CMTricordrazine
          Quantity: 15
  - type: Sprite
    layers:
    - state: pill5
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: cm-pill-contents-tricordrazine

- type: entity
  parent: CMPill
  id: RMCPillRussianRed
  components:
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 10
        reagents:
        - ReagentId: RMCRussianRed
          Quantity: 10
  - type: Sprite
    layers:
    - state: pill12
      map: [ "enum.DamageStateVisualLayers.Base" ]
  - type: ExamineRequiresSkill
    skilledExamine: rmc-pill-contents-russianred

# TODO RMC14 peridaxon, tramadol
C²±- type: job
  parent: CMJobBase
  id: CMWeYaresponder
  name: rmc-job-name-weya-responder
  description: rmc-job-description-weya-responder
  playTimeTracker: CMJobWeYaResponder
  ranks:
    RMCRankWeYaExecutiveSpecialist: []
  startingGear: RMCGearWeYaResponder
  icon: "CMJobIconEmpty"
  joinNotifyCrew: false
  supervisors: cm-job-supervisors-staff
  accessGroups:
  - ShipMasterAccess
  spawnMenuRoleName: WEYA Communications Executive
  special:
  - !type:AddComponentSpecial
    components:
    - type: Skills
      skills:
        RMCSkillConstruction: 2
        RMCSkillEngineer: 2
        RMCSkillFirearms: 1
        RMCSkillFireman: 1
        RMCSkillIntel: 1
        RMCSkillJtac: 3
        RMCSkillMedical: 2
        RMCSkillOverwatch: 1
        RMCSkillPolice: 1
        RMCSkillPowerLoader: 1
        RMCSkillSurgery: 1
        RMCSkillVehicles: 2
    - type: RMCRibbon
  hasIcon: false
  hidden: true

- type: startingGear
  id: RMCGearWeYaResponder
  equipment:
    ears: RMCHeadsetDistressPMCDirector
    back: CMSatchel
    belt: CMClipboard
    head: ArmorHelmetPMC
    jumpsuit: CMJumpsuitLiaisonBlack
    outerClothing: RMCJacketCorporateFormal
    shoes: RMCShoesLaceup
    id: RMCIDCardWeYaResponder
    pocket1: RMCPouchGeneralLarge
    pocket2: RMCPouchDocument

- type: entity
  parent: CMIDCardGold
  id: RMCIDCardWeYaResponder
  name: We-Ya Communications Executive ID card
  description: A fancy, faux gold plated ID card. One of many given to Weston-Yamada's army of fax operators.
  components:
  - type: Sprite
    sprite: _RMC14/Objects/CMIDs/gold_id.rsi
  - type: Clothing
    slots:
    - idcard
    sprite: _RMC14/Objects/CMIDs/gold_id.rsi
  - type: PresetIdCard
    job: CMWeYaresponder

- type: playTimeTracker
  id: CMJobWeYaResponder
Cþ<ý<- type: entity
  abstract: true
  parent:
  - CMXenoDeveloped
  - CMXenoTail
  - RMCXenoSpeechSounds
  - RMCXenoMobCollision
  id: RMCXenoQueenBase
  name: Queen
  description: A huge, looming alien creature. The biggest and the baddest.
  components:
  - type: GuideHelp
    guides:
    - RMCGuideRoleQueen
  - type: GhostRole
    name: cm-job-name-xeno-queen
  - type: Sprite
    sprite: _RMC14/Mobs/Xenonids/Queen/queen.rsi
    layers:
    - map: [ "enum.XenoVisualLayers.Base" ]
      state: alive
    - map: [ "enum.XenoVisualLayers.Ovipositor" ]
      sprite: _RMC14/Mobs/Xenonids/Queen/ovipositor.rsi
    - map: [ "enum.RMCDamageVisualLayers.Base" ]
      visible: false
    - map: [ "enum.XenoInhandVisualLayers.Left" ]
      visible: false
    - map: [ "enum.XenoInhandVisualLayers.Right" ]
      visible: false
    - map: [ "focused" ]
      sprite: _RMC14/Interface/xeno_hud.rsi
      state: hudeye
      visible: false
    - map: [ "targetedDirection" ]
      sprite: _RMC14/Effects/targeted.rsi
      state: sniper_lockon_direction
      visible: false
    - map: [ "targetedDirectionIntense" ]
      sprite: _RMC14/Effects/targeted.rsi
      state: sniper_lockon_intense_direction
      visible: false
  - type: MobState
    allowedStates:
    - Alive
    - Critical
    - Dead
  - type: MobThresholds
    thresholds:
      0: Alive
      500: Critical
      600: Dead
  - type: Tag
    tags:
    - DoorBumpOpener
    - FootstepSound
  - type: Xeno
    role: CMXenoQueen
    spawnAtLeaderPoint: true
    actionIds:
    - ActionXenoRest
    - ActionXenoRegurgitate
    - ActionXenoWatch
    - ActionXenoTailStab
    - ActionXenoOrderConstruction
    - ActionXenoAcidNormal
    - ActionXenoPheromones
    - ActionXenoWordQueen
#    - ActionXenoPsychicWhisper
#    - ActionXenoPsychicRadiance
    - ActionXenoGut
    - ActionXenoPlantWeeds
    - ActionXenoChooseStructure
    - ActionXenoSecreteStructure
    - ActionXenoGrowOvipositor
    - ActionXenoManageHive
#    - ActionXenoRoyalJelly
#    - ActionXenoMarkResin
    tier: 0
    bypassTierCount: true
    unlockAt: 0
    hudOffset: -0.1,0
  - type: XenoHeavy
  - type: XenoAcid
  - type: XenoConstruction
    buildDelay: 2
    canBuild:
    - WallXenoResin
    - WallXenoMembrane
    - DoorXenoResin
    - XenoStickyResin
    - XenoFastResin
    canOrderConstruction:
    - HiveCoreXenoConstructionNode
    - HiveEggMorpherXenoConstructionNode
    - HiveClusterXenoConstructionNode
    - HiveRecoveryNodeXenoConstructionNode
  - type: XenoDevour
  - type: XenoPheromones
    pheromonesMultiplier: 4
    pheroSuffix: queen
  - type: XenoPlasma
    plasma: 1000
    maxPlasma: 1000
    plasmaRegenOnWeeds: 4
  - type: CMArmor
    xenoArmor: 25
    explosionArmor: 100
  - type: XenoWordQueen
  - type: XenoGut
  - type: XenoClaws
    clawType: VerySharp
  - type: MeleeWeapon
    damage:
      groups:
        Brute: 40
  - type: XenoTailStab
    tailDamage:
      groups:
        Brute: 54
  - type: XenoOvipositorCapable
  - type: Tackle
    chance: 0.55
    stunMin: 5
    stunMax: 6
  - type: TunnelRenamer
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeCircle
          radius: 0.35
        density: 185
        mask:
        - MobMask
        - BarbedBarricade
        layer:
        - MobLayer
      fix2:
        shape:
          !type:PhysShapeCircle
          radius: 0.52
        density: 185
        layer:
        - BulletImpassable
  - type: DropshipHijacker
  - type: MovementSpeedModifier
    baseWalkSpeed: 1.4
    baseSprintSpeed: 2.5
  - type: SlowOnPull
    slowdowns:
    - multiplier: 0.505
      whitelist:
        components:
        - Marine
    - multiplier: 0.5475
      whitelist:
        components:
        - XenoLight
    - multiplier: 0.43
      whitelist:
        components:
        - XenoHeavy
  - type: MobMover
  - type: FootstepModifier
    footstepSoundCollection:
      collection: XenoFootstepLarge
      params:
        volume: -6
#  - type: RandomSound
#    sound:
#      collection: XenoQueenBreath # TODO RMC14
#      params:
#        volume: -10
#    min: 45
#    max: 60
  - type: SoundOnDeath
    sound:
      path: /Audio/_RMC14/Xeno/alien_queen_died.ogg
      params:
        volume: -6
  - type: WhitelistPickup
    whitelist:
      components:
      - XenoEgg
      - XenoFruit
  - type: XenoEvolutionGranter
  - type: XenoEvolutionCapped
    id: CMXenoQueen
    max: 1
  - type: EmitSoundOnSpawn
    sound:
      path: /Audio/_RMC14/Xeno/alien_queen_command.ogg
      params:
        volume: -8
  - type: XenoAnnounceDeath
    message: cm-xeno-death-queen
    color: "#921992"
  - type: XenoMaturing
    critThreshold: 1000
    deadThreshold: 1100
    addComponents:
    - type: XenoScreech
      paralyzeTime: 2
    - type: XenoToggleSpit
    addActions:
    - ActionXenoScreech
    - ActionXenoSpitQueen
    - ActionXenoToggleSpitType
  - type: RMCSize
    size: Immobile
  - type: RMCXenoDamageVisuals
    prefix: queen
  - type: PreventPulledWhileAlive
    whitelist:
      components:
      - Xeno
    exceptEffects:
    - Stun
    - KnockedDown
  - type: TacticalMapUser
    xenos: true
    canDraw: true
    liveUpdate: true
  - type: TacticalMapIcon
    icon:
      sprite: _RMC14/Interface/map_blips.rsi
      state: xenoqueen
    background:
      sprite: _RMC14/Interface/map_blips.rsi
      state: xeno_ruler
  - type: AcidTrap
  - type: TacticalMapLiveUpdateOnOvi
    enabled: false
  - type: RMCPointing
    arrow: RMCPointingArrowBigQueen
  - type: ManageHive
  - type: HiveLeaderGranter
  - type: XenoHeal
  - type: StunOnExplosionReceived
    weak: false
  - type: XenoSpit
    projectileId: XenoQueenNeuroSpitProjectile
    plasmaCost: 50
  - type: CommendationGiver
  - type: XenoInhands
    prefix: queen
  - type: XenoOmitNumber
  - type: RMCFireArmorDebuffModifier
    debuffModifier: 1.4
  - type: IntelRecoverCorpseObjectiveOnDeath
    value: 1.4
  - type: QueenEyeAction
  - type: StunFriendlyXenoOnStep
  - type: XenoToggleChargingKnockback
    enabled: false
  - type: XenoToggleChargingStop
  - type: FixedIdentity
    name: cm-job-name-xeno-queen

- type: entity
  parent: RMCXenoQueenBase
  id: CMXenoQueen
  #components:
  # - type: XenoEvolution #can be enabled for events like april fools.
  #   strains:
  #   - RMCXenoQueenMaid

- type: entity
  id: XenoLeaderPheromoneRelay
  components:
  - type: XenoPheromones

- type: entity
  parent: RMCXenoQueenBase
  id: RMCXenoQueenMaid
  suffix: Cat Maid Queen
  components:
  - type: Sprite
    sprite: _RMC14/Mobs/Xenonids/Extras/Maid_queen/maid_queen.rsi
    layers:
    - map: [ "enum.XenoVisualLayers.Base" ]
      state: alive
    - map: [ "enum.XenoVisualLayers.Ovipositor" ]
      sprite: _RMC14/Mobs/Xenonids/Extras/Maid_queen/maid_ovipositor.rsi
    - map: [ "enum.RMCDamageVisualLayers.Base" ]
      visible: false
  - type: XenoStrain
    name: rmc-xeno-maid-name
    description: rmc-xeno-maid-description
    popup: rmc-xeno-maid-popup
  - type: OwOAccent
  - type: Speech
    speechSounds: Cat

- type: entity
  parent: StationAiHolo
  id: RMCQueenEye
  name: queen eye
  description: It seems to be a visual projection of someone.
  categories: [ HideSpawnMenu, DoNotMap ]
  components:
  - type: Sprite
    color: "#a800a8"
    sprite: _RMC14/Effects/xeno_eye.rsi
    layers:
    - state: hologram
  - type: Eye
    drawFov: false
  - type: QueenEye
  - type: MotionDetectorTracked
    isQueenEye: true
  - type: Visibility
    layer: 32770
Cè{ç{# Base Vender
- type: entity
  parent: VendingMachine
  id: CMVendor
  name: Vendomat
  description: A generic vending machine.
  components:
  - type: Transform
    anchored: false
    noRot: true
  - type: Physics
    bodyType: Static
  - type: AmbientOnPowered
  - type: AmbientSound
    volume: -9
    range: 3
    enabled: false
    sound:
      path: /Audio/Ambience/Objects/vending_machine_hum.ogg
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.25,-0.45,0.25,0.45"
        mask:
        - MachineMask
        layer:
        - MachineLayer
        density: 200
  - type: Repairable
    doAfterDelay: 8
  - type: ActivatableUI
    key: enum.VendingMachineUiKey.Key
  - type: ActivatableUIRequiresPower
  - type: UserInterface
    interfaces:
      enum.VendingMachineUiKey.Key:
        type: VendingMachineBoundUserInterface
      enum.WiresUiKey.Key:
        type: WiresBoundUserInterface
  - type: TypingIndicator
    proto: robot
  - type: Speech
    speechVerb: Robotic
    speechSounds: Vending
  - type: IntrinsicRadioReceiver
  - type: IntrinsicRadioTransmitter
    channels:
    - Binary
  - type: ActiveRadio
    channels:
    - Binary
    - Common
  - type: DoAfter
  - type: Electrified
    enabled: false
    usesApcPower: true
  - type: PointLight
    enabled: false
    castShadows: false
    radius: 1.5
  - type: LitOnPowered
  - type: ApcPowerReceiver
    needsPower: false # TODO RMC14
    powerLoad: 0
  - type: Appearance
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/generic.rsi
    snapCardinals: true
    layers:
    - state: "off"
      map: ["enum.VendingMachineVisualLayers.Base"]
    - state: "off"
      map: [ "enum.VendingMachineVisualLayers.BaseUnshaded" ]
      shader: unshaded
    - state: "panel"
      map: ["enum.WiresVisualLayers.MaintenancePanel"]
  - type: VendingMachine
    pack: CMVendomat
    dispenseOnHitChance: 0.25
    dispenseOnHitThreshold: 2
    offState: off
    brokenState: broken
    normalState: normal-unshaded
  - type: Corrodible
    timeToApply: 4
    structure: true
  - type: ActivatableUIBlacklist
    blacklist:
      components:
      - Xeno
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 100
      behaviors:
      - !type:DoActsBehavior
        acts: ["Breakage"]
      - !type:EjectVendorItems
    - trigger:
        !type:DamageTrigger
        damage: 200
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          CMSheetMetal1:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
      - !type:PlaySoundBehavior
        sound:
          collection: MetalGlassBreak
  - type: XenoCrusherChargable #TODO RMC14 tip over

- type: vendingMachineInventory
  id: CMVendomat


# Coffee
- type: entity
  parent: CMVendor
  id: CMVendorCoffee
  name: Hot Drinks machine
  description: A vending machine which dispenses hot drinks.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/coffee.rsi
  - type: VendingMachine
    pack: CMVendorCoffee
    ejectState: eject-unshaded

- type: vendingMachineInventory
  id: CMVendorCoffee
  startingInventory:
    DrinkHotCoffee: 25
    DrinkTeacup: 25
    DrinkHotCoco: 25


# Snack
- type: entity
  parent: CMVendor
  id: CMVendorSnack
  name: Hot Foods Machine
  description: A vending machine full of ready to cook meals, mhmmmm taste the nutritional goodness!
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/snack.rsi
  - type: VendingMachine
    pack: CMVendorSnack

- type: vendingMachineInventory
  id: CMVendorSnack
  startingInventory: # TODO RMC14
    RMCFoodSnackCheeseburgerPackaged: 12
    RMCFoodSnackBurritoPackaged: 12
    RMCFoodSnackHotdogPackaged: 12
    RMCFoodSnackKeplarCrisps: 12
    RMCFoodSnackKeplarFlamehotCrisps: 12
    RMCFoodSnackChipsPepper: 12
    RMCFoodSnackEATBar: 12
    RMCFoodSnackBoonie: 6
    RMCFoodSnackCHUNK: 6
    RMCFoodSnackBarcaridine: 6


# Cola
- type: entity
  parent: CMVendor
  id: CMVendorCola
  name: Bobda Softdrinks
  description: A softdrink vendor provided by Bobda Soda Company, Havana.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/cola.rsi
  - type: VendingMachine
    pack: CMVendorCola

- type: vendingMachineInventory
  id: CMVendorCola
  startingInventory:
    # BASIC
    CMDrinkCanBobdaClassic: 10
    CMDrinkCanBobdaCherry: 10
    CMDrinkCanBobdaLime: 10
    CMDrinkCanBobdaGrape: 10
    CMDrinkCanBobdaBlue: 10
    CMDrinkCanBobdaPeach: 10
    CMDrinkCanBobdaCranberry: 10
    CMDrinkCanBobdaVanilla: 10
    CMDrinkCanBobdaPineapple: 10
    # DIET
    CMDrinkCanBobdaClassicDiet: 10
    CMDrinkCanBobdaCherryDiet: 10
    CMDrinkCanBobdaLimeDiet: 10
    CMDrinkCanBobdaGrapeDiet: 10
    CMDrinkCanBobdaBlueDiet: 10
    CMDrinkCanBobdaPeachDiet: 10
    CMDrinkCanBobdaCranberryDiet: 10
    CMDrinkCanBobdaVanillaDiet: 10
    CMDrinkCanBobdaPineappleDiet: 10
    # NON BOBDA
    CMDrinkCanCola: 10

- type: entity
  parent: CMVendorCola
  id: RMCVendorNutriCoDrink
  name: NutriCo AutoDrink
  description: A NutriCo AutoDrink dispenser, capable of making a variety of drinks to consume from a mixture of water and instant flavoring juice and caffeine additives.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/NutriCo/drink.rsi
    offset: 0, 0.5

# Cigarettes
- type: entity
  parent: CMVendor
  id: CMVendorCigs
  name: Cigarette Machine
  description: If you want to get cancer, might as well do it in style!
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/cigs.rsi
  - type: VendingMachine
    pack: CMVendorCigs

- type: vendingMachineInventory
  id: CMVendorCigs
  startingInventory:
    RMCCigarettePackLuckySloths: 50
    RMCTarbackTube: 20
    RMCMatchboxFull: 15
    RMCLighter: 25
    RMCZippo: 10


# Security
- type: entity
  parent: CMVendor
  id: CMVendorSec
  name: SecTech
  description: A security equipment vendor.
  suffix: Military Police
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/sec.rsi
  - type: VendingMachine
    pack: CMVendorSec
    denyState: deny-unshaded
    ejectState: eject-unshaded
  - type: AccessReader
    access: [["CMAccessBrig"]]

- type: vendingMachineInventory
  id: CMVendorSec
  startingInventory: # TODO RMC14
    RMCHandcuffs: 8
    RMCZipties: 10
    RMCGrenadeFlashBang: 4
    RMCWeaponTaser: 4
    # Pepper spray 4
    CMStunbaton: 4
    RMCFlashlight: 4
    CMBeltSecurityMP: 10
    CMFlash: 5
    RMCBoxDonut: 12
    # Evidence box 6
    CMArmorHelmetM10MP: 6
    CMHeadCapMP: 6
    CMJumpsuitMP: 2
    CMHeadBeretRed: 6
    CMGlassesSecurity: 3
    CMHeadset: 6

- type: entity
  parent: CMVendor
  id: RMCVendorSecArmory
  name: Riot Tech
  description: A Police Riot equipment vendor.
  suffix: Military Police
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/sec.rsi
  - type: VendingMachine
    pack: RMCVendorRiot
    denyState: deny-unshaded
    ejectState: eject-unshaded
  - type: AccessReader
    access: [["CMAccessBrig"]]

- type: vendingMachineInventory
  id: RMCVendorRiot
  startingInventory: # TODO RMC14
    RMCZipties: 40
    RMCGrenadeFlashBang: 20
    RMCMagazineSMGM63Rubber: 40
    ##RMCGrenadeTearGas: 40
    RMCMagazinePistolM1984Rubber: 40
    RMCMagazinePistolM77Rubber: 40
    RMCMagazineRifleM54CRubber: 40
    RMCMagazineRifleM4SPRRubber: 40
    CMArmorHelmetM10MP: 8
    ##RMCBreachingChargeRiot: 6

# Senior Enlisted Advisor
- type: entity
  parent: CMVendor
  id: CMVendorSEA
  name: SEATech
  description: An equipment vendor designed to save lives
  suffix: SEA
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/sec.rsi
  - type: VendingMachine
    pack: CMVendorSEA
    denyState: deny-unshaded
    ejectState: eject-unshaded
  - type: AccessReader
    access: [["CMAccessSEA"]]

- type: vendingMachineInventory
  id: CMVendorSEA
  startingInventory: # TODO RMC14
    RMCMagazineSMGM63Rubber: 20
    RMCMagazinePistolM1984Rubber: 20
    RMCMagazinePistolM77Rubber: 20
    RMCMagazineRifleM54CRubber: 20
    RMCMagazineRifleM4SPRRubber: 20
    CMShellShotgunBeanbag: 20
    CMFirstAidKitFilled: 2
    CMBurnAidKitFilled: 2
    RMCRadiationAidKitFilled: 1
    # Crew Monitor


# Nutriments
- type: entity
  parent: CMVendor
  id: CMVendorNutri
  name: NutriMax
  description: A plant nutrient vendor.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/nutri.rsi
  - type: VendingMachine
    pack: CMVendorNutri
    denyState: deny-unshaded
    ejectState: eject-unshaded

- type: vendingMachineInventory
  id: CMVendorNutri
  startingInventory:
    ChemistryBottleEZNutrient: 35
    ChemistryBottleLeft4Zed: 25
    ChemistryBottleRobustHarvest: 15
    PestSpray: 20
    Syringe: 5
    PlantBag: 5
    HydroponicsToolSpade: 3
    HydroponicsToolHatchet: 3
    HydroponicsToolScythe: 3


# Seeds
- type: entity
  parent: CMVendor
  id: CMVendorSeeds
  name: MegaSeed Servitor
  description: When you need seeds fast!
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/seeds.rsi
  - type: VendingMachine
    pack: CMVendorSeeds
    denyState: deny-unshaded
    ejectState: eject-unshaded

- type: vendingMachineInventory
  id: CMVendorSeeds
  startingInventory: # TODO RMC14
    BananaSeeds: 3
    BerrySeeds: 3
    CarrotSeeds: 3
    ChanterelleSeeds: 2
    ChiliSeeds: 3
    CornSeeds: 3
    EggplantSeeds: 3
    PotatoSeeds: 3
    SoybeanSeeds: 3
    SunflowerSeeds: 2
    TomatoSeeds: 3
    WheatSeeds: 3
    OatSeeds: 3
    AppleSeeds: 3
    PoppySeeds: 3
    SugarcaneSeeds: 3
    PeanutSeeds: 3
    WhiteBeetSeeds: 3
    WatermelonSeeds: 3
    LimeSeeds: 3
    LemonSeeds: 3
    OrangeSeeds: 3
    PineappleSeeds: 3
    GrassSeeds: 3
    CocoaSeeds: 3
    PlumpSeeds: 2
    CabbageSeeds: 3
    GrapeSeeds: 3
    PumpkinSeeds: 3
    CherrySeeds: 3
    RiceSeeds: 3
    GarlicSeeds: 3
    OnionSeeds: 3
    OnionRedSeeds: 3


# Dinnerware
- type: entity
  parent: ColMarTechBaseAnchorable
  id: CMVendorDinnerware
  name: Dinnerware
  description: A kitchen and restaraunt equipment vendor.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/dinnerware.rsi
    snapCardinals: true
    layers:
    - state: "off"
      map: ["enum.VendingMachineVisualLayers.Base"]
    - state: "normal-unshaded"
      map: [ "enum.VendingMachineVisualLayers.BaseUnshaded" ]
      shader: unshaded
    - state: "panel"
      map: ["enum.WiresVisualLayers.MaintenancePanel"]
  - type: ApcPowerReceiver
    needsPower: false # TODO RMC14
    powerLoad: 0
  - type: Appearance
  - type: LitOnPowered
  - type: Wires
    boardName: wires-board-name-vendingmachine
    layoutId: Vending
  - type: WiresPanel
  - type: WiresVisuals
  - type: CMAutomatedVendor
    scaling: false
    sections:
    - name: Products
      entries:
      - id: RMCFork
        amount: 6
      - id: RMCSpoon
        amount: 4
      - id: RMCKitchenKnife
        amount: 5
      - id: DrinkShaker
        amount: 5
      - id: DrinkGlass
        amount: 8
      - id: ClothingOuterApronChef
        amount: 2
      - id: RMCCondimentSmallSalt
        amount: 4
      - id: RMCCondimentSmallPepper
        amount: 4
      - id: RMCCondimentEnzyme
        amount: 1
      - id: RMCCondiment
        amount: 8
      - id: FoodPlateTin
        amount: 5
      - id: FoodBowlBig
        amount: 10
      - id: RMCKitchenKnifeButcher
        amount: 1
      - id: RMCKitchenKnifeChef
        amount: 3
      - id: RMCRollingPin
        amount: 4
      - id: PairedChopsticks
        amount: 4
      - id: FoodPlate
        amount: 10
      - id: FoodPlateSmall
        amount: 10
      - id: FoodPlateMuffinTin
        amount: 5
      - id: FoodKebabSkewer
        amount: 5
      - id: CMBeaker
        amount: 5
      - id: CMBeakerLarge
        amount: 5
      - id: Pitcher
        amount: 2
      - id: DrinkMug
        amount: 5
      - id: DrinkMugBlack
        amount: 2
      - id: DrinkMugBlue
        amount: 2
      - id: DrinkMugGreen
        amount: 2
      - id: DrinkMugHeart
        amount: 1
      - id: DrinkMugMetal
        amount: 2
      - id: DrinkMugMoebius
        amount: 1
      - id: DrinkMugOne
        amount: 1
      - id: DrinkMugRainbow
        amount: 2
      - id: DrinkMugRed
        amount: 2

# BODA
- type: entity
  parent: CMVendor
  id: CMVendorSodaSoviet
  name: BODA
  description: An old sweet water vending machine, how did this end up here?
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/sovietsoda.rsi
  - type: VendingMachine
    pack: CMVendorSodaSoviet

- type: vendingMachineInventory
  id: CMVendorSodaSoviet
  startingInventory:
    CMDrinkCanBoda: 30


# Ingredients
- type: entity
  parent: CMVendorDinnerware
  id: CMVendorIngredients
  name: Galley Auxiliary Storage Requisition System
  description: A vending machine meant to be use for cooks.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/VendingMachines/snack.rsi
  - type: CMAutomatedVendor
    scaling: false
    sections:
    - name: Products
      entries:
      - id: FoodContainerEgg
        amount: 12
      - id: FoodMeatChicken
        amount: 24
      - id: FoodMeatFish
        amount: 12
      - id: FoodMeat
        amount: 24
      - id: FoodMeatBacon
        amount: 24
      - id: DrinkMilkCarton
        amount: 24
      - id: DrinkSoyMilkCarton
        amount: 12
      - id: RMCCondimentEnzyme
        amount: 12
      - id: ReagentContainerFlour
        amount: 12
      - id: RMCCondimentSugar
        amount: 12
      - id: RMCCondimentCornOil
        amount: 12
      - id: RMCCondimentSmallSalt
        amount: 12
      - id: RMCCondimentSmallPepper
        amount: 12
    # TODO RMC14 Mint 12
      - id: FoodApple
        amount: 12
      - id: FoodBanana
        amount: 12
      - id: FoodMushroom
        amount: 12
      - id: FoodCherry
        amount: 12
      - id: FoodChiliPepper
        amount: 12
      - id: FoodCabbage
        amount: 12
      - id: FoodCarrot
        amount: 12
      - id: FoodCorn
        amount: 12
      - id: FoodEggplant
        amount: 12
      - id: FoodLemon
        amount: 12
      - id: FoodLime
        amount: 12
      - id: FoodOrange
        amount: 12
      - id: FoodPotato
        amount: 12
      - id: FoodTomato
        amount: 12
      - id: FoodWhiteBeet
        amount: 12
      - id: FoodOnion
        amount: 12
      - id: FoodOnionRed
        amount: 12
      - id: FoodGarlic
        amount: 12
      - id: ReagentContainerRice
        amount: 12
      - id: ReagentContainerOliveoil
        amount: 12
      - id: FoodCondimentBottleVinegar
        amount: 12
      - id: ReagentContainerCornmeal
        amount: 12
      - id: ReagentContainerMayo
        amount: 12

# PVE

- type: entity
  parent: CMVendorSec
  id: RMCVendorSecTSEPA
  suffix: TSEPA
  components:
  - type: AccessReader
    access: [["RMCAccessTSEPA"]]
