export const SYSTEM_ID = "fvtt-ftl-nomad"

export const ASCII = `

░▒▓████████▓▒░▒▓████████▓▒░▒▓█▓▒░                           ░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓██████████████▓▒░ ░▒▓██████▓▒░░▒▓███████▓▒░
░▒▓█▓▒░         ░▒▓█▓▒░   ░▒▓█▓▒░             ░▒▓██▓▒░      ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░         ░▒▓█▓▒░   ░▒▓█▓▒░             ░▒▓██▓▒░      ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓██████▓▒░    ░▒▓█▓▒░   ░▒▓█▓▒░                           ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓████████▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░         ░▒▓█▓▒░   ░▒▓█▓▒░             ░▒▓██▓▒░      ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░         ░▒▓█▓▒░   ░▒▓█▓▒░             ░▒▓██▓▒░      ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░         ░▒▓█▓▒░   ░▒▓████████▓▒░                    ░▒▓█▓▒░░▒▓█▓▒░░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓███████▓▒░



`

export const SKILLS = {
  "combat": { id: "combat", label: "FTLNOMAD.Skill.Combat" },
  "knowledge": { id: "knowledge", label: "FTLNOMAD.Skill.Knowledge" },
  "social": { id: "social", label: "FTLNOMAD.Skill.Social" },
  "physical": { id: "physical", label: "FTLNOMAD.Skill.Physical" },
  "stealth": { id: "stealth", label: "FTLNOMAD.Skill.Stealth" },
  "vehicles": { id: "vehicles", label: "FTLNOMAD.Skill.Vehicles" },
  "technology": { id: "technology", label: "FTLNOMAD.Skill.Technology" }
}

export const TECH_AGES = {
  "notech": { id: "notech", level: 0, label: "FTLNOMAD.TechAge.NoTech" },
  "earlyprimitive": { id: "earlyprimitive", label: "FTLNOMAD.TechAge.EarlyPrimitive", level: 1 },
  "lateprimitive": { id: "lateprimitive", label: "FTLNOMAD.TechAge.LatePrimitive", level: 2 },
  "earlymechanical": { id: "earlymechanical", label: "FTLNOMAD.TechAge.EarlyMechanical", level: 3 },
  "latemechanical": { id: "latemechanical", label: "FTLNOMAD.TechAge.LateMechanical", level: 4 },
  "earlyatomic": { id: "earlyatomic", label: "FTLNOMAD.TechAge.EarlyAtomic", level: 5 },
  "lateatomic": { id: "lateatomic", label: "FTLNOMAD.TechAge.LateAtomic", level: 6 },
  "earlyspace": { id: "earlyspace", label: "FTLNOMAD.TechAge.EarlySpace", level: 7 },
  "latespace": { id: "latespace", label: "FTLNOMAD.TechAge.LateSpace", level: 8 },
  "earlyinterstellar": { id: "earlyinterstellar", label: "FTLNOMAD.TechAge.EarlyInterstellar", level: 9 },
  "lateinterstellar": { id: "lateinterstellar", label: "FTLNOMAD.TechAge.LateInterstellar", level: 10 },
  "earlygalactic": { id: "earlygalactic", label: "FTLNOMAD.TechAge.EarlyGalactic", level: 11 },
  "lategalactic": { id: "lategalactic", label: "FTLNOMAD.TechAge.LateGalactic", level: 12 },
  "cosmic": { id: "cosmic", label: "FTLNOMAD.TechAge.Cosmic", level: 13 }
}

export const ROBOT_SIZES = {
  "tiny": { id: "tiny", label: "FTLNOMAD.Robot.Size.Tiny" },
  "small": { id: "small", label: "FTLNOMAD.Robot.Size.Small" },
  "medium": { id: "medium", label: "FTLNOMAD.Robot.Size.Medium" },
  "large": { id: "large", label: "FTLNOMAD.Robot.Size.Large" },
  "giant": { id: "giant", label: "FTLNOMAD.Robot.Size.Giant" }
}

export const WEAPON_TYPES = {
  "melee": { id: "melee", label: "FTLNOMAD.Weapon.Types.Melee" },
  "projectile": { id: "projectile", label: "FTLNOMAD.Weapon.Types.Projectile" },
  "energy": { id: "energy", label: "FTLNOMAD.Weapon.Types.Energy" },
  "heavy": { id: "heavy", label: "FTLNOMAD.Weapon.Types.Heavy" },
  "grenade": { id: "grenade", label: "FTLNOMAD.Weapon.Types.Grenade" },
  "vehicle": { id: "vehicle", label: "FTLNOMAD.Weapon.Types.Vehicle" }
}

