- type: entity
  id: BaseMindRole
  name: Mind Role
  description: Mind Role entity
  abstract: true
  components:
  - type: MindRole

- type: entity
  parent: BaseMindRole
  id: BaseMindRoleAntag
  abstract: true
  components:
  - type: MindRole
    antag: true

#Observer
- type: entity
  parent: BaseMindRole
  id: MindRoleObserver
  name: Observer Role
  components:
  - type: ObserverRole

#Ghost Roles
- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleNeutral
  name: Ghost Role
  components:
  - type: GhostRoleMarkerRole

- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleFamiliar
  name: Ghost Role (Familiar)
  components:
  - type: MindRole
    roleType: Familiar
  - type: GhostRoleMarkerRole

- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleFreeAgent
  name: Ghost Role (Free Agent)
  components:
  - type: MindRole
    roleType: FreeAgent
  - type: GhostRoleMarkerRole

- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleSilicon
  name: Ghost Role (Silicon)
  components:
  - type: MindRole
    roleType: Silicon
  - type: GhostRoleMarkerRole

- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleSiliconAntagonist
  name: Ghost Role (Silicon Antagonist)
  components:
  - type: MindRole
    roleType: SiliconAntagonist
  - type: GhostRoleMarkerRole

- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleSoloAntagonist
  name: Ghost Role (Solo Antagonist)
  components:
  - type: MindRole
    roleType: SoloAntagonist
  - type: GhostRoleMarkerRole

- type: entity
  parent: BaseMindRole
  id: MindRoleGhostRoleTeamAntagonist
  name: Ghost Role (Team Antagonist)
  components:
  - type: MindRole
    roleType: TeamAntagonist
  - type: GhostRoleMarkerRole



# The Job MindRole holds the mob's Job prototype
- type: entity
  parent: BaseMindRole
  id: MindRoleJob
  name: Job Role
#  description:
  # MindRoleComponent.JobPrototype is filled by SharedJobSystem

# Silicon
- type: entity
  parent: BaseMindRole
  id: MindRoleSiliconBrain
  name: Borg Brain Role
  components:
  - type: MindRole
    roleType: Silicon
  - type: SiliconBrainRole

- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleSubvertedSilicon
  name: Subverted Silicon Role
  description:
  components:
  - type: MindRole
    antagPrototype: SubvertedSilicon
    roleType: SiliconAntagonist
  - type: SubvertedSiliconRole

# Dragon
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleDragon
  name: Dragon Role
#  description:
  components:
  - type: MindRole
    antagPrototype: Dragon
    roleType: TeamAntagonist
    exclusiveAntag: true
  - type: DragonRole
  - type: RoleBriefing
    briefing: dragon-role-briefing

# Ninja
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleNinja
  name: Space Ninja Role
#  description: mind-role-ninja-description
  components:
  - type: MindRole
    antagPrototype: SpaceNinja
    roleType: SoloAntagonist
    exclusiveAntag: true
  - type: NinjaRole

# Nukies
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleNukeops
  name: Nukeops Operative Role
#  description: mind-role-nukeops-description
  components:
  - type: MindRole
    roleType: TeamAntagonist
    exclusiveAntag: true
    antagPrototype: Nukeops
  - type: NukeopsRole

- type: entity
  parent: MindRoleNukeops
  id: MindRoleNukeopsMedic
  name: Nukeops Medic Role
#  description: mind-role-nukeops-medic-description
  components:
  - type: MindRole
    antagPrototype: NukeopsMedic

- type: entity
  parent: MindRoleNukeops
  id: MindRoleNukeopsCommander
  name: Nukeops Commander Role
#  description: mind-role-nukeops-commander-description
  components:
  - type: MindRole
    antagPrototype: NukeopsCommander

# Revolutionaries
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleHeadRevolutionary
  name: Head Revolutionary Role
#  description: mind-role-head-revolutionary-description
  components:
  - type: MindRole
    antagPrototype: HeadRev
    exclusiveAntag: true
    roleType: TeamAntagonist
  - type: RevolutionaryRole

- type: entity
  parent: MindRoleHeadRevolutionary
  id: MindRoleRevolutionary
  name: Revolutionary Role
#  description: mind-role-revolutionary-description
  components:
  - type: MindRole
    antagPrototype: Rev

# Survivors (Wizard)
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleSurvivor
  name: Survivor Role
  components:
  - type: MindRole
    antagPrototype: Survivor
    roleType: FreeAgent
  - type: SurvivorRole

# Thief
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleThief
  name: Thief Role
#  description: mind-role-thief-description
  components:
  - type: MindRole
    antagPrototype: Thief
    roleType: SoloAntagonist
  - type: ThiefRole

# Traitors
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleTraitor
  name: Traitor Role
#  description: mind-role-traitor-description
  components:
  - type: MindRole
    antagPrototype: Traitor
    exclusiveAntag: true
    roleType: SoloAntagonist
  - type: TraitorRole

- type: entity
  parent: MindRoleTraitor
  id: MindRoleTraitorSleeper
  name: Sleeper Agent Role
#  description: mind-role-traitor-sleeper-description
  components:
  - type: MindRole
    antagPrototype: TraitorSleeper

- type: entity
  parent: MindRoleTraitor
  id: MindRoleTraitorReinforcement
  name: Syndicate Reinforcement Role
  #  description: mind-role-syndicate-reinforcement-description
  components:
    - type: MindRole
      roleType: TeamAntagonist

# Wizards
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleWizard
  name: Wizard Role
  #  description: these are all commented out
  components:
  - type: MindRole
    antagPrototype: Wizard
    exclusiveAntag: true
    roleType: SoloAntagonist
  - type: WizardRole

# Zombie Squad
- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleInitialInfected
  name: Initial Infected Role
#  description: mind-role-initial-infected-description
  components:
  - type: MindRole
    antagPrototype: InitialInfected
    exclusiveAntag: true
    roleType: TeamAntagonist
  - type: InitialInfectedRole

- type: entity
  parent: BaseMindRoleAntag
  id: MindRoleZombie
  name: Zombie Role
#  description: mind-role-zombie-description
  components:
  - type: MindRole
    antagPrototype: Zombie
    exclusiveAntag: true
    roleType: TeamAntagonist
  - type: ZombieRole