export const WEAPON_RANGE = {
  "handgun": { id: "handgun", label: "FTLNOMAD.Weapon.Range.Handgun", range: { close: 0, near: 0, far: -2 } },
  "assault": { id: "assault", label: "FTLNOMAD.Weapon.Range.Assault", range: { close: -2, near: 0, far: -1, distant: -2 } },
  "rifle": { id: "rifle", label: "FTLNOMAD.Weapon.Range.Rifle", range: { close: -3, near: 0, far: 0, distant: -1 } },
  "melee": { id: "melee", label: "FTLNOMAD.Weapon.Range.Melee", range: { close: 0 } },
  "heavyweapon": { id: "heavyweapon", label: "FTLNOMAD.Weapon.Range.HeavyWeapon", range: { near: -1, far: 0, distant: 0 } },
  "thrownweapon": { id: "thrownweapon", label: "FTLNOMAD.Weapon.Range.ThrownWeapon", range: { close: 0, near: -1 } }
}

export const ATTACK_MODIFIERS = {
  "two-attacks": -1,
  "aiming": 1,
  "dim": -1,
  "darkness": -2,
  "prone": -1,
  "cover": -2,
  "recoil-first": -1,
  "recoil-third": -2,
  "aware": -1
}

export const DAMAGE_MODIFIER_CHOICES = [
  { id: "-3", label: "-3", value: "-3" },
  { id: "-2", label: "-2", value: "-2" },
  { id: "-1", label: "-1", value: "-1" },
  { id: "0", label: "0", value: "0" },
  { id: "1", label: "+1", value: "1" },
  { id: "2", label: "+2", value: "2" },
  { id: "3", label: "+3", value: "3" }
]

export const TRIAGE_RESULTS = {
  "none": { id: "none", dice: 0, label: "FTLNOMAD.TriageResults.None" },
  "death": { id: "death", dice: 3, label: "FTLNOMAD.TriageResults.Death" },
  "critical": { id: "critical", dice: 4, label: "FTLNOMAD.TriageResults.Critical" },
  "severe": { id: "severe", dice: 7, label: "FTLNOMAD.TriageResults.Severe" },
  "moderate": { id: "moderate", dice: 10, label: "FTLNOMAD.TriageResults.Moderate" },
  "fleshwound": { id: "fleshwound", dice: 12, label: "FTLNOMAD.TriageResults.FleshWound" }
}

export const CREATURE_TERRAIN_TYPES = {
  "cave": { id: "cave", label: "FTLNOMAD.Creature.Terrain.Cave", niche: 0, size: 0 },
  "coast": { id: "coast", label: "FTLNOMAD.Creature.Terrain.Coast", niche: 1, size: 0 },
  "desert": { id: "desert", label: "FTLNOMAD.Creature.Terrain.Desert", niche: -1, size: -1 },
  "forest": { id: "forest", label: "FTLNOMAD.Creature.Terrain.Forest", niche: 1, size: 1 },
  "jungle": { id: "jungle", label: "FTLNOMAD.Creature.Terrain.Jungle", niche: 1, size: 1 },
  "mixed": { id: "mixed", label: "FTLNOMAD.Creature.Terrain.Mixed", niche: 0, size: 0 },
  "mountain": { id: "mountain", label: "FTLNOMAD.Creature.Terrain.Mountain", niche: -1, size: -1 },
  "ocean": { id: "ocean", label: "FTLNOMAD.Creature.Terrain.Ocean", niche: -1, size: 1 },
  "river": { id: "river", label: "FTLNOMAD.Creature.Terrain.River", niche: 1, size: 0 },
  "ruins": { id: "ruins", label: "FTLNOMAD.Creature.Terrain.Ruins", niche: 0, size: 1 },
  "savannah": { id: "savannah", label: "FTLNOMAD.Creature.Terrain.Savannah", niche: 0, size: 1 },
  "shallows": { id: "shallows", label: "FTLNOMAD.Creature.Terrain.Shallows", niche: 1, size: 0 },
  "swamp": { id: "swamp", label: "FTLNOMAD.Creature.Terrain.Swamp", niche: 1, size: 1 }
}

export const CREATURE_NICHES = {
  "prey": { id: "prey", label: "FTLNOMAD.Creature.Niche.Prey" },
  "opportunist": { id: "opportunist", label: "FTLNOMAD.Creature.Niche.Opportunist" },
  "herbivore": { id: "herbivore", label: "FTLNOMAD.Creature.Niche.Herbivore" },
  "predator": { id: "predator", label: "FTLNOMAD.Creature.Niche.Predator" }
}

export const CREATURE_SIZES = {
  "tiny": { id: "tiny", label: "FTLNOMAD.Creature.Size.Tiny" },
  "small": { id: "small", label: "FTLNOMAD.Creature.Size.Small" },
  "medium": { id: "medium", label: "FTLNOMAD.Creature.Size.Medium" },
  "large": { id: "large", label: "FTLNOMAD.Creature.Size.Large" },
  "giant": { id: "giant", label: "FTLNOMAD.Creature.Size.Giant" },
  "titanic": { id: "titanic", label: "FTLNOMAD.Creature.Size.Titanic" }
}

export const MODIFIER_CHOICES = {
  "easy4": { id: "easy4", label: "FTLNOMAD.Label.Easy4", value: "4" },
  "easy3": { id: "easy3", label: "FTLNOMAD.Label.Easy3", value: "3" },
  "easy2": { id: "easy2", label: "FTLNOMAD.Label.Easy2", value: "2" },
  "easy": { id: "easy", label: "FTLNOMAD.Label.Easy", value: "1" },
  "moderate": { id: "moderate", label: "FTLNOMAD.Label.Moderate", value: "0" },
  "difficult": { id: "difficult", label: "FTLNOMAD.Label.Difficult", value: "-1" },
  "formidable": { id: "formidable", label: "FTLNOMAD.Label.Formidable", value: "-2" },
  "formidable3": { id: "formidable3", label: "FTLNOMAD.Label.Formidable3", value: "-3" },
  "impossible": { id: "impossible", label: "FTLNOMAD.Label.Impossible", value: "-4" },
  "impossible5": { id: "impossible5", label: "FTLNOMAD.Label.Impossible5", value: "-5" },
  "impossible6": { id: "impossible6", label: "FTLNOMAD.Label.Impossible6", value: "-6" }
}

export const NUMERIC_MODIFIER_CHOICES = {
  "-5": { label: "-5", value: -5 },
  "-4": { label: "-4", value: -4 },
  "-3": { label: "-3", value: -3 },
  "-2": { label: "-2", value: -2 },
  "-1": { label: "-1", value: -1 },
  "0": { label: "0", value: 0 },
  "+1": { label: "+1", value: 1 },
  "+2": { label: "+2", value: 2 },
  "+3": { label: "+3", value: 3 },
  "+4": { label: "+4", value: 4 },
  "+5": { label: "+5", value: 5 }
}

export const STARSHIP_HULL = {
  "pod": { id: "pod", label: "FTLNOMAD.Starship.Hull.Pod" },
  "micro": { id: "micro", label: "FTLNOMAD.Starship.Hull.Micro" },
  "small": { id: "small", label: "FTLNOMAD.Starship.Hull.Small" },
  "scout": { id: "scout", label: "FTLNOMAD.Starship.Hull.Scout" },
  "picket": { id: "picket", label: "FTLNOMAD.Starship.Hull.Picket" },
  "destroyer": { id: "destroyer", label: "FTLNOMAD.Starship.Hull.Destroyer" },
  "cruiser": { id: "cruiser", label: "FTLNOMAD.Starship.Hull.Cruiser" },
  "battleship": { id: "battleship", label: "FTLNOMAD.Starship.Hull.Battleship" },
  "carrier": { id: "carrier", label: "FTLNOMAD.Starship.Hull.Carrier" }
}

/**
 * Include all constant definitions within the SYSTEM global export
 * @type {Object}
 */
export const SYSTEM = {
  id: SYSTEM_ID,
  MODIFIER_CHOICES,
  NUMERIC_MODIFIER_CHOICES,
  ATTACK_MODIFIERS,
  TECH_AGES,
  WEAPON_TYPES,
  WEAPON_RANGE,
  TRIAGE_RESULTS,
  CREATURE_TERRAIN_TYPES,
  CREATURE_SIZES,
  CREATURE_NICHES,
  STARSHIP_HULL,
  SKILLS,
  ROBOT_SIZES,
  DAMAGE_MODIFIER_CHOICES,
  ASCII
}
