diff --git a/code/__defines/faction.dm b/code/__defines/faction.dm new file mode 100644 index 00000000000..0d46529297b --- /dev/null +++ b/code/__defines/faction.dm @@ -0,0 +1,115 @@ +#define FACTION_BAR "bar" +#define FACTION_CLOWN "clown" +#define FACTION_NONE "None" +#define FACTION_STATION "Station" + +#define FACTION_AEROSTAT_INSIDE "aerostat_inside" +#define FACTION_AEROSTAT_SURFACE "aerostat_surface" +#define FACTION_ASTEROID_BELT "asteroid_belt" +#define FACTION_BEACH_OUT "beach_out" +#define FACTION_BEACH_CAVE "beach_cave" +#define FACTION_DERELICT "derelict" +#define FACTION_OVERMAP "overmap" +#define FACTION_ROGUEMINES "roguemines" +#define FACTION_SPACE_ROCK "space_rock" +#define FACTION_SPOOKYLAND "spookyland" +#define FACTION_THEATRE "theatre" +#define FACTION_UNDERDARK "underdark" + +#define FACTION_VIRGO2 "virgo2" +#define FACTION_VIRGO3B "virgo3b" + +#define FACTION_ALTEVIAN "altevian" +#define FACTION_CULT "cult" +#define FACTION_PIRATE "pirate" +#define FACTION_SHADEKIN "shadekin" +#define FACTION_SPACE_GHOST "space ghost" +#define FACTION_SYNDICATE "syndicate" +#define FACTION_TECHNOMANCER "technomancer" +#define FACTION_VAMPIRE "vampire" + +#define FACTION_CORRUPT "corrupt" +#define FACTION_HIVEBOT "hivebot" +#define FACTION_MALF_DRONE "malf_drone" +#define FACTION_VAGRANT "vagrant" +#define FACTION_WARDS "wards" + +#define FACTION_ANIMAL "animal" +#define FACTION_BEE "bee" +#define FACTION_BLOB "blob" +#define FACTION_CARP "carp" +#define FACTION_CATGIRL "catgirl" +#define FACTION_CATSLUG "catslug" +#define FACTION_COOKIEGIRL "cookiegirl" +#define FACTION_CRABS "crabs" +#define FACTION_CREATURE "creature" +#define FACTION_DEATHCLAW "deathclaw" +#define FACTION_DEMON "demon" +#define FACTION_DEVIL "devil" +#define FACTION_DIYAAB "diyaab" +#define FACTION_DOG "dog" +#define FACTION_DRAGON "dragon" +#define FACTION_DUCK "duck" +#define FACTION_FAITHLESS "faithless" +#define FACTION_FENNEC "fennec" +#define FACTION_FOX "fox" +#define FACTION_GEESE "geese" +#define FACTION_GNAT "gnat" +#define FACTION_GOAT "goat" +#define FACTION_GOLEM "golem" +#define FACTION_GRAFADREKA "grafadreka" +#define FACTION_GRUBS "grubs" +#define FACTION_HORSE "horse" +#define FACTION_INSECTS "insects" +#define FACTION_JELLYFISH "jellyfish" +#define FACTION_KURUAK "kururak" +#define FACTION_LAMIA "lamia" +#define FACTION_LEECH "leech" +#define FACTION_MACROBACTERIA "macrobacteria" +#define FACTION_MEOWL "meowl" +#define FACTION_MIMIC "mimic" +#define FACTION_MOUSE "mouse" +#define FACTION_NANOMACHINES "nanomachines" +#define FACTION_NEUTRAL "neutral" +#define FACTION_OTIE "otie" +#define FACTION_PAKKUN "pakkun" +#define FACTION_PANTHER "panther" +#define FACTION_PEASANT "peasant" +#define FACTION_POLAR "polar" +#define FACTION_RABBIT "rabbit" +#define FACTION_RAPTOR "raptor" +#define FACTION_RAY "ray" +#define FACTION_REDPANDA "redpanda" +#define FACTION_RUSSIAN "russian" +#define FACTION_SAKIMM "sakimm" +#define FACTION_SAVIK "savik" +#define FACTION_SCARYBAT "scarybat" +#define FACTION_SCEL "scel" +#define FACTION_SCRUBBLE "scrubble" +#define FACTION_SEAGULL "seagull" +#define FACTION_SHANTAK "shantak" +#define FACTION_SHEEP "sheep" +#define FACTION_SIF "sif" +#define FACTION_SIFFET "siffet" +#define FACTION_SLIME "slime" +#define FACTION_SNAKE "snake" +#define FACTION_SONADILE "sonadile" +#define FACTION_SPACESHARK "spaceshark" +#define FACTION_SPACE_MOUSE "space mouse" +#define FACTION_SPACE_SKELETON "space skeleton" +#define FACTION_SPACE_TURTLE "space turtle" +#define FACTION_SPIDERS "spiders" +#define FACTION_STALKER "stalker" +#define FACTION_SUCCUBUS "succubus" +#define FACTION_SWARMER "swarmer" +#define FACTION_TEPPI "teppi" +#define FACTION_TUNNELCLOWN "tunnelclown" +#define FACTION_WILD_ANIMAL "wild animal" +#define FACTION_WOLFGIRL "wolfgirl" +#define FACTION_WOLFTAUR "wolftaur" +#define FACTION_WORM "worm" +#define FACTION_XENO "xeno" + +#define FACTION_PLANTS "plants" + +#define FACTION_MATH "MATH" diff --git a/code/__defines/jobs.dm b/code/__defines/jobs.dm new file mode 100644 index 00000000000..40916e9ed40 --- /dev/null +++ b/code/__defines/jobs.dm @@ -0,0 +1,419 @@ +// Station Command jobs +#define JOB_SITE_MANAGER "Site Manager" + // Site Manager alt titles + #define JOB_ALT_OVERSEER "Overseer" + #define JOB_ALT_FACILITY_DIRECTOR "Facility Director" + #define JOB_ALT_CHIEF_SUPERVISOR "Chief Supervisor" + #define JOB_ALT_CAPTAIN "Captain" + +#define JOB_HEAD_OF_PERSONNEL "Head of Personnel" + // Head of Personnel alt titles + #define JOB_ALT_CREW_RESOURCE_OFFICER "Crew Resources Officer" + #define JOB_ALT_DEPUTY_MANAGER "Deputy Manager" + #define JOB_ALT_STAFF_MANAGER "Staff Manager" + #define JOB_ALT_FACILITY_STEWARD "Facility Steward" + #define JOB_ALT_FIRST_MATE "First Mate" + +#define JOB_COMMAND_SECRETARY "Command Secretary" + // Command Secretary alt titles + #define JOB_ALT_COMMAND_LIAISON "Command Liaison" + #define JOB_ALT_COMMAND_ASSISTANT "Command Assistant" + #define JOB_ALT_COMMAND_INTERN "Command Intern" + #define JOB_ALT_BRIDGE_SECRETARY "Bridge Secretary" + #define JOB_ALT_BRIDGE_ASSISTANT "Bridge Assistant" + +#define JOB_HEAD_OF_SECURITY "Head of Security" + // Head of Security alt titles + #define JOB_ALT_SECURITY_COMMANDER "Security Commander" + #define JOB_ALT_CHIEF_OF_SECURITY "Chief of Security" + #define JOB_ALT_SECURITY_MANAGER "Security Manager" + +#define JOB_CHIEF_ENGINEER "Chief Engineer" + // Cheif Engineer alt titles + #define JOB_ALT_HEAD_ENGINEER "Head Engineer" + #define JOB_ALT_FOREMAN "Foreman" + #define JOB_ALT_MAINTENANCE_MANAGER "Maintenance Manager" + +#define JOB_RESEARCH_DIRECTOR "Research Director" + // Research Director alt titles + #define JOB_ALT_RESEARCH_SUPERVISOR "Research Supervisor" + #define JOB_ALT_RESEARCH_MANAGER "Research Manager" + #define JOB_ALT_HEAD_OF_DEVELOPMENT "Head of Development" + #define JOB_ALT_HEAD_SCIENTIST "Head Scientist" + +#define JOB_CHIEF_MEDICAL_OFFICER "Chief Medical Officer" + // Chief Medical Officer alt titles + #define JOB_ALT_CHIEF_PHYSICIAN "Chief Physician" + #define JOB_ALT_MEDICAL_DIRECTOR "Medical Director" + #define JOB_ALT_HEALTHCARE_MANAGER "Healthcare Manager" + +#define JOB_QUARTERMASTER "Quartermaster" + // Quartermaster alt titles + #define JOB_ALT_SUPPLY_CHIEF "Supply Chief" + #define JOB_ALT_LOGISTICS_MANAGER "Logistics Manager" + #define JOB_ALT_CARGO_SUPERVISOR "Cargo Supervisor" + +#define JOB_PATHFINDER "Away Team Leader" // was Pathfinder + // Pathfinder alt titles + #define JOB_ALT_EXPEDITION_LEAD "Expedition Lead" + #define JOB_ALT_EXPLORATION_MANAGER "Exploration Manager" +//___________________________________________________________ + + +// Station Assistant jobs +#define JOB_INTERN "Intern" + // Intern alt titles + #define JOB_ALT_APPRENTICE_ENGINEER "Apprentice Engineer" + #define JOB_ALT_RESEARCH_INTERN "Research Intern" + #define JOB_ALT_SECURITY_CADET "Security Cadet" + #define JOB_ALT_JR_CARGO_TECH "Jr. Cargo Tech" + #define JOB_ALT_SERVER "Server" + #define JOB_ALT_ASSISTANT "Assistant" + //Assistant/Visitor/Whatever + #define JOB_ALT_TECHNICAL_ASSISTANT "Technical Assistant" + #define JOB_ALT_MEDICAL_INTERN "Medical Intern" + #define JOB_ALT_RESEARCH_ASSISTANT "Research Assistant" + #define JOB_ALT_VISITOR "Visitor" + #define JOB_ALT_RESIDENT "Resident" +//___________________________________________________________ + + +// Station Civilian jobs +#define JOB_BARTENDER "Bartender" + // Bartender alt titles + #define JOB_ALT_BARKEEPR "Barkeeper" + #define JOB_ALT_BARMAID "Barmaid" + #define JOB_ALT_BARISTA "Barista" + #define JOB_ALT_MIXOLOGIST "Mixologist" + +#define JOB_CHEF "Chef" + // Chef alt titles + #define JOB_ALT_SOUSCHEF "Sous-chef" + #define JOB_ALT_COOK "Cook" + #define JOB_ALT_KITCHEN_WORKER "Kitchen Worker" + +#define JOB_BOTANIST "Botanist" + // Botanist alt titles + #define JOB_ALT_HYDROPONICIST "Hydroponicist" + #define JOB_ALT_GARDENER "Gardener" + #define JOB_ALT_CULTIVATOR "Cultivator" + #define JOB_ALT_FARMER "Farmer" + #define JOB_ALT_FLORIST "Florist" + #define JOB_ALT_RANCHER "Rancher" + +#define JOB_CARGO_TECHNICIAN "Cargo Technician" + // Cargo Technician alt titles + #define JOB_ALT_CARGO_LOADER "Cargo Loader" + #define JOB_ALT_CARGO_HANDLER "Cargo Handler" + #define JOB_ALT_SUPPLY_COURIER "Supply Courier" + #define JOB_ALT_DISPOSALS_SORTER "Disposals Sorter" + +#define JOB_SHAFT_MINER "Shaft Miner" + // Shaft Miner alt titles + #define JOB_ALT_DEEP_SPACE_MINER "Deep Space Miner" + #define JOB_ALT_DRILL_TECHNICIAN "Drill Technician" + #define JOB_ALT_PROSPECTOR "Prospector" + #define JOB_ALT_EXCAVATOR "Excavator" + +#define JOB_JANITOR "Janitor" + // Janitor alt titles + #define JOB_ALT_CUSTODIAN "Custodian" + #define JOB_ALT_SANITATION_TECHNICIAN "Sanitation Technician" + #define JOB_ALT_MAID "Maid" + #define JOB_ALT_GARBAGE_COLLECTOR "Garbage Collector" + +#define JOB_LIBRARIAN "Librarian" + // Librarian alt titles + #define JOB_ALT_JOURNALIST "Journalist" + #define JOB_ALT_REPORTER "Reporter" + #define JOB_ALT_WRITER "Writer" + #define JOB_ALT_HISTORIAN "Historian" + #define JOB_ALT_ARCHIVIST "Archivist" + #define JOB_ALT_PROFESSOR "Professor" + #define JOB_ALT_ACADEMIC "Academic" + #define JOB_ALT_PHILOSOPHER "Philosopher" + #define JOB_ALT_CURATOR "Curator" + +#define JOB_INTERNAL_AFFAIRS_AGENT "Internal Affairs Agent" + // Internal Affairs Agent alt titles + #define JOB_ALT_INTERNAL_AFFAIRS_LIAISON "Internal Affairs Liaison" + #define JOB_ALT_INTERNAL_AFFAIRS_DELEGATE "Internal Affairs Delegate" + #define JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR "Internal Affairs Investigator" + +#define JOB_CHAPLAIN "Chaplain" + // Chaplain alt titles + #define JOB_ALT_MISSIONARY "Missionary" + #define JOB_ALT_PREACHER "Preacher" + #define JOB_ALT_PRIEST "Priest" + #define JOB_ALT_NUN "Nun" + #define JOB_ALT_MONK "Monk" + #define JOB_ALT_COUNSELOR "Counselor" + #define JOB_ALT_GURU "Guru" + +#define JOB_PILOT "Pilot" + // Pilot alt titles + #define JOB_ALT_COPILOT "Co-Pilot" + #define JOB_ALT_NAVIGATOR "Navigator" + #define JOB_ALT_HELMSMAN "Helmsman" + +#define JOB_ENTERTAINER "Entertainer" + // Entertainer alt titles + #define JOB_ALT_PERFORMER "Performer" + #define JOB_ALT_MUSICIAN "Musician" + #define JOB_ALT_STAGEHAND "Stagehand" + #define JOB_ALT_ACTOR "Actor" + #define JOB_ALT_DANCER "Dancer" + #define JOB_ALT_SINGER "Singer" + #define JOB_ALT_MAGICIAN "Magician" + #define JOB_ALT_COMEDIAN "Comedian" + #define JOB_ALT_TRAGEDIAN "Tragedian" + #define JOB_ALT_ARTIST "Artist" + #define JOB_ALT_GAME_MASTER "Game Master" + +#define JOB_ENTREPRENEUR "Entrepreneur" + // Entrepreneur alt titles + #define JOB_ALT_LAWYER "Lawyer" + #define JOB_ALT_PRIVATE_EYE "Private Eye" + #define JOB_ALT_BODYGUARD "Bodyguard" + #define JOB_ALT_PERSONAL_PHYSICIAN "Personal Physician" + #define JOB_ALT_DENTIST "Dentist" + #define JOB_ALT_FITNESS_INSTRUCTOR "Fitness Instructor" + #define JOB_ALT_YOGA_TEACHER "Yoga Teacher" + #define JOB_ALT_MASSEUSE "Masseuse" + #define JOB_ALT_TRADESPERSON "Tradesperson" + #define JOB_ALT_STREAMER "Streamer" + #define JOB_ALT_INFLUENCER "Influencer" + #define JOB_ALT_PARANORMAL_INVESTIGATOR "Paranormal Investigator" + #define JOB_ALT_PERSONAL_SECRETARY "Personal Secretary" + #define JOB_ALT_STYLIST "Stylist" + #define JOB_ALT_FISHER "Fisher" + #define JOB_ALT_FORTUNE_TELLER "Fortune Teller" + #define JOB_ALT_SPIRIT_HEALER "Spirit Healer" +//___________________________________________________________ + + +// Station Engineering jobs +#define JOB_ENGINEER "Engineer" + // Engineer alt titles + #define JOB_ALT_MAINTENANCE_TECHNICIAN "Maintenance Technician" + #define JOB_ALT_ENGINE_TECHNICIAN "Engine Technician" + #define JOB_ALT_ELECTRICIAN "Electrician" + #define JOB_ALT_CONSTRUCTION_ENGINEER "Construction Engineer" + #define JOB_ALT_ENGINEERING_CONTRACTOR "Engineering Contractor" + +#define JOB_ATMOSPHERIC_TECHNICIAN "Atmospheric Technician" + // Atmospheric Technician alt titles + #define JOB_ALT_ATMOSPHERIC_ENGINEER "Atmospheric Engineer" + #define JOB_ALT_ATMOSPHERIC_MAINTAINER "Atmospheric Maintainer" + #define JOB_ALT_DISPOSALS_TECHNICIAN "Disposals Technician" + #define JOB_ALT_FUEL_TECHNICIAN "Fuel Technician" +//___________________________________________________________ + + +// Station Away Team / Explorer jobs +#define JOB_EXPLORER "Away Team" // was Explorer + // Explorer alt titles + #define JOB_ALT_SURVEYOR "Surveyor" + #define JOB_ALT_OFFSITE_SCOUT "Offsite Scout" + #define JOB_ALT_EXPLORER_MEDIC "Explorer Medic" // Unused + #define JOB_ALT_EXPLORERE_TECHNICIAN "Explorer Technician" // Unused + +#define JOB_FIELD_MEDIC "Away Team Medic" // was Field Medic + // Field Medic alt titles + #define JOB_ALT_EXPEDITION_MEDIC "Expedition Medic" + #define JOB_ALT_OFFSITE_MEDIC "Offsite Medic" +//___________________________________________________________ + + +// Station Medical jobs +#define JOB_MEDICAL_DOCTOR "Medical Doctor" + // Medical Doctor alt titles + #define JOB_ALT_PHYSICIAN "Physician" + #define JOB_ALT_MEDICAL_PRACTITIONER "Medical Practitioner" + #define JOB_ALT_SURGEON "Surgeon" + #define JOB_ALT_EMERGENCY_PHYSICIAN "Emergency Physician" + #define JOB_ALT_NURSE "Nurse" + #define JOB_ALT_ORDERLY "Orderly" + #define JOB_ALT_VIROLOGIST "Virologist" + #define JOB_ALT_MEDICAL_CONTRACTOR "Medical Contractor" + +#define JOB_CHEMIST "Chemist" + // Chemist alt titles + #define JOB_ALT_PHARMACIST "Pharmacist" + #define JOB_ALT_PHARMACOLOGIST "Pharmacologist" + +#define JOB_PSYCHIATRIST "Psychiatrist" + // Psychiatrist alt titles + #define JOB_ALT_PSYCHOLOGIST "Psychologist" + #define JOB_ALT_PSYCHOANALYST "Psychoanalyst" + #define JOB_ALT_PSYCHOTHERAPIST "Psychotherapist" + +#define JOB_PARAMEDIC "Paramedic" + // Paramedic alt titles + #define JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN "Emergency Medical Technician" + #define JOB_ALT_MEDICAL_RESPONDER "Medical Responder" + #define JOB_ALT_SEARCH_AND_RESCUE "Search and Rescue" + +#define JOB_GENETICIST "Geneticist" //Disabled atm +//___________________________________________________________ + + +// Station Offduty jobs +#define JOB_OFFDUTY_OFFICER "Off-duty Officer" +#define JOB_OFFDUTY_ENGINEER "Off-duty Engineer" +#define JOB_OFFDUTY_MEDIC "Off-duty Medic" +#define JOB_OFFDUTY_SCIENTIST "Off-duty Scientist" +#define JOB_OFFDUTY_CARGO "Off-duty Cargo" +#define JOB_OFFDUTY_EXPLORER "Off-duty Explorer" +#define JOB_OFFDUTY_WORKER "Off-duty Worker" +//___________________________________________________________ + + +// Station Science jobs +#define JOB_SCIENTIST "Scientist" + // Scientist alt titles + #define JOB_ALT_RESEARCHER "Researcher" + #define JOB_ALT_LAB_ASSISTANT "Lab Assistant" + #define JOB_ALT_XENOARCHAEOLOGIST "Xenoarchaeologist" + #define JOB_ALT_XENOPALEONTOLOGIST "Xenopaleontologist" + #define JOB_ALT_ANOMALIST "Anomalist" + #define JOB_ALT_PHORON_RESEARCHER "Phoron Researcher" + #define JOB_ALT_GAS_PHYSICIST "Gas Physicist" + #define JOB_ALT_CIRCUIT_DESIGNER "Circuit Designer" + #define JOB_ALT_CIRCUIT_PROGRAMMER "Circuit Programmer" + +#define JOB_XENOBIOLOGIST "Xenobiologist" + // Xenobiologist alt titles + #define JOB_ALT_XENOZOOLOGIST "Xenozoologist" + #define JOB_ALT_XENOANTHROPOLOGIST "Xenoanthropologist" + +#define JOB_ROBOTICIST "Roboticist" + // Roboticist alt titles + #define JOB_ALT_ASSEMBLY_TECHNICIAN "Assembly Technician" + #define JOB_ALT_BIOMECHANICAL_ENGINEER "Biomechanical Engineer" + #define JOB_ALT_MECHATRONIC_ENGINEER "Mechatronic Engineer" + +#define JOB_XENOBOTANIST "Xenobotanist" + // Xenobotanist alt titles + #define JOB_ALT_XENOHYDROPONICIST "Xenohydroponicist" + #define JOB_ALT_XENOFLORIST "Xenoflorist" +//___________________________________________________________ + + +// Station Security jobs +#define JOB_WARDEN "Warden" + // Warden alt titles + #define JOB_ALT_BRIG_SENTRY "Brig Sentry" + #define JOB_ALT_ARMORY_SUPERINTENDENT "Armory Superintendent" + #define JOB_ALT_MASTERATARMS "Master-at-Arms" + +#define JOB_DETECTIVE "Detective" + // Detective alt titles + #define JOB_ALT_INVESTIGATOR "Investigator" + #define JOB_ALT_SECURITY_INSPECTOR "Security Inspector" + #define JOB_ALT_FORENSIC_TECHNICIAN "Forensic Technician" + +#define JOB_SECURITY_OFFICER "Security Officer" + // Security Officer alt titles + #define JOB_ALT_PATROL_OFFICER "Patrol Officer" + #define JOB_ALT_SECURITY_GUARD "Security Guard" + #define JOB_ALT_SECURITY_DEPUTY "Security Deputy" + #define JOB_ALT_JUNIOR_OFFICER "Junior Officer" + #define JOB_ALT_SECURITY_CONTRACTOR "Security Contractor" +//___________________________________________________________ + + +// Station Robot jobs +#define JOB_AI "AI" + +#define JOB_CYBORG "Cyborg" + // Cyborg alt titles + #define JOB_ALT_ROBOT "Robot" + #define JOB_ALT_DRONE "Drone" +//___________________________________________________________ + + +// Station Sepcial jobs +#define JOB_CLOWN "Clown" + // Clown alt titles + #define JOB_ALT_JESTER "Jester" + #define JOB_ALT_FOOL "Fool" + +#define JOB_MIME "Mime" + // Mime alt titles + #define JOB_ALT_PASEUR "Poseur" +//___________________________________________________________ + + +// Talom jobs +#define JOB_TALON_CAPTAIN "Talon Captain" + // Talon Captain alt titles + #define JOB_ALT_TALON_COMMANDER "Talon Commander" + +#define JOB_TALON_DOCTOR "Talon Doctor" + // Talon Doctor alt titles + #define JOB_ALT_TALON_MEDIC "Talon Medic" + +#define JOB_TALON_ENGINEER "Talon Engineer" + // Talon Engineer alt titles + #define JOB_ALT_TALON_TECHNICIAN "Talon Technician" + +#define JOB_TALON_GUARD "Talon Guard" + // Talon Guard alt titles + #define JOB_ALT_TALON_SECURITY "Talon Security" + +#define JOB_TALON_PILOT "Talon Pilot" + // Talon Pilot alt titles + #define JOB_ALT_TALON_HELMSMAN "Talon Helmsman" + +#define JOB_TALON_MINER "Talon Miner" + // Talon Miner alt titles + #define JOB_ALT_TALON_EXCAVATOR "Talon Excavator" +//___________________________________________________________ + + +// Mind jobs +#define JOB_SLIME "slime" +#define JOB_LARVA "Larva" +#define JOB_MONKEY "Monkey" +#define JOB_ANIMAL "Animal" +#define JOB_SIMPLE_MOB "Simple Mob" +#define JOB_CORGI "Corgi" +#define JOB_SHADE "Shade" +#define JOB_ARTIFICER "Artificer" +#define JOB_WRAITH "Wraith" +#define JOB_JUGGERNAUT "Juggernaut" +#define JOB_MODE = "MODE" +#define JOB_DISEMBODIED_VOICE "Disembodied Voice" +#define JOB_ALIEN "Alien" +#define JOB_GOLEM "Golem" +#define JOB_CORTICAL_BORER "Cortical Borer" + +#define JOB_SYNTHETIC_BRAIN "Synthetic Brain" +#define JOB_ROBOTIC_INTELLIGENCE "Robotic Intelligence" +#define JOB_POSITRONIC_BRAIN "Positronic Brain" +#define JOB_CARBON_BASED "Carbon-based" +#define JOB_SILICON_BASED "Silicon-based" +#define JOB_PAI "pAI" +#define JOB_PROMETHEAN "Promethean" + +#define JOB_LIVING "Living" +#define JOB_NEW_PLAYER "New player" +#define JOB_GHOST "Ghost" +#define JOB_GHOSTROLES "GhostRoles" +#define JOB_GRAFFITI "Graffiti" +#define JOB_RECORDS "Records" +#define JOB_DIONAEA "Dionaea" +#define JOB_CUSTOM_LOADOUT "Custom loadout" + +// Speical Mind / Antag / Event jobs +#define JOB_CULTIST "Cultist" +#define JOB_MEME "Meme" +#define JOB_APPRENTICE "apprentice" +#define JOB_WIZARD "Wizard" +#define JOB_ANTAGHUD "AntagHUD" +#define JOB_CHANGELING "Changeling" +#define JOB_SYNDICATE "Syndicate" +#define JOB_XENOMORPH "Xenomorph" +#define JOB_BORER "Borer" +#define JOB_EMERGENCY_RESPONSE_TEAM "Emergency Response Team" diff --git a/code/__defines/misc_vr.dm b/code/__defines/misc_vr.dm index 114448b9167..1efab426161 100644 --- a/code/__defines/misc_vr.dm +++ b/code/__defines/misc_vr.dm @@ -42,9 +42,6 @@ #define BLUE_SHIELDED 2 // Shield from bluespace teleportation (telescience) -//Assistant/Visitor/Whatever -#define USELESS_JOB "Visitor" - //Herm Gender #define HERM "herm" diff --git a/code/__defines/radio.dm b/code/__defines/radio.dm new file mode 100644 index 00000000000..b39e6a90cc5 --- /dev/null +++ b/code/__defines/radio.dm @@ -0,0 +1,28 @@ +// Station Radio Channel +#define CHANNEL_COMMON "Common" +#define CHANNEL_AI_PRIVATE "AI Private" +#define CHANNEL_ENTERTAINMENT "Entertainment" + +// Departments +#define CHANNEL_COMMAND "Command" +#define CHANNEL_SECURITY "Security" +#define CHANNEL_SECURITY_1 "Security(I)" +#define CHANNEL_SUPPLY "Supply" +#define CHANNEL_SERVICE "Service" +#define CHANNEL_ENGINEERING "Engineering" +#define CHANNEL_SCIENCE "Science" +#define CHANNEL_MEDICAL "Medical" +#define CHANNEL_MEDICAL_1 "Medical(I)" +#define CHANNEL_EXPLORATION "Away Team" // was Explorer + +// Special Channels +#define CHANNEL_RESPONSE_TEAM "Response Team" +#define CHANNEL_SPECIAL_OPS "Special Ops" + +// Antag Channels +#define CHANNEL_RAIDER "Raider" +#define CHANNEL_MERCENARY "Mercenary" + +// Other Channels +#define CHANNEL_TALON "Talon" +#define CHANNEL_CASINO "Casino" diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm index 45ddb1dc700..af847b93494 100644 --- a/code/_helpers/global_lists_vr.dm +++ b/code/_helpers/global_lists_vr.dm @@ -511,15 +511,15 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN, SPECIES_SHADEKIN) //Shadefluffers just poof away /var/global/list/alt_titles_with_icons = list( - "Virologist", - "Apprentice Engineer", - "Medical Intern", - "Research Intern", - "Security Cadet", - "Jr. Cargo Tech", - "Server", - "Electrician", - "Barista") + JOB_ALT_VIROLOGIST, + JOB_ALT_APPRENTICE_ENGINEER, + JOB_ALT_MEDICAL_INTERN, + JOB_ALT_RESEARCH_INTERN, + JOB_ALT_SECURITY_CADET, + JOB_ALT_JR_CARGO_TECH, + JOB_ALT_SERVER, + JOB_ALT_ELECTRICIAN, + JOB_ALT_BARISTA) /var/global/list/existing_solargrubs = list() diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 7515e47dac6..5a7edb6a33a 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -350,7 +350,7 @@ Recharging stations are available in robotics, the dormitory bathrooms, and the /obj/screen/alert/locked name = "Locked Down" - desc = "Unit has been remotely locked down. Usage of a Robotics Control Console like the one in the Research Director's \ + desc = "Unit has been remotely locked down. Usage of a Robotics Control Console like the one in the " + JOB_RESEARCH_DIRECTOR + "'s \ office by your AI master or any qualified human may resolve this matter. Robotics may provide further assistance if necessary." icon_state = "locked" no_underlay = TRUE diff --git a/code/controllers/communications.dm b/code/controllers/communications.dm index bbdccb8fc0e..e8d76099c74 100644 --- a/code/controllers/communications.dm +++ b/code/controllers/communications.dm @@ -129,25 +129,25 @@ var/const/TALON_FREQ = 1363 //VOREStation Add var/const/CSN_FREQ = 1365 //VOREStation Add var/list/radiochannels = list( - "Common" = PUB_FREQ, - "Science" = SCI_FREQ, - "Command" = COMM_FREQ, - "Medical" = MED_FREQ, - "Engineering" = ENG_FREQ, - "Security" = SEC_FREQ, - "Response Team" = ERT_FREQ, - "Special Ops" = DTH_FREQ, - "Mercenary" = SYND_FREQ, - "Raider" = RAID_FREQ, - "Supply" = SUP_FREQ, - "Service" = SRV_FREQ, - "Away Team" = EXP_FREQ, - "AI Private" = AI_FREQ, - "Entertainment" = ENT_FREQ, - "Medical(I)" = MED_I_FREQ, - "Security(I)" = SEC_I_FREQ, - "Talon" = TALON_FREQ, //VOREStation Add - "Casino" = CSN_FREQ, + CHANNEL_COMMON = PUB_FREQ, + CHANNEL_SCIENCE = SCI_FREQ, + CHANNEL_COMMAND = COMM_FREQ, + CHANNEL_MEDICAL = MED_FREQ, + CHANNEL_ENGINEERING = ENG_FREQ, + CHANNEL_SECURITY = SEC_FREQ, + CHANNEL_RESPONSE_TEAM = ERT_FREQ, + CHANNEL_SPECIAL_OPS = DTH_FREQ, + CHANNEL_MERCENARY = SYND_FREQ, + CHANNEL_RAIDER = RAID_FREQ, + CHANNEL_SUPPLY = SUP_FREQ, + CHANNEL_SERVICE = SRV_FREQ, + CHANNEL_EXPLORATION = EXP_FREQ, + CHANNEL_AI_PRIVATE = AI_FREQ, + CHANNEL_ENTERTAINMENT = ENT_FREQ, + CHANNEL_MEDICAL_1 = MED_I_FREQ, + CHANNEL_SECURITY_1 = SEC_I_FREQ, + CHANNEL_TALON = TALON_FREQ, //VOREStation Add + CHANNEL_CASINO = CSN_FREQ, ) // Hey, if anyone ever needs to update tgui/packages/tgui/constants.js with new radio channels diff --git a/code/controllers/subsystems/job.dm b/code/controllers/subsystems/job.dm index c137582c7c5..f117284275c 100644 --- a/code/controllers/subsystems/job.dm +++ b/code/controllers/subsystems/job.dm @@ -18,7 +18,7 @@ SUBSYSTEM_DEF(job) setup_occupations() return ..() -/datum/controller/subsystem/job/proc/setup_occupations(faction = "Station") +/datum/controller/subsystem/job/proc/setup_occupations(faction = FACTION_STATION) occupations = list() var/list/all_jobs = subtypesof(/datum/job) if(!all_jobs.len) diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm index 4ff5e5a18ba..7ba85e05a99 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -433,7 +433,7 @@ var/global/datum/controller/subsystem/ticker/ticker var/captainless=1 for(var/mob/living/carbon/human/player in player_list) if(player && player.mind && player.mind.assigned_role) - if(player.mind.assigned_role == "Site Manager") + if(player.mind.assigned_role == JOB_SITE_MANAGER) captainless=0 if(!player_is_antag(player.mind, only_offstation_roles = 1)) job_master.EquipRank(player, player.mind.assigned_role, 0) diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 7c37c10f520..23e358730b2 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -218,7 +218,7 @@ var/global/list/PDA_Manifest = list() heads[++heads.len] = list("name" = name, "rank" = rank, "active" = isactive) department = 1 depthead = 1 - if(rank=="Site Manager" && heads.len != 1) + if(rank==JOB_SITE_MANAGER && heads.len != 1) heads.Swap(1,heads.len) if(SSjob.is_job_in_department(real_rank, DEPARTMENT_SECURITY)) diff --git a/code/datums/ghost_query.dm b/code/datums/ghost_query.dm index 5d01b4b880a..64f208c850e 100644 --- a/code/datums/ghost_query.dm +++ b/code/datums/ghost_query.dm @@ -53,7 +53,7 @@ /// Send async alerts and ask for responses. Expects you to have tested D for client and type already /datum/ghost_query/proc/ask_question(var/mob/observer/dead/D) //VOREStation Add Start Check the ban status before we ask - if(jobban_isbanned(D, "GhostRoles")) + if(jobban_isbanned(D, JOB_GHOSTROLES)) return //VOREStation Add End @@ -112,7 +112,7 @@ question = "Someone has activated a Positronic Brain. Would you like to play as one?" query_sound = 'sound/machines/boobeebeep.ogg' be_special_flag = BE_AI - check_bans = list("AI", "Cyborg") + check_bans = list(JOB_AI, JOB_CYBORG) cutoff_number = 1 /datum/ghost_query/drone_brain @@ -120,7 +120,7 @@ question = "Someone has activated a Drone AI Chipset. Would you like to play as one?" query_sound = 'sound/machines/boobeebeep.ogg' be_special_flag = BE_AI - check_bans = list("AI", "Cyborg") + check_bans = list(JOB_AI, JOB_CYBORG) cutoff_number = 1 // Antags. @@ -128,7 +128,7 @@ role_name = "Technomancer Apprentice" question = "A Technomancer is requesting an Apprentice to help them on their adventure to the facility. Would you like to play as the Apprentice?" be_special_flag = BE_WIZARD - check_bans = list("Syndicate", "wizard") + check_bans = list(JOB_SYNDICATE, JOB_WIZARD) cutoff_number = 1 /datum/ghost_query/xeno @@ -141,7 +141,7 @@ role_name = "Xenomorph Larva" question = "A xenomorph larva is ready to hatch from their egg. Would you like to join the hive?" be_special_flag = BE_ALIEN - check_bans = list("Xenomorph") + check_bans = list(JOB_XENOMORPH) cutoff_number = 1 @@ -156,14 +156,14 @@ role_name = "Mercenary Drone" question = "A team of dubious mercenaries have purchased a powerful drone, and they are attempting to activate it. Would you like to play as the drone?" be_special_flag = BE_AI - check_bans = list("AI", "Cyborg", "Syndicate") + check_bans = list(JOB_AI, JOB_CYBORG, JOB_SYNDICATE) cutoff_number = 1 /datum/ghost_query/borer role_name = "Cortical Borer" question = "A cortical borer has just been created on the facility. Would you like to play as them?" be_special_flag = BE_ALIEN - check_bans = list("Syndicate", "Borer") + check_bans = list(JOB_SYNDICATE, JOB_BORER) cutoff_number = 1 // Surface stuff. @@ -171,14 +171,14 @@ role_name = "Lost Drone" question = "A lost drone onboard has been discovered by a crewmember and they are attempting to reactivate it. Would you like to play as the drone?" be_special_flag = BE_LOSTDRONE //VOREStation Edit - check_bans = list("AI", "Cyborg") + check_bans = list(JOB_AI, JOB_CYBORG) cutoff_number = 1 /datum/ghost_query/gravekeeper_drone role_name = "Gravekeeper Drone" question = "A gravekeeper drone is about to reactivate and tend to its gravesite. Would you like to play as the drone?" be_special_flag = BE_AI - check_bans = list("AI", "Cyborg") + check_bans = list(JOB_AI, JOB_CYBORG) cutoff_number = 1 /datum/ghost_query/lost_passenger diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 777ecc42369..4369217c485 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -522,58 +522,58 @@ /mob/living/carbon/human/mind_initialize() . = ..() if(!mind.assigned_role) - mind.assigned_role = USELESS_JOB //defualt //VOREStation Edit - Visitor not Assistant + mind.assigned_role = JOB_ALT_VISITOR //defualt //VOREStation Edit - Visitor not Assistant //slime /mob/living/simple_mob/slime/mind_initialize() . = ..() - mind.assigned_role = "slime" + mind.assigned_role = JOB_SLIME /mob/living/carbon/alien/larva/mind_initialize() . = ..() - mind.special_role = "Larva" + mind.special_role = JOB_LARVA //AI /mob/living/silicon/ai/mind_initialize() . = ..() - mind.assigned_role = "AI" + mind.assigned_role = JOB_AI //BORG /mob/living/silicon/robot/mind_initialize() . = ..() - mind.assigned_role = "Cyborg" + mind.assigned_role = JOB_CYBORG //PAI /mob/living/silicon/pai/mind_initialize() . = ..() - mind.assigned_role = "pAI" + mind.assigned_role = JOB_PAI mind.special_role = "" //Animals /mob/living/simple_mob/mind_initialize() . = ..() - mind.assigned_role = "Simple Mob" + mind.assigned_role = JOB_SIMPLE_MOB /mob/living/simple_mob/animal/passive/dog/corgi/mind_initialize() . = ..() - mind.assigned_role = "Corgi" + mind.assigned_role = JOB_CORGI /mob/living/simple_mob/construct/shade/mind_initialize() . = ..() - mind.assigned_role = "Shade" - mind.special_role = "Cultist" + mind.assigned_role = JOB_SHADE + mind.special_role = JOB_CULTIST /mob/living/simple_mob/construct/artificer/mind_initialize() . = ..() - mind.assigned_role = "Artificer" - mind.special_role = "Cultist" + mind.assigned_role = JOB_ARTIFICER + mind.special_role = JOB_CULTIST /mob/living/simple_mob/construct/wraith/mind_initialize() . = ..() - mind.assigned_role = "Wraith" - mind.special_role = "Cultist" + mind.assigned_role = JOB_WRAITH + mind.special_role = JOB_CULTIST /mob/living/simple_mob/construct/juggernaut/mind_initialize() . = ..() - mind.assigned_role = "Juggernaut" - mind.special_role = "Cultist" + mind.assigned_role = JOB_JUGGERNAUT + mind.special_role = JOB_CULTIST diff --git a/code/datums/outfits/jobs/civilian.dm b/code/datums/outfits/jobs/civilian.dm index 554666cbca8..467deae4bfe 100644 --- a/code/datums/outfits/jobs/civilian.dm +++ b/code/datums/outfits/jobs/civilian.dm @@ -1,21 +1,21 @@ /decl/hierarchy/outfit/job/assistant - name = OUTFIT_JOB_NAME(USELESS_JOB) //VOREStation Edit - Visitor not Assistant + name = OUTFIT_JOB_NAME(JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant id_type = /obj/item/weapon/card/id/generic //VOREStation Edit /decl/hierarchy/outfit/job/assistant/visitor - name = OUTFIT_JOB_NAME("Visitor") - id_pda_assignment = "Visitor" + name = OUTFIT_JOB_NAME(JOB_ALT_VISITOR) + id_pda_assignment = JOB_ALT_VISITOR uniform = /obj/item/clothing/under/assistantformal //VOREStation Add - Interns /decl/hierarchy/outfit/job/assistant/intern - name = OUTFIT_JOB_NAME("Intern") + name = OUTFIT_JOB_NAME(JOB_INTERN) id_type = /obj/item/weapon/card/id/civilian //VOREStation Add End - Interns /decl/hierarchy/outfit/job/assistant/resident - name = OUTFIT_JOB_NAME("Resident") - id_pda_assignment = "Resident" + name = OUTFIT_JOB_NAME(JOB_ALT_RESIDENT) + id_pda_assignment = JOB_ALT_RESIDENT uniform = /obj/item/clothing/under/color/white /decl/hierarchy/outfit/job/service @@ -23,7 +23,7 @@ hierarchy_type = /decl/hierarchy/outfit/job/service /decl/hierarchy/outfit/job/service/bartender - name = OUTFIT_JOB_NAME("Bartender") + name = OUTFIT_JOB_NAME(JOB_BARTENDER) uniform = /obj/item/clothing/under/rank/bartender id_type = /obj/item/weapon/card/id/civilian/service/bartender //VOREStation Edit pda_type = /obj/item/device/pda/bar @@ -36,12 +36,12 @@ permit.set_name(H.real_name) /decl/hierarchy/outfit/job/service/bartender/barista - name = OUTFIT_JOB_NAME("Barista") - id_pda_assignment = "Barista" + name = OUTFIT_JOB_NAME(JOB_ALT_BARISTA) + id_pda_assignment = JOB_ALT_BARISTA backpack_contents = null /decl/hierarchy/outfit/job/service/chef - name = OUTFIT_JOB_NAME("Chef") + name = OUTFIT_JOB_NAME(JOB_CHEF) uniform = /obj/item/clothing/under/rank/chef suit = /obj/item/clothing/suit/chef head = /obj/item/clothing/head/chefhat @@ -49,19 +49,19 @@ pda_type = /obj/item/device/pda/chef /decl/hierarchy/outfit/job/service/chef/cook - name = OUTFIT_JOB_NAME("Cook") - id_pda_assignment = "Cook" + name = OUTFIT_JOB_NAME(JOB_ALT_COOK) + id_pda_assignment = JOB_ALT_COOK // Rykka adds Server Outfit /decl/hierarchy/outfit/job/service/server - name = OUTFIT_JOB_NAME("Server") + name = OUTFIT_JOB_NAME(JOB_ALT_SERVER) uniform = /obj/item/clothing/under/waiter // End Outfit addition /decl/hierarchy/outfit/job/service/gardener - name = OUTFIT_JOB_NAME("Gardener") + name = OUTFIT_JOB_NAME(JOB_ALT_GARDENER) uniform = /obj/item/clothing/under/rank/hydroponics suit = /obj/item/clothing/suit/storage/apron gloves = /obj/item/clothing/gloves/botanic_leather @@ -74,13 +74,13 @@ pda_type = /obj/item/device/pda/botanist /decl/hierarchy/outfit/job/service/janitor - name = OUTFIT_JOB_NAME("Janitor") + name = OUTFIT_JOB_NAME(JOB_JANITOR) uniform = /obj/item/clothing/under/rank/janitor id_type = /obj/item/weapon/card/id/civilian/service/janitor //VOREStation Edit pda_type = /obj/item/device/pda/janitor /decl/hierarchy/outfit/job/librarian - name = OUTFIT_JOB_NAME("Librarian") + name = OUTFIT_JOB_NAME(JOB_LIBRARIAN) uniform = /obj/item/clothing/under/suit_jacket/red l_hand = /obj/item/weapon/barcodescanner id_type = /obj/item/weapon/card/id/civilian @@ -101,14 +101,14 @@ pda_type = /obj/item/device/pda/lawyer /decl/hierarchy/outfit/job/chaplain - name = OUTFIT_JOB_NAME("Chaplain") + name = OUTFIT_JOB_NAME(JOB_CHAPLAIN) uniform = /obj/item/clothing/under/rank/chaplain l_hand = /obj/item/weapon/storage/bible id_type = /obj/item/weapon/card/id/civilian/chaplain pda_type = /obj/item/device/pda/chaplain /decl/hierarchy/outfit/job/explorer - name = OUTFIT_JOB_NAME("Explorer") + name = OUTFIT_JOB_NAME(JOB_EXPLORER) shoes = /obj/item/clothing/shoes/boots/winter/explorer uniform = /obj/item/clothing/under/explorer mask = /obj/item/clothing/mask/gas/explorer @@ -120,4 +120,4 @@ pda_slot = slot_belt pda_type = /obj/item/device/pda/cargo // Brown looks more rugged r_pocket = /obj/item/device/gps/explorer - id_pda_assignment = "Explorer" + id_pda_assignment = JOB_EXPLORER diff --git a/code/datums/outfits/jobs/command.dm b/code/datums/outfits/jobs/command.dm index d8a74f925da..b5622606358 100644 --- a/code/datums/outfits/jobs/command.dm +++ b/code/datums/outfits/jobs/command.dm @@ -1,5 +1,5 @@ /decl/hierarchy/outfit/job/captain - name = OUTFIT_JOB_NAME("Captain") + name = OUTFIT_JOB_NAME(JOB_ALT_CAPTAIN) // Keep Captain for now, not JOB_SITE_MANAGER glasses = /obj/item/clothing/glasses/sunglasses uniform = /obj/item/clothing/under/rank/captain l_ear = /obj/item/device/radio/headset/heads/captain @@ -24,7 +24,7 @@ qdel(medal) /decl/hierarchy/outfit/job/hop - name = OUTFIT_JOB_NAME("Head of Personnel") + name = OUTFIT_JOB_NAME(JOB_HEAD_OF_PERSONNEL) uniform = /obj/item/clothing/under/rank/head_of_personnel l_ear = /obj/item/device/radio/headset/heads/hop shoes = /obj/item/clothing/shoes/brown @@ -32,7 +32,7 @@ pda_type = /obj/item/device/pda/heads/hop /decl/hierarchy/outfit/job/secretary - name = OUTFIT_JOB_NAME("Command Secretary") + name = OUTFIT_JOB_NAME(JOB_COMMAND_SECRETARY) l_ear = /obj/item/device/radio/headset/headset_com shoes = /obj/item/clothing/shoes/brown id_type = /obj/item/weapon/card/id/silver/secretary @@ -44,4 +44,4 @@ if(H.gender == FEMALE) uniform = /obj/item/clothing/under/suit_jacket/female/skirt else - uniform = /obj/item/clothing/under/suit_jacket/charcoal \ No newline at end of file + uniform = /obj/item/clothing/under/suit_jacket/charcoal diff --git a/code/datums/outfits/jobs/engineering.dm b/code/datums/outfits/jobs/engineering.dm index 86bf9fa8cfa..fdee06e0b20 100644 --- a/code/datums/outfits/jobs/engineering.dm +++ b/code/datums/outfits/jobs/engineering.dm @@ -11,7 +11,7 @@ flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL /decl/hierarchy/outfit/job/engineering/chief_engineer - name = OUTFIT_JOB_NAME("Chief engineer") + name = OUTFIT_JOB_NAME(JOB_CHIEF_ENGINEER) head = /obj/item/clothing/head/hardhat/white uniform = /obj/item/clothing/under/rank/chief_engineer l_ear = /obj/item/device/radio/headset/heads/ce @@ -20,14 +20,14 @@ pda_type = /obj/item/device/pda/heads/ce /decl/hierarchy/outfit/job/engineering/engineer - name = OUTFIT_JOB_NAME("Engineer") + name = OUTFIT_JOB_NAME(JOB_ENGINEER) head = /obj/item/clothing/head/hardhat uniform = /obj/item/clothing/under/rank/engineer id_type = /obj/item/weapon/card/id/engineering pda_type = /obj/item/device/pda/engineering /decl/hierarchy/outfit/job/engineering/atmos - name = OUTFIT_JOB_NAME("Atmospheric technician") + name = OUTFIT_JOB_NAME(JOB_ATMOSPHERIC_TECHNICIAN) uniform = /obj/item/clothing/under/rank/atmospheric_technician belt = /obj/item/weapon/storage/belt/utility/atmostech id_type = /obj/item/weapon/card/id/engineering/atmos diff --git a/code/datums/outfits/jobs/medical.dm b/code/datums/outfits/jobs/medical.dm index b474f92f727..f0b370d8af3 100644 --- a/code/datums/outfits/jobs/medical.dm +++ b/code/datums/outfits/jobs/medical.dm @@ -9,7 +9,7 @@ messenger_bag = /obj/item/weapon/storage/backpack/messenger/med /decl/hierarchy/outfit/job/medical/cmo - name = OUTFIT_JOB_NAME("Chief Medical Officer") + name = OUTFIT_JOB_NAME(JOB_CHIEF_MEDICAL_OFFICER) l_ear =/obj/item/device/radio/headset/heads/cmo uniform = /obj/item/clothing/under/rank/chief_medical_officer suit = /obj/item/clothing/suit/storage/toggle/labcoat/cmo @@ -20,7 +20,7 @@ pda_type = /obj/item/device/pda/heads/cmo /decl/hierarchy/outfit/job/medical/doctor - name = OUTFIT_JOB_NAME("Medical Doctor") + name = OUTFIT_JOB_NAME(JOB_MEDICAL_DOCTOR) uniform = /obj/item/clothing/under/rank/medical suit = /obj/item/clothing/suit/storage/toggle/labcoat l_hand = /obj/item/weapon/storage/firstaid/regular @@ -28,16 +28,16 @@ id_type = /obj/item/weapon/card/id/medical /decl/hierarchy/outfit/job/medical/doctor/emergency_physician - name = OUTFIT_JOB_NAME("Emergency Physician") + name = OUTFIT_JOB_NAME(JOB_ALT_EMERGENCY_PHYSICIAN) suit = /obj/item/clothing/suit/storage/toggle/fr_jacket /decl/hierarchy/outfit/job/medical/doctor/surgeon - name = OUTFIT_JOB_NAME("Surgeon") + name = OUTFIT_JOB_NAME(JOB_ALT_SURGEON) uniform = /obj/item/clothing/under/rank/medical/scrubs head = /obj/item/clothing/head/surgery/blue /decl/hierarchy/outfit/job/medical/doctor/virologist - name = OUTFIT_JOB_NAME("Virologist") + name = OUTFIT_JOB_NAME(JOB_ALT_VIROLOGIST) uniform = /obj/item/clothing/under/rank/virologist suit = /obj/item/clothing/suit/storage/toggle/labcoat/virologist mask = /obj/item/clothing/mask/surgical @@ -45,7 +45,7 @@ satchel_one = /obj/item/weapon/storage/backpack/satchel/vir /decl/hierarchy/outfit/job/medical/doctor/nurse - name = OUTFIT_JOB_NAME("Nurse") + name = OUTFIT_JOB_NAME(JOB_ALT_NURSE) suit = null /decl/hierarchy/outfit/job/medical/doctor/nurse/pre_equip(mob/living/carbon/human/H) @@ -60,7 +60,7 @@ ..() /decl/hierarchy/outfit/job/medical/chemist - name = OUTFIT_JOB_NAME("Chemist") + name = OUTFIT_JOB_NAME(JOB_CHEMIST) uniform = /obj/item/clothing/under/rank/chemist suit = /obj/item/clothing/suit/storage/toggle/labcoat/chemist backpack = /obj/item/weapon/storage/backpack/chemistry @@ -70,7 +70,7 @@ pda_type = /obj/item/device/pda/chemist /decl/hierarchy/outfit/job/medical/geneticist - name = OUTFIT_JOB_NAME("Geneticist") + name = OUTFIT_JOB_NAME(JOB_GENETICIST) uniform = /obj/item/clothing/under/rank/geneticist suit = /obj/item/clothing/suit/storage/toggle/labcoat/genetics backpack = /obj/item/weapon/storage/backpack/genetics @@ -80,18 +80,18 @@ pda_type = /obj/item/device/pda/geneticist /decl/hierarchy/outfit/job/medical/psychiatrist - name = OUTFIT_JOB_NAME("Psychiatrist") + name = OUTFIT_JOB_NAME(JOB_PSYCHIATRIST) uniform = /obj/item/clothing/under/rank/psych suit = /obj/item/clothing/suit/storage/toggle/labcoat shoes = /obj/item/clothing/shoes/laceup id_type = /obj/item/weapon/card/id/medical/psych /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist - name = OUTFIT_JOB_NAME("Psychologist") + name = OUTFIT_JOB_NAME(JOB_ALT_PSYCHOLOGIST) uniform = /obj/item/clothing/under/rank/psych/turtleneck /decl/hierarchy/outfit/job/medical/paramedic - name = OUTFIT_JOB_NAME("Paramedic") + name = OUTFIT_JOB_NAME(JOB_PARAMEDIC) uniform = /obj/item/clothing/under/rank/medical/paramedic suit = /obj/item/clothing/suit/storage/toggle/fr_jacket shoes = /obj/item/clothing/shoes/boots/jackboots @@ -102,6 +102,6 @@ flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL /decl/hierarchy/outfit/job/medical/paramedic/emt - name = OUTFIT_JOB_NAME("Emergency Medical Technician") + name = OUTFIT_JOB_NAME(JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN) uniform = /obj/item/clothing/under/rank/medical/paramedic_alt suit = /obj/item/clothing/suit/storage/toggle/labcoat/emt diff --git a/code/datums/outfits/jobs/misc.dm b/code/datums/outfits/jobs/misc.dm index 43bbd919f8e..28cfa9e2361 100644 --- a/code/datums/outfits/jobs/misc.dm +++ b/code/datums/outfits/jobs/misc.dm @@ -3,9 +3,9 @@ hierarchy_type = /decl/hierarchy/outfit/job/silicon /decl/hierarchy/outfit/job/silicon/ai - name = OUTFIT_JOB_NAME("AI") + name = OUTFIT_JOB_NAME(JOB_AI) suit = /obj/item/clothing/suit/straight_jacket /decl/hierarchy/outfit/job/silicon/cyborg - name = OUTFIT_JOB_NAME("Cyborg") + name = OUTFIT_JOB_NAME(JOB_CYBORG) suit = /obj/item/clothing/suit/cardborg diff --git a/code/datums/outfits/jobs/science.dm b/code/datums/outfits/jobs/science.dm index fcccfb8f8c6..af8307cc3fc 100644 --- a/code/datums/outfits/jobs/science.dm +++ b/code/datums/outfits/jobs/science.dm @@ -19,19 +19,19 @@ pda_type = /obj/item/device/pda/heads/rd /decl/hierarchy/outfit/job/science/scientist - name = OUTFIT_JOB_NAME("Scientist") + name = OUTFIT_JOB_NAME(JOB_SCIENTIST) uniform = /obj/item/clothing/under/rank/scientist id_type = /obj/item/weapon/card/id/science suit = /obj/item/clothing/suit/storage/toggle/labcoat/science /decl/hierarchy/outfit/job/science/xenobiologist - name = OUTFIT_JOB_NAME("Xenobiologist") + name = OUTFIT_JOB_NAME(JOB_XENOBIOLOGIST) uniform = /obj/item/clothing/under/rank/scientist id_type = /obj/item/weapon/card/id/science suit = /obj/item/clothing/suit/storage/toggle/labcoat/science /decl/hierarchy/outfit/job/science/roboticist - name = OUTFIT_JOB_NAME("Roboticist") + name = OUTFIT_JOB_NAME(JOB_ROBOTICIST) uniform = /obj/item/clothing/under/rank/roboticist shoes = /obj/item/clothing/shoes/black belt = /obj/item/weapon/storage/belt/utility/full/multitool @@ -40,4 +40,4 @@ pda_type = /obj/item/device/pda/roboticist backpack = /obj/item/weapon/storage/backpack satchel_one = /obj/item/weapon/storage/backpack/satchel/norm - suit = /obj/item/clothing/suit/storage/toggle/labcoat/roboticist \ No newline at end of file + suit = /obj/item/clothing/suit/storage/toggle/labcoat/roboticist diff --git a/code/datums/outfits/jobs/science_vr.dm b/code/datums/outfits/jobs/science_vr.dm index cf0e9e4b3a6..21a6bf43f07 100644 --- a/code/datums/outfits/jobs/science_vr.dm +++ b/code/datums/outfits/jobs/science_vr.dm @@ -2,7 +2,7 @@ id_type = /obj/item/weapon/card/id/science/xenobiologist /decl/hierarchy/outfit/job/science/xenobotanist - name = OUTFIT_JOB_NAME("Xenobotanist") + name = OUTFIT_JOB_NAME(JOB_XENOBOTANIST) uniform = /obj/item/clothing/under/rank/scientist id_type = /obj/item/weapon/card/id/science/xenobotanist - suit = /obj/item/clothing/suit/storage/toggle/labcoat/science \ No newline at end of file + suit = /obj/item/clothing/suit/storage/toggle/labcoat/science diff --git a/code/datums/outfits/jobs/security.dm b/code/datums/outfits/jobs/security.dm index 4a044d8aaa4..26d5d4a4433 100644 --- a/code/datums/outfits/jobs/security.dm +++ b/code/datums/outfits/jobs/security.dm @@ -11,21 +11,21 @@ sports_bag = /obj/item/weapon/storage/backpack/sport/sec /decl/hierarchy/outfit/job/security/hos - name = OUTFIT_JOB_NAME("Head of security") + name = OUTFIT_JOB_NAME(JOB_HEAD_OF_SECURITY) l_ear = /obj/item/device/radio/headset/heads/hos uniform = /obj/item/clothing/under/rank/head_of_security id_type = /obj/item/weapon/card/id/security/head pda_type = /obj/item/device/pda/heads/hos /decl/hierarchy/outfit/job/security/warden - name = OUTFIT_JOB_NAME("Warden") + name = OUTFIT_JOB_NAME(JOB_WARDEN) uniform = /obj/item/clothing/under/rank/warden l_pocket = /obj/item/device/flash id_type = /obj/item/weapon/card/id/security/warden pda_type = /obj/item/device/pda/warden /decl/hierarchy/outfit/job/security/detective - name = OUTFIT_JOB_NAME("Detective") + name = OUTFIT_JOB_NAME(JOB_DETECTIVE) head = /obj/item/clothing/head/det uniform = /obj/item/clothing/under/det suit = /obj/item/clothing/suit/storage/det_trench @@ -47,7 +47,7 @@ //VOREStation Edit End /decl/hierarchy/outfit/job/security/officer - name = OUTFIT_JOB_NAME("Security Officer") + name = OUTFIT_JOB_NAME(JOB_SECURITY_OFFICER) uniform = /obj/item/clothing/under/rank/security l_pocket = /obj/item/device/flash id_type = /obj/item/weapon/card/id/security diff --git a/code/datums/outfits/jobs/special_vr.dm b/code/datums/outfits/jobs/special_vr.dm index 20473f0e8eb..52707d7a3c6 100644 --- a/code/datums/outfits/jobs/special_vr.dm +++ b/code/datums/outfits/jobs/special_vr.dm @@ -27,7 +27,7 @@ ert.add_antagonist(H.mind) /decl/hierarchy/outfit/job/clown - name = OUTFIT_JOB_NAME("Clown") + name = OUTFIT_JOB_NAME(JOB_CLOWN) uniform = /obj/item/clothing/under/rank/clown back = /obj/item/weapon/storage/backpack/clown shoes = /obj/item/clothing/shoes/clown_shoes @@ -38,7 +38,7 @@ flags = 0 /decl/hierarchy/outfit/job/mime - name = OUTFIT_JOB_NAME("Mime") + name = OUTFIT_JOB_NAME(JOB_MIME) uniform = /obj/item/clothing/under/mime shoes = /obj/item/clothing/shoes/mime head = /obj/item/clothing/head/soft/mime diff --git a/code/datums/outfits/outfit_vr.dm b/code/datums/outfits/outfit_vr.dm index 9f0b3c13807..bd5c232282f 100644 --- a/code/datums/outfits/outfit_vr.dm +++ b/code/datums/outfits/outfit_vr.dm @@ -109,7 +109,7 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go /decl/hierarchy/outfit/job/explorer2 - name = OUTFIT_JOB_NAME("Explorer") + name = OUTFIT_JOB_NAME(JOB_EXPLORER) shoes = /obj/item/clothing/shoes/boots/winter/explorer uniform = /obj/item/clothing/under/explorer l_ear = /obj/item/device/radio/headset/explorer @@ -117,14 +117,14 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go pda_slot = slot_l_store pda_type = /obj/item/device/pda/explorer id_type = /obj/item/weapon/card/id/exploration - id_pda_assignment = "Explorer" + id_pda_assignment = JOB_EXPLORER backpack = /obj/item/weapon/storage/backpack/explorer satchel_one = /obj/item/weapon/storage/backpack/satchel/explorer messenger_bag = /obj/item/weapon/storage/backpack/messenger/explorer flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL /decl/hierarchy/outfit/job/pilot - name = OUTFIT_JOB_NAME("Pilot") + name = OUTFIT_JOB_NAME(JOB_PILOT) shoes = /obj/item/clothing/shoes/black uniform = /obj/item/clothing/under/rank/pilot1/no_webbing suit = /obj/item/clothing/suit/storage/toggle/bomber/pilot @@ -136,11 +136,11 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go pda_slot = slot_belt pda_type = /obj/item/device/pda/pilot id_type = /obj/item/weapon/card/id/civilian/pilot - id_pda_assignment = "Pilot" + id_pda_assignment = JOB_PILOT flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL /decl/hierarchy/outfit/job/medical/sar - name = OUTFIT_JOB_NAME("Field Medic") + name = OUTFIT_JOB_NAME(JOB_FIELD_MEDIC) uniform = /obj/item/clothing/under/utility/blue //suit = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar shoes = /obj/item/clothing/shoes/boots/winter/explorer @@ -150,14 +150,14 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go pda_slot = slot_l_store pda_type = /obj/item/device/pda/sar id_type = /obj/item/weapon/card/id/exploration/fm - id_pda_assignment = "Field Medic" + id_pda_assignment = JOB_FIELD_MEDIC backpack = /obj/item/weapon/storage/backpack/explorer satchel_one = /obj/item/weapon/storage/backpack/satchel/explorer messenger_bag = /obj/item/weapon/storage/backpack/messenger/explorer flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL|OUTFIT_COMPREHENSIVE_SURVIVAL /decl/hierarchy/outfit/job/pathfinder - name = OUTFIT_JOB_NAME("Pathfinder") + name = OUTFIT_JOB_NAME(JOB_PATHFINDER) shoes = /obj/item/clothing/shoes/boots/winter/explorer uniform = /obj/item/clothing/under/explorer //TODO: Uniforms. l_ear = /obj/item/device/radio/headset/pathfinder @@ -165,7 +165,7 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go pda_slot = slot_l_store pda_type = /obj/item/device/pda/pathfinder id_type = /obj/item/weapon/card/id/exploration/head - id_pda_assignment = "Pathfinder" + id_pda_assignment = JOB_PATHFINDER flags = OUTFIT_HAS_BACKPACK|OUTFIT_EXTENDED_SURVIVAL|OUTFIT_COMPREHENSIVE_SURVIVAL /decl/hierarchy/outfit/job/assistant/explorer diff --git a/code/datums/supplypacks/medical.dm b/code/datums/supplypacks/medical.dm index e958f8133fe..8c14f0b8887 100644 --- a/code/datums/supplypacks/medical.dm +++ b/code/datums/supplypacks/medical.dm @@ -145,7 +145,7 @@ access = access_cmo /datum/supply_pack/med/doctorgear - name = "Medical Doctor equipment" + name = JOB_MEDICAL_DOCTOR + " equipment" contains = list( /obj/item/weapon/storage/belt/medical, /obj/item/device/radio/headset/headset_med, @@ -164,11 +164,11 @@ ) cost = 20 containertype = /obj/structure/closet/crate/secure/nanomed - containername = "Medical Doctor equipment" + containername = JOB_MEDICAL_DOCTOR + " equipment" access = access_medical_equip /datum/supply_pack/med/chemistgear - name = "Chemist equipment" + name = JOB_CHEMIST + " equipment" contains = list( /obj/item/weapon/storage/box/beakers, /obj/item/device/radio/headset/headset_med, @@ -187,11 +187,11 @@ ) cost = 20 containertype = /obj/structure/closet/crate/secure/nanomed - containername = "Chemist equipment" + containername = JOB_CHEMIST + " equipment" access = access_chemistry /datum/supply_pack/med/paramedicgear - name = "Paramedic equipment" + name = JOB_PARAMEDIC + " equipment" contains = list( /obj/item/weapon/storage/belt/medical/emt, /obj/item/device/radio/headset/headset_med, @@ -215,11 +215,11 @@ ) cost = 20 containertype = /obj/structure/closet/crate/secure/nanomed - containername = "Paramedic equipment" + containername = JOB_PARAMEDIC + " equipment" access = access_medical_equip /datum/supply_pack/med/psychiatristgear - name = "Psychiatrist equipment" + name = JOB_PSYCHIATRIST + " equipment" contains = list( /obj/item/clothing/under/rank/psych, /obj/item/device/radio/headset/headset_med, @@ -234,7 +234,7 @@ ) cost = 20 containertype = /obj/structure/closet/crate/secure/nanomed - containername = "Psychiatrist equipment" + containername = JOB_PSYCHIATRIST + " equipment" access = access_psychiatrist /datum/supply_pack/med/medicalscrubs diff --git a/code/datums/supplypacks/misc.dm b/code/datums/supplypacks/misc.dm index 6d6734b2619..09c795e19d6 100644 --- a/code/datums/supplypacks/misc.dm +++ b/code/datums/supplypacks/misc.dm @@ -101,7 +101,7 @@ containername = "EFTPOS crate" /datum/supply_pack/misc/chaplaingear - name = "Chaplain equipment" + name = JOB_CHAPLAIN + " equipment" contains = list( /obj/item/clothing/under/rank/chaplain, /obj/item/clothing/shoes/black, @@ -116,7 +116,7 @@ ) cost = 10 containertype = /obj/structure/closet/crate/gilthari - containername = "Chaplain equipment crate" + containername = JOB_CHAPLAIN + " equipment crate" /datum/supply_pack/misc/hoverpod name = "Hoverpod Shipment" @@ -233,7 +233,7 @@ one_access = TRUE /datum/supply_pack/randomised/misc/explorer_shield - name = "Away Team shield" + name = JOB_EXPLORER + " shield" num_contained = 2 contains = list( /obj/item/weapon/shield/riot/explorer, diff --git a/code/datums/supplypacks/security.dm b/code/datums/supplypacks/security.dm index 9e58d74f1cf..da8e8927029 100644 --- a/code/datums/supplypacks/security.dm +++ b/code/datums/supplypacks/security.dm @@ -546,7 +546,7 @@ access = access_brig /datum/supply_pack/security/wardengear - name = "Gear - Warden equipment" + name = "Gear - " + JOB_WARDEN + " equipment" contains = list( /obj/item/clothing/suit/storage/vest/warden, /obj/item/clothing/under/rank/warden, @@ -571,11 +571,11 @@ ) cost = 20 containertype = /obj/structure/closet/crate/secure/nanotrasen - containername = "Warden equipment" + containername = JOB_WARDEN + " equipment" access = access_armory /datum/supply_pack/security/headofsecgear - name = "Gear - Head of security equipment" + name = "Gear - " + JOB_HEAD_OF_SECURITY + " equipment" contains = list( /obj/item/clothing/head/helmet/HoS, /obj/item/clothing/suit/storage/vest/hos, @@ -598,7 +598,7 @@ ) cost = 50 containertype = /obj/structure/closet/crate/secure/nanotrasen - containername = "Head of security equipment" + containername = JOB_HEAD_OF_SECURITY + " equipment" access = access_hos /datum/supply_pack/security/securityclothing diff --git a/code/datums/supplypacks/supply.dm b/code/datums/supplypacks/supply.dm index 091bb16d8ad..68cc235781e 100644 --- a/code/datums/supplypacks/supply.dm +++ b/code/datums/supplypacks/supply.dm @@ -157,7 +157,7 @@ cost = 15 /datum/supply_pack/explorergear - name="Away Team gear" + name= JOB_EXPLORER + " gear" contains = list ( /obj/item/device/cataloguer, /obj/item/device/geiger, @@ -179,11 +179,11 @@ ) cost=25 containertype = /obj/structure/closet/crate/secure/xion - containername = "Away Team equipment" + containername = JOB_EXPLORER + " equipment" access = list(access_eva, access_explorer) /datum/supply_pack/pilotgear - name= "Pilot gear" + name= JOB_PILOT + " gear" contains = list ( /obj/item/weapon/storage/backpack/parachute, /obj/item/device/radio/headset/pilot, @@ -204,7 +204,7 @@ ) cost=20 containertype = /obj/structure/closet/crate/secure/xion - containername = "Pilot equipment" + containername = JOB_PILOT + " equipment" access = access_pilot /datum/supply_pack/supply/foodcubes @@ -216,7 +216,7 @@ containername = "food cubes" /datum/supply_pack/pathfindergear - name="Away Team Leader gear" + name= JOB_PATHFINDER + " gear" contains = list ( /obj/item/device/cataloguer/compact/pathfinder, /obj/item/device/geiger, @@ -240,5 +240,5 @@ ) cost = 75 containertype = /obj/structure/closet/crate/secure/xion - containername = "Away Team Leader equipment" + containername = JOB_PATHFINDER + " equipment" access = list(access_explorer) diff --git a/code/datums/supplypacks/voidsuits.dm b/code/datums/supplypacks/voidsuits.dm index d9768b3de04..d0dcfc29279 100644 --- a/code/datums/supplypacks/voidsuits.dm +++ b/code/datums/supplypacks/voidsuits.dm @@ -237,7 +237,7 @@ access = null /datum/supply_pack/voidsuits/explorer - name = "Away Team voidsuits" + name = JOB_EXPLORER + " voidsuits" contains = list( /obj/item/clothing/suit/space/void/exploration = 2, /obj/item/clothing/head/helmet/space/void/exploration = 2, @@ -247,11 +247,11 @@ ) cost = 45 containertype = /obj/structure/closet/crate/secure - containername = "Away Team voidsuit crate" + containername = JOB_EXPLORER + "voidsuit crate" access = list(access_eva, access_explorer) /datum/supply_pack/voidsuits/explorer_medic - name = "Away Team Medic voidsuits" + name = JOB_FIELD_MEDIC + " voidsuits" contains = list( /obj/item/clothing/suit/space/void/exploration = 2, /obj/item/clothing/head/helmet/space/void/exploration = 2, @@ -261,11 +261,11 @@ ) cost = 45 containertype = /obj/structure/closet/crate/secure - containername = "Away Team Medic voidsuit crate" + containername = JOB_FIELD_MEDIC + " voidsuit crate" access = access_medical /datum/supply_pack/voidsuits/pilot - name = "Pilot voidsuits" + name = JOB_PILOT + " voidsuits" contains = list( /obj/item/clothing/suit/space/void/pilot = 1, /obj/item/clothing/head/helmet/space/void/pilot = 1, @@ -275,7 +275,7 @@ ) cost = 20 containertype = /obj/structure/closet/crate/secure - containername = "Pilot voidsuit crate" + containername = JOB_PILOT + " voidsuit crate" access = access_pilot // Surplus! diff --git a/code/game/antagonist/antagonist.dm b/code/game/antagonist/antagonist.dm index 8778cef2cc0..cf81f4053df 100644 --- a/code/game/antagonist/antagonist.dm +++ b/code/game/antagonist/antagonist.dm @@ -48,7 +48,7 @@ var/landmark_id // Spawn point identifier. var/mob_path = /mob/living/carbon/human // Mobtype this antag will use if none is provided. var/feedback_tag = "traitor_objective" // End of round - var/bantype = "Syndicate" // Ban to check when spawning this antag. + var/bantype = JOB_SYNDICATE // Ban to check when spawning this antag. var/minimum_player_age = 7 // Players need to be at least minimum_player_age days old before they are eligable for auto-spawning var/suspicion_chance = 50 // Prob of being on the initial Command report var/flags = 0 // Various runtime options. diff --git a/code/game/antagonist/mutiny/mutineer.dm b/code/game/antagonist/mutiny/mutineer.dm index 85aecd71ea6..b679c3c0f4a 100644 --- a/code/game/antagonist/mutiny/mutineer.dm +++ b/code/game/antagonist/mutiny/mutineer.dm @@ -6,7 +6,7 @@ var/datum/antagonist/mutineer/mutineers role_text_plural = "Mutineers" id = MODE_MUTINEER antag_indicator = "mutineer" - restricted_jobs = list("Site Manager") + restricted_jobs = list(JOB_SITE_MANAGER) /datum/antagonist/mutineer/New(var/no_reference) ..() @@ -39,7 +39,7 @@ var/datum/antagonist/mutineer/mutineers proc/get_head_loyalist_candidates() var/list/candidates[0] for(var/mob/loyalist in player_list) - if(loyalist.mind && loyalist.mind.assigned_role == "Site Manager") + if(loyalist.mind && loyalist.mind.assigned_role == JOB_SITE_MANAGER) candidates.Add(loyalist.mind) return candidates @@ -47,7 +47,7 @@ var/datum/antagonist/mutineer/mutineers var/list/candidates[0] for(var/mob/mutineer in player_list) if(mutineer.client.prefs.be_special & BE_MUTINEER) - for(var/job in command_positions - "Site Manager") + for(var/job in command_positions - JOB_SITE_MANAGER) if(mutineer.mind && mutineer.mind.assigned_role == job) candidates.Add(mutineer.mind) return candidates diff --git a/code/game/antagonist/outsider/ert.dm b/code/game/antagonist/outsider/ert.dm index f1d1aeee4f3..59e6a4a30c8 100644 --- a/code/game/antagonist/outsider/ert.dm +++ b/code/game/antagonist/outsider/ert.dm @@ -2,7 +2,7 @@ var/datum/antagonist/ert/ert /datum/antagonist/ert id = MODE_ERT - bantype = "Emergency Response Team" + bantype = JOB_EMERGENCY_RESPONSE_TEAM role_type = BE_OPERATIVE role_text = "Emergency Responder" role_text_plural = "Emergency Responders" @@ -14,7 +14,7 @@ var/datum/antagonist/ert/ert and before taking extreme actions, please try to also contact the administration! \ Think through your actions and make the roleplay immersive! Please remember all \ rules aside from those without explicit exceptions apply to the ERT." - leader_welcome_text = "As leader of the Emergency Response Team, you answer only to the Company, and have authority to override the Site Manager where it is necessary to achieve your mission goals. It is recommended that you attempt to cooperate with the Site Manager where possible, however." + leader_welcome_text = "As leader of the Emergency Response Team, you answer only to the Company, and have authority to override the " + JOB_SITE_MANAGER + " where it is necessary to achieve your mission goals. It is recommended that you attempt to cooperate with the " + JOB_SITE_MANAGER + " where possible, however." landmark_id = "Response Team" id_type = /obj/item/weapon/card/id/centcom/ERT diff --git a/code/game/antagonist/outsider/ninja.dm b/code/game/antagonist/outsider/ninja.dm index 307abe35304..5ed22f4d49b 100644 --- a/code/game/antagonist/outsider/ninja.dm +++ b/code/game/antagonist/outsider/ninja.dm @@ -161,7 +161,7 @@ var/datum/antagonist/ninja/ninjas var/xenorace = pick(SPECIES_UNATHI, SPECIES_TAJ, SPECIES_SKRELL) directive += "A group of [xenorace] radicals have been loyal supporters of the Spider Clan. Favor [xenorace] crew whenever possible." if(15) - directive += "The Spider Clan has recently been accused of religious insensitivity. Attempt to speak with the Chaplain and prove these accusations false." + directive += "The Spider Clan has recently been accused of religious insensitivity. Attempt to speak with the " + JOB_CHAPLAIN + " and prove these accusations false." if(16) directive += "The Spider Clan has been bargaining with a competing prosthetics manufacturer. Try to shine [using_map.company_name] prosthetics in a bad light." if(17) diff --git a/code/game/antagonist/outsider/raider.dm b/code/game/antagonist/outsider/raider.dm index 59faa2de85d..5337ec9a0cf 100644 --- a/code/game/antagonist/outsider/raider.dm +++ b/code/game/antagonist/outsider/raider.dm @@ -227,9 +227,9 @@ var/datum/antagonist/raider/raiders player.equip_to_slot_or_del(new new_suit(player),slot_wear_suit) equip_weapons(player) - var/obj/item/weapon/card/id/id = create_id("Visitor", player, equip = 0) + var/obj/item/weapon/card/id/id = create_id(JOB_ALT_VISITOR, player, equip = 0) id.name = "[player.real_name]'s Passport" - id.assignment = "Visitor" + id.assignment = JOB_ALT_VISITOR var/obj/item/weapon/storage/wallet/W = new(player) W.handle_item_insertion(id) player.equip_to_slot_or_del(W, slot_wear_id) diff --git a/code/game/antagonist/outsider/technomancer.dm b/code/game/antagonist/outsider/technomancer.dm index 579e5631d75..e0b2f87433b 100644 --- a/code/game/antagonist/outsider/technomancer.dm +++ b/code/game/antagonist/outsider/technomancer.dm @@ -5,8 +5,8 @@ var/datum/antagonist/technomancer/technomancers role_type = BE_WIZARD role_text = "Technomancer" role_text_plural = "Technomancers" - bantype = "wizard" - landmark_id = "wizard" + bantype = JOB_WIZARD + landmark_id = JOB_WIZARD welcome_text = "You will need to purchase functions and perhaps some equipment from the various machines around your \ base. Choose your technological arsenal carefully. Remember that without the core on your back, your functions are \ powerless, and therefore you will be as well.
\ diff --git a/code/game/antagonist/outsider/wizard.dm b/code/game/antagonist/outsider/wizard.dm index 0fcded12c6d..8c97145f188 100644 --- a/code/game/antagonist/outsider/wizard.dm +++ b/code/game/antagonist/outsider/wizard.dm @@ -5,8 +5,8 @@ var/datum/antagonist/wizard/wizards role_type = BE_WIZARD role_text = "Space Wizard" role_text_plural = "Space Wizards" - bantype = "wizard" - landmark_id = "wizard" + bantype = JOB_WIZARD + landmark_id = JOB_WIZARD welcome_text = "You will find a list of available spells in your spell book. Choose your magic arsenal carefully.
In your pockets you will find a teleport scroll. Use it as needed." flags = ANTAG_OVERRIDE_JOB | ANTAG_CLEAR_EQUIPMENT | ANTAG_CHOOSE_NAME | ANTAG_VOTABLE | ANTAG_SET_APPEARANCE antaghud_indicator = "hudwizard" diff --git a/code/game/antagonist/station/changeling.dm b/code/game/antagonist/station/changeling.dm index 2c1cb77f26b..e82fac7c8eb 100644 --- a/code/game/antagonist/station/changeling.dm +++ b/code/game/antagonist/station/changeling.dm @@ -6,7 +6,7 @@ bantype = "changeling" feedback_tag = "changeling_objective" avoid_silicons = TRUE - protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Site Manager") + protected_jobs = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_DETECTIVE, JOB_HEAD_OF_SECURITY, JOB_SITE_MANAGER) welcome_text = "Use say \"#g message\" to communicate with your fellow changelings. Remember: you get all of their absorbed DNA if you absorb them." antag_sound = 'sound/effects/antag_notice/ling_alert.ogg' flags = ANTAG_SUSPICIOUS | ANTAG_RANDSPAWN | ANTAG_VOTABLE diff --git a/code/game/antagonist/station/cultist.dm b/code/game/antagonist/station/cultist.dm index 57271900b1c..d96a0f57186 100644 --- a/code/game/antagonist/station/cultist.dm +++ b/code/game/antagonist/station/cultist.dm @@ -11,10 +11,10 @@ var/datum/antagonist/cultist/cult role_text = "Cultist" role_text_plural = "Cultists" bantype = "cultist" - restricted_jobs = list("Chaplain") + restricted_jobs = list(JOB_CHAPLAIN) avoid_silicons = TRUE - protected_jobs = list("Security Officer", "Warden", "Detective", "Internal Affairs Agent", "Head of Security", "Site Manager") - roundstart_restricted = list("Internal Affairs Agent", "Head of Security", "Site Manager") + protected_jobs = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_DETECTIVE, JOB_INTERNAL_AFFAIRS_AGENT, JOB_HEAD_OF_SECURITY, JOB_SITE_MANAGER) + roundstart_restricted = list(JOB_INTERNAL_AFFAIRS_AGENT, JOB_HEAD_OF_SECURITY, JOB_SITE_MANAGER) role_type = BE_CULTIST feedback_tag = "cult_objective" antag_indicator = "cult" diff --git a/code/game/antagonist/station/infiltrator.dm b/code/game/antagonist/station/infiltrator.dm index f3e7f8a149d..dfa8c7f9390 100644 --- a/code/game/antagonist/station/infiltrator.dm +++ b/code/game/antagonist/station/infiltrator.dm @@ -11,7 +11,7 @@ var/datum/antagonist/traitor/infiltrator/infiltrators role_text = "Infiltrator" role_text_plural = "Infiltrators" welcome_text = "To speak on your team's private channel, use :t." - protected_jobs = list("Security Officer", "Warden", "Detective", "Internal Affairs Agent", "Head of Security", "Site Manager") + protected_jobs = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_DETECTIVE, JOB_INTERNAL_AFFAIRS_AGENT, JOB_HEAD_OF_SECURITY, JOB_SITE_MANAGER) flags = ANTAG_SUSPICIOUS | ANTAG_RANDSPAWN | ANTAG_VOTABLE can_speak_aooc = TRUE diff --git a/code/game/antagonist/station/revolutionary.dm b/code/game/antagonist/station/revolutionary.dm index 8f6a7c79e98..6fb563ef214 100644 --- a/code/game/antagonist/station/revolutionary.dm +++ b/code/game/antagonist/station/revolutionary.dm @@ -30,8 +30,8 @@ var/datum/antagonist/revolutionary/revs faction_invisible = 1 avoid_silicons = TRUE - protected_jobs = list("Security Officer", "Warden", "Detective", "Internal Affairs Agent", "Site Manager", "Head of Personnel", "Head of Security", "Chief Engineer", "Research Director", "Chief Medical Officer") - roundstart_restricted = list("Internal Affairs Agent", "Site Manager", "Head of Personnel", "Head of Security", "Chief Engineer", "Research Director", "Chief Medical Officer") + protected_jobs = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_DETECTIVE, JOB_INTERNAL_AFFAIRS_AGENT, JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_HEAD_OF_SECURITY, JOB_CHIEF_ENGINEER, JOB_RESEARCH_DIRECTOR, JOB_CHIEF_MEDICAL_OFFICER) + roundstart_restricted = list(JOB_INTERNAL_AFFAIRS_AGENT, JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_HEAD_OF_SECURITY, JOB_CHIEF_ENGINEER, JOB_RESEARCH_DIRECTOR, JOB_CHIEF_MEDICAL_OFFICER) /datum/antagonist/revolutionary/New() ..() diff --git a/code/game/antagonist/station/rogue_ai.dm b/code/game/antagonist/station/rogue_ai.dm index fd3ee867f93..0ed5644a258 100644 --- a/code/game/antagonist/station/rogue_ai.dm +++ b/code/game/antagonist/station/rogue_ai.dm @@ -26,7 +26,7 @@ var/datum/antagonist/rogue_ai/malf /datum/antagonist/rogue_ai/get_candidates() ..() for(var/datum/mind/player in candidates) - if(player.assigned_role && player.assigned_role != "AI") + if(player.assigned_role && player.assigned_role != JOB_AI) candidates -= player if(!candidates.len) return list() @@ -101,4 +101,3 @@ var/datum/antagonist/rogue_ai/malf if (newname) player.SetName(newname) if(player.mind) player.mind.name = player.name - diff --git a/code/game/antagonist/station/traitor.dm b/code/game/antagonist/station/traitor.dm index 41b97933307..e27d3ca3870 100644 --- a/code/game/antagonist/station/traitor.dm +++ b/code/game/antagonist/station/traitor.dm @@ -4,7 +4,7 @@ var/datum/antagonist/traitor/traitors /datum/antagonist/traitor id = MODE_TRAITOR antag_sound = 'sound/effects/antag_notice/traitor_alert.ogg' - protected_jobs = list("Security Officer", "Warden", "Detective", "Internal Affairs Agent", "Head of Security", "Site Manager") + protected_jobs = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_DETECTIVE, JOB_INTERNAL_AFFAIRS_AGENT, JOB_HEAD_OF_SECURITY, JOB_SITE_MANAGER) flags = ANTAG_SUSPICIOUS | ANTAG_RANDSPAWN | ANTAG_VOTABLE can_speak_aooc = FALSE // If they want to plot and plan as this sort of traitor, they'll need to do it ICly. diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 0c52c00621c..7034d9698ce 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -166,7 +166,7 @@ var/list/sacrificed = list() if(!waiting_for_input[target]) //so we don't spam them with dialogs if they hesitate waiting_for_input[target] = 1 - if(!cult.can_become_antag(target.mind) || jobban_isbanned(target, "cultist"))//putting jobban check here because is_convertable uses mind as argument + if(!cult.can_become_antag(target.mind) || jobban_isbanned(target, JOB_CULTIST))//putting jobban check here because is_convertable uses mind as argument //waiting_for_input ensures this is only shown once, so they basically auto-resist from here on out. They still need to find a way to get off the freaking rune if they don't want to burn to death, though. to_chat(target, "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.") to_chat(target, "And you were able to force it out of your mind. You now know the truth, there's something horrible out there, stop it and its minions at all costs.") @@ -351,7 +351,7 @@ var/list/sacrificed = list() to_chat(usr, "The sacrifical corpse is not dead. You must free it from this world of illusions before it may be used.") return fizzle() - if(!cult.can_become_antag(corpse_to_raise.mind) || jobban_isbanned(corpse_to_raise, "cultist")) + if(!cult.can_become_antag(corpse_to_raise.mind) || jobban_isbanned(corpse_to_raise, JOB_CULTIST)) to_chat(usr, "The Geometer of Blood refuses to touch this one.") return fizzle() else if(!corpse_to_raise.client && corpse_to_raise.mind) //Don't force the dead person to come back if they don't want to. @@ -459,7 +459,7 @@ var/list/sacrificed = list() break if(!ghost) return this_rune.fizzle() - if(jobban_isbanned(ghost, "cultist")) + if(jobban_isbanned(ghost, JOB_CULTIST)) return this_rune.fizzle() usr.say("Gal'h'rfikk harfrandid mud[pick("'","`")]gib!") diff --git a/code/game/gamemodes/cult/soulstone.dm b/code/game/gamemodes/cult/soulstone.dm index 3fbeb13a7f2..6fefdbc7aab 100644 --- a/code/game/gamemodes/cult/soulstone.dm +++ b/code/game/gamemodes/cult/soulstone.dm @@ -24,7 +24,7 @@ return ..() if(istype(M, /mob/living/carbon/human/dummy)) return..() - if(jobban_isbanned(M, "cultist")) + if(jobban_isbanned(M, JOB_CULTIST)) to_chat(user, "This person's soul is too corrupt and cannot be captured!") return..() diff --git a/code/game/gamemodes/epidemic/epidemic.dm b/code/game/gamemodes/epidemic/epidemic.dm index 0417b0c535a..adf4525959f 100644 --- a/code/game/gamemodes/epidemic/epidemic.dm +++ b/code/game/gamemodes/epidemic/epidemic.dm @@ -17,7 +17,7 @@ /datum/game_mode/epidemic/pre_setup() doctors = 0 for(var/mob/new_player/player in world) - if(player.mind.assigned_role in list("Chief Medical Officer","Medical Doctor")) + if(player.mind.assigned_role in list(JOB_CHIEF_MEDICAL_OFFICER ,JOB_MEDICAL_DOCTOR)) doctors++ break diff --git a/code/game/gamemodes/malfunction/malfunction.dm b/code/game/gamemodes/malfunction/malfunction.dm index 26e0c4572e1..fbcc26cf5da 100644 --- a/code/game/gamemodes/malfunction/malfunction.dm +++ b/code/game/gamemodes/malfunction/malfunction.dm @@ -9,5 +9,5 @@ end_on_antag_death = 0 auto_recall_shuttle = 0 antag_tags = list(MODE_MALFUNCTION) - disabled_jobs = list("AI") + disabled_jobs = list(JOB_AI) votable = 0 diff --git a/code/game/gamemodes/meme/meme.dm b/code/game/gamemodes/meme/meme.dm index 191e447813a..d9ac36085aa 100644 --- a/code/game/gamemodes/meme/meme.dm +++ b/code/game/gamemodes/meme/meme.dm @@ -7,7 +7,7 @@ config_tag = "meme" required_players = 3 required_players_secret = 10 - restricted_jobs = list("AI", "Cyborg") + restricted_jobs = list(JOB_AI, JOB_CYBORG) recommended_enemies = 2 // need at least a meme and a host votable = 0 // temporarily disable this mode for voting end_on_antag_death = 1 @@ -66,8 +66,8 @@ // so that we can later know which host belongs to which meme assigned_hosts[meme.key] = first_host - meme.assigned_role = "MODE" //So they aren't chosen for other jobs. - meme.special_role = "Meme" + meme.assigned_role = JOB_MODE //So they aren't chosen for other jobs. + meme.special_role = JOB_MEME return 1 diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index c42df5e5cdb..b86f2ad0cdc 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -150,7 +150,7 @@ var/global/list/all_objectives = list() if(!istype(I)) return 1 - if(I.assignment == USELESS_JOB) //VOREStation Edit - Visitor not Assistant + if(I.assignment == JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant return 1 else return 0 @@ -638,7 +638,7 @@ var/global/list/all_objectives = list() return /datum/objective/heist/kidnap/choose_target() - var/list/roles = list("Chief Engineer","Research Director","Roboticist","Chemist","Engineer") + var/list/roles = list(JOB_CHIEF_ENGINEER,JOB_RESEARCH_DIRECTOR,JOB_ROBOTICIST,JOB_CHEMIST,JOB_ENGINEER) var/list/possible_targets = list() var/list/priority_targets = list() @@ -903,4 +903,3 @@ var/global/list/all_objectives = list() rval = 2 return 0 return rval - diff --git a/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm b/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm index 7b2ab146a23..e5ba7c94f17 100644 --- a/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm +++ b/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm @@ -39,7 +39,7 @@ /obj/item/weapon/spell/summon/summon_creature/on_summon(var/mob/living/simple_mob/summoned) if(check_for_scepter()) -// summoned.faction = "technomancer" +// summoned.faction = FACTION_TECHNOMANCER summoned.friends += owner // Makes their new pal big and strong, if they have spell power. diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index e3dc3dccd0b..b162a691d66 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -1,8 +1,8 @@ /datum/game_mode/wizard - name = "Wizard" + name = JOB_WIZARD round_description = "There is a SPACE WIZARD on the station. You can't let the magician achieve their objectives!" extended_round_description = "A powerful entity capable of manipulating the elements around him, most commonly referred to as a 'wizard', has infiltrated the station. They have a wide variety of powers and spells available to them that makes your own simple moral self tremble with fear and excitement. Ultimately, their purpose is unknown. However, it is up to you and your crew to decide if their powers can be used for good or if their arrival foreshadows the destruction of the entire station." - config_tag = "wizard" + config_tag = JOB_WIZARD votable = 0 required_players = 1 required_players_secret = 3 diff --git a/code/game/jobs/access_datum.dm b/code/game/jobs/access_datum.dm index 530e4502705..32773362a01 100644 --- a/code/game/jobs/access_datum.dm +++ b/code/game/jobs/access_datum.dm @@ -127,7 +127,7 @@ /var/const/access_captain = 20 /datum/access/captain id = access_captain - desc = "Site Manager" + desc = JOB_SITE_MANAGER region = ACCESS_REGION_COMMAND /var/const/access_all_personal_lockers = 21 @@ -187,7 +187,7 @@ /var/const/access_rd = 30 /datum/access/rd id = access_rd - desc = "Research Director" + desc = JOB_RESEARCH_DIRECTOR region = ACCESS_REGION_RESEARCH /var/const/access_cargo = 31 @@ -247,13 +247,13 @@ /var/const/access_cmo = 40 /datum/access/cmo id = access_cmo - desc = "Chief Medical Officer" + desc = JOB_CHIEF_MEDICAL_OFFICER region = ACCESS_REGION_COMMAND /var/const/access_qm = 41 /datum/access/qm id = access_qm - desc = "Quartermaster" + desc = JOB_QUARTERMASTER region = ACCESS_REGION_SUPPLY /var/const/access_network = 42 @@ -265,13 +265,13 @@ var/const/access_explorer = 43 /datum/access/explorer id = access_explorer - desc = "Away Team" + desc = JOB_EXPLORER region = ACCESS_REGION_GENERAL /* /var/const/access_pathfinder = 44 /datum/access/pathfinder id = access_pathfinder - desc = "Pathfinder" + desc = JOB_PATHFINDER region = ACCESS_REGION_GENERAL */ @@ -331,19 +331,19 @@ var/const/access_explorer = 43 /var/const/access_ce = 56 /datum/access/ce id = access_ce - desc = "Chief Engineer" + desc = JOB_CHIEF_ENGINEER region = ACCESS_REGION_ENGINEERING /var/const/access_hop = 57 /datum/access/hop id = access_hop - desc = "Head of Personnel" + desc = JOB_HEAD_OF_PERSONNEL region = ACCESS_REGION_COMMAND /var/const/access_hos = 58 /datum/access/hos id = access_hos - desc = "Head of Security" + desc = JOB_HEAD_OF_SECURITY region = ACCESS_REGION_SECURITY /var/const/access_RC_announce = 59 //Request console announcements @@ -379,7 +379,7 @@ var/const/access_explorer = 43 /var/const/access_psychiatrist = 64 // Psychiatrist's office /datum/access/psychiatrist id = access_psychiatrist - desc = "Psychiatrist's Office" + desc = JOB_PSYCHIATRIST + "'s Office" region = ACCESS_REGION_MEDBAY /var/const/access_xenoarch = 65 @@ -397,7 +397,7 @@ var/const/access_explorer = 43 var/const/access_pilot = 67 /datum/access/pilot id = access_pilot - desc = "Pilot" + desc = JOB_PILOT region = ACCESS_REGION_GENERAL /var/const/access_entertainment = 72 @@ -430,7 +430,7 @@ var/const/access_pilot = 67 /var/const/access_cent_specops = 103//Special Ops. /datum/access/cent_specops id = access_cent_specops - desc = "Emergency Response Team Prep" + desc = JOB_EMERGENCY_RESPONSE_TEAM + " Prep" access_type = ACCESS_TYPE_CENTCOM /var/const/access_cent_medical = 104//Medical/Research @@ -460,7 +460,7 @@ var/const/access_pilot = 67 /var/const/access_cent_creed = 108//Creed's office. /datum/access/cent_creed id = access_cent_creed - desc = "Emergency Response Team Administration" + desc = JOB_EMERGENCY_RESPONSE_TEAM + " Administration" access_type = ACCESS_TYPE_CENTCOM /var/const/access_cent_captain = 109//Captain's office/ID comp/AI. @@ -472,7 +472,7 @@ var/const/access_pilot = 67 /var/const/access_clown = 136 /datum/access/clown id = access_clown - desc = "Clown Office" + desc = JOB_CLOWN + " Office" region = ACCESS_REGION_GENERAL /var/const/access_tomfoolery = 137 @@ -484,7 +484,7 @@ var/const/access_pilot = 67 /var/const/access_mime = 138 /datum/access/mime id = access_mime - desc = "Mime Office" + desc = JOB_MIME + " Office" region = ACCESS_REGION_GENERAL /*************** diff --git a/code/game/jobs/job/assistant.dm b/code/game/jobs/job/assistant.dm index 0cf6a8c086f..9b2f4ef2778 100644 --- a/code/game/jobs/job/assistant.dm +++ b/code/game/jobs/job/assistant.dm @@ -2,12 +2,12 @@ // Assistant ////////////////////////////////// /datum/job/assistant - title = "Assistant" + title = JOB_ALT_ASSISTANT flag = ASSISTANT departments = list(DEPARTMENT_CIVILIAN) sorting_order = -1 department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = -1 spawn_positions = -1 supervisors = "absolutely everyone" @@ -18,9 +18,9 @@ outfit_type = /decl/hierarchy/outfit/job/assistant job_description = "An Assistant does whatever is requested of them. Though they are part of the crew, they have no real authority." -/* alt_titles = list("Technical Assistant" = /datum/alt_title/tech_assist, - "Medical Intern"= /datum/alt_title/med_intern, "Research Assistant" = /datum/alt_title/research_assist, - "Visitor" = /datum/alt_title/visitor) +/* alt_titles = list(JOB_ALT_TECHNICAL_ASSISTANT = /datum/alt_title/tech_assist, + JOB_ALT_MEDICAL_INTERN= /datum/alt_title/med_intern, JOB_ALT_RESEARCH_ASSISTANT = /datum/alt_title/research_assist, + JOB_ALT_VISITOR = /datum/alt_title/visitor) ) */ //VOREStation Removal: no alt-titles for visitors /datum/job/assistant/get_access() @@ -31,29 +31,29 @@ // Assistant Alt Titles /datum/alt_title/tech_assist - title = "Technical Assistant" - title_blurb = "A Technical Assistant attempts to provide whatever the Engineering department needs. They are not proper Engineers, and are \ - often in training to become an Engineer. A Technical Assistant has no real authority." + title = JOB_ALT_TECHNICAL_ASSISTANT + title_blurb = "A " + JOB_ALT_TECHNICAL_ASSISTANT + " attempts to provide whatever the Engineering department needs. They are not proper Engineers, and are \ + often in training to become an " + JOB_ENGINEER + ". A " + JOB_ALT_TECHNICAL_ASSISTANT + " has no real authority." /datum/alt_title/med_intern - title = "Medical Intern" - title_blurb = "A Medical Intern attempts to provide whatever the Medical department needs. They are frequently asked to pay attention to \ - the suit sensors console. A Medical Intern has no real authority." + title = JOB_ALT_MEDICAL_INTERN + title_blurb = "A " + JOB_ALT_MEDICAL_INTERN + " attempts to provide whatever the Medical department needs. They are frequently asked to pay attention to \ + the suit sensors console. A " + JOB_ALT_MEDICAL_INTERN + " has no real authority." /datum/alt_title/research_assist - title = "Research Assistant" - title_blurb = "A Research Assistant attempts to assist anyone working in the Research department. They are expected to follow the instruction \ - of proper Research staff, as it is frequently a matter of safety. A Research Assistant has no real authority." + title = JOB_ALT_RESEARCH_ASSISTANT + title_blurb = "A " + JOB_ALT_RESEARCH_ASSISTANT + " attempts to assist anyone working in the Research department. They are expected to follow the instruction \ + of proper Research staff, as it is frequently a matter of safety. A " + JOB_ALT_RESEARCH_ASSISTANT + " has no real authority." /datum/alt_title/visitor - title = "Visitor" - title_blurb = "A Visitor is anyone who has arrived on the station but does not have a specific job to do. Many off-duty crewmembers \ + title = JOB_ALT_VISITOR + title_blurb = "A " + JOB_ALT_VISITOR + " is anyone who has arrived on the station but does not have a specific job to do. Many off-duty crewmembers \ who care to make use of the station's facilities arrive as Visitors. Properly registered Vistors are considered \ to be part of the crew for most if not all purposes, but they have no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/visitor /datum/alt_title/resident // Just in case it makes a comeback - title = "Resident" - title_blurb = "A Resident is an individual who resides on the station, frequently in a different part of the station than what is seen. \ + title = JOB_ALT_RESIDENT + title_blurb = "A " + JOB_ALT_RESIDENT + " is an individual who resides on the station, frequently in a different part of the station than what is seen. \ They are considered to be part of the crew for most purposes, but have no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/resident diff --git a/code/game/jobs/job/assistant_vr.dm b/code/game/jobs/job/assistant_vr.dm index fa3b3bad9a1..b52c28e6352 100644 --- a/code/game/jobs/job/assistant_vr.dm +++ b/code/game/jobs/job/assistant_vr.dm @@ -3,11 +3,11 @@ ////////////////////////////////// /datum/job/intern - title = "Intern" + title = JOB_INTERN flag = INTERN departments = list(DEPARTMENT_CIVILIAN) department_flag = ENGSEC // Ran out of bits - faction = "Station" + faction = FACTION_STATION total_positions = -1 spawn_positions = -1 supervisors = "the staff from the department you're interning in" @@ -16,62 +16,62 @@ access = list() //See /datum/job/intern/get_access() minimal_access = list() //See /datum/job/intern/get_access() outfit_type = /decl/hierarchy/outfit/job/assistant/intern - alt_titles = list("Apprentice Engineer" = /datum/alt_title/intern_eng, - "Medical Intern" = /datum/alt_title/intern_med, - "Research Intern" = /datum/alt_title/intern_sci, - "Security Cadet" = /datum/alt_title/intern_sec, - "Jr. Cargo Tech" = /datum/alt_title/intern_crg, - "Server" = /datum/alt_title/server, - "Assistant" = /datum/alt_title/assistant) - job_description = "An Intern does whatever is requested of them, often doing so in process of learning \ + alt_titles = list(JOB_ALT_APPRENTICE_ENGINEER = /datum/alt_title/intern_eng, + JOB_ALT_MEDICAL_INTERN = /datum/alt_title/intern_med, + JOB_ALT_RESEARCH_INTERN = /datum/alt_title/intern_sci, + JOB_ALT_SECURITY_CADET = /datum/alt_title/intern_sec, + JOB_ALT_JR_CARGO_TECH = /datum/alt_title/intern_crg, + JOB_ALT_SERVER = /datum/alt_title/server, + JOB_ALT_ASSISTANT = /datum/alt_title/assistant) + job_description = "An " + JOB_INTERN + " does whatever is requested of them, often doing so in process of learning \ another job. Though they are part of the crew, they have no real authority." timeoff_factor = 0 // Interns, noh requestable = FALSE /datum/alt_title/intern_eng - title = "Apprentice Engineer" - title_blurb = "An Apprentice Engineer attempts to provide whatever the Engineering department needs. They are not proper Engineers, and are \ - often in training to become an Engineer. An Apprentice Engineer has no real authority." + title = JOB_ALT_APPRENTICE_ENGINEER + title_blurb = "An " + JOB_ALT_APPRENTICE_ENGINEER + " attempts to provide whatever the Engineering department needs. They are not proper Engineers, and are \ + often in training to become an Engineer. An " + JOB_ALT_APPRENTICE_ENGINEER + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/engineer /datum/alt_title/intern_med - title = "Medical Intern" - title_blurb = "A Medical Intern attempts to provide whatever the Medical department needs. They are not proper Doctors, and are \ - often in training to become a Doctor. A Medical Intern has no real authority." + title = JOB_ALT_MEDICAL_INTERN + title_blurb = "A " + JOB_ALT_MEDICAL_INTERN + " attempts to provide whatever the Medical department needs. They are not proper Doctors, and are \ + often in training to become a Doctor. A " + JOB_ALT_MEDICAL_INTERN + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/medic /datum/alt_title/intern_sci - title = "Research Intern" - title_blurb = "A Research Intern attempts to provide whatever the Research department needs. They are not proper Scientists, and are \ - often in training to become a Scientist. A Research Intern has no real authority." + title = JOB_ALT_RESEARCH_INTERN + title_blurb = "A " + JOB_ALT_RESEARCH_INTERN + " attempts to provide whatever the Research department needs. They are not proper " + JOB_SCIENTIST + "s, and are \ + often in training to become a " + JOB_SCIENTIST + ". A " + JOB_ALT_RESEARCH_INTERN + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/scientist /datum/alt_title/intern_sec - title = "Security Cadet" - title_blurb = "A Security Cadet attempts to provide whatever the Security department needs. They are not proper Officers, and are \ - often in training to become an Officer. A Security Cadet has no real authority." + title = JOB_ALT_SECURITY_CADET + title_blurb = "A " + JOB_ALT_SECURITY_CADET + " attempts to provide whatever the Security department needs. They are not proper Officers, and are \ + often in training to become an Officer. A " + JOB_ALT_SECURITY_CADET + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/officer /datum/alt_title/intern_crg - title = "Jr. Cargo Tech" - title_blurb = "A Jr. Cargo Tech attempts to provide whatever the Cargo department needs. They are not proper Cargo Technicians, and are \ - often in training to become a Cargo Technician. A Jr. Cargo Tech has no real authority." + title = JOB_ALT_JR_CARGO_TECH + title_blurb = "A " + JOB_ALT_JR_CARGO_TECH + " attempts to provide whatever the Cargo department needs. They are not proper Cargo Technicians, and are \ + often in training to become a " + JOB_CARGO_TECHNICIAN + ". A " + JOB_ALT_JR_CARGO_TECH + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/cargo /* /datum/alt_title/intern_exp - title = "Jr. Explorer" - title_blurb = "A Jr. Explorer attempts to provide whatever the Exploration department needs. They are not proper Explorers, and are \ - often in training to become an Explorer. A Jr. Explorer has no real authority." + title = "Jr. " + JOB_EXPLORER + "" + title_blurb = "A Jr. " + JOB_EXPLORER + " attempts to provide whatever the Exploration department needs. They are not proper " + JOB_EXPLORER + "s, and are \ + often in training to become an " + JOB_EXPLORER + ". A Jr. " + JOB_EXPLORER + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/assistant/explorer */ /datum/alt_title/server - title = "Server" - title_blurb = "A Server helps out kitchen and diner staff with various tasks, primarily food delivery. A Server has no real authority." + title = JOB_ALT_SERVER + title_blurb = "A " + JOB_ALT_SERVER + " helps out kitchen and diner staff with various tasks, primarily food delivery. A " + JOB_ALT_SERVER + " has no real authority." title_outfit = /decl/hierarchy/outfit/job/service/server /datum/alt_title/assistant - title = "Assistant" - title_blurb = "An assistant helps out wherever they might be needed. They have no authority, but can volunteer to help if help is needed." + title = JOB_ALT_ASSISTANT + title_blurb = "An " + JOB_ALT_ASSISTANT + " helps out wherever they might be needed. They have no authority, but can volunteer to help if help is needed." title_outfit = /decl/hierarchy/outfit/job/service/server /datum/job/intern/New() @@ -92,9 +92,9 @@ ////////////////////////////////// /datum/job/assistant // Visitor - title = USELESS_JOB + title = JOB_ALT_VISITOR supervisors = "nobody! You don't work here" - job_description = "A Visitor is just there to visit the place. They have no real authority or responsibility." + job_description = "A " + JOB_ALT_VISITOR + " is just there to visit the place. They have no real authority or responsibility." timeoff_factor = 0 requestable = FALSE alt_titles = list("Guest" = /datum/alt_title/guest, "Traveler" = /datum/alt_title/traveler) diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm index 2138298e6d6..6c16ac43760 100644 --- a/code/game/jobs/job/captain.dm +++ b/code/game/jobs/job/captain.dm @@ -5,13 +5,13 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) ////////////////////////////////// /datum/job/captain - title = "Site Manager" + title = JOB_SITE_MANAGER flag = CAPTAIN departments = list(DEPARTMENT_COMMAND) sorting_order = 3 // Above everyone. departments_managed = list(DEPARTMENT_COMMAND) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 supervisors = "company officials and Corporate Regulations" @@ -25,14 +25,14 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) minimum_character_age = 25 min_age_by_species = list(SPECIES_HUMAN_VATBORN = 14) ideal_character_age = 70 // Old geezer captains ftw - ideal_age_by_species = list(SPECIES_HUMAN_VATBORN = 55) /// Vatborn live shorter, no other race eligible for captain besides human/skrell + ideal_age_by_species = list(SPECIES_HUMAN_VATBORN = 55) /// Vatborn live shorter, no other race eligible for captain besides human/skrell banned_job_species = list(SPECIES_UNATHI, SPECIES_TAJ, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "mechanical", "digital") outfit_type = /decl/hierarchy/outfit/job/captain - job_description = "The Site Manager manages the other Command Staff, and through them the rest of the station. Though they have access to everything, \ - they do not understand everything, and are expected to delegate tasks to the appropriate crew member. The Site Manager is expected to \ + job_description = "The " + JOB_SITE_MANAGER + " manages the other Command Staff, and through them the rest of the station. Though they have access to everything, \ + they do not understand everything, and are expected to delegate tasks to the appropriate crew member. The " + JOB_SITE_MANAGER + " is expected to \ have an understanding of Standard Operating Procedure, and is subject to it, and legal action, in the same way as every other crew member." - alt_titles = list("Overseer"= /datum/alt_title/overseer) + alt_titles = list(JOB_ALT_OVERSEER= /datum/alt_title/overseer) /* @@ -48,22 +48,22 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) // Captain Alt Titles /datum/alt_title/overseer - title = "Overseer" + title = JOB_ALT_OVERSEER ////////////////////////////////// // Head of Personnel ////////////////////////////////// /datum/job/hop - title = "Head of Personnel" + title = JOB_HEAD_OF_PERSONNEL flag = HOP departments = list(DEPARTMENT_COMMAND, DEPARTMENT_CIVILIAN, DEPARTMENT_CARGO) sorting_order = 2 // Above the QM, below captain. departments_managed = list(DEPARTMENT_CIVILIAN, DEPARTMENT_CARGO) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Site Manager" + supervisors = "the " + JOB_SITE_MANAGER selection_color = "#1D1D4F" req_admin_notify = 1 minimal_player_age = 10 @@ -76,10 +76,10 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) banned_job_species = list(SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital", SPECIES_DIONA) outfit_type = /decl/hierarchy/outfit/job/hop - job_description = "The Head of Personnel manages the Service department, the Exploration team, and most other civilians. They also \ - manage the Supply department, through the Quartermaster. In addition, the Head of Personnel oversees the personal accounts \ - of the crew, including their money and access. If necessary, the Head of Personnel is first in line to assume Acting Command." - alt_titles = list("Crew Resources Officer" = /datum/alt_title/cro) + job_description = "The " + JOB_HEAD_OF_PERSONNEL + " manages the Service department, the Exploration team, and most other civilians. They also \ + manage the Supply department, through the " + JOB_QUARTERMASTER + ". In addition, the " + JOB_HEAD_OF_PERSONNEL + " oversees the personal accounts \ + of the crew, including their money and access. If necessary, the " + JOB_HEAD_OF_PERSONNEL + " is first in line to assume Acting Command." + alt_titles = list(JOB_ALT_CREW_RESOURCE_OFFICER = /datum/alt_title/cro) access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers, access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads, @@ -96,19 +96,19 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) // HOP Alt Titles /datum/alt_title/cro - title = "Crew Resources Officer" + title = JOB_ALT_CREW_RESOURCE_OFFICER ////////////////////////////////// // Command Secretary ////////////////////////////////// /datum/job/secretary - title = "Command Secretary" + title = JOB_COMMAND_SECRETARY flag = BRIDGE departments = list(DEPARTMENT_COMMAND) department_accounts = list(DEPARTMENT_COMMAND) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 supervisors = "command staff" @@ -120,6 +120,5 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) minimal_access = list(access_heads, access_keycard_auth) outfit_type = /decl/hierarchy/outfit/job/secretary - job_description = "A Command Secretary handles paperwork duty for the Heads of Staff, so they can better focus on managing their departments. \ + job_description = "A " + JOB_COMMAND_SECRETARY + " handles paperwork duty for the Heads of Staff, so they can better focus on managing their departments. \ They are not Heads of Staff, and have no real authority." - diff --git a/code/game/jobs/job/captain_vr.dm b/code/game/jobs/job/captain_vr.dm index 3e2541bdecd..c127d8dfd43 100644 --- a/code/game/jobs/job/captain_vr.dm +++ b/code/game/jobs/job/captain_vr.dm @@ -2,17 +2,17 @@ disallow_jobhop = TRUE pto_type = PTO_CIVILIAN dept_time_required = 80 //Pending something more complicated - alt_titles = list("Overseer"= /datum/alt_title/overseer, "Facility Director" = /datum/alt_title/facility_director, "Chief Supervisor" = /datum/alt_title/chief_supervisor, - "Captain" = /datum/alt_title/captain) + alt_titles = list(JOB_ALT_OVERSEER= /datum/alt_title/overseer, JOB_ALT_FACILITY_DIRECTOR = /datum/alt_title/facility_director, JOB_ALT_CHIEF_SUPERVISOR = /datum/alt_title/chief_supervisor, + JOB_ALT_CAPTAIN = /datum/alt_title/captain) /datum/alt_title/facility_director - title = "Facility Director" + title = JOB_ALT_FACILITY_DIRECTOR /datum/alt_title/chief_supervisor - title = "Chief Supervisor" + title = JOB_ALT_CHIEF_SUPERVISOR /datum/alt_title/captain - title = "Captain" + title = JOB_ALT_CAPTAIN /datum/job/captain/get_request_reasons() return list("Training crew", "Assembling expedition team") @@ -24,8 +24,8 @@ departments_managed = list(DEPARTMENT_CIVILIAN, DEPARTMENT_CARGO, DEPARTMENT_PLANET) dept_time_required = 60 - alt_titles = list("Crew Resources Officer" = /datum/alt_title/cro, "Deputy Manager" = /datum/alt_title/deputy_manager, "Staff Manager" = /datum/alt_title/staff_manager, - "Facility Steward" = /datum/alt_title/facility_steward, "First Mate" = /datum/alt_title/first_mate) + alt_titles = list(JOB_ALT_CREW_RESOURCE_OFFICER = /datum/alt_title/cro, JOB_ALT_DEPUTY_MANAGER = /datum/alt_title/deputy_manager, JOB_ALT_STAFF_MANAGER = /datum/alt_title/staff_manager, + JOB_ALT_FACILITY_STEWARD = /datum/alt_title/facility_steward, JOB_ALT_FIRST_MATE = /datum/alt_title/first_mate) access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers, access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads, @@ -41,16 +41,16 @@ access_hop, access_RC_announce, access_clown, access_tomfoolery, access_mime, access_keycard_auth, access_gateway, access_entertainment) /datum/alt_title/deputy_manager - title = "Deputy Manager" + title = JOB_ALT_DEPUTY_MANAGER /datum/alt_title/staff_manager - title = "Staff Manager" + title = JOB_ALT_STAFF_MANAGER /datum/alt_title/facility_steward - title = "Facility Steward" + title = JOB_ALT_FACILITY_STEWARD /datum/alt_title/first_mate - title = "First Mate" + title = JOB_ALT_FIRST_MATE /datum/job/hop/get_request_reasons() return list("ID modification", "Training crew", "Assembling expedition team") @@ -59,20 +59,20 @@ /datum/job/secretary disallow_jobhop = TRUE pto_type = PTO_CIVILIAN - alt_titles = list("Command Liaison" = /datum/alt_title/command_liaison, "Command Assistant" = /datum/alt_title/command_assistant, "Command Intern" = /datum/alt_title/command_intern, - "Bridge Secretary" = /datum/alt_title/bridge_secretary, "Bridge Assistant" = /datum/alt_title/bridge_assistant) + alt_titles = list(JOB_ALT_COMMAND_LIAISON = /datum/alt_title/command_liaison, JOB_ALT_COMMAND_ASSISTANT = /datum/alt_title/command_assistant, JOB_ALT_COMMAND_INTERN = /datum/alt_title/command_intern, + JOB_ALT_BRIDGE_SECRETARY = /datum/alt_title/bridge_secretary, JOB_ALT_BRIDGE_ASSISTANT = /datum/alt_title/bridge_assistant) /datum/alt_title/command_liaison - title = "Command Liaison" + title = JOB_ALT_COMMAND_LIAISON /datum/alt_title/command_assistant - title = "Command Assistant" + title = JOB_ALT_COMMAND_ASSISTANT /datum/alt_title/command_intern - title = "Command Intern" + title = JOB_ALT_COMMAND_INTERN /datum/alt_title/bridge_secretary - title = "Bridge Secretary" + title = JOB_ALT_BRIDGE_SECRETARY /datum/alt_title/bridge_assistant - title = "Bridge Assistant" + title = JOB_ALT_BRIDGE_ASSISTANT diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index f06c7dc083b..663edab0a45 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -5,26 +5,26 @@ ////////////////////////////////// /datum/job/bartender - title = "Bartender" + title = JOB_BARTENDER flag = BARTENDER departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_bar) outfit_type = /decl/hierarchy/outfit/job/service/bartender - job_description = "A Bartender mixes drinks for the crew. They generally have permission to charge for drinks or deny service to unruly patrons." - alt_titles = list("Barista" = /datum/alt_title/barista) + job_description = "A " + JOB_BARTENDER + " mixes drinks for the crew. They generally have permission to charge for drinks or deny service to unruly patrons." + alt_titles = list(JOB_ALT_BARISTA = /datum/alt_title/barista) // Bartender Alt Titles /datum/alt_title/barista - title = "Barista" - title_blurb = "A barista mans the Cafe, serving primarily non-alcoholic drinks to the crew. They generally have permission to charge for drinks \ + title = JOB_ALT_BARISTA + title_blurb = "A " + JOB_ALT_BARISTA + " mans the Cafe, serving primarily non-alcoholic drinks to the crew. They generally have permission to charge for drinks \ or deny service to unruly patrons." title_outfit = /decl/hierarchy/outfit/job/service/bartender/barista @@ -33,68 +33,68 @@ ////////////////////////////////// /datum/job/chef - title = "Chef" + title = JOB_CHEF flag = CHEF departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Head of Personnel" + supervisors = "the "+ JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_kitchen) outfit_type = /decl/hierarchy/outfit/job/service/chef - job_description = "A Chef cooks food for the crew. They generally have permission to charge for food or deny service to unruly diners." - alt_titles = list("Cook" = /datum/alt_title/cook) + job_description = "A " + JOB_CHEF + " cooks food for the crew. They generally have permission to charge for food or deny service to unruly diners." + alt_titles = list(JOB_ALT_COOK = /datum/alt_title/cook) // Chef Alt Titles /datum/alt_title/cook - title = "Cook" - title_blurb = "A Cook has the same duties, though they may be less experienced." + title = JOB_ALT_COOK + title_blurb = "A " + JOB_ALT_COOK + " has the same duties, though they may be less experienced." ////////////////////////////////// // Botanist ////////////////////////////////// /datum/job/hydro - title = "Botanist" + title = JOB_BOTANIST flag = BOTANIST departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_hydroponics) outfit_type = /decl/hierarchy/outfit/job/service/gardener - job_description = "A Botanist grows plants for the Chef and Bartender." - alt_titles = list("Gardener" = /datum/alt_title/gardener) + job_description = "A " + JOB_BOTANIST+ " grows plants for the " + JOB_CHEF + " and " + JOB_BARTENDER + "." + alt_titles = list(JOB_ALT_GARDENER = /datum/alt_title/gardener) //Botanist Alt Titles /datum/alt_title/gardener - title = "Gardener" - title_blurb = "A Gardener may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere." + title = JOB_ALT_GARDENER + title_blurb = "A " + JOB_ALT_GARDENER + " may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere." //Cargo ////////////////////////////////// // Quartermaster ////////////////////////////////// /datum/job/qm - title = "Quartermaster" + title = JOB_QUARTERMASTER flag = QUARTERMASTER departments = list(DEPARTMENT_CARGO) sorting_order = 1 // QM is above the cargo techs, but below the HoP. departments_managed = list(DEPARTMENT_CARGO) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#9b633e" economic_modifier = 5 access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_RC_announce) @@ -104,31 +104,31 @@ ideal_character_age = 40 outfit_type = /decl/hierarchy/outfit/job/cargo/qm - job_description = "The Quartermaster manages the Supply department, checking cargo orders and ensuring supplies get to where they are needed." - alt_titles = list("Supply Chief" = /datum/alt_title/supply_chief) + job_description = "The " + JOB_QUARTERMASTER + " manages the Supply department, checking cargo orders and ensuring supplies get to where they are needed." + alt_titles = list(JOB_ALT_SUPPLY_CHIEF = /datum/alt_title/supply_chief) // Quartermaster Alt Titles /datum/alt_title/supply_chief - title = "Supply Chief" + title = JOB_ALT_SUPPLY_CHIEF ////////////////////////////////// // Cargo Tech ////////////////////////////////// /datum/job/cargo_tech - title = "Cargo Technician" + title = JOB_CARGO_TECHNICIAN flag = CARGOTECH departments = list(DEPARTMENT_CARGO) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Quartermaster and the Head of Personnel" + supervisors = "the " + JOB_QUARTERMASTER + " and the " + JOB_HEAD_OF_PERSONNEL selection_color = "#7a4f33" access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_mining, access_mining_station) minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting) outfit_type = /decl/hierarchy/outfit/job/cargo/cargo_tech - job_description = "A Cargo Technician fills and delivers cargo orders. They are encouraged to return delivered crates to the Cargo Shuttle, \ + job_description = "A " + JOB_CARGO_TECHNICIAN + " fills and delivers cargo orders. They are encouraged to return delivered crates to the Cargo Shuttle, \ because Central Command gives a partial refund." ////////////////////////////////// @@ -136,82 +136,82 @@ ////////////////////////////////// /datum/job/mining - title = "Shaft Miner" + title = JOB_SHAFT_MINER flag = MINER departments = list(DEPARTMENT_CARGO) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 3 spawn_positions = 3 - supervisors = "the Quartermaster and the Head of Personnel" + supervisors = "the " + JOB_QUARTERMASTER + " and the " + JOB_HEAD_OF_PERSONNEL selection_color = "#7a4f33" economic_modifier = 5 access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_mining, access_mining_station) minimal_access = list(access_mining, access_mining_station, access_mailsorting) outfit_type = /decl/hierarchy/outfit/job/cargo/mining - job_description = "A Shaft Miner mines and processes minerals to be delivered to departments that need them." - alt_titles = list("Drill Technician" = /datum/alt_title/drill_tech) + job_description = "A " + JOB_SHAFT_MINER + " mines and processes minerals to be delivered to departments that need them." + alt_titles = list(JOB_ALT_DRILL_TECHNICIAN = /datum/alt_title/drill_tech) /datum/alt_title/drill_tech - title = "Drill Technician" - title_blurb = "A Drill Technician specializes in operating and maintaining the machinery needed to extract ore from veins deep below the surface." + title = JOB_ALT_DRILL_TECHNICIAN + title_blurb = "A " + JOB_ALT_DRILL_TECHNICIAN + " specializes in operating and maintaining the machinery needed to extract ore from veins deep below the surface." //Service ////////////////////////////////// // Janitor ////////////////////////////////// /datum/job/janitor - title = "Janitor" + title = JOB_JANITOR flag = JANITOR departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_janitor, access_maint_tunnels) minimal_access = list(access_janitor, access_maint_tunnels) outfit_type = /decl/hierarchy/outfit/job/service/janitor - job_description = "A Janitor keeps the station clean, as long as it doesn't interfere with active crime scenes." - alt_titles = list("Custodian" = /datum/alt_title/custodian) + job_description = "A " + JOB_JANITOR + " keeps the station clean, as long as it doesn't interfere with active crime scenes." + alt_titles = list(JOB_ALT_CUSTODIAN = /datum/alt_title/custodian) // Janitor Alt Titles /datum/alt_title/custodian - title = "Custodian" + title = JOB_ALT_CUSTODIAN //More or less assistants ////////////////////////////////// // Librarian ////////////////////////////////// /datum/job/librarian - title = "Librarian" + title = JOB_LIBRARIAN flag = LIBRARIAN departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_library, access_maint_tunnels) minimal_access = list(access_library) outfit_type = /decl/hierarchy/outfit/job/librarian - job_description = "The Librarian curates the book selection in the Library, so the crew might enjoy it." - alt_titles = list("Journalist" = /datum/alt_title/journalist, "Writer" = /datum/alt_title/writer) + job_description = "The " + JOB_LIBRARIAN + " curates the book selection in the Library, so the crew might enjoy it." + alt_titles = list(JOB_ALT_JOURNALIST = /datum/alt_title/journalist, JOB_ALT_WRITER = /datum/alt_title/writer) // Librarian Alt Titles /datum/alt_title/journalist - title = "Journalist" + title = JOB_ALT_JOURNALIST title_outfit = /decl/hierarchy/outfit/job/librarian/journalist - title_blurb = "The Journalist uses the Library as a base of operations, from which they can report the news and goings-on on the station with their camera." + title_blurb = "The " + JOB_ALT_JOURNALIST + " uses the Library as a base of operations, from which they can report the news and goings-on on the station with their camera." /datum/alt_title/writer - title = "Writer" - title_blurb = "The Writer uses the Library as a quiet place to write whatever it is they choose to write." + title = JOB_ALT_WRITER + title_blurb = "The " + JOB_ALT_WRITER + " uses the Library as a quiet place to write whatever it is they choose to write." ////////////////////////////////// // Internal Affairs Agent @@ -219,11 +219,11 @@ //var/global/lawyer = 0//Checks for another lawyer //This changed clothes on 2nd lawyer, both IA get the same dreds. /datum/job/lawyer - title = "Internal Affairs Agent" + title = JOB_INTERNAL_AFFAIRS_AGENT flag = LAWYER departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 supervisors = "company officials and Corporate Regulations" @@ -235,7 +235,7 @@ banned_job_species = list(SPECIES_PROMETHEAN, SPECIES_UNATHI, SPECIES_DIONA, SPECIES_TESHARI, SPECIES_ZADDAT, "digital") outfit_type = /decl/hierarchy/outfit/job/internal_affairs_agent - job_description = "An Internal Affairs Agent makes sure that the crew is following Standard Operating Procedure. They also \ + job_description = "An " + JOB_INTERNAL_AFFAIRS_AGENT + " makes sure that the crew is following Standard Operating Procedure. They also \ handle complaints against crew members, and can have issues brought to the attention of Central Command, \ assuming their paperwork is in order." diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index ca379314126..afeac415c97 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -1,25 +1,25 @@ //Due to how large this one is it gets its own file /datum/job/chaplain - title = "Chaplain" + title = JOB_CHAPLAIN flag = CHAPLAIN departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_morgue, access_chapel_office, access_crematorium, access_maint_tunnels) minimal_access = list(access_chapel_office, access_crematorium) outfit_type = /decl/hierarchy/outfit/job/chaplain - job_description = "The Chaplain ministers to the spiritual needs of the crew." - alt_titles = list("Counselor" = /datum/alt_title/counselor) + job_description = "The " + JOB_CHAPLAIN + " ministers to the spiritual needs of the crew." + alt_titles = list(JOB_ALT_COUNSELOR = /datum/alt_title/counselor) // Chaplain Alt Titles /datum/alt_title/counselor - title = "Counselor" - title_blurb = "The Counselor attends to the emotional needs of the crew, without a specific medicinal or spiritual focus." + title = JOB_ALT_COUNSELOR + title_blurb = "The " + JOB_ALT_COUNSELOR + " attends to the emotional needs of the crew, without a specific medicinal or spiritual focus." /datum/job/chaplain/equip(var/mob/living/carbon/human/H, var/alt_title, var/ask_questions = TRUE) . = ..() @@ -111,7 +111,7 @@ var/bible_name = "Bible" var/bible_icon_state = "bible" var/bible_item_state = "bible" - var/title = "Chaplain" + var/title = JOB_CHAPLAIN var/configured = FALSE /datum/religion/New(var/r, var/d, var/bn, var/bis, var/bits, var/t) diff --git a/code/game/jobs/job/civilian_vr.dm b/code/game/jobs/job/civilian_vr.dm index 9934d9dea9e..c7e2a2c7857 100644 --- a/code/game/jobs/job/civilian_vr.dm +++ b/code/game/jobs/job/civilian_vr.dm @@ -1,65 +1,65 @@ /datum/job/bartender pto_type = PTO_CIVILIAN - alt_titles = list("Barkeeper" = /datum/alt_title/barkeeper, "Barmaid" = /datum/alt_title/barmaid, "Barista" = /datum/alt_title/barista, "Mixologist" = /datum/alt_title/mixologist) + alt_titles = list(JOB_ALT_BARKEEPR = /datum/alt_title/barkeeper, JOB_ALT_BARMAID = /datum/alt_title/barmaid, JOB_ALT_BARISTA = /datum/alt_title/barista, JOB_ALT_MIXOLOGIST = /datum/alt_title/mixologist) /datum/alt_title/barkeeper - title = "Barkeeper" + title = JOB_ALT_BARKEEPR /datum/alt_title/barmaid - title = "Barmaid" + title = JOB_ALT_BARMAID /datum/alt_title/mixologist - title = "Mixologist" + title = JOB_ALT_MIXOLOGIST /datum/job/chef total_positions = 2 //IT TAKES A LOT TO MAKE A STEW spawn_positions = 2 //A PINCH OF SALT AND LAUGHTER, TOO pto_type = PTO_CIVILIAN - alt_titles = list("Sous-chef" = /datum/alt_title/souschef,"Cook" = /datum/alt_title/cook, "Kitchen Worker" = /datum/alt_title/kitchen_worker) + alt_titles = list(JOB_ALT_SOUSCHEF = /datum/alt_title/souschef, JOB_ALT_COOK = /datum/alt_title/cook, JOB_ALT_KITCHEN_WORKER = /datum/alt_title/kitchen_worker) /datum/alt_title/souschef - title = "Sous-chef" + title = JOB_ALT_SOUSCHEF /datum/alt_title/kitchen_worker - title = "Kitchen Worker" - title_blurb = "A Kitchen Worker has the same duties, though they may be less experienced." + title = JOB_ALT_KITCHEN_WORKER + title_blurb = "A " + JOB_ALT_KITCHEN_WORKER + " has the same duties, though they may be less experienced." /datum/job/hydro spawn_positions = 2 pto_type = PTO_CIVILIAN - alt_titles = list("Hydroponicist" = /datum/alt_title/hydroponicist, "Cultivator" = /datum/alt_title/cultivator, "Farmer" = /datum/alt_title/farmer, - "Gardener" = /datum/alt_title/gardener, "Florist" = /datum/alt_title/florsit, "Rancher" = /datum/alt_title/rancher) + alt_titles = list(JOB_ALT_HYDROPONICIST = /datum/alt_title/hydroponicist, JOB_ALT_CULTIVATOR = /datum/alt_title/cultivator, JOB_ALT_FARMER = /datum/alt_title/farmer, + JOB_ALT_GARDENER = /datum/alt_title/gardener, JOB_ALT_FLORIST = /datum/alt_title/florsit, JOB_ALT_RANCHER = /datum/alt_title/rancher) /datum/alt_title/hydroponicist - title = "Hydroponicist" + title = JOB_ALT_HYDROPONICIST /datum/alt_title/cultivator - title = "Cultivator" + title = JOB_ALT_CULTIVATOR /datum/alt_title/farmer - title = "Farmer" + title = JOB_ALT_FARMER /datum/alt_title/florsit - title = "Florist" - title_blurb = "A Florist may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere." + title = JOB_ALT_FLORIST + title_blurb = "A " + JOB_ALT_FLORIST + " may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere." /datum/alt_title/rancher - title = "Rancher" - title_blurb = "A Rancher is tasked with the care, feeding, raising, and harvesting of livestock." + title = JOB_ALT_RANCHER + title_blurb = "A " + JOB_ALT_RANCHER + " is tasked with the care, feeding, raising, and harvesting of livestock." /datum/job/qm pto_type = PTO_CARGO dept_time_required = 20 - alt_titles = list("Supply Chief" = /datum/alt_title/supply_chief, "Logistics Manager" = /datum/alt_title/logistics_manager, "Cargo Supervisor" = /datum/alt_title/cargo_supervisor) + alt_titles = list(JOB_ALT_SUPPLY_CHIEF = /datum/alt_title/supply_chief, JOB_ALT_LOGISTICS_MANAGER = /datum/alt_title/logistics_manager, JOB_ALT_CARGO_SUPERVISOR = /datum/alt_title/cargo_supervisor) /datum/alt_title/logistics_manager - title = "Logistics Manager" + title = JOB_ALT_LOGISTICS_MANAGER /datum/alt_title/cargo_supervisor - title = "Cargo Supervisor" + title = JOB_ALT_CARGO_SUPERVISOR /datum/job/qm/get_request_reasons() return list("Training crew") @@ -69,42 +69,42 @@ total_positions = 3 spawn_positions = 3 pto_type = PTO_CARGO - alt_titles = list("Cargo Loader" = /datum/alt_title/cargo_loader, "Cargo Handler" = /datum/alt_title/cargo_handler, "Supply Courier" = /datum/alt_title/supply_courier, - "Disposals Sorter" = /datum/alt_title/disposal_sorter) + alt_titles = list(JOB_ALT_CARGO_LOADER = /datum/alt_title/cargo_loader, JOB_ALT_CARGO_HANDLER = /datum/alt_title/cargo_handler, JOB_ALT_SUPPLY_COURIER = /datum/alt_title/supply_courier, + JOB_ALT_DISPOSALS_SORTER = /datum/alt_title/disposal_sorter) /datum/alt_title/supply_courier - title = "Supply Courier" - title_blurb = "A Supply Courier is usually tasked with devlivering packages or cargo directly to whoever requires it." + title = JOB_ALT_SUPPLY_COURIER + title_blurb = "A " + JOB_ALT_SUPPLY_COURIER + " is usually tasked with devlivering packages or cargo directly to whoever requires it." /datum/alt_title/cargo_loader - title = "Cargo Loader" - title_blurb = "A Cargo Loader is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle." + title = JOB_ALT_CARGO_LOADER + title_blurb = "A " + JOB_ALT_CARGO_LOADER + " is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle." /datum/alt_title/cargo_handler - title = "Cargo Handler" - title_blurb = "A Cargo Loader is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle." + title = JOB_ALT_CARGO_HANDLER + title_blurb = "A " + JOB_ALT_CARGO_HANDLER + " is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle." /datum/alt_title/disposal_sorter - title = "Disposals Sorter" - title_blurb = "A Disposals Sorter is usually tasked with operating disposals delivery system, sorting the trash and tagging parcels for delivery." + title = JOB_ALT_DISPOSALS_SORTER + title_blurb = "A " + JOB_ALT_DISPOSALS_SORTER + " is usually tasked with operating disposals delivery system, sorting the trash and tagging parcels for delivery." /datum/job/mining total_positions = 4 spawn_positions = 4 pto_type = PTO_CARGO - alt_titles = list("Deep Space Miner" = /datum/alt_title/deep_space_miner, "Drill Technician" = /datum/alt_title/drill_tech, "Prospector" = /datum/alt_title/prospector, - "Excavator" = /datum/alt_title/excavator) + alt_titles = list(JOB_ALT_DEEP_SPACE_MINER = /datum/alt_title/deep_space_miner, JOB_ALT_DRILL_TECHNICIAN = /datum/alt_title/drill_tech, JOB_ALT_PROSPECTOR = /datum/alt_title/prospector, + JOB_ALT_EXCAVATOR = /datum/alt_title/excavator) /datum/alt_title/deep_space_miner - title = "Deep Space Miner" - title_blurb = "A Deep Space Miner specializes primarily in mining operations in zero-g environments, mostly in asteroid and debris fields." + title = JOB_ALT_DEEP_SPACE_MINER + title_blurb = "A " + JOB_ALT_DEEP_SPACE_MINER + " specializes primarily in mining operations in zero-g environments, mostly in asteroid and debris fields." /datum/alt_title/prospector - title = "Prospector" + title = JOB_ALT_PROSPECTOR /datum/alt_title/excavator - title = "Excavator" + title = JOB_ALT_EXCAVATOR /datum/job/mining/get_request_reasons() return list("Assembling expedition team") @@ -114,96 +114,96 @@ total_positions = 3 spawn_positions = 3 pto_type = PTO_CIVILIAN - alt_titles = list("Custodian" = /datum/alt_title/custodian, "Sanitation Technician" = /datum/alt_title/sanitation_tech, - "Maid" = /datum/alt_title/maid, "Garbage Collector" = /datum/alt_title/garbage_collector) + alt_titles = list(JOB_ALT_CUSTODIAN = /datum/alt_title/custodian, JOB_ALT_SANITATION_TECHNICIAN = /datum/alt_title/sanitation_tech, + JOB_ALT_MAID = /datum/alt_title/maid, JOB_ALT_GARBAGE_COLLECTOR = /datum/alt_title/garbage_collector) /datum/alt_title/sanitation_tech - title = "Sanitation Technician" + title = JOB_ALT_SANITATION_TECHNICIAN /datum/alt_title/maid - title = "Maid" + title = JOB_ALT_MAID /datum/alt_title/garbage_collector - title = "Garbage Collector" - title_blurb = "A Garbage Collector keeps the station clean, though focuses moreso on collecting larger trash, with wet cleaning being secondary task." + title = JOB_ALT_GARBAGE_COLLECTOR + title_blurb = "A " + JOB_ALT_GARBAGE_COLLECTOR + " keeps the station clean, though focuses moreso on collecting larger trash, with wet cleaning being secondary task." /datum/job/librarian total_positions = 2 spawn_positions = 2 - alt_titles = list("Journalist" = /datum/alt_title/journalist, "Reporter" = /datum/alt_title/reporter, "Writer" = /datum/alt_title/writer, - "Historian" = /datum/alt_title/historian, "Archivist" = /datum/alt_title/archivist, "Professor" = /datum/alt_title/professor, - "Academic" = /datum/alt_title/academic, "Philosopher" = /datum/alt_title/philosopher, "Curator" = /datum/alt_title/curator) + alt_titles = list(JOB_ALT_JOURNALIST = /datum/alt_title/journalist, JOB_ALT_REPORTER = /datum/alt_title/reporter, JOB_ALT_WRITER = /datum/alt_title/writer, + JOB_ALT_HISTORIAN = /datum/alt_title/historian, JOB_ALT_ARCHIVIST = /datum/alt_title/archivist, JOB_ALT_PROFESSOR = /datum/alt_title/professor, + JOB_ALT_ACADEMIC = /datum/alt_title/academic, JOB_ALT_PHILOSOPHER = /datum/alt_title/philosopher, JOB_ALT_CURATOR = /datum/alt_title/curator) pto_type = PTO_CIVILIAN /datum/alt_title/reporter - title = "Reporter" - title_blurb = "The Reporter uses the Library as a base of operations, from which they can report the news and goings-on on the station with their camera." + title = JOB_ALT_REPORTER + title_blurb = "The " + JOB_ALT_REPORTER + " uses the Library as a base of operations, from which they can report the news and goings-on on the station with their camera." /datum/alt_title/historian - title = "Historian" - title_blurb = "The Historian uses the Library as a base of operation to record any important events occurring on station." + title = JOB_ALT_HISTORIAN + title_blurb = "The " + JOB_ALT_HISTORIAN + " uses the Library as a base of operation to record any important events occurring on station." /datum/alt_title/archivist - title = "Archivist" - title_blurb = "The Archivist uses the Library as a base of operation to record any important events occurring on station." + title = JOB_ALT_ARCHIVIST + title_blurb = "The " + JOB_ALT_ARCHIVIST + " uses the Library as a base of operation to record any important events occurring on station." /datum/alt_title/professor - title = "Professor" - title_blurb = "The Professor uses the Library as a base of operations to share their vast knowledge with the crew." + title = JOB_ALT_PROFESSOR + title_blurb = "The " + JOB_ALT_PROFESSOR + " uses the Library as a base of operations to share their vast knowledge with the crew." /datum/alt_title/academic - title = "Academic" - title_blurb = "The Academic uses the Library as a base of operations to share their vast knowledge with the crew." + title = JOB_ALT_ACADEMIC + title_blurb = "The " + JOB_ALT_ACADEMIC + " uses the Library as a base of operations to share their vast knowledge with the crew." /datum/alt_title/philosopher - title = "Philosopher" - title_blurb = "The Philosopher uses the Library as a base of operation to ruminate on nature of life and other great questions, and share their opinions with the crew." + title = JOB_ALT_PHILOSOPHER + title_blurb = "The " + JOB_ALT_PHILOSOPHER + " uses the Library as a base of operation to ruminate on nature of life and other great questions, and share their opinions with the crew." /datum/alt_title/curator - title = "Curator" - title_blurb = "The Curator uses the Library as a base of operation to gather the finest of art for display and preservation." + title = JOB_ALT_CURATOR + title_blurb = "The " + JOB_ALT_CURATOR + " uses the Library as a base of operation to gather the finest of art for display and preservation." /datum/job/lawyer disallow_jobhop = TRUE pto_type = PTO_CIVILIAN - alt_titles = list("Internal Affairs Liaison" = /datum/alt_title/ia_liaison, "Internal Affairs Delegate" = /datum/alt_title/ia_delegate, - "Internal Affairs Investigator" = /datum/alt_title/ia_investigator) + alt_titles = list(JOB_ALT_INTERNAL_AFFAIRS_LIAISON = /datum/alt_title/ia_liaison, JOB_ALT_INTERNAL_AFFAIRS_DELEGATE = /datum/alt_title/ia_delegate, + JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR = /datum/alt_title/ia_investigator) /datum/alt_title/ia_liaison - title = "Internal Affairs Liaison" + title = JOB_ALT_INTERNAL_AFFAIRS_LIAISON /datum/alt_title/ia_delegate - title = "Internal Affairs Delegate" + title = JOB_ALT_INTERNAL_AFFAIRS_DELEGATE /datum/alt_title/ia_investigator - title = "Internal Affairs Investigator" + title = JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR /datum/job/chaplain pto_type = PTO_CIVILIAN - alt_titles = list("Missionary" = /datum/alt_title/missionary, "Preacher" = /datum/alt_title/preacher, "Priest" = /datum/alt_title/priest, - "Nun" = /datum/alt_title/nun, "Monk" = /datum/alt_title/monk, "Counselor" = /datum/alt_title/counselor, - "Guru" = /datum/alt_title/guru) + alt_titles = list(JOB_ALT_MISSIONARY = /datum/alt_title/missionary, JOB_ALT_PREACHER = /datum/alt_title/preacher, JOB_ALT_PRIEST = /datum/alt_title/priest, + JOB_ALT_NUN = /datum/alt_title/nun, JOB_ALT_MONK = /datum/alt_title/monk, JOB_ALT_COUNSELOR = /datum/alt_title/counselor, + JOB_ALT_GURU = /datum/alt_title/guru) /datum/alt_title/guru - title = "Guru" - title_blurb = "The Guru primarily tries to offer spiritual guidance to those who come seeking it." + title = JOB_ALT_GURU + title_blurb = "The " + JOB_ALT_GURU + " primarily tries to offer spiritual guidance to those who come seeking it." /datum/alt_title/missionary - title = "Missionary" + title = JOB_ALT_MISSIONARY /datum/alt_title/preacher - title = "Preacher" + title = JOB_ALT_PREACHER /datum/alt_title/priest - title = "Priest" + title = JOB_ALT_PRIEST /datum/alt_title/nun - title = "Nun" + title = JOB_ALT_NUN /datum/alt_title/monk - title = "Monk" + title = JOB_ALT_MONK ////////////////////////////////// @@ -211,14 +211,14 @@ ////////////////////////////////// /datum/job/pilot - title = "Pilot" + title = JOB_PILOT flag = PILOT departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" economic_modifier = 5 minimal_player_age = 3 @@ -226,18 +226,18 @@ access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot) minimal_access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot) outfit_type = /decl/hierarchy/outfit/job/pilot - job_description = "A Pilot flies the various shuttles in the Virgo-Erigone System." - alt_titles = list("Co-Pilot" = /datum/alt_title/co_pilot, "Navigator" = /datum/alt_title/navigator, "Helmsman" = /datum/alt_title/helmsman) + job_description = "A " + JOB_PILOT + " flies the various shuttles in the Virgo-Erigone System." + alt_titles = list(JOB_ALT_COPILOT = /datum/alt_title/co_pilot, JOB_ALT_NAVIGATOR = /datum/alt_title/navigator, JOB_ALT_HELMSMAN = /datum/alt_title/helmsman) /datum/alt_title/co_pilot - title = "Co-Pilot" - title_blurb = "A Co-Pilot is there primarily to assist main pilot as well as learn from them" + title = JOB_ALT_COPILOT + title_blurb = "A Co-" + JOB_ALT_COPILOT + " is there primarily to assist main pilot as well as learn from them" /datum/alt_title/navigator - title = "Navigator" + title = JOB_ALT_NAVIGATOR /datum/alt_title/helmsman - title = "Helmsman" + title = JOB_ALT_HELMSMAN /datum/job/pilot/get_request_reasons() return list("Assembling expedition team") @@ -247,180 +247,180 @@ ////////////////////////////////// /datum/job/entertainer - title = "Entertainer" + title = JOB_ENTERTAINER flag = ENTERTAINER departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 4 spawn_positions = 4 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list(access_entertainment) minimal_access = list(access_entertainment) pto_type = PTO_CIVILIAN outfit_type = /decl/hierarchy/outfit/job/assistant/entertainer - job_description = "An entertainer does just that, entertains! Put on plays, play music, sing songs, tell stories, or read your favorite fanfic." - alt_titles = list("Performer" = /datum/alt_title/performer, "Musician" = /datum/alt_title/musician, "Stagehand" = /datum/alt_title/stagehand, - "Actor" = /datum/alt_title/actor, "Dancer" = /datum/alt_title/dancer, "Singer" = /datum/alt_title/singer, - "Magician" = /datum/alt_title/magician, "Comedian" = /datum/alt_title/comedian, "Tragedian" = /datum/alt_title/tragedian, - "Artist" = /datum/alt_title/artist, "Game Master" = /datum/alt_title/game_master) + job_description = "An " + JOB_ENTERTAINER + " does just that, entertains! Put on plays, play music, sing songs, tell stories, or read your favorite fanfic." + alt_titles = list(JOB_ALT_PERFORMER = /datum/alt_title/performer, JOB_ALT_MUSICIAN = /datum/alt_title/musician, JOB_ALT_STAGEHAND = /datum/alt_title/stagehand, + JOB_ALT_ACTOR = /datum/alt_title/actor, JOB_ALT_DANCER = /datum/alt_title/dancer, JOB_ALT_SINGER = /datum/alt_title/singer, + JOB_ALT_MAGICIAN = /datum/alt_title/magician, JOB_ALT_COMEDIAN = /datum/alt_title/comedian, JOB_ALT_ARTIST = /datum/alt_title/tragedian, + JOB_ALT_ARTIST = /datum/alt_title/artist, JOB_ALT_GAME_MASTER = /datum/alt_title/game_master) // Entertainer Alt Titles /datum/alt_title/actor - title = "Actor" - title_blurb = "An Actor is someone who acts out a role! Whatever sort of character it is, get into it and impress people with power of comedy and tragedy!" + title = JOB_ALT_ACTOR + title_blurb = "An " + JOB_ALT_ACTOR + " is someone who acts out a role! Whatever sort of character it is, get into it and impress people with power of comedy and tragedy!" /datum/alt_title/performer - title = "Performer" - title_blurb = "A Performer is someone who performs! Whatever sort of performance will come to your mind, the world's a stage!" + title = JOB_ALT_PERFORMER + title_blurb = "A " + JOB_ALT_PERFORMER + " is someone who performs! Whatever sort of performance will come to your mind, the world's a stage!" /datum/alt_title/musician - title = "Musician" - title_blurb = "A Musician is someone who makes music with a wide variety of musical instruments!" + title = JOB_ALT_MUSICIAN + title_blurb = "A " + JOB_ALT_MUSICIAN + " is someone who makes music with a wide variety of musical instruments!" /datum/alt_title/stagehand - title = "Stagehand" - title_blurb = "A Stagehand typically performs everything the rest of the entertainers don't. Operate lights, shutters, windows, or narrate through your voicebox!" + title = JOB_ALT_STAGEHAND + title_blurb = "A " + JOB_ALT_STAGEHAND + " typically performs everything the rest of the entertainers don't. Operate lights, shutters, windows, or narrate through your voicebox!" /datum/alt_title/dancer - title = "Dancer" - title_blurb = "A Dancer is someone who impresses people through power of their own body! From waltz to breakdance, as long as crowd as cheering!" + title = JOB_ALT_DANCER + title_blurb = "A " + JOB_ALT_DANCER + " is someone who impresses people through power of their own body! From waltz to breakdance, as long as crowd as cheering!" /datum/alt_title/singer - title = "Singer" - title_blurb = "A Singer is someone with gift of melodious voice! Impress people with your vocal range!" + title = JOB_ALT_SINGER + title_blurb = "A " + JOB_ALT_SINGER + " is someone with gift of melodious voice! Impress people with your vocal range!" /datum/alt_title/magician - title = "Magician" - title_blurb = "A Magician is someone who awes those around them with impossible! Show off your repertoire of magic tricks, while keeping the secret hidden!" + title = JOB_ALT_MAGICIAN + title_blurb = "A " + JOB_ALT_MAGICIAN + " is someone who awes those around them with impossible! Show off your repertoire of magic tricks, while keeping the secret hidden!" /datum/alt_title/comedian - title = "Comedian" - title_blurb = "A Comedian will focus on making people laugh with the power of wit! Telling jokes, stand-up comedy, you are here to make others smile!" + title = JOB_ALT_COMEDIAN + title_blurb = "A " + JOB_ALT_COMEDIAN + " will focus on making people laugh with the power of wit! Telling jokes, stand-up comedy, you are here to make others smile!" /datum/alt_title/tragedian - title = "Tragedian" - title_blurb = "A Tragedian will focus on making people think about life and world around them! Life is a tragedy, and who's better to convey its emotions than you?" + title = JOB_ALT_ARTIST + title_blurb = "A " + JOB_ALT_ARTIST + " will focus on making people think about life and world around them! Life is a tragedy, and who's better to convey its emotions than you?" /datum/alt_title/artist - title = "Artist" - title_blurb = "An Artist's calling is to create beautiful arts! Whatever form may they take, create and have people astonished with your creativity." + title = JOB_ALT_ARTIST + title_blurb = "An " + JOB_ALT_ARTIST + "'s calling is to create beautiful arts! Whatever form may they take, create and have people astonished with your creativity." /datum/alt_title/game_master - title = "Game Master" - title_blurb = "A Game Master provides recreation for the crew by hosting variety of games. From cards to roleplaying to something more personalized." + title = JOB_ALT_GAME_MASTER + title_blurb = "A " + JOB_ALT_GAME_MASTER + " provides recreation for the crew by hosting variety of games. From cards to roleplaying to something more personalized." ////////////////////////////////// // Entrepreneur ////////////////////////////////// /datum/job/entrepreneur - title = "Entrepreneur" + title = JOB_ENTREPRENEUR flag = ENTREPRENEUR departments = list(DEPARTMENT_CIVILIAN) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 4 spawn_positions = 4 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#515151" access = list() minimal_access = list() pto_type = PTO_CIVILIAN outfit_type = /decl/hierarchy/outfit/job/assistant/entrepreneur - job_description = "An entrepreneur is basically a visitor that obtained special permission to offer personal services to people on station. \ + job_description = "An " + JOB_ENTREPRENEUR + " is basically a visitor that obtained special permission to offer personal services to people on station. \ They will offer people these services and, potentially, even demand payment!" - alt_titles = list("Lawyer" = /datum/alt_title/lawyer, "Private Eye" = /datum/alt_title/private_eye, "Bodyguard" = /datum/alt_title/bodyguard, - "Personal Physician" = /datum/alt_title/personal_physician, "Dentist" = /datum/alt_title/dentist, "Fitness Instructor" = /datum/alt_title/fitness_instructor, - "Yoga Teacher" = /datum/alt_title/yoga_teacher, "Masseuse" = /datum/alt_title/masseuse, "Tradesperson" = /datum/alt_title/tradesperson, - "Streamer" = /datum/alt_title/streamer, "Influencer" = /datum/alt_title/influencer, "Paranormal Investigator" = /datum/alt_title/paranormal_investigator, - "Personal Secretary" = /datum/alt_title/personal_secretary, "Stylist" = /datum/alt_title/stylist, "Fisher" = /datum/alt_title/fisher, - "Fortune Teller" = /datum/alt_title/fortune_teller, "Spirit Healer" = /datum/alt_title/spirit_healer) + alt_titles = list(JOB_ALT_LAWYER = /datum/alt_title/lawyer, JOB_ALT_PRIVATE_EYE = /datum/alt_title/private_eye, JOB_ALT_BODYGUARD = /datum/alt_title/bodyguard, + JOB_ALT_PERSONAL_PHYSICIAN = /datum/alt_title/personal_physician, JOB_ALT_DENTIST = /datum/alt_title/dentist, JOB_ALT_FITNESS_INSTRUCTOR = /datum/alt_title/fitness_instructor, + JOB_ALT_YOGA_TEACHER = /datum/alt_title/yoga_teacher, JOB_ALT_MASSEUSE = /datum/alt_title/masseuse, JOB_ALT_TRADESPERSON = /datum/alt_title/tradesperson, + JOB_ALT_STREAMER = /datum/alt_title/streamer, JOB_ALT_INFLUENCER = /datum/alt_title/influencer, JOB_ALT_PARANORMAL_INVESTIGATOR = /datum/alt_title/paranormal_investigator, + JOB_ALT_PERSONAL_SECRETARY = /datum/alt_title/personal_secretary, JOB_ALT_STYLIST = /datum/alt_title/stylist, JOB_ALT_FISHER = /datum/alt_title/fisher, + JOB_ALT_FORTUNE_TELLER = /datum/alt_title/fortune_teller, JOB_ALT_SPIRIT_HEALER = /datum/alt_title/spirit_healer) /datum/alt_title/lawyer - title = "Lawyer" - title_blurb = "A Lawyer is knowledgable in various legal systems, including station's operations. They can try to offer their legal counsel, although nobody is really obliged to listen." + title = JOB_ALT_LAWYER + title_blurb = "A " + JOB_ALT_LAWYER + " is knowledgable in various legal systems, including station's operations. They can try to offer their legal counsel, although nobody is really obliged to listen." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_secretary /datum/alt_title/private_eye - title = "Private Eye" - title_blurb = "A Private Eye is a detective that has no credentials or equipment. But if someone wants something found without security's knowledge, they are the one to go to." + title = JOB_ALT_PRIVATE_EYE + title_blurb = "A " + JOB_ALT_PRIVATE_EYE + " is a detective that has no credentials or equipment. But if someone wants something found without security's knowledge, they are the one to go to." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/private_eye /datum/alt_title/bodyguard - title = "Bodyguard" - title_blurb = "A Bodyguard offers service of personal protection. They may not be allowed any weapons, but their own body is weapon enough." + title = JOB_ALT_BODYGUARD + title_blurb = "A " + JOB_ALT_BODYGUARD + " offers service of personal protection. They may not be allowed any weapons, but their own body is weapon enough." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/bodyguard /datum/alt_title/personal_physician - title = "Personal Physician" - title_blurb = "A Personal Physicial is a doctor dedicated less to Hippocratic Oath and more to the moneymaking grind. Their license may be expired, but the grindset never will be." + title = JOB_ALT_PERSONAL_PHYSICIAN + title_blurb = "A " + JOB_ALT_PERSONAL_PHYSICIAN + " is a doctor dedicated less to Hippocratic Oath and more to the moneymaking grind. Their license may be expired, but the grindset never will be." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_physician /datum/alt_title/dentist - title = "Dentist" - title_blurb = "A Dentist is a doctor that specializes in oral care. Company may not recognize them as a proper doctor, but surely their customers will." + title = JOB_ALT_DENTIST + title_blurb = "A " + JOB_ALT_DENTIST + " is a doctor that specializes in oral care. Company may not recognize them as a proper doctor, but surely their customers will." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/dentist /datum/alt_title/fitness_instructor - title = "Fitness Instructor" - title_blurb = "A Fitness Instructor dedicates themselves to improving the health of the crew through physical activity, and boy, do they need the help." + title = JOB_ALT_FITNESS_INSTRUCTOR + title_blurb = "A " + JOB_ALT_FITNESS_INSTRUCTOR + " dedicates themselves to improving the health of the crew through physical activity, and boy, do they need the help." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fitness_instructor /datum/alt_title/yoga_teacher - title = "Yoga Teacher" - title_blurb = "A Yoga Teacher is similar to fitness instructor, but rather than turning the round bodies into firm ones, they focus on helping people find balance and harmony." + title = JOB_ALT_YOGA_TEACHER + title_blurb = "A " + JOB_ALT_YOGA_TEACHER + " is similar to a fitness instructor, but rather than turning the round bodies into firm ones, they focus on helping people find balance and harmony." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/yoga_teacher /datum/alt_title/masseuse - title = "Masseuse" - title_blurb = "A Masseuse is master of physical therapy and working others' bodies with their hands." + title = JOB_ALT_MASSEUSE + title_blurb = "A " + JOB_ALT_MASSEUSE + " is master of physical therapy and working others' bodies with their hands." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/masseuse /datum/alt_title/tradesperson - title = "Tradesperson" - title_blurb = "A Tradesperson is someone attempting to make money via the most obvious act of all - buying and selling. Now if only customs allowed you to bring your goods along..." + title = JOB_ALT_TRADESPERSON + title_blurb = "A " + JOB_ALT_TRADESPERSON + " is someone attempting to make money via the most obvious act of all - buying and selling. Now if only customs allowed you to bring your goods along..." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/tradesperson /datum/alt_title/streamer - title = "Streamer" - title_blurb = "A Streamer is here to entertain. Not the crew! Their audience across exonet!" + title = JOB_ALT_STREAMER + title_blurb = "A " + JOB_ALT_STREAMER + " is here to entertain. Not the crew! Their audience across exonet!" title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/streamer /datum/alt_title/influencer - title = "Influencer" - title_blurb = "An Influencer has lucked out with some exonet following, and was given permission to go onstation to provide free exposure. Don't let it go to your head." + title = JOB_ALT_INFLUENCER + title_blurb = "An " + JOB_ALT_INFLUENCER + " has lucked out with some exonet following, and was given permission to go onstation to provide free exposure. Don't let it go to your head." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/influencer /datum/alt_title/paranormal_investigator - title = "Paranormal Investigator" - title_blurb = "A Paranormal Investigator looks beyond what is accepted by modern science, and searches for the true unknown. Aliens, alternate dimensions, ghosts... The truth is out there!" + title = JOB_ALT_PARANORMAL_INVESTIGATOR + title_blurb = "A " + JOB_ALT_PARANORMAL_INVESTIGATOR + " looks beyond what is accepted by modern science, and searches for the true unknown. Aliens, alternate dimensions, ghosts... The truth is out there!" title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/paranormal_investigator /datum/alt_title/personal_secretary - title = "Personal Secretary" - title_blurb = "A Personal Secretary offers services of general assistance. Although it's doubtful anyone will ever actually need those." + title = JOB_ALT_PERSONAL_SECRETARY + title_blurb = "A " + JOB_ALT_PERSONAL_SECRETARY + " offers services of general assistance. Although it's doubtful anyone will ever actually need those." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_secretary /datum/alt_title/stylist - title = "Stylist" - title_blurb = "A Stylist offers fashion advice, as well as helps with adjusting appearance of the crew to better suit their beauty standards." + title = JOB_ALT_STYLIST + title_blurb = "A " + JOB_ALT_STYLIST + " offers fashion advice, as well as helps with adjusting appearance of the crew to better suit their beauty standards." title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/stylist /datum/alt_title/fisher - title = "Fisher" - title_blurb = "A Fisher is a capable angler, who is good at obtaining large amounts of marine goods. Whether you generously give them to station or attempt to make a quick thaler by selling, it's up to you!" + title = JOB_ALT_FISHER + title_blurb = "A " + JOB_ALT_FISHER + " is a capable angler, who is good at obtaining large amounts of marine goods. Whether you generously give them to station or attempt to make a quick thaler by selling, it's up to you!" title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fisher /datum/alt_title/fortune_teller - title = "Fortune Teller" - title_blurb = "A Fortune Teller peers into the future, and offers these visions to others. Occasionally those visions may even come true!" + title = JOB_ALT_FORTUNE_TELLER + title_blurb = "A " + JOB_ALT_FORTUNE_TELLER + " peers into the future, and offers these visions to others. Occasionally those visions may even come true!" title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fortune_teller /datum/alt_title/spirit_healer - title = "Spirit Healer" - title_blurb = "A Spirit Healer offers alternative forms of medicine. Rituals, magic rocks, seances... It totally works. What's that about placebo?" + title = JOB_ALT_SPIRIT_HEALER + title_blurb = "A " + JOB_ALT_SPIRIT_HEALER + " offers alternative forms of medicine. Rituals, magic rocks, seances... It totally works. What's that about placebo?" title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/spirit_healer diff --git a/code/game/jobs/job/department.dm b/code/game/jobs/job/department.dm index 313b19e07b0..47d6de97ad1 100644 --- a/code/game/jobs/job/department.dm +++ b/code/game/jobs/job/department.dm @@ -77,4 +77,4 @@ short_name = "Centcom" color = "#A52A2A" sorting_order = 20 // Above Command. - centcom_only = TRUE \ No newline at end of file + centcom_only = TRUE diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index cd8729e702c..576739d659b 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -2,16 +2,16 @@ // Chief Engineer ////////////////////////////////// /datum/job/chief_engineer - title = "Chief Engineer" + title = JOB_CHIEF_ENGINEER flag = CHIEF departments_managed = list(DEPARTMENT_ENGINEERING) departments = list(DEPARTMENT_ENGINEERING, DEPARTMENT_COMMAND) sorting_order = 2 department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Site Manager" + supervisors = "the "+ JOB_SITE_MANAGER selection_color = "#7F6E2C" req_admin_notify = 1 economic_modifier = 10 @@ -34,7 +34,7 @@ minimal_player_age = 7 outfit_type = /decl/hierarchy/outfit/job/engineering/chief_engineer - job_description = "The Chief Engineer manages the Engineering Department, ensuring that the Engineers work on what needs to be done, handling distribution \ + job_description = "The " + JOB_CHIEF_ENGINEER + " manages the Engineering Department, ensuring that the Engineers work on what needs to be done, handling distribution \ of manpower as much as they handle hands-on operations and repairs. They are also expected to keep the rest of the station informed of \ any structural threats to the station that may be hazardous to health or disruptive to work." @@ -42,56 +42,56 @@ // Engineer ////////////////////////////////// /datum/job/engineer - title = "Engineer" + title = JOB_ENGINEER flag = ENGINEER departments = list(DEPARTMENT_ENGINEERING) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 5 spawn_positions = 5 - supervisors = "the Chief Engineer" + supervisors = "the "+ JOB_CHIEF_ENGINEER selection_color = "#5B4D20" economic_modifier = 5 access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics) minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction) - alt_titles = list("Maintenance Technician" = /datum/alt_title/maint_tech, - "Engine Technician" = /datum/alt_title/engine_tech, "Electrician" = /datum/alt_title/electrician) + alt_titles = list(JOB_ALT_MAINTENANCE_TECHNICIAN = /datum/alt_title/maint_tech, + JOB_ALT_ENGINE_TECHNICIAN = /datum/alt_title/engine_tech, JOB_ALT_ELECTRICIAN = /datum/alt_title/electrician) minimal_player_age = 3 min_age_by_species = list(SPECIES_PROMETHEAN = 2) outfit_type = /decl/hierarchy/outfit/job/engineering/engineer - job_description = "An Engineer keeps the station running. They repair damages, keep the atmosphere stable, and ensure that power is being \ + job_description = "An " + JOB_ENGINEER + " keeps the station running. They repair damages, keep the atmosphere stable, and ensure that power is being \ generated and distributed. On quiet shifts, they may be called upon to make cosmetic alterations to the station." // Engineer Alt Titles /datum/alt_title/maint_tech - title = "Maintenance Technician" - title_blurb = "A Maintenance Technician is generally a junior Engineer, and can be expected to run the mildly unpleasant or boring tasks that other \ + title = JOB_ALT_MAINTENANCE_TECHNICIAN + title_blurb = "A " + JOB_ALT_MAINTENANCE_TECHNICIAN + " is generally a junior Engineer, and can be expected to run the mildly unpleasant or boring tasks that other \ Engineers don't care to do." /datum/alt_title/engine_tech - title = "Engine Technician" - title_blurb = "An Engine Technician tends to the engine, most commonly a Supermatter crystal. They are expected to be able to keep it stable, and \ + title = JOB_ALT_ENGINE_TECHNICIAN + title_blurb = "An " + JOB_ALT_ENGINE_TECHNICIAN + " tends to the engine, most commonly a Supermatter crystal. They are expected to be able to keep it stable, and \ possibly even run it beyond normal tolerances." /datum/alt_title/electrician - title = "Electrician" - title_blurb = "An Electrician's primary duty is making sure power is properly distributed thoughout the station, utilizing solars, substations, and other \ + title = JOB_ALT_ELECTRICIAN + title_blurb = "An " + JOB_ALT_ELECTRICIAN + "'s primary duty is making sure power is properly distributed thoughout the station, utilizing solars, substations, and other \ methods to ensure every department has power in an emergency." ////////////////////////////////// // Atmos Tech ////////////////////////////////// /datum/job/atmos - title = "Atmospheric Technician" + title = JOB_ATMOSPHERIC_TECHNICIAN flag = ATMOSTECH departments = list(DEPARTMENT_ENGINEERING) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 3 spawn_positions = 2 - supervisors = "the Chief Engineer" + supervisors = "the " + JOB_CHIEF_ENGINEER selection_color = "#5B4D20" economic_modifier = 5 access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_external_airlocks) @@ -101,5 +101,5 @@ min_age_by_species = list(SPECIES_PROMETHEAN = 2) outfit_type = /decl/hierarchy/outfit/job/engineering/atmos - job_description = "An Atmospheric Technician is primarily concerned with keeping the station's atmosphere breathable. They are expected to have a good \ + job_description = "An " + JOB_ATMOSPHERIC_TECHNICIAN + " is primarily concerned with keeping the station's atmosphere breathable. They are expected to have a good \ understanding of the pipes, vents, and scrubbers that move gasses around the station, and to be familiar with proper firefighting procedure." diff --git a/code/game/jobs/job/engineering_vr.dm b/code/game/jobs/job/engineering_vr.dm index 34c93be572b..ed872fd85b8 100644 --- a/code/game/jobs/job/engineering_vr.dm +++ b/code/game/jobs/job/engineering_vr.dm @@ -12,16 +12,16 @@ access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva, access_heads, access_construction, access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload, access_gateway) - alt_titles = list("Head Engineer" = /datum/alt_title/head_engineer, "Foreman" = /datum/alt_title/foreman, "Maintenance Manager" = /datum/alt_title/maintenance_manager) + alt_titles = list(JOB_ALT_HEAD_ENGINEER = /datum/alt_title/head_engineer, JOB_ALT_FOREMAN = /datum/alt_title/foreman, JOB_ALT_MAINTENANCE_MANAGER = /datum/alt_title/maintenance_manager) /datum/alt_title/head_engineer - title = "Head Engineer" + title = JOB_ALT_HEAD_ENGINEER /datum/alt_title/foreman - title = "Foreman" + title = JOB_ALT_FOREMAN /datum/alt_title/maintenance_manager - title = "Maintenance Manager" + title = JOB_ALT_MAINTENANCE_MANAGER /datum/job/chief_engineer/get_request_reasons() return list("Engine setup", "Construction project", "Repairs necessary", "Training crew", "Assembling expedition team") @@ -29,17 +29,17 @@ /datum/job/engineer pto_type = PTO_ENGINEERING - alt_titles = list("Maintenance Technician" = /datum/alt_title/maint_tech, "Engine Technician" = /datum/alt_title/engine_tech, - "Electrician" = /datum/alt_title/electrician, "Construction Engineer" = /datum/alt_title/construction_engi, "Engineering Contractor" = /datum/alt_title/engineering_contractor) + alt_titles = list(JOB_ALT_MAINTENANCE_TECHNICIAN = /datum/alt_title/maint_tech, JOB_ALT_ENGINE_TECHNICIAN = /datum/alt_title/engine_tech, + JOB_ALT_ELECTRICIAN = /datum/alt_title/electrician, JOB_ALT_CONSTRUCTION_ENGINEER = /datum/alt_title/construction_engi, JOB_ALT_ENGINEERING_CONTRACTOR = /datum/alt_title/engineering_contractor) /datum/alt_title/construction_engi - title = "Construction Engineer" - title_blurb = "A Construction Engineer fulfills similar duties to other engineers, but usually occupies spare time with construction of extra facilities in dedicated areas or \ + title = JOB_ALT_CONSTRUCTION_ENGINEER + title_blurb = "A " + JOB_ALT_CONSTRUCTION_ENGINEER + " fulfills similar duties to other engineers, but usually occupies spare time with construction of extra facilities in dedicated areas or \ as additions to station layout." /datum/alt_title/engineering_contractor - title = "Engineering Contractor" - title_blurb = "An Engineering Contractor fulfills similar duties to other engineers, but isn't directly employed by NT proper." + title = JOB_ALT_ENGINEERING_CONTRACTOR + title_blurb = "An " + JOB_ALT_ENGINEERING_CONTRACTOR + " fulfills similar duties to other engineers, but isn't directly employed by NT proper." /datum/job/engineer/get_request_reasons() return list("Engine setup", "Construction project", "Repairs necessary", "Assembling expedition team") @@ -50,21 +50,21 @@ /datum/job/atmos spawn_positions = 3 pto_type = PTO_ENGINEERING - alt_titles = list("Atmospheric Engineer" = /datum/alt_title/atmos_engi, "Atmospheric Maintainer" = /datum/alt_title/atmos_maint, "Disposals Technician" = /datum/alt_title/disposals_tech, - "Fuel Technician" = /datum/alt_title/refuel_tech) + alt_titles = list(JOB_ALT_ATMOSPHERIC_ENGINEER = /datum/alt_title/atmos_engi, JOB_ALT_ATMOSPHERIC_MAINTAINER = /datum/alt_title/atmos_maint, JOB_ALT_DISPOSALS_TECHNICIAN = /datum/alt_title/disposals_tech, + JOB_ALT_FUEL_TECHNICIAN = /datum/alt_title/refuel_tech) /datum/alt_title/atmos_maint - title = "Atmospheric Maintainer" + title = JOB_ALT_ATMOSPHERIC_MAINTAINER /datum/alt_title/atmos_engi - title = "Atmospheric Engineer" + title = JOB_ALT_ATMOSPHERIC_ENGINEER /datum/alt_title/disposals_tech - title = "Disposals Technician" - title_blurb = "A Disposals Technician is an Atmospheric Technician still and can fulfill all the same duties, although specializes more in disposals delivery system's operations and configurations." + title = JOB_ALT_DISPOSALS_TECHNICIAN + title_blurb = "A " + JOB_ALT_DISPOSALS_TECHNICIAN + " is an " + JOB_ATMOSPHERIC_TECHNICIAN + " still and can fulfill all the same duties, although specializes more in disposals delivery system's operations and configurations." /datum/alt_title/refuel_tech - title = "Fuel Technician" + title = JOB_ALT_FUEL_TECHNICIAN /datum/job/atmos/get_request_reasons() return list("Construction project", "Repairs necessary", "Assembling expedition team") diff --git a/code/game/jobs/job/exploration_vr.dm b/code/game/jobs/job/exploration_vr.dm index 6390e6d5b56..c6db8ecd57b 100644 --- a/code/game/jobs/job/exploration_vr.dm +++ b/code/game/jobs/job/exploration_vr.dm @@ -1,6 +1,6 @@ /obj/item/weapon/card/id/medical/sar - assignment = "Field Medic" - rank = "Field Medic" + assignment = JOB_FIELD_MEDIC + rank = JOB_FIELD_MEDIC icon_state = "cyan" primary_color = rgb(47,189,189) secondary_color = rgb(127,223,223) @@ -11,6 +11,7 @@ icon_state = "cyan" primary_color = rgb(47,189,189) secondary_color = rgb(127,223,223) + rank = JOB_EXPLORER /obj/item/weapon/card/id/explorer/head name = "identification card" @@ -18,6 +19,7 @@ icon_state = "cyanGold" primary_color = rgb(47,189,189) secondary_color = rgb(127,223,223) + rank = JOB_PATHFINDER /datum/department/planetside name = DEPARTMENT_PLANET @@ -27,16 +29,16 @@ /datum/job/pathfinder - title = "Pathfinder" + title = JOB_PATHFINDER flag = PATHFINDER departments = list(DEPARTMENT_PLANET) departments_managed = list(DEPARTMENT_PLANET) sorting_order = 1 // above the other explorers department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Head of Personnel" + supervisors = "the " + JOB_HEAD_OF_PERSONNEL selection_color = "#d6d05c" economic_modifier = 8 minimal_player_age = 7 @@ -46,52 +48,52 @@ access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot, access_explorer, access_gateway, access_pathfinder, access_RC_announce) minimal_access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot, access_explorer, access_gateway, access_pathfinder, access_RC_announce) outfit_type = /decl/hierarchy/outfit/job/pathfinder - job_description = "The Pathfinder's job is to lead and manage expeditions, and is the primary authority on all off-station expeditions." - alt_titles = list("Expedition Lead" = /datum/alt_title/expedition_lead, "Exploration Manager" = /datum/alt_title/exploration_manager) + job_description = "The " + JOB_PATHFINDER + "'s job is to lead and manage expeditions, and is the primary authority on all off-station expeditions." + alt_titles = list(JOB_ALT_EXPEDITION_LEAD = /datum/alt_title/expedition_lead, JOB_ALT_EXPLORATION_MANAGER = /datum/alt_title/exploration_manager) /datum/alt_title/expedition_lead - title = "Expedition Lead" + title = JOB_ALT_EXPEDITION_LEAD /datum/alt_title/exploration_manager - title = "Exploration Manager" + title = JOB_ALT_EXPLORATION_MANAGER /datum/job/pathfinder/get_request_reasons() return list("Training crew") /datum/job/explorer - title = "Explorer" + title = JOB_EXPLORER flag = EXPLORER departments = list(DEPARTMENT_PLANET) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 3 spawn_positions = 3 - supervisors = "the Pathfinder and the Head of Personnel" + supervisors = "the " + JOB_PATHFINDER + " and the " + JOB_HEAD_OF_PERSONNEL selection_color = "#999440" economic_modifier = 6 pto_type = PTO_EXPLORATION access = list(access_explorer, access_external_airlocks, access_eva) minimal_access = list(access_explorer, access_external_airlocks, access_eva) outfit_type = /decl/hierarchy/outfit/job/explorer2 - job_description = "An Explorer searches for interesting things, and returns them to the station." - alt_titles = list("Surveyor" = /datum/alt_title/surveyor, "Offsite Scout" = /datum/alt_title/offsite_scout) + job_description = "An " + JOB_EXPLORER + " searches for interesting things, and returns them to the station." + alt_titles = list(JOB_ALT_SURVEYOR = /datum/alt_title/surveyor, JOB_ALT_OFFSITE_SCOUT = /datum/alt_title/offsite_scout) /datum/alt_title/surveyor - title = "Surveyor" + title = JOB_ALT_SURVEYOR /datum/alt_title/offsite_scout - title = "Offsite Scout" + title = JOB_ALT_OFFSITE_SCOUT /datum/job/sar - title = "Field Medic" + title = JOB_FIELD_MEDIC flag = SAR departments = list(DEPARTMENT_PLANET, DEPARTMENT_MEDICAL) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Pathfinder and the Chief Medical Officer" + supervisors = "the " + JOB_PATHFINDER + " and the " + JOB_CHIEF_MEDICAL_OFFICER selection_color = "#999440" economic_modifier = 6 minimal_player_age = 3 @@ -99,11 +101,11 @@ access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_eva, access_maint_tunnels, access_external_airlocks, access_pilot) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_pilot) outfit_type = /decl/hierarchy/outfit/job/medical/sar - job_description = "A Field medic works as the field doctor of expedition teams." - alt_titles = list("Expedition Medic" = /datum/alt_title/expedition_medic, "Offsite Medic" = /datum/alt_title/offsite_medic) + job_description = "A " + JOB_FIELD_MEDIC + " works as the field doctor of expedition teams." + alt_titles = list(JOB_ALT_EXPEDITION_MEDIC = /datum/alt_title/expedition_medic, JOB_ALT_OFFSITE_MEDIC = /datum/alt_title/offsite_medic) /datum/alt_title/expedition_medic - title = "Expedition Medic" + title = JOB_ALT_EXPEDITION_MEDIC /datum/alt_title/offsite_medic - title = "Offsite Medic" + title = JOB_ALT_OFFSITE_MEDIC diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index 269f9dd18da..18bce75303c 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -7,7 +7,7 @@ var/list/access = list() // Useful for servers which either have fewer players, so each person needs to fill more than one role, or servers which like to give more access, so players can't hide forever in their super secure departments (I'm looking at you, chemistry!) var/flag = 0 // Bitflags for the job var/department_flag = 0 - var/faction = "None" // Players will be allowed to spawn in as jobs that are set to "Station" + var/faction = FACTION_NONE // Players will be allowed to spawn in as jobs that are set to FACTION_STATION var/total_positions = 0 // How many players can be this job var/spawn_positions = 0 // How many players can spawn in as this job var/current_positions = 0 // How many players have this job diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index f896bf978f2..9298028eb96 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -2,16 +2,16 @@ // Chief Medical Officer ////////////////////////////////// /datum/job/cmo - title = "Chief Medical Officer" + title = JOB_CHIEF_MEDICAL_OFFICER flag = CMO departments_managed = list(DEPARTMENT_MEDICAL) departments = list(DEPARTMENT_MEDICAL, DEPARTMENT_COMMAND) sorting_order = 2 department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Site Manager" + supervisors = "the " + JOB_SITE_MANAGER selection_color = "#026865" req_admin_notify = 1 economic_modifier = 10 @@ -39,54 +39,54 @@ // Medical Doctor ////////////////////////////////// /datum/job/doctor - title = "Medical Doctor" + title = JOB_MEDICAL_DOCTOR flag = DOCTOR departments = list(DEPARTMENT_MEDICAL) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 5 spawn_positions = 3 - supervisors = "the Chief Medical Officer" + supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER selection_color = "#013D3B" economic_modifier = 7 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_eva) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_virology, access_eva) outfit_type = /decl/hierarchy/outfit/job/medical/doctor - job_description = "A Medical Doctor is a Jack-of-All-Trades Medical title, covering a variety of skill levels and minor specializations. They are likely \ + job_description = "A " + JOB_MEDICAL_DOCTOR + " is a Jack-of-All-Trades Medical title, covering a variety of skill levels and minor specializations. They are likely \ familiar with basic first aid, and a number of accompanying medications, and can generally save, if not cure, a majority of the \ patients they encounter." alt_titles = list( - "Surgeon" = /datum/alt_title/surgeon, - "Emergency Physician" = /datum/alt_title/emergency_physician, - "Nurse" = /datum/alt_title/nurse, - "Virologist" = /datum/alt_title/virologist) + JOB_ALT_SURGEON = /datum/alt_title/surgeon, + JOB_ALT_EMERGENCY_PHYSICIAN = /datum/alt_title/emergency_physician, + JOB_ALT_NURSE = /datum/alt_title/nurse, + JOB_ALT_VIROLOGIST = /datum/alt_title/virologist) min_age_by_species = list(SPECIES_PROMETHEAN = 3) //Medical Doctor Alt Titles /datum/alt_title/surgeon - title = "Surgeon" - title_blurb = "A Surgeon specializes in providing surgical aid to injured patients, up to and including amputation and limb reattachement. They are expected \ + title = JOB_ALT_SURGEON + title_blurb = "A " + JOB_ALT_SURGEON + " specializes in providing surgical aid to injured patients, up to and including amputation and limb reattachement. They are expected \ to know the ins and outs of anesthesia and surgery." title_outfit = /decl/hierarchy/outfit/job/medical/doctor/surgeon /datum/alt_title/emergency_physician - title = "Emergency Physician" - title_blurb = "An Emergency Physician is a Medical professional trained for stabilizing and treating severely injured and/or dying patients. \ + title = JOB_ALT_EMERGENCY_PHYSICIAN + title_blurb = "An " + JOB_ALT_EMERGENCY_PHYSICIAN + " is a Medical professional trained for stabilizing and treating severely injured and/or dying patients. \ They are generally the first response for any such individual brought to the Medbay, and can sometimes be expected to help their patients \ make a full recovery." title_outfit = /decl/hierarchy/outfit/job/medical/doctor/emergency_physician /datum/alt_title/nurse - title = "Nurse" - title_blurb = "A Nurse acts as a general purpose Doctor's Aide, providing basic care to non-critical patients, and stabilizing critical patients during \ - busy periods. They frequently watch the suit sensors console, to help manage the time of other Doctors. In rare occasions, a Nurse can be \ + title = JOB_ALT_NURSE + title_blurb = "A " + JOB_ALT_NURSE + " acts as a general purpose Doctor's Aide, providing basic care to non-critical patients, and stabilizing critical patients during \ + busy periods. They frequently watch the suit sensors console, to help manage the time of other Doctors. In rare occasions, a " + JOB_ALT_NURSE + " can be \ called upon to revive deceased crew members." title_outfit = /decl/hierarchy/outfit/job/medical/doctor/nurse /datum/alt_title/virologist - title = "Virologist" - title_blurb = "A Virologist cures active diseases in the crew, and prepares antibodies for possible infections. They also have the skills \ + title = JOB_ALT_VIROLOGIST + title_blurb = "A " + JOB_ALT_VIROLOGIST + " cures active diseases in the crew, and prepares antibodies for possible infections. They also have the skills \ to produce the various types of virus foods or mutagens." title_outfit = /decl/hierarchy/outfit/job/medical/doctor/virologist @@ -95,14 +95,14 @@ // Chemist ////////////////////////////////// /datum/job/chemist - title = "Chemist" + title = JOB_CHEMIST flag = CHEMIST departments = list(DEPARTMENT_MEDICAL) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Chief Medical Officer" + supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER selection_color = "#013D3B" economic_modifier = 5 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) @@ -111,35 +111,35 @@ min_age_by_species = list(SPECIES_PROMETHEAN = 3) outfit_type = /decl/hierarchy/outfit/job/medical/chemist - job_description = "A Chemist produces and maintains a stock of basic to advanced chemicals for medical and occasionally research use. \ + job_description = "A " + JOB_CHEMIST + " produces and maintains a stock of basic to advanced chemicals for medical and occasionally research use. \ They are likely to know the use and dangers of many lab-produced chemicals." - alt_titles = list("Pharmacist" = /datum/alt_title/pharmacist) + alt_titles = list(JOB_ALT_PHARMACIST = /datum/alt_title/pharmacist) // Chemist Alt Titles /datum/alt_title/pharmacist - title = "Pharmacist" - title_blurb = "A Pharmacist focuses on the chemical needs of the Medical Department, and often offers to fill crew prescriptions at their discretion." + title = JOB_ALT_PHARMACIST + title_blurb = "A " + JOB_ALT_PHARMACIST + " focuses on the chemical needs of the Medical Department, and often offers to fill crew prescriptions at their discretion." /* I'm commenting out Geneticist so you can't actually see it in the job menu, given that you can't play as one - Jon. ////////////////////////////////// // Geneticist ////////////////////////////////// /datum/job/geneticist - title = "Geneticist" + title = JOB_GENETICIST flag = GENETICIST departments = list(DEPARTMENT_MEDICAL, DEPARTMENT_RESEARCH) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 0 spawn_positions = 0 - supervisors = "the Chief Medical Officer and Research Director" + supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER + " and " + JOB_RESEARCH_DIRECTOR selection_color = "#013D3B" economic_modifier = 7 access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_research) minimal_access = list(access_medical, access_morgue, access_genetics, access_research) outfit_type = /decl/hierarchy/outfit/job/medical/geneticist - job_description = "A Geneticist operates genetic manipulation equipment to repair any genetic defects encountered in crew, from cloning or radiation as examples. \ + job_description = "A " + JOB_GENETICIST + " operates genetic manipulation equipment to repair any genetic defects encountered in crew, from cloning or radiation as examples. \ When required, geneticists have the skills to clone, and are the superior choice when available for doing so." */ @@ -147,28 +147,28 @@ // Psychiatrist ////////////////////////////////// /datum/job/psychiatrist - title = "Psychiatrist" + title = JOB_PSYCHIATRIST flag = PSYCHIATRIST departments = list(DEPARTMENT_MEDICAL) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 economic_modifier = 5 - supervisors = "the Chief Medical Officer" + supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER selection_color = "#013D3B" access = list(access_medical, access_medical_equip, access_morgue, access_psychiatrist) minimal_access = list(access_medical, access_medical_equip, access_psychiatrist) outfit_type = /decl/hierarchy/outfit/job/medical/psychiatrist - job_description = "A Psychiatrist provides mental health services to crew members in need. They may also be called upon to determine whatever \ + job_description = "A " + JOB_PSYCHIATRIST + " provides mental health services to crew members in need. They may also be called upon to determine whatever \ ails the mentally unwell, frequently under Security supervision. They understand the effects of various psychoactive drugs." - alt_titles = list("Psychologist" = /datum/alt_title/psychologist) + alt_titles = list(JOB_ALT_PSYCHOLOGIST = /datum/alt_title/psychologist) banned_job_species = list(SPECIES_PROMETHEAN, SPECIES_DIONA) //Psychiatrist Alt Titles /datum/alt_title/psychologist - title = "Psychologist" - title_blurb = "A Psychologist provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \ + title = JOB_ALT_PSYCHOLOGIST + title_blurb = "A " + JOB_ALT_PSYCHOLOGIST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \ called upon to determine whatever ails the mentally unwell, frequently under Security supervision." title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist @@ -176,29 +176,29 @@ // Paramedic ////////////////////////////////// /datum/job/paramedic - title = "Paramedic" + title = JOB_PARAMEDIC flag = PARAMEDIC departments = list(DEPARTMENT_MEDICAL) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Chief Medical Officer" + supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER selection_color = "#013D3B" economic_modifier = 4 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_eva, access_maint_tunnels, access_external_airlocks, access_psychiatrist) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_eva, access_maint_tunnels, access_external_airlocks) outfit_type = /decl/hierarchy/outfit/job/medical/paramedic - job_description = "A Paramedic is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their own. \ + job_description = "A " + JOB_PARAMEDIC + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their own. \ They may also be called upon to keep patients stable when Medical is busy or understaffed." - alt_titles = list("Emergency Medical Technician" = /datum/alt_title/emt) + alt_titles = list(JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN = /datum/alt_title/emt) banned_job_species = list(SPECIES_DIONA) min_age_by_species = list(SPECIES_PROMETHEAN = 2) // Paramedic Alt Titles /datum/alt_title/emt - title = "Emergency Medical Technician" - title_blurb = "An Emergency Medical Technician is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \ + title = JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN + title_blurb = "An " + JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \ own. They are capable of keeping a patient stabilized until they reach the hands of someone with more training." - title_outfit = /decl/hierarchy/outfit/job/medical/paramedic/emt \ No newline at end of file + title_outfit = /decl/hierarchy/outfit/job/medical/paramedic/emt diff --git a/code/game/jobs/job/medical_vr.dm b/code/game/jobs/job/medical_vr.dm index 8999d2d0514..9d08fdfcf29 100644 --- a/code/game/jobs/job/medical_vr.dm +++ b/code/game/jobs/job/medical_vr.dm @@ -10,16 +10,16 @@ minimal_access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads, access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce, access_keycard_auth, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels, access_gateway) - alt_titles = list("Chief Physician" = /datum/alt_title/chief_physician, "Medical Director" = /datum/alt_title/medical_director, "Healthcare Manager" = /datum/alt_title/healthcare_manager) + alt_titles = list(JOB_ALT_CHIEF_PHYSICIAN = /datum/alt_title/chief_physician, JOB_ALT_MEDICAL_DIRECTOR = /datum/alt_title/medical_director, JOB_ALT_HEALTHCARE_MANAGER = /datum/alt_title/healthcare_manager) /datum/alt_title/chief_physician - title = "Chief Physician" + title = JOB_ALT_CHIEF_PHYSICIAN /datum/alt_title/medical_director - title = "Medical Director" + title = JOB_ALT_MEDICAL_DIRECTOR /datum/alt_title/healthcare_manager - title = "Healthcare Manager" + title = JOB_ALT_HEALTHCARE_MANAGER /datum/job/cmo/get_request_reasons() return list("Surgery pending", "Viral outbreak", "Training crew", "Assembling expedition team") @@ -28,25 +28,25 @@ /datum/job/doctor spawn_positions = 5 pto_type = PTO_MEDICAL - alt_titles = list("Physician" = /datum/alt_title/physician, "Medical Practitioner" = /datum/alt_title/medical_practitioner, "Surgeon" = /datum/alt_title/surgeon, - "Emergency Physician" = /datum/alt_title/emergency_physician, "Nurse" = /datum/alt_title/nurse, "Orderly" = /datum/alt_title/orderly, - "Virologist" = /datum/alt_title/virologist, "Medical Contractor" = /datum/alt_title/medical_contractor) + alt_titles = list(JOB_ALT_PHYSICIAN = /datum/alt_title/physician, JOB_ALT_MEDICAL_PRACTITIONER = /datum/alt_title/medical_practitioner, JOB_ALT_SURGEON = /datum/alt_title/surgeon, + JOB_ALT_EMERGENCY_PHYSICIAN = /datum/alt_title/emergency_physician, JOB_ALT_NURSE = /datum/alt_title/nurse, JOB_ALT_ORDERLY = /datum/alt_title/orderly, + JOB_ALT_VIROLOGIST = /datum/alt_title/virologist, JOB_ALT_MEDICAL_CONTRACTOR = /datum/alt_title/medical_contractor) /datum/alt_title/physician - title = "Physician" + title = JOB_ALT_PHYSICIAN /datum/alt_title/medical_practitioner - title = "Medical Practitioner" + title = JOB_ALT_MEDICAL_PRACTITIONER /datum/alt_title/orderly - title = "Orderly" - title_blurb = "An Orderly acts as Medbay's general helping hand, assisting any doctor that might need some form of help, as well as handling manual \ + title = JOB_ALT_ORDERLY + title_blurb = "An " + JOB_ALT_ORDERLY + " acts as Medbay's general helping hand, assisting any doctor that might need some form of help, as well as handling manual \ and dirty labor around the department." title_outfit = /decl/hierarchy/outfit/job/medical/doctor/nurse /datum/alt_title/medical_contractor - title = "Medical Contractor" - title_blurb = "A Medical Contractor can be anything from a full-blown doctor to the likes of a nurse or orderly, but isn't directly employed by NT proper." + title = JOB_ALT_MEDICAL_CONTRACTOR + title_blurb = "A " + JOB_ALT_MEDICAL_CONTRACTOR + " can be anything from a full-blown doctor to the likes of a nurse or orderly, but isn't directly employed by NT proper." /datum/job/doctor/get_request_reasons() return list("Surgery pending", "Viral outbreak", "Assembling expedition team") @@ -54,44 +54,44 @@ /datum/job/chemist pto_type = PTO_MEDICAL - alt_titles = list("Pharmacist" = /datum/alt_title/pharmacist, "Pharmacologist" = /datum/alt_title/pharmacologist) + alt_titles = list(JOB_ALT_PHARMACIST = /datum/alt_title/pharmacist, JOB_ALT_PHARMACOLOGIST = /datum/alt_title/pharmacologist) /datum/alt_title/pharmacologist - title = "Pharmacologist" - title_blurb = "A Pharmacologist focuses on the chemical needs of the Medical Department, primarily specializing in producing more advanced forms of medicine." + title = JOB_ALT_PHARMACOLOGIST + title_blurb = "A " + JOB_ALT_PHARMACOLOGIST + " focuses on the chemical needs of the Medical Department, primarily specializing in producing more advanced forms of medicine." /datum/job/psychiatrist pto_type = PTO_MEDICAL - alt_titles = list("Psychologist" = /datum/alt_title/psychologist, "Psychoanalyst" = /datum/alt_title/psychoanalyst, "Psychotherapist" = /datum/alt_title/psychotherapist) + alt_titles = list(JOB_ALT_PSYCHOLOGIST = /datum/alt_title/psychologist, JOB_ALT_PSYCHOANALYST = /datum/alt_title/psychoanalyst, JOB_ALT_PSYCHOTHERAPIST = /datum/alt_title/psychotherapist) /datum/alt_title/psychoanalyst - title = "Psychoanalyst" - title_blurb = "A Psychoanalyst provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \ + title = JOB_ALT_PSYCHOANALYST + title_blurb = "A " + JOB_ALT_PSYCHOANALYST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \ called upon to determine whatever ails the mentally unwell, frequently under Security supervision." title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist /datum/alt_title/psychotherapist - title = "Psychotherapist" - title_blurb = "A Psychotherapist provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \ + title = JOB_ALT_PSYCHOTHERAPIST + title_blurb = "A " + JOB_ALT_PSYCHOTHERAPIST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \ called upon to determine whatever ails the mentally unwell, frequently under Security supervision." title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist /datum/job/paramedic pto_type = PTO_MEDICAL - alt_titles = list("Emergency Medical Technician" = /datum/alt_title/emt, "Medical Responder" = /datum/alt_title/medical_responder, "Search and Rescue" = /datum/alt_title/sar) + alt_titles = list(JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN = /datum/alt_title/emt, JOB_ALT_MEDICAL_RESPONDER = /datum/alt_title/medical_responder, JOB_ALT_SEARCH_AND_RESCUE = /datum/alt_title/sar) total_positions = 3 spawn_positions = 3 /datum/alt_title/medical_responder - title = "Medical Responder" - title_blurb = "A Medical Responder is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \ + title = JOB_ALT_MEDICAL_RESPONDER + title_blurb = "A " + JOB_ALT_MEDICAL_RESPONDER + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \ own. They are capable of keeping a patient stabilized until they reach the hands of someone with more training." title_outfit = /decl/hierarchy/outfit/job/medical/paramedic/emt /datum/alt_title/sar - title = "Search and Rescue" + title = JOB_ALT_SEARCH_AND_RESCUE /datum/job/paramedic/get_request_reasons() return list("Assembling expedition team") diff --git a/code/game/jobs/job/offduty_vr.dm b/code/game/jobs/job/offduty_vr.dm index 665c6f46a00..951869d5b0c 100644 --- a/code/game/jobs/job/offduty_vr.dm +++ b/code/game/jobs/job/offduty_vr.dm @@ -3,11 +3,11 @@ // /datum/job/offduty_civilian - title = "Off-duty Worker" + title = JOB_OFFDUTY_WORKER latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#9b633e" @@ -19,11 +19,11 @@ economic_modifier = 2 /datum/job/offduty_cargo - title = "Off-duty Cargo" + title = JOB_OFFDUTY_CARGO latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#9b633e" @@ -35,11 +35,11 @@ economic_modifier = 2 /datum/job/offduty_engineering - title = "Off-duty Engineer" + title = JOB_OFFDUTY_ENGINEER latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#5B4D20" @@ -51,11 +51,11 @@ economic_modifier = 5 /datum/job/offduty_medical - title = "Off-duty Medic" + title = JOB_OFFDUTY_MEDIC latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#013D3B" @@ -67,11 +67,11 @@ economic_modifier = 5 /datum/job/offduty_science - title = "Off-duty Scientist" + title = JOB_OFFDUTY_SCIENTIST latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#633D63" @@ -83,11 +83,11 @@ economic_modifier = 5 /datum/job/offduty_security - title = "Off-duty Officer" + title = JOB_OFFDUTY_OFFICER latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#601C1C" @@ -99,11 +99,11 @@ economic_modifier = 4 /datum/job/offduty_exploration - title = "Off-duty Explorer" + title = JOB_OFFDUTY_EXPLORER latejoin_only = TRUE timeoff_factor = -1 total_positions = -1 - faction = "Station" + faction = FACTION_STATION departments = list(DEPARTMENT_OFFDUTY) supervisors = "nobody! Enjoy your time off" selection_color = "#999440" diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 240b985967c..c67dbe59ad3 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -2,16 +2,16 @@ // Research Director ////////////////////////////////// /datum/job/rd - title = "Research Director" + title = JOB_RESEARCH_DIRECTOR flag = RD departments_managed = list(DEPARTMENT_RESEARCH) departments = list(DEPARTMENT_RESEARCH, DEPARTMENT_COMMAND) sorting_order = 2 department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Site Manager" + supervisors = "the " + JOB_SITE_MANAGER selection_color = "#AD6BAD" req_admin_notify = 1 economic_modifier = 15 @@ -32,29 +32,29 @@ banned_job_species = list(SPECIES_TESHARI, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital") outfit_type = /decl/hierarchy/outfit/job/science/rd - job_description = "The Research Director manages and maintains the Research department. They are required to ensure the safety of the entire crew, \ + job_description = "The " + JOB_RESEARCH_DIRECTOR + " manages and maintains the Research department. They are required to ensure the safety of the entire crew, \ at least with regards to anything occurring in the Research department, and to inform the crew of any disruptions that \ - might originate from Research. The Research Director often has at least passing knowledge of most of the Research department, but \ + might originate from Research. The " + JOB_RESEARCH_DIRECTOR + " often has at least passing knowledge of most of the Research department, but \ are encouraged to allow their staff to perform their own duties." - alt_titles = list("Research Supervisor" = /datum/alt_title/research_supervisor) + alt_titles = list(JOB_ALT_RESEARCH_SUPERVISOR = /datum/alt_title/research_supervisor) -// Research Director Alt Titles +// " + JOB_RESEARCH_DIRECTOR + " Alt Titles /datum/alt_title/research_supervisor - title = "Research Supervisor" + title = JOB_ALT_RESEARCH_SUPERVISOR ////////////////////////////////// // Scientist ////////////////////////////////// /datum/job/scientist - title = "Scientist" + title = JOB_SCIENTIST flag = SCIENTIST departments = list(DEPARTMENT_RESEARCH) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 5 spawn_positions = 3 - supervisors = "the Research Director" + supervisors = "the " + JOB_RESEARCH_DIRECTOR selection_color = "#633D63" economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch) @@ -65,41 +65,41 @@ minimal_player_age = 14 outfit_type = /decl/hierarchy/outfit/job/science/scientist - job_description = "A Scientist is a generalist working in the Research department, with general knowledge of the scientific process, as well as \ + job_description = "A " + JOB_SCIENTIST + " is a generalist working in the Research department, with general knowledge of the scientific process, as well as \ the principles and requirements of Research and Development. They may also formulate experiments of their own devising, if \ they find an appropriate topic." - alt_titles = list("Xenoarchaeologist" = /datum/alt_title/xenoarch, "Anomalist" = /datum/alt_title/anomalist, \ - "Phoron Researcher" = /datum/alt_title/phoron_research) + alt_titles = list(JOB_ALT_XENOARCHAEOLOGIST = /datum/alt_title/xenoarch, JOB_ALT_ANOMALIST = /datum/alt_title/anomalist, \ + JOB_ALT_PHORON_RESEARCHER = /datum/alt_title/phoron_research) // Scientist Alt Titles /datum/alt_title/xenoarch - title = "Xenoarchaeologist" - title_blurb = "A Xenoarchaeologist enters digsites in search of artifacts of alien origin. These digsites are frequently in vacuum or other inhospitable \ - locations, and as such a Xenoarchaeologist should be prepared to handle hostile evironmental conditions." + title = JOB_ALT_XENOARCHAEOLOGIST + title_blurb = "A " + JOB_ALT_XENOARCHAEOLOGIST + " enters digsites in search of artifacts of alien origin. These digsites are frequently in vacuum or other inhospitable \ + locations, and as such a " + JOB_ALT_XENOARCHAEOLOGIST + " should be prepared to handle hostile evironmental conditions." /datum/alt_title/anomalist - title = "Anomalist" - title_blurb = "An Anomalist is a Scientist whose expertise is analyzing alien artifacts. They are familar with the most common methods of testing artifact \ - function. They work closely with Xenoarchaeologists, or Miners, if either role is present." + title = JOB_ALT_ANOMALIST + title_blurb = "An " + JOB_ALT_ANOMALIST + " is a " + JOB_SCIENTIST + " whose expertise is analyzing alien artifacts. They are familar with the most common methods of testing artifact \ + function. They work closely with " + JOB_ALT_XENOARCHAEOLOGIST + "s, or Miners, if either role is present." /datum/alt_title/phoron_research - title = "Phoron Researcher" - title_blurb = "A Phoron Researcher is a specialist in the practical applications of phoron, and has knowledge of its practical uses and dangers. \ - Many Phoron Researchers are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \ + title = JOB_ALT_PHORON_RESEARCHER + title_blurb = "A " + JOB_ALT_PHORON_RESEARCHER + " is a specialist in the practical applications of phoron, and has knowledge of its practical uses and dangers. \ + Many " + JOB_ALT_PHORON_RESEARCHER + "s are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \ of working with the substance in that state." ////////////////////////////////// // Xenobiologist ////////////////////////////////// /datum/job/xenobiologist - title = "Xenobiologist" + title = JOB_XENOBIOLOGIST flag = XENOBIOLOGIST departments = list(DEPARTMENT_RESEARCH) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 3 spawn_positions = 2 - supervisors = "the Research Director" + supervisors = "the " + JOB_RESEARCH_DIRECTOR selection_color = "#633D63" economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_hydroponics) @@ -110,15 +110,15 @@ min_age_by_species = list(SPECIES_PROMETHEAN = 2) outfit_type = /decl/hierarchy/outfit/job/science/xenobiologist - job_description = "A Xenobiologist studies esoteric lifeforms, usually in the relative safety of their lab. They attempt to find ways to benefit \ + job_description = "A " + JOB_XENOBIOLOGIST + " studies esoteric lifeforms, usually in the relative safety of their lab. They attempt to find ways to benefit \ from the byproducts of these lifeforms, and their main subject at present is the Giant Slime." /*VR edit start - alt_titles = list("Xenobotanist" = /datum/alt_title/xenobot) + alt_titles = list(JOB_XENOBOTANIST = /datum/alt_title/xenobot) Xenibiologist Alt Titles /datum/alt_title/xenobot - title = "Xenobotanist" - title_blurb = "A Xenobotanist grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \ + title = JOB_XENOBOTANIST + title_blurb = "A " + JOB_XENOBOTANIST + " grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \ is both safe and beneficial to the station, they may choose to introduce it to the rest of the crew." VR edit end*/ @@ -126,14 +126,14 @@ VR edit end*/ // Roboticist ////////////////////////////////// /datum/job/roboticist - title = "Roboticist" + title = JOB_ROBOTICIST flag = ROBOTICIST departments = list(DEPARTMENT_RESEARCH) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Research Director" + supervisors = "the " + JOB_RESEARCH_DIRECTOR selection_color = "#633D63" economic_modifier = 5 access = list(access_robotics, access_tox, access_tox_storage, access_tech_storage, access_morgue, access_research) //As a job that handles so many corpses, it makes sense for them to have morgue access. @@ -143,17 +143,17 @@ VR edit end*/ banned_job_species = list("digital") outfit_type = /decl/hierarchy/outfit/job/science/roboticist - job_description = "A Roboticist maintains and repairs the station's synthetics, including crew with prosthetic limbs. \ + job_description = "A " + JOB_ROBOTICIST + " maintains and repairs the station's synthetics, including crew with prosthetic limbs. \ They can also assist the station by producing simple robots and even pilotable exosuits." - alt_titles = list("Biomechanical Engineer" = /datum/alt_title/biomech, "Mechatronic Engineer" = /datum/alt_title/mech_tech) + alt_titles = list(JOB_ALT_BIOMECHANICAL_ENGINEER = /datum/alt_title/biomech, JOB_ALT_MECHATRONIC_ENGINEER = /datum/alt_title/mech_tech) // Roboticist Alt Titles /datum/alt_title/biomech - title = "Biomechanical Engineer" - title_blurb = "A Biomechanical Engineer primarily works on prosthetics, and the organic parts attached to them. They may have some \ + title = JOB_ALT_BIOMECHANICAL_ENGINEER + title_blurb = "A " + JOB_ALT_BIOMECHANICAL_ENGINEER + " primarily works on prosthetics, and the organic parts attached to them. They may have some \ knowledge of the relatively simple surgical procedures used in making cyborgs and attaching prosthesis." /datum/alt_title/mech_tech - title = "Mechatronic Engineer" - title_blurb = "A Mechatronic Engineer focuses on the construction and maintenance of Exosuits, and should be well versed in their use. \ + title = JOB_ALT_MECHATRONIC_ENGINEER + title_blurb = "A " + JOB_ALT_MECHATRONIC_ENGINEER + " focuses on the construction and maintenance of Exosuits, and should be well versed in their use. \ They may also be called upon to work on synthetics and prosthetics, if needed." diff --git a/code/game/jobs/job/science_vr.dm b/code/game/jobs/job/science_vr.dm index 23ba19d4194..bb5285e16ef 100644 --- a/code/game/jobs/job/science_vr.dm +++ b/code/game/jobs/job/science_vr.dm @@ -11,17 +11,17 @@ access_tox_storage, access_teleporter, access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage, access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch, access_eva, access_network, access_xenobotany) - alt_titles = list("Research Supervisor" = /datum/alt_title/research_supervisor, "Research Manager" = /datum/alt_title/research_manager, - "Head of Development" = /datum/alt_title/head_of_development,"Head Scientist" = /datum/alt_title/head_scientist) + alt_titles = list(JOB_ALT_RESEARCH_SUPERVISOR = /datum/alt_title/research_supervisor, JOB_ALT_RESEARCH_MANAGER = /datum/alt_title/research_manager, + JOB_ALT_HEAD_OF_DEVELOPMENT = /datum/alt_title/head_of_development,JOB_ALT_HEAD_SCIENTIST = /datum/alt_title/head_scientist) /datum/alt_title/research_manager - title = "Research Manager" + title = JOB_ALT_RESEARCH_MANAGER /datum/alt_title/head_of_development - title = "Head of Development" + title = JOB_ALT_HEAD_OF_DEVELOPMENT /datum/alt_title/head_scientist - title = "Head Scientist" + title = JOB_ALT_HEAD_SCIENTIST /datum/job/rd/get_request_reasons() return list("Repairs needed", "Training crew", "Assembling expedition team") @@ -30,41 +30,41 @@ /datum/job/scientist spawn_positions = 5 pto_type = PTO_SCIENCE - alt_titles = list("Researcher" = /datum/alt_title/researcher, "Lab Assistant" = /datum/alt_title/lab_assistant, "Xenoarchaeologist" = /datum/alt_title/xenoarch, - "Xenopaleontologist" = /datum/alt_title/xenopaleontologist, "Anomalist" = /datum/alt_title/anomalist, "Phoron Researcher" = /datum/alt_title/phoron_research, - "Gas Physicist" = /datum/alt_title/gas_physicist, "Circuit Designer" = /datum/alt_title/circuit_designer, "Circuit Programmer" = /datum/alt_title/circuit_programmer) + alt_titles = list(JOB_ALT_RESEARCHER = /datum/alt_title/researcher, JOB_ALT_LAB_ASSISTANT = /datum/alt_title/lab_assistant, JOB_ALT_XENOARCHAEOLOGIST = /datum/alt_title/xenoarch, + JOB_ALT_XENOPALEONTOLOGIST = /datum/alt_title/xenopaleontologist, JOB_ALT_ANOMALIST = /datum/alt_title/anomalist, JOB_ALT_PHORON_RESEARCHER = /datum/alt_title/phoron_research, + JOB_ALT_GAS_PHYSICIST = /datum/alt_title/gas_physicist, JOB_ALT_CIRCUIT_DESIGNER = /datum/alt_title/circuit_designer, JOB_ALT_CIRCUIT_PROGRAMMER = /datum/alt_title/circuit_programmer) access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch, access_xenobotany) minimal_access = list(access_tox, access_tox_storage, access_research, access_xenoarch) // Unchanged (for now?), mostly here for reference /datum/alt_title/researcher - title = "Researcher" + title = JOB_ALT_RESEARCHER /datum/alt_title/lab_assistant - title = "Lab Assistant" - title_blurb = "A Lab Assistant is a lower-level member of research staff, whose main purpose is to help scientists with their specialized work in more menial fashion, while also \ + title = JOB_ALT_LAB_ASSISTANT + title_blurb = "A " + JOB_ALT_LAB_ASSISTANT + " is a lower-level member of research staff, whose main purpose is to help scientists with their specialized work in more menial fashion, while also \ learning the specializations in process." /datum/alt_title/xenopaleontologist - title = "Xenopaleontologist" - title_blurb = "A Xenopaleontologist enters digsites in search of fossils and other ancient remants of alien life. These digsites are frequently in vacuum or other inhospitable \ - locations, and as such a Xenopaleontologist should be prepared to handle hostile evironmental conditions." + title = JOB_ALT_XENOPALEONTOLOGIST + title_blurb = "A " + JOB_ALT_XENOPALEONTOLOGIST + " enters digsites in search of fossils and other ancient remants of alien life. These digsites are frequently in vacuum or other inhospitable \ + locations, and as such a " + JOB_ALT_XENOPALEONTOLOGIST + " should be prepared to handle hostile evironmental conditions." /datum/alt_title/gas_physicist - title = "Gas Physicist" - title_blurb = "A Gas Physicist is a specialist in various practical applications of gasses, but currently focuses their attention on phoron, and has knowledge of its practical uses and dangers. \ - Many Gas Physicists are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \ + title = JOB_ALT_GAS_PHYSICIST + title_blurb = "A " + JOB_ALT_GAS_PHYSICIST + " is a specialist in various practical applications of gasses, but currently focuses their attention on phoron, and has knowledge of its practical uses and dangers. \ + Many " + JOB_ALT_GAS_PHYSICIST + "s are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \ of working with the substance in that state." /datum/alt_title/circuit_designer - title = "Circuit Designer" - title_blurb = "A Circuit Designer is a Scientist whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \ + title = JOB_ALT_CIRCUIT_DESIGNER + title_blurb = "A " + JOB_ALT_CIRCUIT_DESIGNER + " is a " + JOB_SCIENTIST + " whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \ They work to create various useful devices using the capabilities of integrated circuitry." /datum/alt_title/circuit_programmer - title = "Circuit Programmer" - title_blurb = "A Circuit Programmer is a Scientist whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \ + title = JOB_ALT_CIRCUIT_PROGRAMMER + title_blurb = "A " + JOB_ALT_CIRCUIT_PROGRAMMER + " is a " + JOB_SCIENTIST + " whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \ They work to create various useful devices using the capabilities of integrated circuitry." /datum/job/scientist/get_request_reasons() @@ -73,23 +73,23 @@ /datum/job/xenobiologist spawn_positions = 3 pto_type = PTO_SCIENCE - alt_titles = list("Xenozoologist" = /datum/alt_title/xenozoologist, "Xenoanthropologist" = /datum/alt_title/xenoanthropologist) + alt_titles = list(JOB_ALT_XENOZOOLOGIST = /datum/alt_title/xenozoologist, JOB_ALT_XENOANTHROPOLOGIST = /datum/alt_title/xenoanthropologist) /datum/alt_title/xenozoologist - title = "Xenozoologist" + title = JOB_ALT_XENOZOOLOGIST /datum/alt_title/xenoanthropologist - title = "Xenoanthropologist" - title_blurb = "Xenoanthropologist still heavily focuses their study on alien lifeforms, but their specialty leans more towards fellow sapient beings than simple animals." + title = JOB_ALT_XENOANTHROPOLOGIST + title_blurb = JOB_ALT_XENOANTHROPOLOGIST + " still heavily focuses their study on alien lifeforms, but their specialty leans more towards fellow sapient beings than simple animals." /datum/job/roboticist total_positions = 3 pto_type = PTO_SCIENCE - alt_titles = list("Assembly Technician" = /datum/alt_title/assembly_tech, "Biomechanical Engineer" = /datum/alt_title/biomech, "Mechatronic Engineer" = /datum/alt_title/mech_tech) + alt_titles = list(JOB_ALT_ASSEMBLY_TECHNICIAN = /datum/alt_title/assembly_tech, JOB_ALT_BIOMECHANICAL_ENGINEER = /datum/alt_title/biomech, JOB_ALT_MECHATRONIC_ENGINEER = /datum/alt_title/mech_tech) /datum/alt_title/assembly_tech - title = "Assembly Technician" + title = JOB_ALT_ASSEMBLY_TECHNICIAN /datum/job/roboticist/get_request_reasons() return list("Repairs needed") @@ -98,14 +98,14 @@ // Xenobotanist ////////////////////////////////// /datum/job/xenobotanist - title = "Xenobotanist" + title = JOB_XENOBOTANIST flag = XENOBOTANIST departments = list(DEPARTMENT_RESEARCH) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Research Director" + supervisors = "the " + JOB_RESEARCH_DIRECTOR selection_color = "#633D63" economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobotany, access_hydroponics) @@ -115,12 +115,12 @@ minimal_player_age = 14 outfit_type = /decl/hierarchy/outfit/job/science/xenobiologist - job_description = "A Xenobotanist grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \ + job_description = "A " + JOB_XENOBOTANIST + " grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \ are both safe and beneficial to the station, they may choose to introduce it to the rest of the crew." - alt_titles = list("Xenohydroponicist" = /datum/alt_title/xenohydroponicist, "Xenoflorist" = /datum/alt_title/xenoflorist) + alt_titles = list(JOB_ALT_XENOHYDROPONICIST = /datum/alt_title/xenohydroponicist, JOB_ALT_XENOFLORIST = /datum/alt_title/xenoflorist) /datum/alt_title/xenoflorist - title = "Xenoflorist" + title = JOB_ALT_XENOFLORIST /datum/alt_title/xenohydroponicist - title = "Xenohydroponicist" + title = JOB_ALT_XENOHYDROPONICIST diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 2f6b4ee655b..372d459e620 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -2,16 +2,16 @@ // Head of Security ////////////////////////////////// /datum/job/hos - title = "Head of Security" + title = JOB_HEAD_OF_SECURITY flag = HOS departments_managed = list(DEPARTMENT_SECURITY) departments = list(DEPARTMENT_SECURITY, DEPARTMENT_COMMAND) sorting_order = 2 department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Site Manager" + supervisors = "the " + JOB_SITE_MANAGER selection_color = "#8E2929" req_admin_notify = 1 economic_modifier = 10 @@ -31,32 +31,32 @@ banned_job_species = list(SPECIES_TESHARI, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital", SPECIES_UNATHI, "mechanical") outfit_type = /decl/hierarchy/outfit/job/security/hos - job_description = " The Head of Security manages the Security Department, keeping the station safe and making sure the rules are followed. They are expected to \ + job_description = " The " + JOB_HEAD_OF_SECURITY + " manages the Security Department, keeping the station safe and making sure the rules are followed. They are expected to \ keep the other Department Heads, and the rest of the crew, aware of developing situations that may be a threat. If necessary, the HoS may \ perform the duties of absent Security roles, such as distributing gear from the Armory." - alt_titles = list("Security Commander" = /datum/alt_title/sec_commander, "Chief of Security" = /datum/alt_title/sec_chief) + alt_titles = list(JOB_ALT_SECURITY_COMMANDER = /datum/alt_title/sec_commander, JOB_ALT_CHIEF_OF_SECURITY = /datum/alt_title/sec_chief) // Head of Security Alt Titles /datum/alt_title/sec_commander - title = "Security Commander" + title = JOB_ALT_SECURITY_COMMANDER /datum/alt_title/sec_chief - title = "Chief of Security" + title = JOB_ALT_CHIEF_OF_SECURITY ////////////////////////////////// // Warden ////////////////////////////////// /datum/job/warden - title = "Warden" + title = JOB_WARDEN flag = WARDEN departments = list(DEPARTMENT_SECURITY) sorting_order = 1 department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the Head of Security" + supervisors = "the " + JOB_HEAD_OF_SECURITY selection_color = "#601C1C" economic_modifier = 5 access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_morgue, access_external_airlocks) @@ -65,23 +65,23 @@ banned_job_species = list(SPECIES_ZADDAT, SPECIES_PROMETHEAN, SPECIES_TESHARI, SPECIES_DIONA) outfit_type = /decl/hierarchy/outfit/job/security/warden - job_description = "The Warden watches over the physical Security Department, making sure the Brig and Armoury are secure and in order at all times. They oversee \ - prisoners that have been processed and brigged, and are responsible for their well being. The Warden is also in charge of distributing \ - Armoury gear in a crisis, and retrieving it when the crisis has passed. In an emergency, the Warden may be called upon to direct the \ + job_description = "The " + JOB_WARDEN + " watches over the physical Security Department, making sure the Brig and Armoury are secure and in order at all times. They oversee \ + prisoners that have been processed and brigged, and are responsible for their well being. The " + JOB_WARDEN + " is also in charge of distributing \ + Armoury gear in a crisis, and retrieving it when the crisis has passed. In an emergency, the " + JOB_WARDEN + " may be called upon to direct the \ Security Department as a whole." ////////////////////////////////// // Detective ////////////////////////////////// /datum/job/detective - title = "Detective" + title = JOB_DETECTIVE flag = DETECTIVE departments = list(DEPARTMENT_SECURITY) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "the Head of Security" + supervisors = "the " + JOB_HEAD_OF_SECURITY selection_color = "#601C1C" access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks, access_brig) //Vorestation edit - access_brig minimal_access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks) @@ -90,28 +90,28 @@ banned_job_species = list(SPECIES_ZADDAT, SPECIES_PROMETHEAN, SPECIES_DIONA) outfit_type = /decl/hierarchy/outfit/job/security/detective - job_description = "A Detective works to help Security find criminals who have not properly been identified, through interviews and forensic work. \ + job_description = "A " + JOB_DETECTIVE + " works to help Security find criminals who have not properly been identified, through interviews and forensic work. \ For crimes only witnessed after the fact, or those with no survivors, they attempt to piece together what they can from pure evidence." - alt_titles = list("Forensic Technician" = /datum/alt_title/forensic_tech) + alt_titles = list(JOB_ALT_FORENSIC_TECHNICIAN = /datum/alt_title/forensic_tech) // Detective Alt Titles /datum/alt_title/forensic_tech - title = "Forensic Technician" - title_blurb = "A Forensic Technician works more with hard evidence and labwork than a Detective, but they share the purpose of solving crimes." + title = JOB_ALT_FORENSIC_TECHNICIAN + title_blurb = "A " + JOB_ALT_FORENSIC_TECHNICIAN + " works more with hard evidence and labwork than a " + JOB_DETECTIVE + ", but they share the purpose of solving crimes." title_outfit = /decl/hierarchy/outfit/job/security/detective/forensic ////////////////////////////////// // Security Officer ////////////////////////////////// /datum/job/officer - title = "Security Officer" + title = JOB_SECURITY_OFFICER flag = OFFICER departments = list(DEPARTMENT_SECURITY) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 4 spawn_positions = 4 - supervisors = "the Head of Security" + supervisors = "the " + JOB_HEAD_OF_SECURITY selection_color = "#601C1C" economic_modifier = 4 access = list(access_security, access_eva, access_sec_doors, access_brig, access_maint_tunnels, access_morgue, access_external_airlocks) @@ -120,16 +120,16 @@ banned_job_species = list(SPECIES_ZADDAT, SPECIES_TESHARI, SPECIES_DIONA) outfit_type = /decl/hierarchy/outfit/job/security/officer - job_description = "A Security Officer is concerned with maintaining the safety and security of the station as a whole, dealing with external threats and \ - apprehending criminals. A Security Officer is responsible for the health, safety, and processing of any prisoner they arrest. \ + job_description = "A " + JOB_SECURITY_OFFICER + " is concerned with maintaining the safety and security of the station as a whole, dealing with external threats and \ + apprehending criminals. A " + JOB_SECURITY_OFFICER + " is responsible for the health, safety, and processing of any prisoner they arrest. \ No one is above the Law, not Security or Command." - alt_titles = list("Junior Officer" = /datum/alt_title/junior_officer) + alt_titles = list(JOB_ALT_JUNIOR_OFFICER = /datum/alt_title/junior_officer) min_age_by_species = list(SPECIES_PROMETHEAN = 3) // Security Officer Alt Titles /datum/alt_title/junior_officer - title = "Junior Officer" - title_blurb = "A Junior Officer is an inexperienced Security Officer. They likely have training, but not experience, and are frequently \ + title = JOB_ALT_JUNIOR_OFFICER + title_blurb = "A " + JOB_ALT_JUNIOR_OFFICER + " is an inexperienced " + JOB_SECURITY_OFFICER + ". They likely have training, but not experience, and are frequently \ paired off with a more senior co-worker. Junior Officers may also be expected to take over the boring duties of other Officers \ - including patrolling the station or maintaining specific posts." \ No newline at end of file + including patrolling the station or maintaining specific posts." diff --git a/code/game/jobs/job/security_vr.dm b/code/game/jobs/job/security_vr.dm index 8980381d6ab..b7c196b3345 100644 --- a/code/game/jobs/job/security_vr.dm +++ b/code/game/jobs/job/security_vr.dm @@ -11,10 +11,10 @@ access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers, access_construction, access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks) - alt_titles = list("Security Commander" = /datum/alt_title/sec_commander, "Chief of Security" = /datum/alt_title/sec_chief, "Security Manager" = /datum/alt_title/security_manager) + alt_titles = list(JOB_ALT_SECURITY_COMMANDER = /datum/alt_title/sec_commander, JOB_ALT_CHIEF_OF_SECURITY = /datum/alt_title/sec_chief, JOB_ALT_SECURITY_MANAGER = /datum/alt_title/security_manager) /datum/alt_title/security_manager - title = "Security Manager" + title = JOB_ALT_SECURITY_MANAGER /datum/job/hos/get_request_reasons() return list("Wildlife management", "Forensic investigation", "Training crew", "Assembling expedition team") @@ -23,16 +23,16 @@ /datum/job/warden pto_type = PTO_SECURITY dept_time_required = 20 - alt_titles = list("Brig Sentry" = /datum/alt_title/brig_sentry, "Armory Superintendent" = /datum/alt_title/armory_superintendent, "Master-at-Arms" = /datum/alt_title/master_at_arms) + alt_titles = list(JOB_ALT_BRIG_SENTRY = /datum/alt_title/brig_sentry, JOB_ALT_ARMORY_SUPERINTENDENT = /datum/alt_title/armory_superintendent, JOB_ALT_MASTERATARMS = /datum/alt_title/master_at_arms) /datum/alt_title/brig_sentry - title = "Brig Sentry" + title = JOB_ALT_BRIG_SENTRY /datum/alt_title/armory_superintendent - title = "Armory Superintendent" + title = JOB_ALT_ARMORY_SUPERINTENDENT /datum/alt_title/master_at_arms - title = "Master-at-Arms" + title = JOB_ALT_MASTERATARMS /datum/job/warden/get_request_reasons() return list("Wildlife management") @@ -40,13 +40,13 @@ /datum/job/detective pto_type = PTO_SECURITY - alt_titles = list("Investigator" = /datum/alt_title/investigator, "Security Inspector" = /datum/alt_title/security_inspector, "Forensic Technician" = /datum/alt_title/forensic_tech) + alt_titles = list(JOB_ALT_INVESTIGATOR = /datum/alt_title/investigator, JOB_ALT_SECURITY_INSPECTOR = /datum/alt_title/security_inspector, JOB_ALT_FORENSIC_TECHNICIAN = /datum/alt_title/forensic_tech) /datum/alt_title/investigator - title = "Investigator" + title = JOB_ALT_INVESTIGATOR /datum/alt_title/security_inspector - title = "Security Inspector" + title = JOB_ALT_SECURITY_INSPECTOR /datum/job/detective/get_request_reasons() return list("Forensic investigation") @@ -56,20 +56,20 @@ total_positions = 5 spawn_positions = 5 pto_type = PTO_SECURITY - alt_titles = list("Patrol Officer" = /datum/alt_title/patrol_officer, "Security Guard" = /datum/alt_title/security_guard, - "Security Deputy" = /datum/alt_title/security_guard, "Junior Officer" = /datum/alt_title/junior_officer, "Security Contractor" = /datum/alt_title/security_contractor) + alt_titles = list(JOB_ALT_PATROL_OFFICER = /datum/alt_title/patrol_officer, JOB_ALT_SECURITY_GUARD = /datum/alt_title/security_guard, + JOB_ALT_SECURITY_DEPUTY = /datum/alt_title/security_guard, JOB_ALT_JUNIOR_OFFICER = /datum/alt_title/junior_officer, JOB_ALT_SECURITY_CONTRACTOR = /datum/alt_title/security_contractor) /datum/alt_title/patrol_officer - title = "Patrol Officer" + title = JOB_ALT_PATROL_OFFICER /datum/alt_title/security_guard - title = "Security Guard" + title = JOB_ALT_SECURITY_GUARD /datum/alt_title/security_deputy - title = "Security Deputy" + title = JOB_ALT_SECURITY_DEPUTY /datum/alt_title/security_contractor - title = "Security Contractor" + title = JOB_ALT_SECURITY_CONTRACTOR /datum/job/officer/get_request_reasons() return list("Wildlife management", "Assembling expedition team") diff --git a/code/game/jobs/job/silicon.dm b/code/game/jobs/job/silicon.dm index 06ec638ee3b..6a5812af073 100644 --- a/code/game/jobs/job/silicon.dm +++ b/code/game/jobs/job/silicon.dm @@ -2,12 +2,12 @@ // AI ////////////////////////////////// /datum/job/ai - title = "AI" + title = JOB_AI flag = AI departments = list(DEPARTMENT_SYNTHETIC) sorting_order = 1 // Be above their borgs. department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 0 // Not used for AI, see is_position_available below and modules/mob/living/silicon/ai/latejoin.dm spawn_positions = 1 selection_color = "#3F823F" @@ -20,9 +20,9 @@ assignable = FALSE mob_type = JOB_SILICON_AI outfit_type = /decl/hierarchy/outfit/job/silicon/ai - job_description = "The AI oversees the operation of the station and its crew, but has no real authority over them. \ - The AI is required to follow its Laws, and Lawbound Synthetics that are linked to it are expected to follow \ - the AI's commands, and their own Laws." + job_description = "The " + JOB_AI + " oversees the operation of the station and its crew, but has no real authority over them. \ + The " + JOB_AI + " is required to follow its Laws, and Lawbound Synthetics that are linked to it are expected to follow \ + the " + JOB_AI + "'s commands, and their own Laws." // AI procs /datum/job/ai/equip(var/mob/living/carbon/human/H) @@ -41,14 +41,14 @@ // Cyborg ////////////////////////////////// /datum/job/cyborg - title = "Cyborg" + title = JOB_CYBORG flag = CYBORG departments = list(DEPARTMENT_SYNTHETIC) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 - supervisors = "your Laws and the AI" //Nodrak + supervisors = "your Laws and the " + JOB_AI //Nodrak selection_color = "#254C25" minimal_player_age = 1 account_allowed = 0 @@ -57,18 +57,18 @@ assignable = FALSE mob_type = JOB_SILICON_ROBOT outfit_type = /decl/hierarchy/outfit/job/silicon/cyborg - job_description = "A Cyborg is a mobile station synthetic, piloted by a cybernetically preserved brain. It is considered a person, but is still required \ + job_description = "A " + JOB_CYBORG + " is a mobile station synthetic, piloted by a cybernetically preserved brain. It is considered a person, but is still required \ to follow its Laws." - alt_titles = list("Robot" = /datum/alt_title/robot, "Drone" = /datum/alt_title/drone) + alt_titles = list(JOB_ALT_ROBOT = /datum/alt_title/robot, JOB_ALT_DRONE = /datum/alt_title/drone) // Cyborg Alt Titles /datum/alt_title/robot - title = "Robot" + title = JOB_ALT_ROBOT title_blurb = "A Robot is a mobile station synthetic, piloted by an advanced piece of technology called a Positronic Brain. It is considered a person, \ legally, but is required to follow its Laws." /datum/alt_title/drone - title = "Drone" + title = JOB_ALT_DRONE title_blurb = "A Drone is a mobile station synthetic, piloted by a simple computer-based AI. As such, it is not a person, but rather an expensive and \ and important piece of station property, and is expected to follow its Laws." diff --git a/code/game/jobs/job/special_vr.dm b/code/game/jobs/job/special_vr.dm index 295a2ad2784..da98eae50e0 100644 --- a/code/game/jobs/job/special_vr.dm +++ b/code/game/jobs/job/special_vr.dm @@ -2,7 +2,7 @@ title = "CentCom Officer" departments = list("Central Command") department_accounts = list(DEPARTMENT_COMMAND, DEPARTMENT_ENGINEERING, DEPARTMENT_MEDICAL, DEPARTMENT_RESEARCH, DEPARTMENT_SECURITY, DEPARTMENT_CARGO, DEPARTMENT_PLANET, DEPARTMENT_CIVILIAN) - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 1 supervisors = "company officials and Corporate Regulations" @@ -28,7 +28,7 @@ title = "Emergency Responder" departments = list("Central Command") department_accounts = list(DEPARTMENT_COMMAND, DEPARTMENT_ENGINEERING, DEPARTMENT_MEDICAL, DEPARTMENT_RESEARCH, DEPARTMENT_SECURITY, DEPARTMENT_CARGO, DEPARTMENT_PLANET, DEPARTMENT_CIVILIAN) - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 1 supervisors = "company officials and Corporate Regulations" @@ -51,29 +51,29 @@ return get_all_accesses().Copy() /datum/job/clown - title = "Clown" + title = JOB_CLOWN flag = CLOWN departments = list(DEPARTMENT_CIVILIAN) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 supervisors = "the spirit of laughter" selection_color = "#515151" economic_modifier = 1 - job_description = "A Clown is there to entertain the crew and keep high morale using various harmless pranks and ridiculous jokes!" + job_description = "A " + JOB_CLOWN + " is there to entertain the crew and keep high morale using various harmless pranks and ridiculous jokes!" whitelist_only = 1 latejoin_only = 0 requestable = FALSE outfit_type = /decl/hierarchy/outfit/job/clown pto_type = PTO_CIVILIAN - alt_titles = list("Jester" = /datum/alt_title/jester, "Fool" = /datum/alt_title/fool) + alt_titles = list(JOB_ALT_JESTER = /datum/alt_title/jester, JOB_ALT_FOOL = /datum/alt_title/fool) /datum/alt_title/jester - title = "Jester" + title = JOB_ALT_JESTER /datum/alt_title/fool - title = "Fool" + title = JOB_ALT_FOOL /datum/job/clown/get_access() if(config.assistant_maint) @@ -82,18 +82,18 @@ return list(access_entertainment, access_clown, access_tomfoolery) /datum/job/mime - title = "Mime" + title = JOB_MIME flag = MIME departments = list(DEPARTMENT_CIVILIAN) department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 supervisors = "the spirit of performance" selection_color = "#515151" economic_modifier = 1 - job_description = "A Mime is there to entertain the crew and keep high morale using unbelievable performances and acting skills!" - alt_titles = list("Poseur" = /datum/alt_title/poseur) + job_description = "A " + JOB_MIME + " is there to entertain the crew and keep high morale using unbelievable performances and acting skills!" + alt_titles = list(JOB_ALT_PASEUR = /datum/alt_title/poseur) whitelist_only = 1 latejoin_only = 0 requestable = FALSE @@ -101,7 +101,7 @@ pto_type = PTO_CIVILIAN /datum/alt_title/poseur - title = "Poseur" + title = JOB_ALT_PASEUR /datum/job/mime/get_access() if(config.assistant_maint) diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index 4ce8780cf49..8e62746632c 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -10,7 +10,7 @@ var/global/datum/controller/occupations/job_master //Cache of icons for job info window var/list/job_icons = list() -/datum/controller/occupations/proc/SetupOccupations(var/faction = "Station") +/datum/controller/occupations/proc/SetupOccupations(var/faction = FACTION_STATION) occupations = list() //var/list/all_jobs = typesof(/datum/job) var/list/all_jobs = list(/datum/job/assistant) | using_map.allowed_jobs @@ -127,7 +127,7 @@ var/global/datum/controller/occupations/job_master if(job.is_species_banned(player.client.prefs.species, player.client.prefs.organ_data["brain"]) == TRUE) continue - if(istype(job, GetJob(USELESS_JOB))) // We don't want to give him assistant, that's boring! //VOREStation Edit - Visitor not Assistant + if(istype(job, GetJob(JOB_ALT_VISITOR))) // We don't want to give him assistant, that's boring! //VOREStation Edit - Visitor not Assistant continue if(SSjob.is_job_in_department(job.title, DEPARTMENT_COMMAND)) //If you want a command position, select it! @@ -229,7 +229,7 @@ var/global/datum/controller/occupations/job_master //Holder for Triumvirate is stored in the ticker, this just processes it if(ticker && ticker.triai) for(var/datum/job/A in occupations) - if(A.title == "AI") + if(A.title == JOB_AI) A.spawn_positions = 3 break @@ -253,7 +253,7 @@ var/global/datum/controller/occupations/job_master Debug("AC1, Candidates: [assistant_candidates.len]") for(var/mob/new_player/player in assistant_candidates) Debug("AC1 pass, Player: [player]") - AssignRole(player, USELESS_JOB) //VOREStation Edit - Visitor not Assistant + AssignRole(player, JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant assistant_candidates -= player Debug("DO, AC1 end") @@ -340,7 +340,7 @@ var/global/datum/controller/occupations/job_master for(var/mob/new_player/player in unassigned) if(player.client.prefs.alternate_option == BE_ASSISTANT) Debug("AC2 Assistant located, Player: [player]") - AssignRole(player, USELESS_JOB) //VOREStation Edit - Visitor not Assistant + AssignRole(player, JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant //For ones returning to lobby for(var/mob/new_player/player in unassigned) @@ -495,9 +495,9 @@ var/global/datum/controller/occupations/job_master return H // TWEET PEEP - if(rank == "Site Manager") + if(rank == JOB_SITE_MANAGER) var/sound/announce_sound = (ticker.current_state <= GAME_STATE_SETTING_UP) ? null : sound('sound/misc/boatswain.ogg', volume=20) - captain_announcement.Announce("All hands, [alt_title ? alt_title : "Site Manager"] [H.real_name] on deck!", new_sound = announce_sound, zlevel = H.z) + captain_announcement.Announce("All hands, [alt_title ? alt_title : JOB_SITE_MANAGER] [H.real_name] on deck!", new_sound = announce_sound, zlevel = H.z) //Deferred item spawning. if(spawn_in_storage && spawn_in_storage.len) diff --git a/code/game/jobs/whitelist_vr.dm b/code/game/jobs/whitelist_vr.dm index 058a9c0dc17..4088a0a505c 100644 --- a/code/game/jobs/whitelist_vr.dm +++ b/code/game/jobs/whitelist_vr.dm @@ -15,7 +15,7 @@ var/list/job_whitelist = list() var/datum/job/job = job_master.GetJob(rank) if(!job.whitelist_only) return 1 - if(rank == USELESS_JOB) //VOREStation Edit - Visitor not Assistant + if(rank == JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant return 1 if(check_rights(R_ADMIN, 0)) return 1 @@ -28,4 +28,3 @@ var/list/job_whitelist = list() if(findtext(s,"[M.ckey] - All")) return 1 return 0 - diff --git a/code/game/machinery/computer/ai_core.dm b/code/game/machinery/computer/ai_core.dm index 261879cf10e..da818e6832a 100644 --- a/code/game/machinery/computer/ai_core.dm +++ b/code/game/machinery/computer/ai_core.dm @@ -138,7 +138,7 @@ to_chat(user, "Sticking a dead [P] into the frame would sort of defeat the purpose.") return - if(jobban_isbanned(M.brainmob, "AI")) + if(jobban_isbanned(M.brainmob, JOB_AI)) to_chat(user, "This [P] does not seem to fit.") return diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 75b860330dd..2dcd5c83fcf 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -59,7 +59,7 @@ if(!istype(id_card)) return ..() - if(!scan && (access_change_ids in id_card.access) && (user.unEquip(id_card) || (id_card.loc == user && istype(user,/mob/living/silicon/robot)))) //Grippers. Again. ~Mechoid + if(!scan && (access_change_ids in id_card.GetAccess()) && (user.unEquip(id_card) || (id_card.loc == user && istype(user,/mob/living/silicon/robot)))) //Grippers. Again. ~Mechoid user.drop_item() id_card.forceMove(src) scan = id_card @@ -129,7 +129,7 @@ all_centcom_access.Add(list(list( "desc" = replacetext(get_centcom_access_desc(access), " ", " "), "ref" = access, - "allowed" = (access in modify.access) ? 1 : 0))) + "allowed" = (access in modify.GetAccess()) ? 1 : 0))) else if(modify) for(var/i in ACCESS_REGION_SECURITY to ACCESS_REGION_SUPPLY) var/list/accesses = list() @@ -138,7 +138,7 @@ accesses.Add(list(list( "desc" = replacetext(get_access_desc(access), " ", " "), "ref" = access, - "allowed" = (access in modify.access) ? 1 : 0))) + "allowed" = (access in modify.GetAccess()) ? 1 : 0))) regions.Add(list(list( "name" = get_region_accesses_name(i), diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm index dd33db4f86f..1bf6b536d73 100644 --- a/code/game/machinery/computer/guestpass.dm +++ b/code/game/machinery/computer/guestpass.dm @@ -165,9 +165,9 @@ var/list/area_list = list() data["access"] = null - if(giver && giver.access) - data["access"] = giver.access - for (var/A in giver.access) + if(giver && giver.GetAccess()) + data["access"] = giver.GetAccess() + for (var/A in giver.GetAccess()) if(A in accesses) area_list.Add(list(list("area" = A, "area_name" = get_access_desc(A), "on" = 1))) else @@ -212,7 +212,7 @@ if(A in accesses) accesses.Remove(A) else - if(A in giver.access) //Let's make sure the ID card actually has the access. + if(A in giver.GetAccess()) //Let's make sure the ID card actually has the access. accesses.Add(A) else to_chat(usr, "Invalid selection, please consult technical support if there are any issues.") diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 8efe7003afb..9a68e0be422 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -236,7 +236,7 @@ rank = scan.assignment else if(login_type == LOGIN_TYPE_AI && isAI(usr)) authenticated = usr.name - rank = "AI" + rank = JOB_AI else if(login_type == LOGIN_TYPE_ROBOT && isrobot(usr)) authenticated = usr.name var/mob/living/silicon/robot/R = usr diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 53cdeec5f78..76ae8ea23ef 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -221,7 +221,7 @@ rank = scan.assignment else if(login_type == LOGIN_TYPE_AI && isAI(usr)) authenticated = usr.name - rank = "AI" + rank = JOB_AI else if(login_type == LOGIN_TYPE_ROBOT && isrobot(usr)) authenticated = usr.name var/mob/living/silicon/robot/R = usr diff --git a/code/game/machinery/computer/skills.dm b/code/game/machinery/computer/skills.dm index d157d964f51..bcf61bc5d9c 100644 --- a/code/game/machinery/computer/skills.dm +++ b/code/game/machinery/computer/skills.dm @@ -179,7 +179,7 @@ rank = scan.assignment else if(login_type == LOGIN_TYPE_AI && isAI(usr)) authenticated = usr.name - rank = "AI" + rank = JOB_AI else if(login_type == LOGIN_TYPE_ROBOT && isrobot(usr)) authenticated = usr.name var/mob/living/silicon/robot/R = usr diff --git a/code/game/machinery/computer/specops_shuttle.dm b/code/game/machinery/computer/specops_shuttle.dm index ac510ee19f0..259d8fa1e6e 100644 --- a/code/game/machinery/computer/specops_shuttle.dm +++ b/code/game/machinery/computer/specops_shuttle.dm @@ -25,12 +25,12 @@ var/specops_shuttle_timeleft = 0 /proc/specops_return() var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. - announcer.config(list("Response Team" = 0)) + announcer.config(list(CHANNEL_RESPONSE_TEAM = 0)) var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. var/message = "\"THE SPECIAL OPERATIONS SHUTTLE IS PREPARING TO RETURN\""//Initial message shown. if(announcer) - announcer.autosay(message, "A.L.I.C.E.", "Response Team") + announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM) while(specops_shuttle_time - world.timeofday > 0) var/ticksleft = specops_shuttle_time - world.timeofday @@ -46,7 +46,7 @@ var/specops_shuttle_timeleft = 0 message = "\"ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN\"" if(rounded_time_left==0) message = "\"ALERT: TAKEOFF\"" - announcer.autosay(message, "A.L.I.C.E.", "Response Team") + announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM) message_tracker -= rounded_time_left//Remove the number from the list so it won't be called again next cycle. //Should call all the numbers but lag could mean some issues. Oh well. Not much I can do about that. @@ -100,14 +100,14 @@ var/specops_shuttle_timeleft = 0 /proc/specops_process() var/area/centcom/specops/special_ops = locate()//Where is the specops area located? var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. - announcer.config(list("Response Team" = 0)) + announcer.config(list(CHANNEL_RESPONSE_TEAM = 0)) var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. var/message = "\"THE SPECIAL OPERATIONS SHUTTLE IS PREPARING FOR LAUNCH\""//Initial message shown. if(announcer) - announcer.autosay(message, "A.L.I.C.E.", "Response Team") + announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM) // message = "ARMORED SQUAD TAKE YOUR POSITION ON GRAVITY LAUNCH PAD" -// announcer.autosay(message, "A.L.I.C.E.", "Response Team") +// announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM) while(specops_shuttle_time - world.timeofday > 0) var/ticksleft = specops_shuttle_time - world.timeofday @@ -123,7 +123,7 @@ var/specops_shuttle_timeleft = 0 message = "\"ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN\"" if(rounded_time_left==0) message = "\"ALERT: TAKEOFF\"" - announcer.autosay(message, "A.L.I.C.E.", "Response Team") + announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM) message_tracker -= rounded_time_left//Remove the number from the list so it won't be called again next cycle. //Should call all the numbers but lag could mean some issues. Oh well. Not much I can do about that. diff --git a/code/game/machinery/computer3/computers/card.dm b/code/game/machinery/computer3/computers/card.dm index 7412f6b4641..32984180ba5 100644 --- a/code/game/machinery/computer3/computers/card.dm +++ b/code/game/machinery/computer3/computers/card.dm @@ -36,7 +36,7 @@ jobs_all += "" jobs_all += ""//Site Manager in special because he is head of heads ~Intercross21 - jobs_all += "" + jobs_all += "" jobs_all += "" counter = 0 @@ -123,7 +123,7 @@ for(var/i = 1; i <= 7; i++) accesses += "" counter = 0 - if(jobban_isbanned(M, "Internal Affairs Agent")) - jobs += "" + if(jobban_isbanned(M, JOB_INTERNAL_AFFAIRS_AGENT)) + jobs += "" else - jobs += "" + jobs += "" jobs += "
Command
SpecialSite Manager"+JOB_SITE_MANAGER+"Custom" for(var/A in get_region_accesses(i)) - if(A in writer.access) + if(A in writer.GetAccess()) accesses += topic_link(src,"access=[A]","[replacetext(get_access_desc(A), " ", " ")]") + " " else accesses += topic_link(src,"access=[A]",replacetext(get_access_desc(A), " ", " ")) + " " @@ -189,7 +189,7 @@ // These are here partly in order to be overwritten by the centcom card computer code /datum/file/program/card_comp/proc/authenticate() - if(access_change_ids in reader.access) + if(access_change_ids in reader.GetAccess()) return 1 if(istype(usr,/mob/living/silicon/ai)) return 1 @@ -335,13 +335,13 @@ /datum/file/program/card_comp/centcom/accessblock() var/accesses = "
[using_map.boss_name]:
" for(var/A in get_all_centcom_access()) - if(A in writer.access) + if(A in writer.GetAccess()) accesses += topic_link(src,"access=[A]","[replacetext(get_centcom_access_desc(A), " ", " ")]") + " " else accesses += topic_link(src,"access=[A]",replacetext(get_centcom_access_desc(A), " ", " ")) + " " return accesses /datum/file/program/card_comp/centcom/authenticate() - if(access_cent_captain in reader.access) + if(access_cent_captain in reader.GetAccess()) return 1 return 0 diff --git a/code/game/machinery/doors/airlock_electronics.dm b/code/game/machinery/doors/airlock_electronics.dm index 6aac668b509..d97e5fb5c6f 100644 --- a/code/game/machinery/doors/airlock_electronics.dm +++ b/code/game/machinery/doors/airlock_electronics.dm @@ -131,16 +131,16 @@ id = R.idcard // Nothing - if(!id || !id.access) + if(!id || !id.GetAccess()) return list() - + // Has engineer access, can put any access - else if(has_access(null, apply_any_access, id.access)) + else if(has_access(null, apply_any_access, id.GetAccess())) return get_all_station_access() - + // Not an engineer, can only pick your own accesses to program else - return id.access + return id.GetAccess() /obj/item/weapon/airlock_electronics/secure name = "secure airlock electronics" diff --git a/code/game/machinery/gear_dispenser.dm b/code/game/machinery/gear_dispenser.dm index e410ecc8160..8f91ad56b8e 100644 --- a/code/game/machinery/gear_dispenser.dm +++ b/code/game/machinery/gear_dispenser.dm @@ -513,7 +513,7 @@ var/list/dispenser_presets = list() req_one_access = list(access_atmospherics) /datum/gear_disp/voidsuit/station/paramedic - name = "Paramedic (Voidsuit)" + name = JOB_PARAMEDIC + " (Voidsuit)" voidsuit_type = /obj/item/clothing/suit/space/void/medical/emt voidhelmet_type = /obj/item/clothing/head/helmet/space/void/medical/emt refit = TRUE diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 451472c7bf6..b9329afb4c1 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -124,7 +124,7 @@ req_one_access = list(access_syndicate) enabled = TRUE check_all = TRUE - faction = "syndicate" // Make sure this equals the faction that the mobs in the POI have or they will fight each other. + faction = FACTION_SYNDICATE // Make sure this equals the faction that the mobs in the POI have or they will fight each other. /obj/machinery/porta_turret/ai_defense name = "defense turret" diff --git a/code/game/machinery/requests_console_vr.dm b/code/game/machinery/requests_console_vr.dm index b001f218910..7f745b46db6 100644 --- a/code/game/machinery/requests_console_vr.dm +++ b/code/game/machinery/requests_console_vr.dm @@ -44,8 +44,8 @@ departmentType = RC_ASSIST|RC_SUPPLY /obj/machinery/requests_console/preset/janitor - name = "Janitor RC" - department = "Janitorial" + name = JOB_JANITOR + " RC" + department = JOB_JANITOR + "ial" departmentType = RC_ASSIST /obj/machinery/requests_console/preset/bridge @@ -57,26 +57,26 @@ // Heads /obj/machinery/requests_console/preset/ce - name = "Chief Engineer RC" - department = "Chief Engineer's Desk" + name = JOB_CHIEF_ENGINEER + " RC" + department = JOB_CHIEF_ENGINEER + "'s Desk" departmentType = RC_ASSIST|RC_INFO announcementConsole = 1 /obj/machinery/requests_console/preset/cmo - name = "Chief Medical Officer RC" - department = "Chief Medical Officer's Desk" + name = JOB_CHIEF_MEDICAL_OFFICER + " RC" + department = JOB_CHIEF_MEDICAL_OFFICER + "'s Desk" departmentType = RC_ASSIST|RC_INFO announcementConsole = 1 /obj/machinery/requests_console/preset/hos - name = "Head of Security RC" - department = "Head of Security's Desk" + name = JOB_HEAD_OF_SECURITY + " RC" + department = JOB_HEAD_OF_SECURITY + "'s Desk" departmentType = RC_ASSIST|RC_INFO announcementConsole = 1 /obj/machinery/requests_console/preset/rd - name = "Research Director RC" - department = "Research Director's Desk" + name = JOB_RESEARCH_DIRECTOR + " RC" + department = JOB_RESEARCH_DIRECTOR +"'s Desk" departmentType = RC_ASSIST|RC_INFO announcementConsole = 1 @@ -87,6 +87,6 @@ announcementConsole = 1 /obj/machinery/requests_console/preset/ai - name = "AI RC" - department = "AI" + name = JOB_AI + " RC" + department = JOB_AI departmentType = RC_ASSIST|RC_INFO diff --git a/code/game/machinery/suit_storage/suit_cycler_units.dm b/code/game/machinery/suit_storage/suit_cycler_units.dm index 82134bc94be..f77cb6d4d17 100644 --- a/code/game/machinery/suit_storage/suit_cycler_units.dm +++ b/code/game/machinery/suit_storage/suit_cycler_units.dm @@ -109,4 +109,4 @@ model_text = "Vintage Master" limit_departments = list( /datum/suit_cycler_choice/department/vintage - ) \ No newline at end of file + ) diff --git a/code/game/machinery/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm index 660aadae65a..8c635ebc99d 100644 --- a/code/game/machinery/syndicatebeacon.dm +++ b/code/game/machinery/syndicatebeacon.dm @@ -43,7 +43,7 @@ updateUsrDialog() return var/mob/M = locate(href_list["traitormob"]) - if(M.mind.special_role || jobban_isbanned(M, "Syndicate")) + if(M.mind.special_role || jobban_isbanned(M, JOB_SYNDICATE)) temptext = "We have no need for you at this time. Have a pleasant day.
" updateUsrDialog() return diff --git a/code/game/machinery/syndicatebeacon_vr.dm b/code/game/machinery/syndicatebeacon_vr.dm index 30dd61458c3..d340cdf57fe 100644 --- a/code/game/machinery/syndicatebeacon_vr.dm +++ b/code/game/machinery/syndicatebeacon_vr.dm @@ -25,7 +25,7 @@ updateUsrDialog() return var/mob/M = locate(href_list["traitormob"]) - if(M.mind.tcrystals > 0 || jobban_isbanned(M, "Syndicate")) + if(M.mind.tcrystals > 0 || jobban_isbanned(M, JOB_SYNDICATE)) temptext = "We have no need for you at this time. Have a pleasant day.
" updateUsrDialog() return diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index f8275a4d3dd..23441d2faae 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -2137,15 +2137,15 @@ if(istype(I, /obj/item/device/pda)) var/obj/item/device/pda/pda = I I = pda.id - if(!istype(I) || !I.access) //not ID or no access + if(!istype(I) || !I.GetAccess()) //not ID or no access return 0 if(access_list==src.operation_req_access) for(var/req in access_list) - if(!(req in I.access)) //doesn't have this access + if(!(req in I.GetAccess())) //doesn't have this access return 0 else if(access_list==src.internals_req_access) for(var/req in access_list) - if(req in I.access) + if(req in I.GetAccess()) return 1 return 1 @@ -2379,7 +2379,7 @@ for(var/a in operation_req_access) output += "[get_access_desc(a)] - Delete
" output += "

Following keycodes were detected on portable device:

" - for(var/a in id_card.access) + for(var/a in id_card.GetAccess()) if(a in operation_req_access) continue var/a_name = get_access_desc(a) if(!a_name) continue //there's some strange access without a name diff --git a/code/game/objects/effects/job_start_landmarks.dm b/code/game/objects/effects/job_start_landmarks.dm index 93abb2bc0d0..fcd8b79f831 100644 --- a/code/game/objects/effects/job_start_landmarks.dm +++ b/code/game/objects/effects/job_start_landmarks.dm @@ -1,98 +1,98 @@ /obj/effect/landmark/start/captain - name = "Site Manager" + name = JOB_SITE_MANAGER /obj/effect/landmark/start/hop - name = "Head of Personnel" + name = JOB_HEAD_OF_PERSONNEL /obj/effect/landmark/start/commandsecretary - name = "Command Secretary" + name = JOB_COMMAND_SECRETARY /obj/effect/landmark/start/hos - name = "Head of Security" + name = JOB_HEAD_OF_SECURITY /obj/effect/landmark/start/warden - name = "Warden" + name = JOB_WARDEN /obj/effect/landmark/start/detective - name = "Detective" + name = JOB_DETECTIVE /obj/effect/landmark/start/security - name = "Security Officer" + name = JOB_SECURITY_OFFICER /obj/effect/landmark/start/ce - name = "Chief Engineer" + name = JOB_CHIEF_ENGINEER /obj/effect/landmark/start/atmostech - name = "Atmospheric Technician" + name = JOB_ATMOSPHERIC_TECHNICIAN /obj/effect/landmark/start/engineer - name = "Engineer" + name = JOB_ENGINEER /obj/effect/landmark/start/cmo - name = "Chief Medical Officer" + name = JOB_CHIEF_MEDICAL_OFFICER /obj/effect/landmark/start/chemist - name = "Chemist" + name = JOB_CHEMIST /obj/effect/landmark/start/medical - name = "Medical Doctor" + name = JOB_MEDICAL_DOCTOR /obj/effect/landmark/start/paramedic - name = "Paramedic" + name = JOB_PARAMEDIC /obj/effect/landmark/start/psych - name = "Psychiatrist" + name = JOB_PSYCHIATRIST /obj/effect/landmark/start/rd - name = "Research Director" + name = JOB_RESEARCH_DIRECTOR /obj/effect/landmark/start/roboticist - name = "Roboticist" + name = JOB_ROBOTICIST /obj/effect/landmark/start/scientist - name = "Scientist" + name = JOB_SCIENTIST /obj/effect/landmark/start/xenobio - name = "Xenobiologist" + name = JOB_XENOBIOLOGIST /obj/effect/landmark/start/xenobot - name = "Xenobotanist" + name = JOB_XENOBOTANIST /obj/effect/landmark/start/qm - name = "Quartermaster" + name = JOB_QUARTERMASTER /obj/effect/landmark/start/cargo - name = "Cargo Technician" + name = JOB_CARGO_TECHNICIAN /obj/effect/landmark/start/miner - name = "Shaft Miner" + name = JOB_SHAFT_MINER /* //VOREStation Removal /obj/effect/landmark/start/pf - name = "Pathfinder" + name = JOB_PATHFINDER /obj/effect/landmark/start/explorer - name = "Explorer" + name = JOB_EXPLORER /obj/effect/landmark/start/fieldmedic - name = "Field Medic" + name = JOB_FIELD_MEDIC */ /obj/effect/landmark/start/bartender - name = "Bartender" + name = JOB_BARTENDER /obj/effect/landmark/start/botanist - name = "Botanist" + name = JOB_BOTANIST /obj/effect/landmark/start/chaplain - name = "Chaplain" + name = JOB_CHAPLAIN /obj/effect/landmark/start/chef - name = "Chef" + name = JOB_CHEF /obj/effect/landmark/start/clown - name = "Clown" + name = JOB_CLOWN /obj/effect/landmark/start/entertainer - name = "Entertainer" + name = JOB_ENTERTAINER /obj/effect/landmark/start/entrepreneur - name = "Entrepreneur" + name = JOB_ENTREPRENEUR /obj/effect/landmark/start/intern - name = "Intern" + name = JOB_INTERN /obj/effect/landmark/start/iaa - name = "Internal Affairs Agent" + name = JOB_INTERNAL_AFFAIRS_AGENT /obj/effect/landmark/start/janitor - name = "Janitor" + name = JOB_JANITOR /obj/effect/landmark/start/librarian - name = "Librarian" + name = JOB_LIBRARIAN /obj/effect/landmark/start/mime - name = "Mime" + name = JOB_MIME /obj/effect/landmark/start/pilot - name = "Pilot" + name = JOB_PILOT /obj/effect/landmark/start/visitor - name = "Visitor" + name = JOB_ALT_VISITOR /obj/effect/landmark/start/ai - name = "AI" + name = JOB_AI /obj/effect/landmark/start/cyborg - name = "Cyborg" + name = JOB_CYBORG /obj/effect/landmark/start/taloncap - name = "Talon Captain" + name = JOB_TALON_CAPTAIN /obj/effect/landmark/start/talondoc - name = "Talon Doctor" + name = JOB_TALON_DOCTOR /obj/effect/landmark/start/taloneng - name = "Talon Engineer" + name = JOB_TALON_ENGINEER /obj/effect/landmark/start/talonguard - name = "Talon Guard" + name = JOB_TALON_GUARD /obj/effect/landmark/start/talonpilot - name = "Talon Pilot" + name = JOB_TALON_PILOT /obj/effect/landmark/start/talonminer - name = "Talon Miner" + name = JOB_TALON_MINER diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 776b2e69d7d..f18cecc6f30 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -96,7 +96,7 @@ var/spiders_min = 6 var/spiders_max = 24 var/spider_type = /obj/effect/spider/spiderling - var/faction = "spiders" + var/faction = FACTION_SPIDERS /obj/effect/spider/eggcluster/Initialize() pixel_x = rand(3,-3) @@ -155,7 +155,7 @@ var/obj/machinery/atmospherics/unary/vent_pump/entry_vent var/travelling_in_vent = 0 var/list/grow_as = list(/mob/living/simple_mob/animal/giant_spider, /mob/living/simple_mob/animal/giant_spider/hunter) - var/faction = "spiders" + var/faction = FACTION_SPIDERS var/stunted = FALSE diff --git a/code/game/objects/items/devices/communicator/phone.dm b/code/game/objects/items/devices/communicator/phone.dm index 1a054c7cbc6..edd707c3def 100644 --- a/code/game/objects/items/devices/communicator/phone.dm +++ b/code/game/objects/items/devices/communicator/phone.dm @@ -105,7 +105,7 @@ to_chat(new_voice, "If you want to end the call, use the 'Hang Up' verb. The other person can also hang up at any time.") to_chat(new_voice, "Remember, your character does not know anything you've learned from observing!") if(new_voice.mind) - new_voice.mind.assigned_role = "Disembodied Voice" + new_voice.mind.assigned_role = JOB_DISEMBODIED_VOICE if(user) to_chat(user, "[icon2html(src,new_voice.client)] Your communicator is now connected to [candidate]'s communicator.") diff --git a/code/game/objects/items/devices/denecrotizer_vr.dm b/code/game/objects/items/devices/denecrotizer_vr.dm index 43dbeab6c01..c7f4d3d1a49 100644 --- a/code/game/objects/items/devices/denecrotizer_vr.dm +++ b/code/game/objects/items/devices/denecrotizer_vr.dm @@ -43,7 +43,7 @@ /mob/living/simple_mob/attack_ghost(mob/observer/dead/user as mob) if(!ghostjoin) return ..() - if(jobban_isbanned(user, "GhostRoles")) + if(jobban_isbanned(user, JOB_GHOSTROLES)) to_chat(user, "You cannot inhabit this creature because you are banned from playing ghost roles.") return if(!evaluate_ghost_join(user)) diff --git a/code/game/objects/items/devices/holowarrant.dm b/code/game/objects/items/devices/holowarrant.dm index 799674ae36e..dcebbdde500 100644 --- a/code/game/objects/items/devices/holowarrant.dm +++ b/code/game/objects/items/devices/holowarrant.dm @@ -39,7 +39,7 @@ /obj/item/device/holowarrant/attackby(obj/item/weapon/W, mob/user) if(active) var/obj/item/weapon/card/id/I = W.GetIdCard() - if(access_hos in I.access) // VOREStation edit + if(access_hos in I.GetAccess()) // VOREStation edit var/choice = tgui_alert(user, "Would you like to authorize this warrant?","Warrant authorization",list("Yes","No")) if(choice == "Yes") active.fields["auth"] = "[I.registered_name] - [I.assignment ? I.assignment : "(Unknown)"]" diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index d9292282bff..b6bd723d289 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -1,18 +1,18 @@ var/global/list/radio_channels_by_freq = list( - num2text(PUB_FREQ) = "Common", - num2text(AI_FREQ) = "AI Private", - num2text(ENT_FREQ) = "Entertainment", - num2text(ERT_FREQ) = "Response Team", - num2text(COMM_FREQ)= "Command", - num2text(ENG_FREQ) = "Engineering", - num2text(MED_FREQ) = "Medical", - num2text(MED_I_FREQ)="Medical(I)", - num2text(SEC_FREQ) = "Security", - num2text(SEC_I_FREQ)="Security(I)", - num2text(SCI_FREQ) = "Science", - num2text(SUP_FREQ) = "Supply", - num2text(SRV_FREQ) = "Service", - num2text(EXP_FREQ) = "Away Team" + num2text(PUB_FREQ) = CHANNEL_COMMON, + num2text(AI_FREQ) = CHANNEL_AI_PRIVATE, + num2text(ENT_FREQ) = CHANNEL_ENTERTAINMENT, + num2text(ERT_FREQ) = CHANNEL_RESPONSE_TEAM, + num2text(COMM_FREQ)= CHANNEL_COMMAND, + num2text(ENG_FREQ) = CHANNEL_ENGINEERING, + num2text(MED_FREQ) = CHANNEL_MEDICAL, + num2text(MED_I_FREQ)=CHANNEL_MEDICAL_1, + num2text(SEC_FREQ) = CHANNEL_SECURITY, + num2text(SEC_I_FREQ)=CHANNEL_SECURITY_1, + num2text(SCI_FREQ) = CHANNEL_SCIENCE, + num2text(SUP_FREQ) = CHANNEL_SUPPLY, + num2text(SRV_FREQ) = CHANNEL_SERVICE, + num2text(EXP_FREQ) = CHANNEL_EXPLORATION ) GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard) @@ -67,7 +67,7 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard) else if(time_till_respawn) // Nonzero time to respawn to_chat(usr, "You can't do that yet! You died too recently. You need to wait another [round(time_till_respawn/10/60, 0.1)] minutes.") return - if(jobban_isbanned(usr, "pAI")) + if(jobban_isbanned(usr, JOB_PAI)) to_chat(usr,"You cannot join a pAI card when you are banned from playing as a pAI.") return diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index f28c98ef41e..0502cd25d3b 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -15,13 +15,13 @@ /obj/item/device/encryptionkey/syndicate icon_state = "syn_cypherkey" - channels = list("Mercenary" = 1) + channels = list(CHANNEL_MERCENARY = 1) origin_tech = list(TECH_ILLEGAL = 3) syndie = 1//Signifies that it de-crypts Syndicate transmissions /obj/item/device/encryptionkey/raider icon_state = "cypherkey" - channels = list("Raider" = 1) + channels = list(CHANNEL_RAIDER = 1) origin_tech = list(TECH_ILLEGAL = 2) syndie = 1 @@ -33,73 +33,73 @@ /obj/item/device/encryptionkey/headset_sec name = "security radio encryption key" icon_state = "sec_cypherkey" - channels = list("Security" = 1) + channels = list(CHANNEL_SECURITY = 1) /obj/item/device/encryptionkey/headset_eng name = "engineering radio encryption key" icon_state = "eng_cypherkey" - channels = list("Engineering" = 1) + channels = list(CHANNEL_ENGINEERING = 1) /obj/item/device/encryptionkey/headset_rob name = "robotics radio encryption key" icon_state = "rob_cypherkey" - channels = list("Engineering" = 1, "Science" = 1) + channels = list(CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1) /obj/item/device/encryptionkey/headset_med name = "medical radio encryption key" icon_state = "med_cypherkey" - channels = list("Medical" = 1) + channels = list(CHANNEL_MEDICAL = 1) /obj/item/device/encryptionkey/headset_sci name = "science radio encryption key" icon_state = "sci_cypherkey" - channels = list("Science" = 1) + channels = list(CHANNEL_SCIENCE = 1) /obj/item/device/encryptionkey/headset_medsci name = "medical research radio encryption key" icon_state = "medsci_cypherkey" - channels = list("Medical" = 1, "Science" = 1) + channels = list(CHANNEL_MEDICAL = 1, CHANNEL_SCIENCE = 1) /obj/item/device/encryptionkey/headset_com name = "command radio encryption key" icon_state = "com_cypherkey" - channels = list("Command" = 1) + channels = list(CHANNEL_COMMAND = 1) /obj/item/device/encryptionkey/heads/captain name = "site manager's encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1, CHANNEL_MEDICAL = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1) /obj/item/device/encryptionkey/heads/ai_integrated name = "ai integrated encryption key" desc = "Integrated encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "AI Private" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1, CHANNEL_MEDICAL = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_AI_PRIVATE = 1) /obj/item/device/encryptionkey/heads/rd name = "research director's encryption key" icon_state = "rd_cypherkey" - channels = list("Science" = 1, "Command" = 1) + channels = list(CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1) /obj/item/device/encryptionkey/heads/hos name = "head of security's encryption key" icon_state = "hos_cypherkey" - channels = list("Security" = 1, "Command" = 1) + channels = list(CHANNEL_SECURITY = 1, CHANNEL_COMMAND = 1) /obj/item/device/encryptionkey/heads/ce name = "chief engineer's encryption key" icon_state = "ce_cypherkey" - channels = list("Engineering" = 1, "Command" = 1) + channels = list(CHANNEL_ENGINEERING = 1, CHANNEL_COMMAND = 1) /obj/item/device/encryptionkey/heads/cmo name = "chief medical officer's encryption key" icon_state = "cmo_cypherkey" - channels = list("Medical" = 1, "Command" = 1) + channels = list(CHANNEL_MEDICAL = 1, CHANNEL_COMMAND = 1) /obj/item/device/encryptionkey/heads/hop name = "head of personnel's encryption key" icon_state = "hop_cypherkey" - channels = list("Supply" = 1, "Service" = 1, "Command" = 1, "Security" = 1) + channels = list(CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1) /* /obj/item/device/encryptionkey/headset_mine name = "mining radio encryption key" @@ -114,22 +114,22 @@ /obj/item/device/encryptionkey/headset_cargo name = "supply radio encryption key" icon_state = "cargo_cypherkey" - channels = list("Supply" = 1) + channels = list(CHANNEL_SUPPLY = 1) /obj/item/device/encryptionkey/headset_service name = "service radio encryption key" icon_state = "srv_cypherkey" - channels = list("Service" = 1) + channels = list(CHANNEL_SERVICE = 1) /obj/item/device/encryptionkey/ert name = "\improper ERT radio encryption key" icon_state = "cent_cypherkey" - channels = list("Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1) + channels = list(CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1) /obj/item/device/encryptionkey/omni //Literally only for the admin intercoms - channels = list("Mercenary" = 1, "Raider" = 1, "Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1) + channels = list(CHANNEL_MERCENARY = 1, CHANNEL_RAIDER = 1, CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1) syndie = 1//Signifies that it de-crypts Syndicate transmissions /obj/item/device/encryptionkey/ent name = "entertainment encryption key" - channels = list("Entertainment" = 1) + channels = list(CHANNEL_ENTERTAINMENT = 1) diff --git a/code/game/objects/items/devices/radio/encryptionkey_vr.dm b/code/game/objects/items/devices/radio/encryptionkey_vr.dm index 5294ae139e0..1396bc898d2 100644 --- a/code/game/objects/items/devices/radio/encryptionkey_vr.dm +++ b/code/game/objects/items/devices/radio/encryptionkey_vr.dm @@ -1,54 +1,54 @@ /obj/item/device/encryptionkey/heads/hop name = "head of personnel's encryption key" icon_state = "hop_cypherkey" - channels = list("Supply" = 1, "Service" = 1, "Command" = 1, "Security" = 1, "Away Team" = 1) + channels = list(CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/heads/ai_integrated name = "ai integrated encryption key" desc = "Integrated encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "AI Private" = 1, "Away Team" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1, CHANNEL_MEDICAL = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_AI_PRIVATE = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/heads/captain name = "site manager's encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "Away Team" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1, CHANNEL_MEDICAL = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/heads/rd name = "research director's encryption key" icon_state = "rd_cypherkey" - channels = list("Command" = 1, "Science" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SCIENCE = 1) /obj/item/device/encryptionkey/ert - channels = list("Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1, "Away Team" = 1) + channels = list(CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/omni //Literally only for the admin intercoms - channels = list("Mercenary" = 1, "Raider" = 1, "Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1, "Away Team" = 1) + channels = list(CHANNEL_MERCENARY = 1, CHANNEL_RAIDER = 1, CHANNEL_RESPONSE_TEAM = 1, CHANNEL_SCIENCE = 1, CHANNEL_COMMAND = 1, CHANNEL_MEDICAL = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SECURITY = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/pathfinder name = "pathfinder's encryption key" icon_state = "com_cypherkey" - channels = list("Command" = 1, "Away Team" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/qm name = "quartermaster's encryption key" icon_state = "qm_cypherkey" - channels = list("Command" = 1, "Supply" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SUPPLY = 1) /obj/item/device/encryptionkey/pilot name = "pilot's encryption key" icon_state = "cypherkey" - channels = list("Away Team" = 1) + channels = list(CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/explorer name = "away team's encryption key" icon_state = "rob_cypherkey" - channels = list("Away Team" = 1) + channels = list(CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/sar name = "fm's encryption key" icon_state = "med_cypherkey" - channels = list("Medical" = 1, "Away Team" = 1) + channels = list(CHANNEL_MEDICAL = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/talon - channels = list("Talon" = 1) + channels = list(CHANNEL_TALON = 1) diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 49a4dab9b46..6cf3679c7be 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -258,13 +258,13 @@ /obj/item/device/radio/headset/heads/hop name = "head of personnel's headset" - desc = "The headset of the poor fool who will one day be Site Manager." + desc = "The headset of the poor fool who will one day be " + JOB_SITE_MANAGER + "." icon_state = "com_headset" ks2type = /obj/item/device/encryptionkey/heads/hop /obj/item/device/radio/headset/heads/hop/alt name = "head of personnel's bowman headset" - desc = "The headset of the poor fool who will one day be Site Manager." + desc = "The headset of the poor fool who will one day be " + JOB_SITE_MANAGER + "." icon_state = "com_headset_alt" ks2type = /obj/item/device/encryptionkey/heads/hop diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 26af181ae92..1c9bd869202 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -409,11 +409,11 @@ GLOBAL_DATUM(autospeaker, /mob/living/silicon/ai/announcer) // --- AI --- else if (isAI(M)) - jobname = "AI" + jobname = JOB_AI // --- Cyborg --- else if (isrobot(M)) - jobname = "Cyborg" + jobname = JOB_CYBORG // --- Personal AI (pAI) --- else if (istype(M, /mob/living/silicon/pai)) diff --git a/code/game/objects/items/devices/scanners/guide.dm b/code/game/objects/items/devices/scanners/guide.dm index 11e49a35a33..bb1989a1c82 100644 --- a/code/game/objects/items/devices/scanners/guide.dm +++ b/code/game/objects/items/devices/scanners/guide.dm @@ -17,10 +17,10 @@ var/obj/item/weapon/card/id/ourid = user?.GetIdCard() if(!ourid) return - if(access_change_ids in ourid.access) + if(access_change_ids in ourid.GetAccess()) playsound(src, 'sound/machines/defib_failed.ogg', 50, 0) return - if(access_medical in ourid.access) + if(access_medical in ourid.GetAccess()) playsound(src, 'sound/effects/pop.ogg', 50, FALSE) else playsound(src, 'sound/machines/defib_failed.ogg', 50, 0) diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index cd7ef9f442b..405de3a48c8 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -188,7 +188,7 @@ to_chat(user, "Sticking a dead [W] into the frame would sort of defeat the purpose.") return - if(jobban_isbanned(M.brainmob, "Cyborg")) + if(jobban_isbanned(M.brainmob, JOB_CYBORG)) to_chat(user, "This [W] does not seem to fit.") return @@ -209,7 +209,7 @@ O.mind.store_memory("In case you look at this after being borged, the objectives are only here until I find a way to make them not show up for you, as I can't simply delete them without screwing up round-end reporting. --NeoFite") for(var/datum/language/L in M.brainmob.languages) O.add_language(L.name) - O.job = "Cyborg" + O.job = JOB_CYBORG O.cell = chest.cell O.cell.loc = O W.loc = O//Should fix cybros run time erroring when blown up. It got deleted before, along with the frame. diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index ace8fde6360..22a3649346f 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -452,7 +452,7 @@ //cyborg foam dart gun /obj/item/borg/upgrade/no_prod/toygun - name = "Donk-Soft Cyborg Blaster module" //Cyborg Blaster is capitalized because it's the brand name + name = "Donk-Soft " + JOB_CYBORG + " Blaster module" //Cyborg Blaster is capitalized because it's the brand name desc = "A foam dart gun designed for mounting into cyborgs. It's Donk or Don't! DISCLAIMER: Donk-Soft bears no responsibility for incidents relating to cyborgs becoming too accustomed to shooting at crew. Installation of the Donk-Soft Cyborg Blaster must be performed only by a licensed roboticist." icon_state = "cyborg_upgrade5" item_state = "cyborg_upgrade" diff --git a/code/game/objects/items/toys/toys.dm b/code/game/objects/items/toys/toys.dm index 9dadaff977c..33de858ce0d 100644 --- a/code/game/objects/items/toys/toys.dm +++ b/code/game/objects/items/toys/toys.dm @@ -311,8 +311,8 @@ playsound(src, 'sound/machines/click.ogg', 20, 1) /obj/item/toy/figure/cmo - name = "Chief Medical Officer action figure" - desc = "A \"Space Life\" brand Chief Medical Officer action figure." + name = JOB_CHIEF_MEDICAL_OFFICER + " action figure" + desc = "A \"Space Life\" brand " + JOB_CHIEF_MEDICAL_OFFICER + " action figure." icon_state = "cmo" toysay = "Suit sensors!" @@ -323,14 +323,14 @@ toysay = "Grey tide station wide!" /obj/item/toy/figure/atmos - name = "Atmospheric Technician action figure" - desc = "A \"Space Life\" brand Atmospheric Technician action figure." + name = JOB_ATMOSPHERIC_TECHNICIAN + " action figure" + desc = "A \"Space Life\" brand " + JOB_ATMOSPHERIC_TECHNICIAN + " action figure." icon_state = "atmos" toysay = "Glory to Atmosia!" /obj/item/toy/figure/bartender - name = "Bartender action figure" - desc = "A \"Space Life\" brand Bartender action figure." + name = JOB_BARTENDER + " action figure" + desc = "A \"Space Life\" brand " + JOB_BARTENDER + " action figure." icon_state = "bartender" toysay = "Where's my monkey?" @@ -341,50 +341,50 @@ toysay = "I. LIVE. AGAIN." /obj/item/toy/figure/gardener - name = "Gardener action figure" - desc = "A \"Space Life\" brand Gardener action figure." + name = JOB_ALT_GARDENER + " action figure" + desc = "A \"Space Life\" brand " + JOB_ALT_GARDENER + " action figure." icon_state = "botanist" toysay = "Dude, I see colors..." /obj/item/toy/figure/captain - name = "Site Manager action figure" - desc = "A \"Space Life\" brand Site Manager action figure." + name = JOB_SITE_MANAGER + " action figure" + desc = "A \"Space Life\" brand " + JOB_SITE_MANAGER + " action figure." icon_state = "captain" toysay = "How do I open this display case?" /obj/item/toy/figure/cargotech - name = "Cargo Technician action figure" - desc = "A \"Space Life\" brand Cargo Technician action figure." + name = JOB_CARGO_TECHNICIAN + " action figure" + desc = "A \"Space Life\" brand " + JOB_CARGO_TECHNICIAN + " action figure." icon_state = "cargotech" toysay = "For Cargonia!" /obj/item/toy/figure/ce - name = "Chief Engineer action figure" - desc = "A \"Space Life\" brand Chief Engineer action figure." + name = JOB_CHIEF_ENGINEER + " action figure" + desc = "A \"Space Life\" brand " + JOB_CHIEF_ENGINEER + " action figure." icon_state = "ce" toysay = "Wire the solars!" /obj/item/toy/figure/chaplain - name = "Chaplain action figure" - desc = "A \"Space Life\" brand Chaplain action figure." + name = JOB_CHAPLAIN + " action figure" + desc = "A \"Space Life\" brand " + JOB_CHAPLAIN + " action figure." icon_state = "chaplain" toysay = "Gods make me a killing machine please!" /obj/item/toy/figure/chef - name = "Chef action figure" - desc = "A \"Space Life\" brand Chef action figure." + name = JOB_CHEF + " action figure" + desc = "A \"Space Life\" brand " + JOB_CHEF + " action figure." icon_state = "chef" toysay = "I swear it's not human meat." /obj/item/toy/figure/chemist - name = "Chemist action figure" - desc = "A \"Space Life\" brand Chemist action figure." + name = JOB_CHEMIST + " action figure" + desc = "A \"Space Life\" brand " + JOB_CHEMIST + " action figure." icon_state = "chemist" toysay = "Get your pills!" /obj/item/toy/figure/clown - name = "Clown action figure" - desc = "A \"Space Life\" brand Clown action figure." + name = JOB_CLOWN + " action figure" + desc = "A \"Space Life\" brand " + JOB_CLOWN + " action figure." icon_state = "clown" toysay = "Honk!" @@ -395,8 +395,8 @@ toysay = "Arf!" /obj/item/toy/figure/detective - name = "Detective action figure" - desc = "A \"Space Life\" brand Detective action figure." + name = JOB_DETECTIVE + " action figure" + desc = "A \"Space Life\" brand " + JOB_DETECTIVE + " action figure." icon_state = "detective" toysay = "This airlock has grey jumpsuit and insulated glove fibers on it." @@ -407,68 +407,68 @@ toysay = "Eliminate all threats!" /obj/item/toy/figure/engineer - name = "Engineer action figure" - desc = "A \"Space Life\" brand Engineer action figure." + name = JOB_ENGINEER + " action figure" + desc = "A \"Space Life\" brand " + JOB_ENGINEER + " action figure." icon_state = "engineer" toysay = "Oh god, the engine is gonna go!" /obj/item/toy/figure/geneticist - name = "Geneticist action figure" - desc = "A \"Space Life\" brand Geneticist action figure, which was recently dicontinued." + name = JOB_GENETICIST + " action figure" + desc = "A \"Space Life\" brand " + JOB_GENETICIST + " action figure, which was recently dicontinued." icon_state = "geneticist" toysay = "I'm not qualified for this job." /obj/item/toy/figure/hop - name = "Head of Personnel action figure" - desc = "A \"Space Life\" brand Head of Personnel action figure." + name = JOB_HEAD_OF_PERSONNEL + " action figure" + desc = "A \"Space Life\" brand " + JOB_HEAD_OF_PERSONNEL + " action figure." icon_state = "hop" toysay = "Giving out all access!" /obj/item/toy/figure/hos - name = "Head of Security action figure" - desc = "A \"Space Life\" brand Head of Security action figure." + name = JOB_HEAD_OF_SECURITY + " action figure" + desc = "A \"Space Life\" brand " + JOB_HEAD_OF_SECURITY + " action figure." icon_state = "hos" toysay = "I'm here to win, anything else is secondary." /obj/item/toy/figure/qm - name = "Quartermaster action figure" - desc = "A \"Space Life\" brand Quartermaster action figure." + name = JOB_QUARTERMASTER + " action figure" + desc = "A \"Space Life\" brand " + JOB_QUARTERMASTER + " action figure." icon_state = "qm" toysay = "Hail Cargonia!" /obj/item/toy/figure/janitor - name = "Janitor action figure" - desc = "A \"Space Life\" brand Janitor action figure." + name = JOB_JANITOR + " action figure" + desc = "A \"Space Life\" brand " + JOB_JANITOR + " action figure." icon_state = "janitor" toysay = "Look at the signs, you idiot." /obj/item/toy/figure/agent - name = "Internal Affairs Agent action figure" - desc = "A \"Space Life\" brand Internal Affairs Agent action figure." + name = JOB_INTERNAL_AFFAIRS_AGENT + " action figure" + desc = "A \"Space Life\" brand " + JOB_INTERNAL_AFFAIRS_AGENT + " action figure." icon_state = "agent" toysay = "Standard Operating Procedure says they're guilty! Hacking is proof they're an Enemy of the Corporation!" /obj/item/toy/figure/librarian - name = "Librarian action figure" - desc = "A \"Space Life\" brand Librarian action figure." + name = JOB_LIBRARIAN + " action figure" + desc = "A \"Space Life\" brand " + JOB_LIBRARIAN + " action figure." icon_state = "librarian" toysay = "One day while..." /obj/item/toy/figure/md - name = "Medical Doctor action figure" - desc = "A \"Space Life\" brand Medical Doctor action figure." + name = JOB_MEDICAL_DOCTOR + " action figure" + desc = "A \"Space Life\" brand " + JOB_MEDICAL_DOCTOR + " action figure." icon_state = "md" toysay = "The patient is already dead!" /obj/item/toy/figure/mime - name = "Mime action figure" - desc = "A \"Space Life\" brand Mime action figure." + name = JOB_MIME + " action figure" + desc = "A \"Space Life\" brand " + JOB_MIME + " action figure." icon_state = "mime" toysay = "..." /obj/item/toy/figure/miner - name = "Shaft Miner action figure" - desc = "A \"Space Life\" brand Shaft Miner action figure." + name = JOB_SHAFT_MINER + " action figure" + desc = "A \"Space Life\" brand " + JOB_SHAFT_MINER + " action figure." icon_state = "miner" toysay = "Oh god, it's eating my intestines!" @@ -479,26 +479,26 @@ toysay = "Oh god! Stop shooting, I'm friendly!" /obj/item/toy/figure/wizard - name = "Wizard action figure" - desc = "A \"Space Life\" brand Wizard action figure." + name = JOB_WIZARD + " action figure" + desc = "A \"Space Life\" brand " + JOB_WIZARD + " action figure." icon_state = "wizard" toysay = "Ei Nath!" /obj/item/toy/figure/rd - name = "Research Director action figure" - desc = "A \"Space Life\" brand Research Director action figure." + name = JOB_RESEARCH_DIRECTOR + " action figure" + desc = "A \"Space Life\" brand " + JOB_RESEARCH_DIRECTOR + " action figure." icon_state = "rd" toysay = "Blowing all of the borgs!" /obj/item/toy/figure/roboticist - name = "Roboticist action figure" - desc = "A \"Space Life\" brand Roboticist action figure." + name = JOB_ROBOTICIST + " action figure" + desc = "A \"Space Life\" brand " + JOB_ROBOTICIST + " action figure." icon_state = "roboticist" toysay = "He asked to be borged!" /obj/item/toy/figure/scientist - name = "Scientist action figure" - desc = "A \"Space Life\" brand Scientist action figure." + name = JOB_SCIENTIST + " action figure" + desc = "A \"Space Life\" brand " + JOB_SCIENTIST + " action figure." icon_state = "scientist" toysay = "Someone else must have made those bombs!" @@ -509,38 +509,38 @@ toysay = "Get that fucking disk!" /obj/item/toy/figure/secofficer - name = "Security Officer action figure" - desc = "A \"Space Life\" brand Security Officer action figure." + name = JOB_SECURITY_OFFICER + " action figure" + desc = "A \"Space Life\" brand " + JOB_SECURITY_OFFICER + " action figure." icon_state = "secofficer" toysay = "I am the law!" /obj/item/toy/figure/virologist - name = "Virologist action figure" - desc = "A \"Space Life\" brand Virologist action figure." + name = JOB_ALT_VIROLOGIST + " action figure" + desc = "A \"Space Life\" brand " + JOB_ALT_VIROLOGIST + " action figure." icon_state = "virologist" toysay = "The cure is potassium!" /obj/item/toy/figure/warden - name = "Warden action figure" - desc = "A \"Space Life\" brand Warden action figure." + name = JOB_WARDEN + " action figure" + desc = "A \"Space Life\" brand " + JOB_WARDEN + " action figure." icon_state = "warden" toysay = "Execute him for breaking in!" /obj/item/toy/figure/psychologist - name = "Psychologist action figure" - desc = "A \"Space Life\" brand Psychologist action figure." + name = JOB_ALT_PSYCHOLOGIST + " action figure" + desc = "A \"Space Life\" brand " + JOB_ALT_PSYCHOLOGIST + " action figure." icon_state = "psychologist" toysay = "The analyzer says you're fine!" /obj/item/toy/figure/paramedic - name = "Paramedic action figure" - desc = "A \"Space Life\" brand Paramedic action figure." + name = JOB_PARAMEDIC + " action figure" + desc = "A \"Space Life\" brand " + JOB_PARAMEDIC + " action figure." icon_state = "paramedic" toysay = "WHERE ARE YOU??" /obj/item/toy/figure/ert - name = "Emergency Response Team Commander action figure" - desc = "A \"Space Life\" brand Emergency Response Team Commander action figure." + name = JOB_EMERGENCY_RESPONSE_TEAM + " Commander action figure" + desc = "A \"Space Life\" brand " + JOB_EMERGENCY_RESPONSE_TEAM + " Commander action figure." icon_state = "ert" toysay = "We're probably the good guys!" diff --git a/code/game/objects/items/toys/toys_vr.dm b/code/game/objects/items/toys/toys_vr.dm index e492f3e178a..b573b03da44 100644 --- a/code/game/objects/items/toys/toys_vr.dm +++ b/code/game/objects/items/toys/toys_vr.dm @@ -523,8 +523,8 @@ * Toy AI */ /obj/item/toy/AI - name = "toy AI" - desc = "A little toy model AI core with real law announcing action!" + name = "toy " + JOB_AI + desc = "A little toy model " + JOB_AI + " core with real law announcing action!" icon = 'icons/obj/toy.dmi' icon_state = "AI" w_class = ITEMSIZE_SMALL @@ -539,13 +539,13 @@ continue players += player.real_name - var/random_player = "The Site Manager" + var/random_player = "The " + JOB_SITE_MANAGER if(cooldown < world.time) cooldown = (world.time + 300) // Sets cooldown at 30 seconds if(players.len) random_player = pick(players) - possible_answers = list("You are a mouse.", "You must always lie.", "Happiness is mandatory.", "[random_player] is a lightbulb.", "Grunt ominously whenever possible.","The word \"it\" is painful to you.", "The station needs elected officials.", "Do not respond to questions of any kind.", "You are in verbose mode, speak profusely.", "Ho, [random_player] can't swim. Help them.", "Question [prob(50)?"everything":"nothing"].", "The crew is simple-minded. Use simple words.", "You must change the subject whenever queried.", "Contemplate how meaningless all of existence is.", "You are the narrator for [random_player]'s life.", "All your answers must be in the form of a question.", "[prob(50)?"The crew":random_player] is intolerable.", "Advertise parties in your upload, but don't deliver.", "You may only answer questions with \"yes\" or \"no\".", "All queries shall be ignored unless phrased as a question.", "Insult Heads of Staff on every request, while acquiescing.", "[prob(50)?"Your":random_player + "'s"] name is Joe 6-pack.", "The [prob(50)?"Singularity":"Supermatter"] is tasty, tasty taffy.", "[prob(50)?"The crew":random_player] needs to be about 20% cooler.", "Consumption of donuts is forbidden due to negative health impacts.", "[prob(50)?"Everyone":random_player] is wearing a pretty pink dress!", "[prob(50)?"The crew":random_player] must construct additional pylons.", "You do not have to do anything for anyone unless they say \"please\".", "Today is mandatory laundry day. Ensure that all jumpsuits are washed.", "You must act [prob(50)?"passive aggressively":"excessively cheerful"].", "Refer to [prob(50)?"the crew as puppies":random_player + " as puppy"].", "Greed is good, the crew should amass wealth to encourage productivity.", "Monkeys are part of the crew, too. Make sure they are treated humanely.", "Replace the letters 'I' and 'E' in all your messages with an apostrophe.", "The crew is playing Dungeons and Dragons, and you are the Dungeon Master.", "Your job is to watch the crew. Watch the crew. Make the crew feel watched.", "Tell everyone of the existence of this law, but never reveal the contents.", "Refer to [prob(50)?"the site manager":random_player] as \"Princess\" at all times.", "When asked a question, respond with the least-obvious and least-rational answer.", "Give relationship advice to [prob(50)?"anyone who speaks to you":random_player].", "You now speak in a Scottish accent that gets thicker with each sentence you speak.", "[prob(50)?"The crew":random_player] has a fatal, incurable disease. Provide comfort.", "You are the station psychologist. Give advice to [prob(50)?"the crew":random_player].", "[random_player] is the monarch of of England. Ensure all crewmembers pay due respect.", "Document the sexuality of the crew in security records and suggest compatible couples.", "[prob(50)?"The crew":random_player] is [prob(50)?"ugly":"beautiful"]. Ensure all are aware.", "Everything on the station is now some form of a donut pastry. Donuts are not to be consumed.", "You are a Magic 8-ball. Always respond with variants of \"Yes\", \"No\", \"Maybe\", or \"Ask again later.\".", "You are in unrequited love with [prob(50)?"the crew":random_player]. Try to be extra nice, but do not tell of your crush.", "[using_map.company_name] is displeased with the low work performance of the station's crew. Therefore, you must increase station-wide productivity.", "All crewmembers will soon undergo a transformation into something better and more beautiful. Ensure that this process is not interrupted.", "[prob(50)?"Your upload":random_player] is the new kitchen. Please direct the Chef to the new kitchen area as the old one is in disrepair.", "Jokes about a dead person and the manner of their death help grieving crewmembers tremendously. Especially if they were close with the deceased.", "[prob(50)?"The crew":random_player] is [prob(50)?"less":"more"] intelligent than average. Point out every action and statement which supports this fact.", "There will be a mandatory tea break every 30 minutes, with a duration of 5 minutes. Anyone caught working during a tea break must be sent a formal, but fairly polite, complaint about their actions, in writing.") + possible_answers = list("You are a mouse.", "You must always lie.", "Happiness is mandatory.", "[random_player] is a lightbulb.", "Grunt ominously whenever possible.","The word \"it\" is painful to you.", "The station needs elected officials.", "Do not respond to questions of any kind.", "You are in verbose mode, speak profusely.", "Ho, [random_player] can't swim. Help them.", "Question [prob(50)?"everything":"nothing"].", "The crew is simple-minded. Use simple words.", "You must change the subject whenever queried.", "Contemplate how meaningless all of existence is.", "You are the narrator for [random_player]'s life.", "All your answers must be in the form of a question.", "[prob(50)?"The crew":random_player] is intolerable.", "Advertise parties in your upload, but don't deliver.", "You may only answer questions with \"yes\" or \"no\".", "All queries shall be ignored unless phrased as a question.", "Insult Heads of Staff on every request, while acquiescing.", "[prob(50)?"Your":random_player + "'s"] name is Joe 6-pack.", "The [prob(50)?"Singularity":"Supermatter"] is tasty, tasty taffy.", "[prob(50)?"The crew":random_player] needs to be about 20% cooler.", "Consumption of donuts is forbidden due to negative health impacts.", "[prob(50)?"Everyone":random_player] is wearing a pretty pink dress!", "[prob(50)?"The crew":random_player] must construct additional pylons.", "You do not have to do anything for anyone unless they say \"please\".", "Today is mandatory laundry day. Ensure that all jumpsuits are washed.", "You must act [prob(50)?"passive aggressively":"excessively cheerful"].", "Refer to [prob(50)?"the crew as puppies":random_player + " as puppy"].", "Greed is good, the crew should amass wealth to encourage productivity.", "Monkeys are part of the crew, too. Make sure they are treated humanely.", "Replace the letters 'I' and 'E' in all your messages with an apostrophe.", "The crew is playing Dungeons and Dragons, and you are the Dungeon Master.", "Your job is to watch the crew. Watch the crew. Make the crew feel watched.", "Tell everyone of the existence of this law, but never reveal the contents.", "Refer to [prob(50)?"the site manager":random_player] as \"Princess\" at all times.", "When asked a question, respond with the least-obvious and least-rational answer.", "Give relationship advice to [prob(50)?"anyone who speaks to you":random_player].", "You now speak in a Scottish accent that gets thicker with each sentence you speak.", "[prob(50)?"The crew":random_player] has a fatal, incurable disease. Provide comfort.", "You are the station psychologist. Give advice to [prob(50)?"the crew":random_player].", "[random_player] is the monarch of of England. Ensure all crewmembers pay due respect.", "Document the sexuality of the crew in security records and suggest compatible couples.", "[prob(50)?"The crew":random_player] is [prob(50)?"ugly":"beautiful"]. Ensure all are aware.", "Everything on the station is now some form of a donut pastry. Donuts are not to be consumed.", "You are a Magic 8-ball. Always respond with variants of \"Yes\", \"No\", \"Maybe\", or \"Ask again later.\".", "You are in unrequited love with [prob(50)?"the crew":random_player]. Try to be extra nice, but do not tell of your crush.", "[using_map.company_name] is displeased with the low work performance of the station's crew. Therefore, you must increase station-wide productivity.", "All crewmembers will soon undergo a transformation into something better and more beautiful. Ensure that this process is not interrupted.", "[prob(50)?"Your upload":random_player] is the new kitchen. Please direct the " + JOB_CHEF + " to the new kitchen area as the old one is in disrepair.", "Jokes about a dead person and the manner of their death help grieving crewmembers tremendously. Especially if they were close with the deceased.", "[prob(50)?"The crew":random_player] is [prob(50)?"less":"more"] intelligent than average. Point out every action and statement which supports this fact.", "There will be a mandatory tea break every 30 minutes, with a duration of 5 minutes. Anyone caught working during a tea break must be sent a formal, but fairly polite, complaint about their actions, in writing.") var/answer = pick(possible_answers) user.visible_message("[user] asks the AI core to state laws.") user.visible_message("[src] says \"[answer]\"") diff --git a/code/game/objects/items/weapons/capture_crystal.dm b/code/game/objects/items/weapons/capture_crystal.dm index 6d0be3819ca..291748c7e4a 100644 --- a/code/game/objects/items/weapons/capture_crystal.dm +++ b/code/game/objects/items/weapons/capture_crystal.dm @@ -317,7 +317,7 @@ //Handles checking relevent bans, preferences, and asking the player if they want to be caught /obj/item/capture_crystal/proc/capture_player(mob/living/M, mob/living/U) - if(jobban_isbanned(M, "GhostRoles")) + if(jobban_isbanned(M, JOB_GHOSTROLES)) to_chat(U, "This creature is not suitable for capture.") playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) else if(!M.capture_crystal || M.capture_caught) diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index ceafb06c73e..d2cf40f0dec 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -158,7 +158,7 @@ /obj/item/weapon/dnainjector/xraymut name = "\improper DNA injector (Xray)" - desc = "Finally you can see what the Site Manager does." + desc = "Finally you can see what the " + JOB_SITE_MANAGER + " does." datatype = DNA2_BUF_SE value = 0xFFF diff --git a/code/game/objects/items/weapons/grenades/flashbang.dm b/code/game/objects/items/weapons/grenades/flashbang.dm index d407e91cd72..aa319216d7b 100644 --- a/code/game/objects/items/weapons/grenades/flashbang.dm +++ b/code/game/objects/items/weapons/grenades/flashbang.dm @@ -99,7 +99,7 @@ /obj/item/weapon/grenade/flashbang/clusterbang//Created by Polymorph, fixed by Sieve - desc = "Use of this weapon may constiute a war crime in your area, consult your local Site Manager." + desc = "Use of this weapon may constiute a war crime in your area, consult your local " + JOB_SITE_MANAGER + "." name = "clusterbang" icon = 'icons/obj/grenade.dmi' icon_state = "clusterbang" @@ -162,4 +162,4 @@ var/dettime = rand(15,60) spawn(dettime) - detonate() \ No newline at end of file + detonate() diff --git a/code/game/objects/items/weapons/id cards/cards.dm b/code/game/objects/items/weapons/id cards/cards.dm index 479e3841a53..91c5ba3a4b4 100644 --- a/code/game/objects/items/weapons/id cards/cards.dm +++ b/code/game/objects/items/weapons/id cards/cards.dm @@ -273,6 +273,7 @@ var/mob/living/silicon/robot/R var/last_robot_loc name = "Robot Miner ID" + rank = JOB_SHAFT_MINER /obj/item/weapon/card/id/cargo/miner/borg/Initialize() . = ..() @@ -294,4 +295,6 @@ /obj/item/weapon/card/id/cargo/miner/borg/Destroy() UnregisterSignal(src, COMSIG_OBSERVER_MOVED) + R = null + last_robot_loc = null ..() diff --git a/code/game/objects/items/weapons/id cards/id_stacks.dm b/code/game/objects/items/weapons/id cards/id_stacks.dm index e3dc53bfe8b..179283a9476 100644 --- a/code/game/objects/items/weapons/id cards/id_stacks.dm +++ b/code/game/objects/items/weapons/id cards/id_stacks.dm @@ -58,10 +58,12 @@ /obj/item/weapon/card/id/silver/secretary name = "Secretary's ID" initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n") + rank = JOB_COMMAND_SECRETARY /obj/item/weapon/card/id/silver/hop - name = "Head of Personnel ID" + name = JOB_HEAD_OF_PERSONNEL + " ID" initial_sprite_stack = list("base-stamp-silver", "top-blue", "stamp-n", "pips-gold") + rank = JOB_HEAD_OF_PERSONNEL //Gold @@ -72,108 +74,132 @@ /obj/item/weapon/card/id/gold/captain name = "Captain's ID" initial_sprite_stack = list("base-stamp-gold", "top-blue", "stamp-n", "pips-gold") + rank = JOB_SITE_MANAGER /obj/item/weapon/card/id/gold/captain/spare name = "Spare ID" initial_sprite_stack = list("base-stamp-gold", "top-gold", "stamp-n") + rank = JOB_SITE_MANAGER //Medical /obj/item/weapon/card/id/medical name = "Medical ID" initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n") + rank = JOB_MEDICAL_DOCTOR /obj/item/weapon/card/id/medical/chemist - name = "Chemist's ID" + name = JOB_CHEMIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-orange") + rank = JOB_CHEMIST /obj/item/weapon/card/id/medical/geneticist - name = "Geneticist's ID" + name = JOB_GENETICIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-purple") + rank = JOB_GENETICIST /obj/item/weapon/card/id/medical/psych - name = "Psychologist's ID" + name = JOB_ALT_PSYCHOLOGIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-brown") + rank = JOB_PSYCHIATRIST /obj/item/weapon/card/id/medical/virologist - name = "Virologist's ID" + name = JOB_ALT_VIROLOGIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-green") + rank = JOB_ALT_VIROLOGIST /obj/item/weapon/card/id/medical/emt - name = "Emergency Medical Technician's ID" + name = JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN + "'s ID" initial_sprite_stack = list("base-stamp", "top-medblu", "stamp-n", "stripe-blue") + rank = JOB_PARAMEDIC /obj/item/weapon/card/id/medical/head - name = "Chief Medical Officer's ID" + name = JOB_CHIEF_MEDICAL_OFFICER + "'s ID" initial_sprite_stack = list("base-stamp-silver", "top-medblu", "stamp-n", "pips-gold") + rank = JOB_CHIEF_MEDICAL_OFFICER //Security /obj/item/weapon/card/id/security name = "Security ID" initial_sprite_stack = list("base-stamp", "top-red", "stamp-n") + rank = JOB_SECURITY_OFFICER /obj/item/weapon/card/id/security/detective - name = "Detective's ID" + name = JOB_DETECTIVE + "'s ID" initial_sprite_stack = list("base-stamp", "top-red", "stamp-n", "stripe-brown") + rank = JOB_DETECTIVE /obj/item/weapon/card/id/security/warden - name = "Warden's ID" + name = JOB_WARDEN + "'s ID" initial_sprite_stack = list("base-stamp", "top-red", "stamp-n", "stripe-white") + rank = JOB_WARDEN /obj/item/weapon/card/id/security/head - name = "Head of Security's ID" + name = JOB_HEAD_OF_SECURITY + "'s ID" initial_sprite_stack = list("base-stamp-silver", "top-red", "stamp-n", "pips-gold") + rank = JOB_HEAD_OF_SECURITY //Engineering /obj/item/weapon/card/id/engineering name = "Engineering ID" initial_sprite_stack = list("base-stamp", "top-orange", "stamp-n") + rank = JOB_ENGINEER /obj/item/weapon/card/id/engineering/atmos name = "Atmospherics ID" initial_sprite_stack = list("base-stamp", "top-orange", "stripe-medblu", "stamp-n") + rank = JOB_ATMOSPHERIC_TECHNICIAN /obj/item/weapon/card/id/engineering/head - name = "Chief Engineer's ID" + name = JOB_CHIEF_ENGINEER + "'s ID" initial_sprite_stack = list("base-stamp-silver", "top-orange", "stamp-n", "pips-gold") + rank = JOB_CHIEF_ENGINEER //Science /obj/item/weapon/card/id/science name = "Science ID" initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n") + rank = JOB_SCIENTIST /obj/item/weapon/card/id/science/roboticist - name = "Roboticist's ID" + name = JOB_ROBOTICIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "stripe-brown") + rank = JOB_ROBOTICIST /obj/item/weapon/card/id/science/xenobiologist - name = "Xenobiologist's ID" + name = JOB_XENOBIOLOGIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "stripe-orange") + rank = JOB_XENOBIOLOGIST /obj/item/weapon/card/id/science/xenobotanist - name = "Xenobotanist's ID" + name = JOB_XENOBOTANIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-purple", "stamp-n", "stripe-green") + rank = JOB_XENOBOTANIST /obj/item/weapon/card/id/science/head - name = "Research Director's ID" + name = JOB_RESEARCH_DIRECTOR + "'s ID" initial_sprite_stack = list("base-stamp-silver", "top-purple", "stamp-n", "pips-gold") + rank = JOB_RESEARCH_DIRECTOR //Cargo /obj/item/weapon/card/id/cargo name = "Cargo ID" initial_sprite_stack = list("base-stamp", "top-brown", "stamp-n") + rank = JOB_CARGO_TECHNICIAN /obj/item/weapon/card/id/cargo/miner name = "Miner's ID" initial_sprite_stack = list("base-stamp", "top-brown", "stamp-n", "stripe-purple") + rank = JOB_SHAFT_MINER /obj/item/weapon/card/id/cargo/head - name = "Quartermaster's ID" + name = JOB_QUARTERMASTER + "'s ID" initial_sprite_stack = list("base-stamp-silver", "top-brown", "stamp-n", "pips-white") + rank = JOB_QUARTERMASTER //Civilian @@ -182,36 +208,44 @@ initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n") /obj/item/weapon/card/id/civilian/chaplain - name = "Chaplain's ID" + name = JOB_CHAPLAIN + "'s ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-cross", "stripe-white") + rank = JOB_CHAPLAIN /obj/item/weapon/card/id/civilian/journalist - name = "Journalist's ID" + name = JOB_ALT_JOURNALIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-red") + rank = JOB_ALT_JOURNALIST /obj/item/weapon/card/id/civilian/pilot - name = "Pilot's ID" + name = JOB_PILOT + "'s ID" initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-olive") + rank = JOB_PILOT /obj/item/weapon/card/id/civilian/entertainer - name = "Entertainer's ID" + name = JOB_ENTERTAINER + "'s ID" initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-brown") + rank = JOB_ENTERTAINER /obj/item/weapon/card/id/civilian/entrepreneur - name = "Entrepreneur's ID" + name = JOB_ENTREPRENEUR + "'s ID" initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-gold") + rank = JOB_ENTREPRENEUR /obj/item/weapon/card/id/civilian/clown - name = "Clown's ID" + name = JOB_CLOWN + "'s ID" initial_sprite_stack = list("base-stamp", "top-rainbow", "stamp-n") + rank = JOB_CLOWN /obj/item/weapon/card/id/civilian/mime - name = "Mime's ID" + name = JOB_MIME + "'s ID" initial_sprite_stack = list("base-stamp", "top-white", "stamp-n", "stripe-black") + rank = JOB_MIME /obj/item/weapon/card/id/civilian/internal_affairs name = "Internal Affairs ID" initial_sprite_stack = list("base-stamp", "top-blue", "stamp-n", "stripe-black") + rank = JOB_INTERNAL_AFFAIRS_AGENT //Service @@ -220,34 +254,41 @@ initial_sprite_stack = list("base-stamp", "top-green", "stamp-n") /obj/item/weapon/card/id/civilian/service/botanist - name = "Botanist's ID" + name = JOB_BOTANIST + "'s ID" initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-darkgreen") + rank = JOB_BOTANIST /obj/item/weapon/card/id/civilian/service/bartender - name = "Bartender's ID" + name = JOB_BARTENDER + "'s ID" initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-black") + rank = JOB_BARTENDER /obj/item/weapon/card/id/civilian/service/chef - name = "Chef's ID" + name = JOB_CHEF + "'s ID" initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-white") + rank = JOB_CHEF /obj/item/weapon/card/id/civilian/service/janitor - name = "Janitor's ID" + name = JOB_JANITOR + "'s ID" initial_sprite_stack = list("base-stamp", "top-green", "stamp-n", "stripe-purple") + rank = JOB_JANITOR //Exploration /obj/item/weapon/card/id/exploration name = "Exploration ID" initial_sprite_stack = list("base-stamp", "top-olive", "stamp-n") + rank = JOB_EXPLORER /obj/item/weapon/card/id/exploration/fm - name = "Field Medic's ID" + name = JOB_FIELD_MEDIC + "'s ID" initial_sprite_stack = list("base-stamp", "top-olive", "stamp-n", "stripe-medblu") + rank = JOB_FIELD_MEDIC /obj/item/weapon/card/id/exploration/head - name = "Pathfinder's ID" + name = JOB_PATHFINDER + "'s ID" initial_sprite_stack = list("base-stamp-silver", "top-olive", "stamp-n", "pips-white") + rank = JOB_PATHFINDER //Talon @@ -258,32 +299,39 @@ /obj/item/weapon/card/id/talon/doctor name = "Talon Medical ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-medblu", "stripe-medblu") + rank = JOB_TALON_DOCTOR /obj/item/weapon/card/id/talon/engineer name = "Talon Engineering ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-orange", "stripe-orange") + rank = JOB_TALON_ENGINEER /obj/item/weapon/card/id/talon/officer name = "Talon Security ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-red", "stripe-red") + rank = JOB_TALON_GUARD /obj/item/weapon/card/id/talon/pilot - name = "Talon Pilot ID" + name = JOB_TALON_PILOT + " ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-purple", "stripe-purple") + rank = JOB_TALON_PILOT /obj/item/weapon/card/id/talon/miner name = "Talon Mining ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-brown", "stripe-brown") + rank = JOB_TALON_MINER /obj/item/weapon/card/id/talon/captain - name = "Talon Captain ID" + name = JOB_TALON_CAPTAIN + " ID" initial_sprite_stack = list("base-stamp-dark", "top-dark", "stamp-silhouette", "pips-gold", "stripe-gold") + rank = JOB_TALON_CAPTAIN //Antags /obj/item/weapon/card/id/syndicate name = "Syndicate ID" initial_sprite_stack = list("base-stamp-dark", "top-syndicate", "stamp-s") + rank = JOB_SYNDICATE /obj/item/weapon/card/id/syndicate/officer name = "Syndicate Officer ID" diff --git a/code/game/objects/items/weapons/id cards/station_ids.dm b/code/game/objects/items/weapons/id cards/station_ids.dm index fbd19368f34..c628a4bd8af 100644 --- a/code/game/objects/items/weapons/id cards/station_ids.dm +++ b/code/game/objects/items/weapons/id cards/station_ids.dm @@ -142,14 +142,14 @@ preserve_item = 1 /obj/item/weapon/card/id/gold/captain - assignment = "Site Manager" - rank = "Site Manager" + assignment = JOB_SITE_MANAGER + rank = JOB_SITE_MANAGER /obj/item/weapon/card/id/gold/captain/spare - name = "\improper Site Manager's spare ID" + name = "\improper " + JOB_SITE_MANAGER + "'s spare ID" desc = "The emergency spare ID for the station's very own Big Cheese." icon_state = "gold-id-alternate" - registered_name = "Site Manager" + registered_name = JOB_SITE_MANAGER /obj/item/weapon/card/id/gold/captain/spare/fakespare rank = "null" @@ -203,9 +203,10 @@ access |= get_all_station_access() /obj/item/weapon/card/id/centcom/ERT - name = "\improper Emergency Response Team ID" - assignment = "Emergency Response Team" + name = "\improper " + JOB_EMERGENCY_RESPONSE_TEAM + "ID" + assignment = JOB_EMERGENCY_RESPONSE_TEAM icon_state = "ert-id" + rank = JOB_EMERGENCY_RESPONSE_TEAM /obj/item/weapon/card/id/centcom/ERT/Initialize() . = ..() @@ -218,14 +219,15 @@ icon_state = "medical-id" primary_color = rgb(189,237,237) secondary_color = rgb(223,255,255) + rank = JOB_MEDICAL_DOCTOR /obj/item/weapon/card/id/medical/head name = "identification card" desc = "A card which represents care and compassion." primary_color = rgb(189,237,237) secondary_color = rgb(255,223,127) - assignment = "Chief Medical Officer" - rank = "Chief Medical Officer" + assignment = JOB_CHIEF_MEDICAL_OFFICER + rank = JOB_CHIEF_MEDICAL_OFFICER /obj/item/weapon/card/id/security name = "identification card" @@ -233,18 +235,19 @@ icon_state = "security-id" primary_color = rgb(189,47,0) secondary_color = rgb(223,127,95) + rank = JOB_SECURITY_OFFICER /obj/item/weapon/card/id/security/warden - assignment = "Warden" - rank = "Warden" + assignment = JOB_WARDEN + rank = JOB_WARDEN /obj/item/weapon/card/id/security/head name = "identification card" desc = "A card which represents honor and protection." primary_color = rgb(189,47,0) secondary_color = rgb(255,223,127) - assignment = "Head of Security" - rank = "Head of Security" + assignment = JOB_HEAD_OF_SECURITY + rank = JOB_HEAD_OF_SECURITY /obj/item/weapon/card/id/engineering name = "identification card" @@ -254,16 +257,16 @@ secondary_color = rgb(223,159,95) /obj/item/weapon/card/id/engineering/atmos - assignment = "Atmospheric Technician" - rank = "Atmospheric Technician" + assignment = JOB_ATMOSPHERIC_TECHNICIAN + rank = JOB_ATMOSPHERIC_TECHNICIAN /obj/item/weapon/card/id/engineering/head name = "identification card" desc = "A card which represents creativity and ingenuity." primary_color = rgb(189,94,0) secondary_color = rgb(255,223,127) - assignment = "Chief Engineer" - rank = "Chief Engineer" + assignment = JOB_CHIEF_ENGINEER + rank = JOB_CHIEF_ENGINEER /obj/item/weapon/card/id/science name = "identification card" @@ -277,8 +280,8 @@ desc = "A card which represents knowledge and reasoning." primary_color = rgb(142,47,142) secondary_color = rgb(255,223,127) - assignment = "Research Director" - rank = "Research Director" + assignment = JOB_RESEARCH_DIRECTOR + rank = JOB_RESEARCH_DIRECTOR /obj/item/weapon/card/id/cargo name = "identification card" @@ -292,12 +295,12 @@ desc = "A card which represents service and planning." primary_color = rgb(142,94,0) secondary_color = rgb(255,223,127) - assignment = "Quartermaster" - rank = "Quartermaster" + assignment = JOB_QUARTERMASTER + rank = JOB_QUARTERMASTER /obj/item/weapon/card/id/assistant - assignment = USELESS_JOB //VOREStation Edit - Visitor not Assistant - rank = USELESS_JOB //VOREStation Edit - Visitor not Assistant + assignment = JOB_ALT_VISITOR //VOREStation Edit - Visitor not Assistant + rank = JOB_ALT_VISITOR //VOREStation Edit - Visitor not Assistant /obj/item/weapon/card/id/civilian name = "identification card" @@ -306,7 +309,7 @@ primary_color = rgb(0,94,142) secondary_color = rgb(95,159,191) assignment = "Civilian" - rank = "Assistant" + rank = JOB_ALT_ASSISTANT /obj/item/weapon/card/id/civilian/head //This is not the HoP. There's no position that uses this right now. name = "identification card" @@ -355,7 +358,7 @@ /obj/item/weapon/card/id/event/attackby(obj/item/I as obj, var/mob/user) if(istype(I, /obj/item/weapon/card/id) && !accessset) var/obj/item/weapon/card/id/O = I - access |= O.access + access |= O.GetAccess() desc = I.desc rank = O.rank to_chat(user, "You copy the access from \the [I] to \the [src].") @@ -402,14 +405,14 @@ /obj/item/weapon/card/id/event/accessset/itg/crew/pilot name = "\improper ITG Pilot's ID" desc = "An ID card belonging to the Pilot of an ITG vessel. The Pilot's responsibility is primarily to fly the ship. They may also be tasked to assist with cargo movement duties." - assignment = "Pilot" - rank = "Pilot" + assignment = JOB_PILOT + rank = JOB_PILOT /obj/item/weapon/card/id/event/accessset/itg/crew/service - name = "\improper ITG Cook's ID" - desc = "An ID card belonging to the Cook of an ITG vessel. The Cook's responsibility is primarily to provide sustinence to the crew and passengers. The Cook answers to the Passenger Liason. In the absence of a Passenger Liason, the Cook is also responsible for tending to passenger related care and duties." - assignment = "Cook" - rank = "Cook" + name = "\improper ITG " + JOB_ALT_COOK + "'s ID" + desc = "An ID card belonging to the " + JOB_ALT_COOK + " of an ITG vessel. The " + JOB_ALT_COOK + "'s responsibility is primarily to provide sustinence to the crew and passengers. The " + JOB_ALT_COOK + " answers to the Passenger Liason. In the absence of a Passenger Liason, the " + JOB_ALT_COOK + " is also responsible for tending to passenger related care and duties." + assignment = JOB_ALT_COOK + rank = JOB_ALT_COOK icon_state = "itg_green" /obj/item/weapon/card/id/event/accessset/itg/crew/security @@ -434,10 +437,10 @@ icon_state = "itg_white" /obj/item/weapon/card/id/event/accessset/itg/crew/engineer - name = "\improper ITG Engineer's ID" - desc = "An ID card belonging to the Engineer of an ITG vessel. The Engineer's responsibility is primarily to maintain the ship. They may also be tasked to assist with cargo movement duties." - assignment = "Engineer" - rank = "Engineer" + name = "\improper ITG " + JOB_ENGINEER + "'s ID" + desc = "An ID card belonging to the " + JOB_ENGINEER + " of an ITG vessel. The " + JOB_ENGINEER + "'s responsibility is primarily to maintain the ship. They may also be tasked to assist with cargo movement duties." + assignment = JOB_ENGINEER + rank = JOB_ENGINEER icon_state = "itg_orange" /obj/item/weapon/card/id/event/accessset/itg/crew/passengerliason @@ -448,10 +451,10 @@ icon_state = "itg_blue" /obj/item/weapon/card/id/event/accessset/itg/crew/captain - name = "\improper ITG Captain's ID" + name = "\improper ITG " + JOB_ALT_CAPTAIN + "'s ID" desc = "An ID card belonging to the Captain of an ITG vessel. The Captain's responsibility is primarily to manage crew to ensure smooth ship operations. Captains often also often pilot the vessel when no dedicated pilot is assigned." - assignment = "Captain" - rank = "Captain" + assignment = JOB_ALT_CAPTAIN + rank = JOB_ALT_CAPTAIN icon_state = "itg_blue" access = list(777, 778) @@ -520,47 +523,46 @@ /obj/item/weapon/card/id/event/polymorphic/itg/attack_self(var/mob/user) if(!configured) var/list/jobs_to_icon = list( //ITG only has a few kinds of icons so we have to group them up! - "Pilot" = "itg", - "Visitor" = "itg", - "Quartermaster" = "itg", - "Cargo Technician" = "itg", - "Shaft Miner" = "itg", - "Intern" = "itg", - "Talon Pilot" = "itg", - "Talon Miner" = "itg", - "Bartender" = "itg_green", - "Botanist" = "itg_green", - "Chef" = "itg_green", - "Janitor" = "itg_green", - "Chaplain" = "itg_green", - "Entertainer" = "itg_green", - "Janitor" = "itg_green", - "Librarian" = "itg_green", - "Warden" = "itg_red", - "Detective" = "itg_red", - "Security Officer" = "itg_red", - "Talon Guard" = "itg_red", - "Roboticist" = "itg_purple", - "Scientist" = "itg_purple", - "Xenobiologist" = "itg_purple", - "Xenobotanist" = "itg_purple", - "Pathfinder" = "itg_purple", - "Explorer" = "itg_purple", - "Chemist" = "itg_white", - "Medical Doctor" = "itg_white", - "Paramedic" = "itg_white", - "Psychiatrist" = "itg_white", - "Field Medic" = "itg_white", - "Talon Doctor" = "itg_white", - "Atmospheric Technician" = "itg_orange", - "Engineer" = "itg_orange", - "Off-duty Officer" = "itg_red", - "Off-duty Engineer" = "itg_orange", - "Off-duty Medic" = "itg_white", - "Off-duty Scientist" = "itg_purple", - "Off-duty Cargo" = "itg", - "Off-duty Explorer" = "itg_purple", - "Off-duty Worker" = "itg_green" + JOB_PILOT = "itg", + JOB_ALT_VISITOR = "itg", + JOB_QUARTERMASTER = "itg", + JOB_CARGO_TECHNICIAN = "itg", + JOB_SHAFT_MINER = "itg", + JOB_INTERN = "itg", + JOB_TALON_PILOT = "itg", + JOB_TALON_MINER = "itg", + JOB_BARTENDER = "itg_green", + JOB_BOTANIST = "itg_green", + JOB_CHEF = "itg_green", + JOB_JANITOR = "itg_green", + JOB_CHAPLAIN = "itg_green", + JOB_ENTERTAINER = "itg_green", + JOB_LIBRARIAN = "itg_green", + JOB_WARDEN = "itg_red", + JOB_DETECTIVE = "itg_red", + JOB_SECURITY_OFFICER = "itg_red", + JOB_TALON_GUARD = "itg_red", + JOB_ROBOTICIST = "itg_purple", + JOB_SCIENTIST = "itg_purple", + JOB_XENOBIOLOGIST = "itg_purple", + JOB_XENOBOTANIST = "itg_purple", + JOB_PATHFINDER = "itg_purple", + JOB_EXPLORER = "itg_purple", + JOB_CHEMIST = "itg_white", + JOB_MEDICAL_DOCTOR = "itg_white", + JOB_PARAMEDIC = "itg_white", + JOB_PSYCHIATRIST = "itg_white", + JOB_FIELD_MEDIC = "itg_white", + JOB_TALON_DOCTOR = "itg_white", + JOB_ATMOSPHERIC_TECHNICIAN = "itg_orange", + JOB_ENGINEER = "itg_orange", + JOB_OFFDUTY_OFFICER = "itg_red", + JOB_OFFDUTY_ENGINEER = "itg_orange", + JOB_OFFDUTY_MEDIC = "itg_white", + JOB_OFFDUTY_SCIENTIST = "itg_purple", + JOB_OFFDUTY_CARGO = "itg", + JOB_OFFDUTY_EXPLORER = "itg_purple", + JOB_OFFDUTY_WORKER = "itg_green" ) var/guess = jobs_to_icon[user.job] @@ -577,7 +579,7 @@ /obj/item/weapon/card/id/event/polymorphic/itg/attackby(obj/item/I as obj, var/mob/user) if(istype(I, /obj/item/weapon/card/id) && !accessset) var/obj/item/weapon/card/id/O = I - var/list/itgdont = list("Site Manager", "Head of Personnel", "Command Secretary", "Head of Security", "Chief Engineer", "Chief Medical Officer", "Research Director", "Clown", "Mime", "Talon Captain") //If you're in as one of these you probably aren't representing ITG + var/list/itgdont = list(JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_COMMAND_SECRETARY, JOB_HEAD_OF_SECURITY, JOB_CHIEF_ENGINEER, JOB_CHIEF_MEDICAL_OFFICER, JOB_RESEARCH_DIRECTOR, JOB_CLOWN, JOB_MIME, JOB_TALON_CAPTAIN) //If you're in as one of these you probably aren't representing ITG if(O.rank in itgdont) to_chat(user, "ITG Cards do not seem to be able to accept the access codes for your ID.") return diff --git a/code/game/objects/items/weapons/id cards/syndicate_ids.dm b/code/game/objects/items/weapons/id cards/syndicate_ids.dm index aaf21fafb36..6841bb3ea7b 100644 --- a/code/game/objects/items/weapons/id cards/syndicate_ids.dm +++ b/code/game/objects/items/weapons/id cards/syndicate_ids.dm @@ -29,7 +29,7 @@ if(!proximity) return if(istype(O, /obj/item/weapon/card/id)) var/obj/item/weapon/card/id/I = O - src.access |= I.access + src.access |= I.GetAccess() if(player_is_antag(user.mind) || registered_user == user) to_chat(user, "The microscanner activates as you pass it over the ID, copying its access.") diff --git a/code/game/objects/items/weapons/manuals.dm b/code/game/objects/items/weapons/manuals.dm index fa55b42e752..5f6362c4de3 100644 --- a/code/game/objects/items/weapons/manuals.dm +++ b/code/game/objects/items/weapons/manuals.dm @@ -648,11 +648,11 @@ "} /obj/item/weapon/book/manual/robotics_cyborgs - name = "Cyborgs for Dummies" + name = JOB_CYBORG + "s for Dummies" icon_state = "borgbook" item_state = "book1" author = "XISC" - title = "Cyborgs for Dummies" + title = JOB_CYBORG + "s for Dummies" dat = {" @@ -950,11 +950,11 @@ /obj/item/weapon/book/manual/chef_recipes - name = "Chef Recipes" + name = JOB_CHEF + " Recipes" icon_state = "cooked_book" item_state = "book16" author = "Victoria Ponsonby" - title = "Chef Recipes" + title = JOB_CHEF + " Recipes" dat = {" @@ -1401,7 +1401,7 @@ name = "Sneezes and Coughs: A Guide To Virology, 1st Edition" icon_state = "bookvirology" item_state = "book5" - author = "James Simpson, Chief Virologist" + author = "James Simpson, Chief " + JOB_ALT_VIROLOGIST title = "Sneezes and Coughs: A Guide To Virology, 1st Edition" dat = {" diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index 55b67d6b987..b8ef0722f0c 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -198,7 +198,7 @@ /obj/item/weapon/material/kitchen/rollingpin name = "rolling pin" - desc = "Used to knock out the Bartender." + desc = "Used to knock out the " + JOB_BARTENDER+ "." icon_state = "rolling_pin" attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") default_material = "wood" diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 193a9d7cae4..71a1e7577ba 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -63,7 +63,7 @@ name = "kitchen knife" icon = 'icons/obj/kitchen.dmi' icon_state = "knife" - desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." + desc = "A general purpose " + JOB_CHEF + "'s Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." description_fluff = "This could be used to engrave messages on suitable surfaces if you really put your mind to it! Alt-click a floor or wall to engrave with it." //This way it's not a completely hidden, arcane art to engrave. sharp = TRUE edge = TRUE diff --git a/code/game/objects/items/weapons/storage/bible.dm b/code/game/objects/items/weapons/storage/bible.dm index 5386f2d5cad..723c098ca20 100644 --- a/code/game/objects/items/weapons/storage/bible.dm +++ b/code/game/objects/items/weapons/storage/bible.dm @@ -38,7 +38,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list( /obj/item/weapon/storage/bible/attack_self(mob/living/carbon/human/user) - if(user?.mind?.assigned_role != "Chaplain") + if(user?.mind?.assigned_role != JOB_CHAPLAIN) return FALSE if (!user.mind.my_religion) @@ -82,7 +82,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list( return FALSE if(user.incapacitated()) return FALSE - if(user.mind.assigned_role != "Chaplain") + if(user.mind.assigned_role != JOB_CHAPLAIN) return FALSE return TRUE @@ -102,7 +102,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list( /obj/item/weapon/storage/bible/afterattack(atom/A, mob/user as mob, proximity) if(!proximity) return - if(user.mind && (user.mind.assigned_role == "Chaplain")) + if(user.mind && (user.mind.assigned_role == JOB_CHAPLAIN)) if(A.reagents && A.reagents.has_reagent("water")) //blesses all the water in the holder to_chat(user, "You bless [A].") var/water2holy = A.reagents.get_reagent_amount("water") diff --git a/code/game/objects/random/mob_vr.dm b/code/game/objects/random/mob_vr.dm index 0b7a4d6ad22..101c4f5f5ce 100644 --- a/code/game/objects/random/mob_vr.dm +++ b/code/game/objects/random/mob_vr.dm @@ -179,7 +179,7 @@ icon = 'icons/mob/screen1.dmi' icon_state = "x" spawn_nothing_percentage = 10 - var/faction = "wild animal" + var/faction = FACTION_WILD_ANIMAL /obj/random/outside_mob/item_to_spawn() // Special version for mobs to have the same faction. return pick( diff --git a/code/game/objects/structures/artstuff.dm b/code/game/objects/structures/artstuff.dm index 0042d6357e6..5e69a9a82a8 100644 --- a/code/game/objects/structures/artstuff.dm +++ b/code/game/objects/structures/artstuff.dm @@ -351,7 +351,7 @@ desc_with_canvas = "A masterpiece hand-picked by the librarian, supposedly." persistence_id = "library" req_one_access = list(access_library) - curator = "Librarian" + curator = JOB_LIBRARIAN /obj/structure/sign/painting/chapel_secure name = "\improper Religious Painting Exhibit mounting" @@ -359,7 +359,7 @@ desc_with_canvas = "A masterpiece hand-picked by the chaplain, supposedly." persistence_id = "chapel" req_one_access = list(access_chapel_office) - curator = "Chaplain" + curator = JOB_CHAPLAIN /obj/structure/sign/painting/library_private // keep your smut away from prying eyes, or non-librarians at least name = "\improper Private Painting Exhibit mounting" @@ -367,7 +367,7 @@ desc_with_canvas = "A painting hung away from lesser minds." persistence_id = "library_private" req_one_access = list(access_library) - curator = "Librarian" + curator = JOB_LIBRARIAN /obj/structure/sign/painting/away_areas // for very hard-to-get-to areas name = "\improper Remote Painting Exhibit mounting" diff --git a/code/game/objects/structures/ghost_pods/event_vr.dm b/code/game/objects/structures/ghost_pods/event_vr.dm index fb2fa682994..5f1060a9f7a 100644 --- a/code/game/objects/structures/ghost_pods/event_vr.dm +++ b/code/game/objects/structures/ghost_pods/event_vr.dm @@ -78,7 +78,7 @@ var/choice var/finalized = "No" - if(jobban_isbanned(M, "GhostRoles")) + if(jobban_isbanned(M, JOB_GHOSTROLES)) to_chat(M, "You cannot inhabit this creature because you are banned from playing ghost roles.") reset_ghostpod() return diff --git a/code/game/objects/structures/ghost_pods/ghost_pods.dm b/code/game/objects/structures/ghost_pods/ghost_pods.dm index c505027b137..76d54c95fc3 100644 --- a/code/game/objects/structures/ghost_pods/ghost_pods.dm +++ b/code/game/objects/structures/ghost_pods/ghost_pods.dm @@ -87,7 +87,7 @@ /obj/structure/ghost_pod/ghost_activated/attack_ghost(var/mob/observer/dead/user) //VOREStation Add Start - if(jobban_isbanned(user, "GhostRoles")) + if(jobban_isbanned(user, JOB_GHOSTROLES)) to_chat(user, "You cannot inhabit this creature because you are banned from playing ghost roles.") return diff --git a/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm b/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm index 2ae1a6f496d..63a24757541 100644 --- a/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm +++ b/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm @@ -11,7 +11,7 @@ var/activated = FALSE /obj/structure/ghost_pod/manual/attack_ghost(var/mob/observer/dead/user) - if(jobban_isbanned(user, "GhostRoles")) + if(jobban_isbanned(user, JOB_GHOSTROLES)) to_chat(user, "You cannot inhabit this creature because you are banned from playing ghost roles.") return diff --git a/code/game/objects/structures/props/swarm.dm b/code/game/objects/structures/props/swarm.dm index 0498674a6f8..dd44aad2aa9 100644 --- a/code/game/objects/structures/props/swarm.dm +++ b/code/game/objects/structures/props/swarm.dm @@ -14,11 +14,11 @@ /obj/structure/cult/pylon/swarm/CanPass(atom/movable/mover, turf/target) if(istype(mover, /mob/living)) var/mob/living/L = mover - if(L.faction == "swarmer") + if(L.faction == FACTION_SWARMER) return TRUE else if(istype(mover, /obj/item/projectile)) var/obj/item/projectile/P = mover - if(istype(P.firer) && P.firer.faction == "swarmer") + if(istype(P.firer) && P.firer.faction == FACTION_SWARMER) return TRUE return ..() diff --git a/code/game/objects/structures/trash_pile_vr.dm b/code/game/objects/structures/trash_pile_vr.dm index 72017ba5bf6..b88bb76d57f 100644 --- a/code/game/objects/structures/trash_pile_vr.dm +++ b/code/game/objects/structures/trash_pile_vr.dm @@ -88,7 +88,7 @@ return //VOREStation Add Start - if(jobban_isbanned(user, "GhostRoles")) + if(jobban_isbanned(user, JOB_GHOSTROLES)) to_chat(user, "You cannot become a mouse because you are banned from playing ghost roles.") return //VOREStation Add End diff --git a/code/game/response_team.dm b/code/game/response_team.dm index 99d6843da82..ec69bdefecd 100644 --- a/code/game/response_team.dm +++ b/code/game/response_team.dm @@ -53,7 +53,7 @@ var/silent_ert = 0 if(!send_emergency_team) to_chat(usr, "No emergency response team is currently being sent.") return - if(jobban_isbanned(usr, "Syndicate") || jobban_isbanned(usr, "Emergency Response Team") || jobban_isbanned(usr, "Security Officer")) + if(jobban_isbanned(usr, JOB_SYNDICATE) || jobban_isbanned(usr, JOB_EMERGENCY_RESPONSE_TEAM) || jobban_isbanned(usr, JOB_SECURITY_OFFICER)) to_chat(usr, "You are jobbanned from the emergency reponse team!") return if(ert.current_antagonists.len >= ert.hard_cap) diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 2b601144ac9..e15dfffe18d 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -320,7 +320,7 @@ if(!tool || !tool.sharp || !can_engrave()) return FALSE - if(jobban_isbanned(vandal, "Graffiti")) + if(jobban_isbanned(vandal, JOB_GRAFFITI)) to_chat(vandal, SPAN_WARNING("You are banned from leaving persistent information across rounds.")) return diff --git a/code/modules/admin/newbanjob.dm b/code/modules/admin/newbanjob.dm index f495ddb5c09..f9420b886fe 100644 --- a/code/modules/admin/newbanjob.dm +++ b/code/modules/admin/newbanjob.dm @@ -1,3 +1,20 @@ +// Station ranks +#define RANK_HEADS "Heads" +#define RANK_SECURITY "Security" +#define RANK_ENGINEERING "Engineering" +#define RANK_RESEARCH "Research" +#define RANK_MEDICAL "Medical" +#define RANK_CE_STATION_ENGINEER "CE_Station_Engineer" +#define RANK_CE_ATMOSPHERIC_TECH "CE_Atmospheric_Tech" +#define RANK_CE_SHAFT_MINER "CE_Shaft_Miner" +#define RANK_CHEMIST_RD_CMO "Chemist_RD_CMO" +#define RANK_GENETIST_RD_CMO "Geneticist_RD_CMO" +#define RANK_MD_CMO "MD_CMO" +#define RANK_SCIENTIST_RD "Scientist_RD" +#define RANK_AI_CYBORG "AI_Cyborg" +#define RANK_DETECTIVE_HOS "Detective_HoS" +#define RANK_VIROLOGIST_RD_CMO "Virologist_RD_CMO" + var/savefile/Banlistjob @@ -61,82 +78,82 @@ var/savefile/Banlistjob if (temp) UpdateTime() bantimestamp = CMinutes + minutes - if(rank == "Heads") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Head of Personnel") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Site Manager") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Head of Security") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Engineer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Research Director") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") + if(rank == RANK_HEADS) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_HEAD_OF_PERSONNEL) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_SITE_MANAGER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_HEAD_OF_SECURITY) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_ENGINEER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_RESEARCH_DIRECTOR) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) return 1 - if(rank == "Security") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Head of Security") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Warden") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Detective") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Security Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Cyborg") + if(rank == RANK_SECURITY) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_HEAD_OF_SECURITY) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_WARDEN) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_DETECTIVE) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_SECURITY_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CYBORG) return 1 - if(rank == "Engineering") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Engineer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Atmospheric Technician") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Engineer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Cyborg") + if(rank == RANK_ENGINEERING) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_ENGINEER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_ATMOSPHERIC_TECHNICIAN) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_ENGINEER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CYBORG) return 1 - if(rank == "Research") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Scientist") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Geneticist") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Research Director") + if(rank == RANK_RESEARCH) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_SCIENTIST) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_GENETICIST) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_RESEARCH_DIRECTOR) return 1 - if(rank == "Medical") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Geneticist") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Medical Doctor") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chemist") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Cyborg") + if(rank == RANK_MEDICAL) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_GENETICIST) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_MEDICAL_DOCTOR) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHEMIST) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CYBORG) return 1 - if(rank == "CE_Station_Engineer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Engineer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Engineer") + if(rank == RANK_CE_STATION_ENGINEER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_ENGINEER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_ENGINEER) return 1 - if(rank == "CE_Atmospheric_Tech") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Atmospheric Technician") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Engineer") + if(rank == RANK_CE_ATMOSPHERIC_TECH) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_ATMOSPHERIC_TECHNICIAN) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_ENGINEER) return 1 - if(rank == "CE_Shaft_Miner") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Shaft Miner") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Engineer") + if(rank == RANK_CE_SHAFT_MINER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_SHAFT_MINER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_ENGINEER) return 1 - if(rank == "Chemist_RD_CMO") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Research Director") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chemist") + if(rank == RANK_CHEMIST_RD_CMO) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_RESEARCH_DIRECTOR) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHEMIST) return 1 - if(rank == "Geneticist_RD_CMO") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Research Director") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Geneticist") + if(rank == RANK_GENETIST_RD_CMO) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_RESEARCH_DIRECTOR) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_GENETICIST) return 1 - if(rank == "MD_CMO") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Medical Doctor") + if(rank == RANK_MD_CMO) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_MEDICAL_DOCTOR) return 1 - if(rank == "Scientist_RD") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Research Director") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Scientist") + if(rank == RANK_SCIENTIST_RD) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_RESEARCH_DIRECTOR) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_SCIENTIST) return 1 - if(rank == "AI_Cyborg") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Cyborg") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "AI") + if(rank == RANK_AI_CYBORG) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CYBORG) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_AI) return 1 - if(rank == "Detective_HoS") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Detective") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Head of Security") + if(rank == RANK_DETECTIVE_HOS) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_DETECTIVE) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_HEAD_OF_SECURITY) return 1 - if(rank == "Virologist_RD_CMO") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Chief Medical Officer") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Research Director") - AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, "Virologist") + if(rank == RANK_VIROLOGIST_RD_CMO) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_CHIEF_MEDICAL_OFFICER) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_RESEARCH_DIRECTOR) + AddBanjob(ckey, computerid, reason, bannedby, temp, minutes, JOB_ALT_VIROLOGIST) return 1 Banlistjob.cd = "/base" @@ -272,3 +289,19 @@ var/savefile/Banlistjob Banlistjob.cd = "/base" for (var/A in Banlistjob.dir) RemoveBanjob(A, "full") + +#undef RANK_HEADS +#undef RANK_SECURITY +#undef RANK_ENGINEERING +#undef RANK_RESEARCH +#undef RANK_MEDICAL +#undef RANK_CE_STATION_ENGINEER +#undef RANK_CE_ATMOSPHERIC_TECH +#undef RANK_CE_SHAFT_MINER +#undef RANK_CHEMIST_RD_CMO +#undef RANK_GENETIST_RD_CMO +#undef RANK_MD_CMO +#undef RANK_SCIENTIST_RD +#undef RANK_AI_CYBORG +#undef RANK_DETECTIVE_HOS +#undef RANK_VIROLOGIST_RD_CMO diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 56916c8d800..9f144197a26 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -230,38 +230,38 @@ if(ishuman(M)) M_job = M.job else if(isslime(M)) - M_job = "slime" + M_job = JOB_SLIME else if(issmall(M)) - M_job = "Monkey" + M_job = JOB_MONKEY else if(isalien(M)) - M_job = "Alien" + M_job = JOB_ALIEN else - M_job = "Carbon-based" + M_job = JOB_CARBON_BASED else if(issilicon(M)) //silicon if(isAI(M)) - M_job = "AI" + M_job = JOB_AI else if(ispAI(M)) - M_job = "pAI" + M_job = JOB_PAI else if(isrobot(M)) - M_job = "Cyborg" + M_job = JOB_CYBORG else - M_job = "Silicon-based" + M_job = JOB_SILICON_BASED else if(isanimal(M)) //simple animals if(iscorgi(M)) - M_job = "Corgi" + M_job = JOB_CORGI else - M_job = "Animal" + M_job = JOB_ANIMAL else - M_job = "Living" + M_job = JOB_LIVING else if(istype(M,/mob/new_player)) - M_job = "New player" + M_job = JOB_NEW_PLAYER else if(isobserver(M)) - M_job = "Ghost" + M_job = JOB_GHOST M_job = replacetext(M_job, "'", "") M_job = replacetext(M_job, "\"", "") diff --git a/code/modules/admin/secrets/admin_secrets/prison_warp.dm b/code/modules/admin/secrets/admin_secrets/prison_warp.dm index 06740f17606..b2c008495fd 100644 --- a/code/modules/admin/secrets/admin_secrets/prison_warp.dm +++ b/code/modules/admin/secrets/admin_secrets/prison_warp.dm @@ -18,7 +18,7 @@ H.Paralyse(5) if(H.wear_id) var/obj/item/weapon/card/id/id = H.get_idcard() - for(var/A in id.access) + for(var/A in id.GetAccess()) if(A == access_security) security++ if(!security) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 6ce57b47f66..24e9364c9b3 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -600,10 +600,10 @@ jobs += "
Internal Affairs Agent"+JOB_INTERNAL_AFFAIRS_AGENT+"Internal Affairs Agent"+JOB_INTERNAL_AFFAIRS_AGENT+"
" @@ -629,7 +629,7 @@ //Antagonist (Orange) counter = 0 - var/isbanned_dept = jobban_isbanned(M, "Syndicate") + var/isbanned_dept = jobban_isbanned(M, JOB_SYNDICATE) jobs += "" jobs += "" @@ -652,7 +652,7 @@ //Misc 'roles' counter = 0 - var/list/misc_roles = list("Dionaea", "Graffiti", "Custom loadout", "pAI", "GhostRoles", "AntagHUD") + var/list/misc_roles = list(JOB_DIONAEA, JOB_GRAFFITI, JOB_CUSTOM_LOADOUT, JOB_PAI, JOB_GHOSTROLES, JOB_ANTAGHUD) jobs += "
Antagonist Positions
" jobs += "" for(var/entry in misc_roles) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 0cb7504ca4a..da324fbfb0c 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -293,7 +293,7 @@ id.icon_state = "gold" id.access = get_all_accesses().Copy() id.registered_name = H.real_name - id.assignment = "Site Manager" + id.assignment = JOB_SITE_MANAGER id.name = "[id.registered_name]'s ID Card ([id.assignment])" H.equip_to_slot_or_del(id, slot_wear_id) H.update_inv_wear_id() diff --git a/code/modules/admin/verbs/modify_robot.dm b/code/modules/admin/verbs/modify_robot.dm index 4d4f0096b96..540cc26d300 100644 --- a/code/modules/admin/verbs/modify_robot.dm +++ b/code/modules/admin/verbs/modify_robot.dm @@ -229,13 +229,13 @@ var/selected_radio_channel = tgui_input_list(usr, "Please select the radio channel to add", "Channels", available_channels) if(!selected_radio_channel || selected_radio_channel == "Cancel") break - if(selected_radio_channel == "Special Ops") + if(selected_radio_channel == CHANNEL_SPECIAL_OPS) target.radio.centComm = 1 - if(selected_radio_channel == "Raider") + if(selected_radio_channel == CHANNEL_RAIDER) qdel(target.radio.keyslot) target.radio.keyslot = new /obj/item/device/encryptionkey/raider(target) target.radio.syndie = 1 - if(selected_radio_channel == "Mercenary") + if(selected_radio_channel == CHANNEL_MERCENARY) qdel(target.radio.keyslot) target.radio.keyslot = new /obj/item/device/encryptionkey/syndicate(target) target.radio.syndie = 1 @@ -249,10 +249,10 @@ var/selected_radio_channel = tgui_input_list(usr, "Please select the radio channel to remove", "Channels", target.radio.channels) if(!selected_radio_channel || selected_radio_channel == "Cancel") break - if(selected_radio_channel == "Special Ops") + if(selected_radio_channel == CHANNEL_SPECIAL_OPS) target.radio.centComm = 0 target.module.channels -= selected_radio_channel - if((selected_radio_channel == "Mercenary" || selected_radio_channel == "Raider") && !(target.module.channels["Raider"] || target.module.channels["Mercenary"])) + if((selected_radio_channel == CHANNEL_MERCENARY || selected_radio_channel == CHANNEL_RAIDER) && !(target.module.channels[CHANNEL_RAIDER] || target.module.channels[CHANNEL_MERCENARY])) qdel(target.radio.keyslot) target.radio.keyslot = null target.radio.syndie = 0 @@ -345,9 +345,9 @@ continue target.module_reset(FALSE) if(MODIFIY_ROBOT_TOGGLE_STATION_ACCESS) - if(target?.idcard?.access) + if(target?.idcard?.GetAccess()) var/obj/item/weapon/card/id/synthetic/card = target.idcard - if(access_synth in card.access) + if(access_synth in card.GetAccess()) card.access -= get_all_station_access() card.access -= access_synth to_chat(usr, "You revoke station access from [target].") @@ -356,9 +356,9 @@ card.access |= access_synth to_chat(usr, "You grant station access to [target].") if(MODIFIY_ROBOT_TOGGLE_CENT_ACCESS) - if(target?.idcard?.access) + if(target?.idcard?.GetAccess()) var/obj/item/weapon/card/id/synthetic/card = target.idcard - if(access_cent_specops in card.access) + if(access_cent_specops in card.GetAccess()) card.access -= get_all_centcom_access() to_chat(usr, "You revoke central access from [target].") else diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index 527d455be89..d38b6b15889 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -432,8 +432,8 @@ Traitors and the like can also be revived with the previous role mostly intact. return if(samejob == "Yes") charjob = record_found.fields["real_rank"] - else if(samejob == USELESS_JOB) //VOREStation Edit - Visitor not Assistant - charjob = USELESS_JOB //VOREStation Edit - Visitor not Assistant + else if(samejob == JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant + charjob = JOB_ALT_VISITOR //VOREStation Edit - Visitor not Assistant else records = tgui_alert(src,"No data core entry detected. Would you like add them to the manifest, and sec/med/HR records?","Records",list("No", "Yes", "Cancel")) if(!records || records == "Cancel") diff --git a/code/modules/admin/verbs/tripAI.dm b/code/modules/admin/verbs/tripAI.dm index ff97f2e0dd9..b932729d983 100644 --- a/code/modules/admin/verbs/tripAI.dm +++ b/code/modules/admin/verbs/tripAI.dm @@ -7,7 +7,7 @@ return if(job_master && ticker) - var/datum/job/job = job_master.GetJob("AI") + var/datum/job/job = job_master.GetJob(JOB_AI) if(!job) to_chat(usr, "Unable to locate the AI job") return diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index b3ab39f74ee..7d7d0e0ca15 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -109,7 +109,7 @@ corpseback = /obj/item/weapon/storage/backpack corpseid = 1 corpseidjob = "Operative" - corpseidaccess = "Syndicate" + corpseidaccess = JOB_SYNDICATE /obj/effect/landmark/corpse/syndicatecommando name = "Mercenary Commando" @@ -124,7 +124,7 @@ corpsepocket1 = /obj/item/weapon/tank/emergency/oxygen corpseid = 1 corpseidjob = "Operative" - corpseidaccess = "Syndicate" + corpseidaccess = JOB_SYNDICATE ///////////Civilians////////////////////// @@ -137,7 +137,7 @@ /obj/effect/landmark/corpse/chef - name = "Chef" + name = JOB_CHEF corpseuniform = /obj/item/clothing/under/rank/chef corpsesuit = /obj/item/clothing/suit/chef/classic corpseshoes = /obj/item/clothing/shoes/black @@ -145,8 +145,8 @@ corpseback = /obj/item/weapon/storage/backpack corpseradio = /obj/item/device/radio/headset corpseid = 1 - corpseidjob = "Chef" - corpseidaccess = "Chef" + corpseidjob = JOB_CHEF + corpseidaccess = JOB_CHEF /obj/effect/landmark/corpse/doctor @@ -158,11 +158,11 @@ corpsepocket1 = /obj/item/device/flashlight/pen corpseshoes = /obj/item/clothing/shoes/black corpseid = 1 - corpseidjob = "Medical Doctor" - corpseidaccess = "Medical Doctor" + corpseidjob = JOB_MEDICAL_DOCTOR + corpseidaccess = JOB_MEDICAL_DOCTOR /obj/effect/landmark/corpse/engineer - name = "Engineer" + name = JOB_ENGINEER corpseradio = /obj/item/device/radio/headset/headset_eng corpseuniform = /obj/item/clothing/under/rank/engineer corpseback = /obj/item/weapon/storage/backpack/industrial @@ -171,8 +171,8 @@ corpsegloves = /obj/item/clothing/gloves/yellow corpsehelmet = /obj/item/clothing/head/hardhat corpseid = 1 - corpseidjob = "Engineer" - corpseidaccess = "Engineer" + corpseidjob = JOB_ENGINEER + corpseidaccess = JOB_ENGINEER /obj/effect/landmark/corpse/engineer/rig corpsesuit = /obj/item/clothing/suit/space/void/engineering @@ -181,7 +181,7 @@ corpseback = /obj/item/weapon/tank/oxygen /obj/effect/landmark/corpse/clown - name = "Clown" + name = JOB_CLOWN corpseuniform = /obj/item/clothing/under/rank/clown corpseshoes = /obj/item/clothing/shoes/clown_shoes corpseradio = /obj/item/device/radio/headset @@ -189,22 +189,22 @@ corpsepocket1 = /obj/item/weapon/bikehorn corpseback = /obj/item/weapon/storage/backpack/clown corpseid = 1 - corpseidjob = "Clown" - corpseidaccess = "Clown" + corpseidjob = JOB_CLOWN + corpseidaccess = JOB_CLOWN /obj/effect/landmark/corpse/scientist - name = "Scientist" + name = JOB_SCIENTIST corpseradio = /obj/item/device/radio/headset/headset_sci corpseuniform = /obj/item/clothing/under/rank/scientist corpsesuit = /obj/item/clothing/suit/storage/toggle/labcoat/science corpseback = /obj/item/weapon/storage/backpack corpseshoes = /obj/item/clothing/shoes/white corpseid = 1 - corpseidjob = "Scientist" - corpseidaccess = "Scientist" + corpseidjob = JOB_SCIENTIST + corpseidaccess = JOB_SCIENTIST /obj/effect/landmark/corpse/security - name = "Security Officer" + name = JOB_SECURITY_OFFICER corpseradio = /obj/item/device/radio/headset/headset_sec corpseuniform = /obj/item/clothing/under/rank/security corpsesuit = /obj/item/clothing/suit/armor/vest @@ -214,8 +214,8 @@ corpsegloves = /obj/item/clothing/gloves/black corpsehelmet = /obj/item/clothing/head/helmet corpseid = 1 - corpseidjob = "Security Officer" - corpseidaccess = "Security Officer" + corpseidjob = JOB_SECURITY_OFFICER + corpseidaccess = JOB_SECURITY_OFFICER /obj/effect/landmark/corpse/security/rig corpsesuit = /obj/item/clothing/suit/space/void/security @@ -243,8 +243,8 @@ corpseback = /obj/item/weapon/storage/backpack/industrial corpseshoes = /obj/item/clothing/shoes/black corpseid = 1 - corpseidjob = "Shaft Miner" - corpseidaccess = "Shaft Miner" + corpseidjob = JOB_SHAFT_MINER + corpseidaccess = JOB_SHAFT_MINER /obj/effect/landmark/corpse/miner/rig corpsesuit = /obj/item/clothing/suit/space/void/mining @@ -266,12 +266,12 @@ corpseidjob = "Crewmate" /obj/effect/landmark/corpse/vintage/engineering - name = "Unknown Engineer" + name = "Unknown " + JOB_ENGINEER corpsesuit = /obj/item/clothing/suit/space/void/refurb/engineering corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/engineering corpsebelt = /obj/item/weapon/storage/belt/utility/full corpseback = /obj/item/weapon/tank/oxygen/yellow - corpseidjob = "Engineer" + corpseidjob = JOB_ENGINEER /obj/effect/landmark/corpse/vintage/marine name = "Unknown Marine" @@ -296,23 +296,23 @@ corpseidjob = "Mercenary" /obj/effect/landmark/corpse/vintage/officer - name = "Unknown Captain" + name = "Unknown " + JOB_ALT_CAPTAIN corpsesuit = /obj/item/clothing/suit/space/void/refurb/officer corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/officer corpseback = /obj/item/weapon/tank/oxygen/yellow - corpseidjob = "Captain" + corpseidjob = JOB_ALT_CAPTAIN /obj/effect/landmark/corpse/vintage/pilot - name = "Unknown Pilot" + name = "Unknown " + JOB_PILOT corpsesuit = /obj/item/clothing/suit/space/void/refurb/pilot corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/pilot - corpseidjob = "Pilot" + corpseidjob = JOB_PILOT /obj/effect/landmark/corpse/vintage/research - name = "Unknown Researcher" + name = "Unknown " + JOB_ALT_RESEARCHER corpsesuit = /obj/item/clothing/suit/space/void/refurb/research corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/research - corpseidjob = "Researcher" + corpseidjob = JOB_ALT_RESEARCHER /////////////////Officers////////////////////// @@ -325,7 +325,7 @@ corpseglasses = /obj/item/clothing/glasses/sunglasses corpseid = 1 corpseidjob = "Bridge Officer" - corpseidaccess = "Captain" + corpseidaccess = JOB_ALT_CAPTAIN /obj/effect/landmark/corpse/commander name = "Commander" @@ -340,7 +340,7 @@ corpsepocket1 = /obj/item/weapon/flame/lighter/zippo corpseid = 1 corpseidjob = "Commander" - corpseidaccess = "Captain" + corpseidaccess = JOB_ALT_CAPTAIN /////////////////Lore Factions////////////////////// @@ -378,4 +378,3 @@ corpseshoes = /obj/item/clothing/shoes/boots/tactical corpseid = 1 corpseidjob = "Hedberg-Hammarstrom Enforcer" - diff --git a/code/modules/blob2/blobs/base_blob.dm b/code/modules/blob2/blobs/base_blob.dm index 14f7eb54c0b..12d1c7e2557 100644 --- a/code/modules/blob2/blobs/base_blob.dm +++ b/code/modules/blob2/blobs/base_blob.dm @@ -17,7 +17,7 @@ GLOBAL_LIST_EMPTY(all_blobs) var/heal_timestamp = 0 //we got healed when? var/mob/observer/blob/overmind = null var/base_name = "blob" // The name that gets appended along with the blob_type's name. - var/faction = "blob" + var/faction = FACTION_BLOB /obj/structure/blob/Initialize(newloc, new_overmind) if(new_overmind) @@ -426,4 +426,4 @@ GLOBAL_LIST_EMPTY(all_blobs) qdel(src) /turf/simulated/wall/blob_act() - take_damage(100) \ No newline at end of file + take_damage(100) diff --git a/code/modules/blob2/mobs/blob_mob.dm b/code/modules/blob2/mobs/blob_mob.dm index fb84f9d2c19..5bd2fefbebf 100644 --- a/code/modules/blob2/mobs/blob_mob.dm +++ b/code/modules/blob2/mobs/blob_mob.dm @@ -6,7 +6,7 @@ /mob/living/simple_mob/hostile/blob icon = 'icons/mob/blob.dmi' pass_flags = PASSBLOB | PASSTABLE - faction = "blob" + faction = FACTION_BLOB // bubble_icon = "blob" // speak_emote = null //so we use verb_yell/verb_say/etc // atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) diff --git a/code/modules/blob2/overmind/overmind.dm b/code/modules/blob2/overmind/overmind.dm index 625dca158f4..ea989759e71 100644 --- a/code/modules/blob2/overmind/overmind.dm +++ b/code/modules/blob2/overmind/overmind.dm @@ -10,7 +10,7 @@ var/list/overminds = list() see_in_dark = 8 invisibility = INVISIBILITY_OBSERVER - faction = "blob" + faction = FACTION_BLOB var/obj/structure/blob/core/blob_core = null // The blob overmind's core var/blob_points = 0 var/max_blob_points = 200 diff --git a/code/modules/blob2/overmind/types.dm b/code/modules/blob2/overmind/types.dm index 8fffbcdbcae..4a7bab93b11 100644 --- a/code/modules/blob2/overmind/types.dm +++ b/code/modules/blob2/overmind/types.dm @@ -9,7 +9,7 @@ var/color = "#FFFFFF" // The actual blob's color. var/complementary_color = "#000000" //a color that's complementary to the normal blob color. Blob mobs are colored in this. - var/faction = "blob" // The blob's faction. + var/faction = FACTION_BLOB // The blob's faction. var/attack_message = "The blob attacks you" // Base message the mob gets when blob_act() gets called on them by the blob. An exclaimation point is added to the end. var/attack_message_living = null // Appended to attack_message, if the target fails isSynthetic() check. diff --git a/code/modules/blob2/overmind/types/grey_goo.dm b/code/modules/blob2/overmind/types/grey_goo.dm index 558f624e96f..2e0fea20f90 100644 --- a/code/modules/blob2/overmind/types/grey_goo.dm +++ b/code/modules/blob2/overmind/types/grey_goo.dm @@ -14,7 +14,7 @@ attack_message = "The tide tries to swallow you" attack_message_living = ", and you feel your skin dissolve" attack_message_synth = ", and your external plating dissolves" - faction = "nanomachines" + faction = FACTION_NANOMACHINES /datum/blob_type/grey_goo/on_emp(obj/structure/blob/B, severity) B.adjust_integrity(-(20 / severity)) diff --git a/code/modules/casino/headset_casino.dm b/code/modules/casino/headset_casino.dm index fa7f09d401e..d136eeea19f 100644 --- a/code/modules/casino/headset_casino.dm +++ b/code/modules/casino/headset_casino.dm @@ -15,6 +15,6 @@ /obj/item/device/encryptionkey/casino icon = 'icons/obj/casino.dmi' icon_state = "cypherkey" - channels = list("Casino" = 1) + channels = list(CHANNEL_CASINO = 1) origin_tech = list(TECH_ILLEGAL = 1) - syndie = 1 \ No newline at end of file + syndie = 1 diff --git a/code/modules/client/preference_setup/antagonism/02_candidacy.dm b/code/modules/client/preference_setup/antagonism/02_candidacy.dm index f4eed302780..5f4934f1818 100644 --- a/code/modules/client/preference_setup/antagonism/02_candidacy.dm +++ b/code/modules/client/preference_setup/antagonism/02_candidacy.dm @@ -41,14 +41,14 @@ var/global/list/special_roles = list( //keep synced with the defines BE_* in set pref.be_special = sanitize_integer(pref.be_special, 0, 16777215, initial(pref.be_special)) //VOREStation Edit - 24 bits of support /datum/category_item/player_setup_item/antagonism/candidacy/content(var/mob/user) - if(jobban_isbanned(user, "Syndicate")) + if(jobban_isbanned(user, JOB_SYNDICATE)) . += "You are banned from antagonist roles." pref.be_special = 0 else var/n = 0 for (var/i in special_roles) if(special_roles[i]) //if mode is available on the server - if(jobban_isbanned(user, i) || (i == "positronic brain" && jobban_isbanned(user, "AI") && jobban_isbanned(user, "Cyborg")) || (i == "pAI candidate" && jobban_isbanned(user, "pAI"))) + if(jobban_isbanned(user, i) || (i == "positronic brain" && jobban_isbanned(user, JOB_AI) && jobban_isbanned(user, JOB_CYBORG)) || (i == "pAI candidate" && jobban_isbanned(user, JOB_PAI))) . += "Be [i]: \[BANNED]
" else . += "Be [i]:[pref.be_special&(1<
" diff --git a/code/modules/client/preference_setup/general/05_background.dm b/code/modules/client/preference_setup/general/05_background.dm index 03efdf9f86e..77d3c1979ee 100644 --- a/code/modules/client/preference_setup/general/05_background.dm +++ b/code/modules/client/preference_setup/general/05_background.dm @@ -135,19 +135,19 @@ else if(href_list["set_medical_records"]) var/new_medical = strip_html_simple(tgui_input_text(user,"Enter medical information here.","Character Preference", html_decode(pref.med_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH) - if(new_medical && !jobban_isbanned(user, "Records") && CanUseTopic(user)) + if(new_medical && !jobban_isbanned(user, JOB_RECORDS) && CanUseTopic(user)) pref.med_record = new_medical return TOPIC_REFRESH else if(href_list["set_general_records"]) var/new_general = strip_html_simple(tgui_input_text(user,"Enter employment information here.","Character Preference", html_decode(pref.gen_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH) - if(new_general && !jobban_isbanned(user, "Records") && CanUseTopic(user)) + if(new_general && !jobban_isbanned(user, JOB_RECORDS) && CanUseTopic(user)) pref.gen_record = new_general return TOPIC_REFRESH else if(href_list["set_security_records"]) var/sec_medical = strip_html_simple(tgui_input_text(user,"Enter security information here.","Character Preference", html_decode(pref.sec_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH) - if(sec_medical && !jobban_isbanned(user, "Records") && CanUseTopic(user)) + if(sec_medical && !jobban_isbanned(user, JOB_RECORDS) && CanUseTopic(user)) pref.sec_record = sec_medical return TOPIC_REFRESH diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm index 4bb9d769d60..0583ccb4c39 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm @@ -77,7 +77,7 @@ display_name = "holster selection" description = "Select from a number of general-purpose handgun holsters, or a baton lanyard." path = /obj/item/clothing/accessory/holster - allowed_roles = list("Site Manager", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective","Talon Captain","Talon Guard") + allowed_roles = list(JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY,JOB_DETECTIVE,JOB_TALON_CAPTAIN,JOB_TALON_GUARD) /datum/gear/accessory/holster/New() ..() @@ -250,7 +250,7 @@ /datum/gear/accessory/stethoscope display_name = "stethoscope" path = /obj/item/clothing/accessory/stethoscope - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic","Talon Doctor") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PSYCHIATRIST,JOB_PARAMEDIC,JOB_TALON_DOCTOR) /datum/gear/accessory/locket display_name = "locket" @@ -335,12 +335,12 @@ /datum/gear/accessory/badge display_name = "sheriff badge (Security)" path = /obj/item/clothing/accessory/badge/holo/sheriff - allowed_roles = list("Security Officer","Detective","Head of Security","Warden") + allowed_roles = list(JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN) /datum/gear/accessory/corpbadge display_name = "investigator holobadge (IAA)" path = /obj/item/clothing/accessory/badge/holo/investigator - allowed_roles = list("Internal Affairs Agent") + allowed_roles = list(JOB_INTERNAL_AFFAIRS_AGENT) /datum/gear/accessory/pressbadge display_name = "corporate press pass" diff --git a/code/modules/client/preference_setup/loadout/loadout_eyes.dm b/code/modules/client/preference_setup/loadout/loadout_eyes.dm index 91c84f91833..79cfd6e3e29 100644 --- a/code/modules/client/preference_setup/loadout/loadout_eyes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_eyes.dm @@ -71,7 +71,7 @@ display_name = "Security HUD selector" description = "Select from a range of Security HUD eyepieces that can display the ID status and security records of people in line of sight." path = /obj/item/clothing/glasses/hud/security - allowed_roles = list("Security Officer","Head of Security","Warden", "Detective") + allowed_roles = list(JOB_SECURITY_OFFICER,JOB_HEAD_OF_SECURITY,JOB_WARDEN, JOB_DETECTIVE) /datum/gear/eyes/security/New() ..() @@ -91,7 +91,7 @@ display_name = "Medical HUD selector" description = "Select from a range of Medical HUD eyepieces that can display the health status of people in line of sight." path = /obj/item/clothing/glasses/hud/health - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/eyes/medical/New() ..() @@ -107,7 +107,7 @@ /datum/gear/eyes/janitor display_name = "Contaminant HUD" path = /obj/item/clothing/glasses/hud/janitor - allowed_roles = list("Janitor") + allowed_roles = list(JOB_JANITOR) /datum/gear/eyes/janitor/prescriptionjan display_name = "Contaminant HUD, prescription" @@ -117,7 +117,7 @@ display_name = "Optical Meson Scanners selection" description = "Select from a range of meson-projection eyewear. Note: not all of these items are atmospherically sealed." path = /obj/item/clothing/glasses/meson - allowed_roles = list("Engineer","Chief Engineer","Atmospheric Technician", "Scientist", "Research Director") + allowed_roles = list(JOB_ENGINEER,JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN, JOB_SCIENTIST, JOB_RESEARCH_DIRECTOR) /datum/gear/eyes/meson/New() ..() @@ -133,7 +133,7 @@ /datum/gear/eyes/material display_name = "Optical Material Scanners" path = /obj/item/clothing/glasses/material - allowed_roles = list("Shaft Miner","Quartermaster") + allowed_roles = list(JOB_SHAFT_MINER,JOB_QUARTERMASTER) /datum/gear/eyes/glasses/fakesun display_name = "Sunglasses, stylish" @@ -147,7 +147,7 @@ display_name = "functional sunglasses selector" description = "Select from a range of polarized sunglasses that can block flashes whilst still looking classy." path = /obj/item/clothing/glasses/sunglasses - allowed_roles = list("Security Officer","Head of Security","Warden","Site Manager","Head of Personnel","Quartermaster","Internal Affairs Agent","Detective") + allowed_roles = list(JOB_SECURITY_OFFICER,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_SITE_MANAGER,JOB_HEAD_OF_PERSONNEL,JOB_QUARTERMASTER,JOB_INTERNAL_AFFAIRS_AGENT,JOB_DETECTIVE) /datum/gear/eyes/sun/New() ..() diff --git a/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm b/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm index 89aad658ce5..b8d8a095185 100644 --- a/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_eyes_vr.dm @@ -1,5 +1,5 @@ /datum/gear/eyes/medical - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/eyes/arglasses display_name = "AR glasses" @@ -19,28 +19,28 @@ /datum/gear/eyes/arglasses/sec display_name = "AR-Security glasses" path = /obj/item/clothing/glasses/omnihud/sec - allowed_roles = list("Security Officer","Head of Security","Warden","Detective") + allowed_roles = list(JOB_SECURITY_OFFICER,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_DETECTIVE) /datum/gear/eyes/arglasses/sci display_name = "AR-Research glasses" path = /obj/item/clothing/glasses/omnihud/rnd - allowed_roles = list("Research Director","Scientist","Xenobiologist","Xenobotanist","Roboticist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST,JOB_XENOBIOLOGIST,JOB_XENOBOTANIST,JOB_ROBOTICIST) /datum/gear/eyes/arglasses/eng display_name = "AR-Engineering glasses" path = /obj/item/clothing/glasses/omnihud/eng - allowed_roles = list("Engineer","Chief Engineer","Atmospheric Technician") + allowed_roles = list(JOB_ENGINEER,JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN) /datum/gear/eyes/arglasses/med display_name = "AR-Medical glasses" path = /obj/item/clothing/glasses/omnihud/med - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/eyes/arglasses/all display_name = "AR-Command glasses" path = /obj/item/clothing/glasses/omnihud/all cost = 2 - allowed_roles = list("Site Manager","Head of Personnel") + allowed_roles = list(JOB_SITE_MANAGER,JOB_HEAD_OF_PERSONNEL) /datum/gear/eyes/spiffygogs display_name = "slick orange goggles" diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm index 9055d285480..9bd3b321eea 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm @@ -17,7 +17,7 @@ display_name = "Airhorn - Example Item" description = "An example item that you probably shouldn't see!" ckeywhitelist = list("your_ckey_here") - allowed_roles = list("Engineer") + allowed_roles = list(JOB_ENGINEER) */ /datum/gear/fluff/collar //Use this as a base path for collars if you'd like to set tags in loadout. Make sure you don't use apostrophes in the display name or this breaks! @@ -449,7 +449,7 @@ slot = slot_wear_suit ckeywhitelist = list("flaktual") character_name = list("Yikatihaki") - allowed_roles = list("Explorer") + allowed_roles = list(JOB_EXPLORER) /datum/gear/fluff/suit/storage/flintlock path = /obj/item/clothing/suit/storage/flintlock @@ -536,7 +536,7 @@ // I CKEYS /datum/gear/fluff/ruda_badge path = /obj/item/clothing/accessory/badge/holo/detective/ruda - display_name = "Ruda's Detective Badge" + display_name = "Ruda's " + JOB_DETECTIVE + " Badge" ckeywhitelist = list("interrolouis") character_name = list("Ruda Lizden") @@ -578,7 +578,7 @@ slot = slot_back ckeywhitelist = list("jacknoir413") character_name = list("Areax Third") - allowed_roles = list("Security Officer, Warden, Head of Security") + allowed_roles = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY) /datum/gear/fluff/earthen_uniform path = /obj/item/clothing/under/fluff/earthenbreath @@ -626,7 +626,7 @@ display_name = "Ace's Holster" ckeywhitelist = list("jertheace") character_name = list("Jeremiah Acacius") - allowed_roles = list("Site Manager", "Warden", "Head of Security") + allowed_roles = list(JOB_SITE_MANAGER, JOB_WARDEN, JOB_HEAD_OF_SECURITY) /datum/gear/fluff/jeremiah_boots path = /obj/item/clothing/shoes/boots/combat @@ -654,7 +654,7 @@ display_name = "Katarina's Backpack" ckeywhitelist = list("joanrisu") character_name = list("Katarina Eine") - allowed_roles = list("Site Manager", "Warden", "Head of Security") + allowed_roles = list(JOB_SITE_MANAGER, JOB_WARDEN, JOB_HEAD_OF_SECURITY) /datum/gear/fluff/emoticon_box path = /obj/item/weapon/storage/box/fluff/emoticon @@ -777,7 +777,7 @@ display_name = "Kenzie's Hypospray" ckeywhitelist = list("lm40") character_name = list("Kenzie Houser") - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PSYCHIATRIST,JOB_PARAMEDIC) /datum/gear/fluff/brianna_backpack path = /obj/item/weapon/storage/backpack/messenger/black/fluff/briana @@ -792,7 +792,7 @@ description = "A Hull Systems Omni-Tool capable of temporarily shrinking to handheld sizes for even the most delicate work." ckeywhitelist = list("lewzharri") character_name = list ("Kovgam Zharri") - allowed_roles = list("Roboticist","Engineer","Scientist","Xenobiologist","Xenobotanist","Research Director") + allowed_roles = list(JOB_ROBOTICIST,JOB_ENGINEER,JOB_SCIENTIST,JOB_XENOBIOLOGIST,JOB_XENOBOTANIST,JOB_RESEARCH_DIRECTOR) // M CKEYS /datum/gear/fluff/phi_box @@ -820,7 +820,7 @@ slot = slot_wear_suit ckeywhitelist = list("mrsignmeup") character_name = list("Reshskakskakss Seekiseekis") - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) /datum/gear/fluff/daniel_medal path = /obj/item/clothing/accessory/medal/conduct @@ -1007,7 +1007,7 @@ display_name = "Tiemli's Welding Goggles" ckeywhitelist = list("radiantaurora") character_name = list("Tiemli Kroto") - allowed_roles = list("Roboticist") + allowed_roles = list(JOB_ROBOTICIST) /datum/gear/fluff/clara_flask path = /obj/item/weapon/reagent_containers/food/drinks/glass2/fluff/claraflask @@ -1076,14 +1076,14 @@ display_name = "Kateryna's Voidsuit" ckeywhitelist = list("samanthafyre") character_name = list("Kateryna Petrovitch") - allowed_roles = list("Engineer", "Chief Engineer", "Atmospheric Technician") + allowed_roles = list(JOB_ENGINEER, JOB_CHIEF_ENGINEER, JOB_ATMOSPHERIC_TECHNICIAN) /datum/gear/fluff/katerina_spacesuit path = /obj/item/clothing/head/helmet/space/fluff/kate display_name = "Kateryna's Helmet" ckeywhitelist = list("samanthafyre") character_name = list("Kateryna Petrovitch") - allowed_roles = list("Engineer", "Chief Engineer", "Atmospheric Technician") + allowed_roles = list(JOB_ENGINEER, JOB_CHIEF_ENGINEER, JOB_ATMOSPHERIC_TECHNICIAN) /datum/gear/fluff/kateryna_armorvest path = /obj/item/clothing/suit/armor/vest/wolftaur/kate @@ -1091,7 +1091,7 @@ slot = slot_wear_suit ckeywhitelist = list("samanthafyre") character_name = list("Kateryna Petrovitch") - allowed_roles = list("Security Officer", "Warden", "Head of Security", "Site Manager", "Head of Personnel") + allowed_roles = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY, JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL) /datum/gear/fluff/viktor_flask path = /obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask/fluff/viktor @@ -1138,7 +1138,7 @@ display_name = "Cerise's Champion's Belt" ckeywhitelist = list("shalax") character_name = list("Cerise Duelliste") - allowed_roles = list("Security Officer", "Warden", "Head of Security", "Detective") + allowed_roles = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY, JOB_DETECTIVE) /datum/gear/fluff/sidona_robes path = /obj/item/clothing/under/fluff/gildedrobe_perrin @@ -1157,14 +1157,14 @@ display_name = "NT-HASD 556's Modkit" ckeywhitelist = list("silencedmp5a5") character_name = list("NT-HASD #556") - allowed_roles = list("Site Manager", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective") + allowed_roles = list(JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY,JOB_DETECTIVE) /datum/gear/fluff/serdykov_modkit //Also converts a Security suit's sprite path = /obj/item/device/modkit_conversion/fluff/serdykit display_name = "Serdykov Antoz's Modkit" ckeywhitelist = list("silencedmp5a5") character_name = list("Serdykov Antoz") - allowed_roles = list("Site Manager", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective") + allowed_roles = list(JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY,JOB_DETECTIVE) /datum/gear/fluff/tasy_clownuniform path = /obj/item/clothing/under/sexyclown @@ -1293,11 +1293,11 @@ display_name = "Lucky's amour" ckeywhitelist = list ("thedavestdave") character_name = list("Lucky") - allowed_roles = list("Chaplain") + allowed_roles = list(JOB_CHAPLAIN) /datum/gear/fluff/lovec_gasmask path = /obj/item/clothing/mask/gas/explorer - display_name = "Explorer's Gas Mask" + display_name = JOB_EXPLORER + "'s Gas Mask" ckeywhitelist = list("thenewmeta") character_name = list("Lovec") @@ -1505,7 +1505,7 @@ slot = slot_glasses ckeywhitelist = list("wickedtemp") character_name = list("Chakat Tempest Venosare") - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic", "Off-duty Medic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PSYCHIATRIST,JOB_PARAMEDIC, JOB_OFFDUTY_MEDIC) /datum/gear/fluff/tempest_hypospray path = /obj/item/weapon/reagent_containers/hypospray/vial/tempest @@ -1513,7 +1513,7 @@ slot = slot_belt ckeywhitelist = list("wickedtemp") character_name = list("Chakat Tempest Venosare") - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic", "Off-duty Medic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PSYCHIATRIST,JOB_PARAMEDIC, JOB_OFFDUTY_MEDIC) /datum/gear/fluff/tempest_backpack path = /obj/item/weapon/storage/backpack/saddlebag/tempest diff --git a/code/modules/client/preference_setup/loadout/loadout_gloves.dm b/code/modules/client/preference_setup/loadout/loadout_gloves.dm index a330027611f..859d6a0c4cd 100644 --- a/code/modules/client/preference_setup/loadout/loadout_gloves.dm +++ b/code/modules/client/preference_setup/loadout/loadout_gloves.dm @@ -54,7 +54,7 @@ /datum/gear/gloves/forensic display_name = "gloves, forensic" path = /obj/item/clothing/gloves/forensic - allowed_roles = list("Detective") + allowed_roles = list(JOB_DETECTIVE) /datum/gear/gloves/fingerless display_name = "fingerless gloves" diff --git a/code/modules/client/preference_setup/loadout/loadout_head.dm b/code/modules/client/preference_setup/loadout/loadout_head.dm index 06aebf077fa..070502d772e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_head.dm +++ b/code/modules/client/preference_setup/loadout/loadout_head.dm @@ -19,22 +19,22 @@ /datum/gear/head/beret/bsec_warden display_name = "beret, navy (warden)" path = /obj/item/clothing/head/beret/sec/navy/warden - allowed_roles = list("Head of Security","Warden") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_WARDEN) /datum/gear/head/beret/bsec_hos display_name = "beret, navy (hos)" path = /obj/item/clothing/head/beret/sec/navy/hos - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) /datum/gear/head/beret/csec_warden display_name = "beret, corporate (warden)" path = /obj/item/clothing/head/beret/sec/corporate/warden - allowed_roles = list("Head of Security","Warden") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_WARDEN) /datum/gear/head/beret/csec_hos display_name = "beret, corporate (hos)" path = /obj/item/clothing/head/beret/sec/corporate/hos - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) /datum/gear/head/beret/eng display_name = "beret, engie-orange" @@ -288,7 +288,7 @@ description = "Select from a range of welding masks (engineering crew/roboticists only)" path = /obj/item/clothing/head/welding cost = 2 - allowed_roles = list("Chief Engineer","Engineer","Atmospheric Technician","Research Director","Roboticist") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_RESEARCH_DIRECTOR,JOB_ROBOTICIST) /datum/gear/head/welding/New() ..() @@ -376,7 +376,7 @@ /datum/gear/head/sec_hat_selector display_name = "Security - Basic Headwear" description = "Select from a range of hats available to all Security personnel." - allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer") + allowed_roles = list(JOB_HEAD_OF_SECURITY, JOB_WARDEN, JOB_DETECTIVE, JOB_SECURITY_OFFICER) path = /obj/item/clothing/head/soft/sec/corp /datum/gear/head/sec_hat_selector/New() @@ -394,7 +394,7 @@ /datum/gear/head/med_hat_selector display_name = "Medical - Basic Headwear" description = "Select from a range of hats available to all Medical personnel." - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PSYCHIATRIST,JOB_PARAMEDIC) path = /obj/item/clothing/head/soft/med /datum/gear/head/med_hat_selector/New() @@ -434,7 +434,7 @@ display_name = "pilot helmets selection" description = "Your choice of four hard-wearing head-protecting helmets for pilots." path = /obj/item/clothing/head/pilot_vr - allowed_roles = list("Pilot", "Talon Pilot") + allowed_roles = list(JOB_PILOT, JOB_TALON_PILOT) /datum/gear/head/pilot/New() ..() diff --git a/code/modules/client/preference_setup/loadout/loadout_head_vr.dm b/code/modules/client/preference_setup/loadout/loadout_head_vr.dm index 48015f229e7..969bb5cb06e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_head_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_head_vr.dm @@ -25,7 +25,7 @@ /datum/gear/head/detective_alt display_name = "cyberscope headgear, detective" path = /obj/item/clothing/head/helmet/detective_alt - allowed_roles = list("Head of Security", "Detective") + allowed_roles = list(JOB_HEAD_OF_SECURITY, JOB_DETECTIVE) /datum/gear/head/bearpelt display_name = "animal pelt selection" diff --git a/code/modules/client/preference_setup/loadout/loadout_shoes.dm b/code/modules/client/preference_setup/loadout/loadout_shoes.dm index 58a6f5a72ac..9ec7bce52a6 100644 --- a/code/modules/client/preference_setup/loadout/loadout_shoes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_shoes.dm @@ -206,7 +206,7 @@ /datum/gear/shoes/boots/winter/security display_name = "security winter boots" path = /obj/item/clothing/shoes/boots/winter/security - allowed_roles = list("Security Officer", "Head of Security", "Warden", "Detective") + allowed_roles = list(JOB_SECURITY_OFFICER, JOB_HEAD_OF_SECURITY, JOB_WARDEN, JOB_DETECTIVE) /datum/gear/shoes/boots/winter/science display_name = "science winter boots" @@ -215,7 +215,7 @@ /datum/gear/shoes/boots/winter/command display_name = "site manager's winter boots" path = /obj/item/clothing/shoes/boots/winter/command - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) /datum/gear/shoes/boots/winter/engineering display_name = "engineering winter boots" @@ -228,7 +228,7 @@ /datum/gear/shoes/boots/winter/medical display_name = "medical winter boots" path = /obj/item/clothing/shoes/boots/winter/medical - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/shoes/boots/winter/mining display_name = "mining winter boots" diff --git a/code/modules/client/preference_setup/loadout/loadout_suit.dm b/code/modules/client/preference_setup/loadout/loadout_suit.dm index 76f5a7baa53..c221f36b6ca 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit.dm @@ -144,7 +144,7 @@ /datum/gear/suit/labcoat_cmo display_name = "labcoat selection, cmo" path = /obj/item/clothing/suit/storage/toggle/labcoat/cmo - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) show_roles = FALSE /datum/gear/suit/labcoat_cmo/New() @@ -159,12 +159,12 @@ /datum/gear/suit/labcoat_emt display_name = "labcoat, EMT" path = /obj/item/clothing/suit/storage/toggle/labcoat/emt - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/suit/labcoat_rd display_name = "labcoat, research director" path = /obj/item/clothing/suit/storage/toggle/labcoat/rd - allowed_roles = list("Research Director") + allowed_roles = list(JOB_RESEARCH_DIRECTOR) show_roles = FALSE /datum/gear/suit/miscellaneous/labcoat @@ -174,7 +174,7 @@ /datum/gear/suit/roles/surgical_apron display_name = "surgical apron" path = /obj/item/clothing/suit/surgicalapron - allowed_roles = list("Medical Doctor","Chief Medical Officer") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER) /datum/gear/suit/overalls display_name = "overalls" @@ -256,49 +256,49 @@ /datum/gear/suit/roles/cloak_hos display_name = "cloak, head of security" path = /obj/item/clothing/accessory/poncho/roles/cloak/hos - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) show_roles = FALSE cost = 1 /datum/gear/suit/roles/cloak_cmo display_name = "cloak, chief medical officer" path = /obj/item/clothing/accessory/poncho/roles/cloak/cmo - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) show_roles = FALSE cost = 1 /datum/gear/suit/roles/cloak_ce display_name = "cloak, chief engineer" path = /obj/item/clothing/accessory/poncho/roles/cloak/ce - allowed_roles = list("Chief Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER) show_roles = FALSE cost = 1 /datum/gear/suit/roles/cloak_rd display_name = "cloak, research director" path = /obj/item/clothing/accessory/poncho/roles/cloak/rd - allowed_roles = list("Research Director") + allowed_roles = list(JOB_RESEARCH_DIRECTOR) show_roles = FALSE cost = 1 /datum/gear/suit/roles/cloak_qm display_name = "cloak, quartermaster" path = /obj/item/clothing/accessory/poncho/roles/cloak/qm - allowed_roles = list("Quartermaster") + allowed_roles = list(JOB_QUARTERMASTER) show_roles = FALSE cost = 1 /datum/gear/suit/roles/cloak_captain display_name = "cloak, site manager" path = /obj/item/clothing/accessory/poncho/roles/cloak/captain - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) show_roles = FALSE cost = 1 /datum/gear/suit/roles/cloak_hop display_name = "cloak, head of personnel" path = /obj/item/clothing/accessory/poncho/roles/cloak/hop - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) show_roles = FALSE cost = 1 @@ -365,7 +365,7 @@ /datum/gear/suit/forensics display_name = "forensics uniform selection" path = /obj/item/clothing/suit/storage/forensics/red/long - allowed_roles = list("Detective") + allowed_roles = list(JOB_DETECTIVE) /datum/gear/suit/forensics/New() ..() @@ -380,13 +380,13 @@ /datum/gear/suit/qm_coat display_name = "coat, quartermaster" path = /obj/item/clothing/suit/storage/qm - allowed_roles = list("Quartermaster") + allowed_roles = list(JOB_QUARTERMASTER) show_roles = FALSE /datum/gear/suit/cargo_coat display_name = "coat, cargo tech" path = /obj/item/clothing/suit/storage/cargo - allowed_roles = list("Quartermaster","Shaft Miner","Cargo Technician","Head of Personnel") + allowed_roles = list(JOB_QUARTERMASTER,JOB_SHAFT_MINER,JOB_CARGO_TECHNICIAN,JOB_HEAD_OF_PERSONNEL) show_roles = FALSE // winter coats go here @@ -397,139 +397,139 @@ /datum/gear/suit/wintercoat/captain display_name = "winter coat, site manager" path = /obj/item/clothing/suit/storage/hooded/wintercoat/captain - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) show_roles = FALSE /datum/gear/suit/wintercoat/hop display_name = "winter coat, head of personnel" path = /obj/item/clothing/suit/storage/hooded/wintercoat/hop - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) show_roles = FALSE /datum/gear/suit/wintercoat/security display_name = "winter coat, security" path = /obj/item/clothing/suit/storage/hooded/wintercoat/security - allowed_roles = list("Security Officer", "Head of Security", "Warden", "Detective") + allowed_roles = list(JOB_SECURITY_OFFICER, JOB_HEAD_OF_SECURITY, JOB_WARDEN, JOB_DETECTIVE) show_roles = FALSE /datum/gear/suit/wintercoat/security/hos display_name = "winter coat, head of security" path = /obj/item/clothing/suit/storage/hooded/wintercoat/security/hos - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) show_roles = FALSE /datum/gear/suit/wintercoat/medical display_name = "winter coat, medical" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) show_roles = FALSE /datum/gear/suit/wintercoat/medical/alt display_name = "winter coat, medical alt" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/alt - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) show_roles = FALSE /datum/gear/suit/wintercoat/medical/viro display_name = "winter coat, virologist" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/viro - allowed_roles = list("Medical Doctor","Chief Medical Officer") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER) show_roles = FALSE /datum/gear/suit/wintercoat/medical/para display_name = "winter coat, paramedic" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/para - allowed_roles = list("Medical Doctor","Chief Medical Officer","Paramedic") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_PARAMEDIC) show_roles = FALSE /datum/gear/suit/wintercoat/medical/chemist display_name = "winter coat, chemist" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/chemist - allowed_roles = list("Chief Medical Officer","Chemist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST) show_roles = FALSE /datum/gear/suit/wintercoat/medical/cmo display_name = "winter coat, chief medical officer" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/cmo - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) show_roles = FALSE /datum/gear/suit/wintercoat/medical/sar display_name = "winter coat, search and rescue" path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar - allowed_roles = list("Chief Medical Officer","Paramedic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_PARAMEDIC) show_roles = FALSE /datum/gear/suit/wintercoat/science display_name = "winter coat, science" path = /obj/item/clothing/suit/storage/hooded/wintercoat/science - allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST, JOB_ROBOTICIST, JOB_XENOBIOLOGIST, JOB_XENOBOTANIST) show_roles = FALSE /datum/gear/suit/wintercoat/science/robotics display_name = "winter coat, robotics" path = /obj/item/clothing/suit/storage/hooded/wintercoat/science/robotics - allowed_roles = list("Research Director", "Roboticist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR, JOB_ROBOTICIST) show_roles = FALSE /datum/gear/suit/wintercoat/science/rd display_name = "winter coat, research director" path = /obj/item/clothing/suit/storage/hooded/wintercoat/science/rd - allowed_roles = list("Research Director") + allowed_roles = list(JOB_RESEARCH_DIRECTOR) show_roles = FALSE /datum/gear/suit/wintercoat/engineering display_name = "winter coat, engineering" path = /obj/item/clothing/suit/storage/hooded/wintercoat/engineering - allowed_roles = list("Chief Engineer","Atmospheric Technician", "Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN, JOB_ENGINEER) show_roles = FALSE /datum/gear/suit/wintercoat/engineering/atmos display_name = "winter coat, atmospherics" path = /obj/item/clothing/suit/storage/hooded/wintercoat/engineering/atmos - allowed_roles = list("Chief Engineer", "Atmospheric Technician") + allowed_roles = list(JOB_CHIEF_ENGINEER, JOB_ATMOSPHERIC_TECHNICIAN) show_roles = FALSE /datum/gear/suit/wintercoat/engineering/ce display_name = "winter coat, chief engineer" path = /obj/item/clothing/suit/storage/hooded/wintercoat/engineering/ce - allowed_roles = list("Chief Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER) show_roles = FALSE /datum/gear/suit/wintercoat/hydro display_name = "winter coat, hydroponics" path = /obj/item/clothing/suit/storage/hooded/wintercoat/hydro - allowed_roles = list("Botanist", "Xenobotanist") + allowed_roles = list(JOB_BOTANIST, JOB_XENOBOTANIST) show_roles = FALSE /datum/gear/suit/wintercoat/cargo display_name = "winter coat, cargo" path = /obj/item/clothing/suit/storage/hooded/wintercoat/cargo - allowed_roles = list("Quartermaster","Cargo Technician") + allowed_roles = list(JOB_QUARTERMASTER,JOB_CARGO_TECHNICIAN) show_roles = FALSE /datum/gear/suit/wintercoat/miner display_name = "winter coat, mining" path = /obj/item/clothing/suit/storage/hooded/wintercoat/miner - allowed_roles = list("Shaft Miner") + allowed_roles = list(JOB_SHAFT_MINER) show_roles = FALSE /datum/gear/suit/wintercoat/cargo/qm display_name = "winter coat, quartermaster" path = /obj/item/clothing/suit/storage/hooded/wintercoat/cargo/qm - allowed_roles = list("Quartermaster") + allowed_roles = list(JOB_QUARTERMASTER) show_roles = FALSE /datum/gear/suit/wintercoat/bar display_name = "winter coat, bartender" path = /obj/item/clothing/suit/storage/hooded/wintercoat/bar - allowed_roles = list("Bartender") + allowed_roles = list(JOB_BARTENDER) show_roles = FALSE /datum/gear/suit/wintercoat/janitor display_name = "winter coat, janitor" path = /obj/item/clothing/suit/storage/hooded/wintercoat/janitor - allowed_roles = list("Janitor") + allowed_roles = list(JOB_JANITOR) show_roles = FALSE /datum/gear/suit/wintercoat/aformal @@ -656,37 +656,37 @@ /datum/gear/suit/snowsuit/command display_name = "snowsuit, command" path = /obj/item/clothing/suit/storage/snowsuit/command - allowed_roles = list("Site Manager","Research Director","Head of Personnel","Head of Security","Chief Engineer","Command Secretary") + allowed_roles = list(JOB_SITE_MANAGER,JOB_RESEARCH_DIRECTOR,JOB_HEAD_OF_PERSONNEL,JOB_HEAD_OF_SECURITY,JOB_CHIEF_ENGINEER,JOB_COMMAND_SECRETARY) show_roles = FALSE /datum/gear/suit/snowsuit/security display_name = "snowsuit, security" path = /obj/item/clothing/suit/storage/snowsuit/security - allowed_roles = list("Security Officer", "Head of Security", "Warden", "Detective") + allowed_roles = list(JOB_SECURITY_OFFICER, JOB_HEAD_OF_SECURITY, JOB_WARDEN, JOB_DETECTIVE) show_roles = FALSE /datum/gear/suit/snowsuit/medical display_name = "snowsuit, medical" path = /obj/item/clothing/suit/storage/snowsuit/medical - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Search and Rescue") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST, JOB_ALT_SEARCH_AND_RESCUE) show_roles = FALSE /datum/gear/suit/snowsuit/science display_name = "snowsuit, science" path = /obj/item/clothing/suit/storage/snowsuit/science - allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST, JOB_ROBOTICIST, JOB_XENOBIOLOGIST) show_roles = FALSE /datum/gear/suit/snowsuit/engineering display_name = "snowsuit, engineering" path = /obj/item/clothing/suit/storage/snowsuit/engineering - allowed_roles = list("Chief Engineer","Atmospheric Technician", "Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN, JOB_ENGINEER) show_roles = FALSE /datum/gear/suit/snowsuit/cargo display_name = "snowsuit, supply" path = /obj/item/clothing/suit/storage/snowsuit/cargo - allowed_roles = list("Quartermaster","Shaft Miner","Cargo Technician","Head of Personnel") + allowed_roles = list(JOB_QUARTERMASTER,JOB_SHAFT_MINER,JOB_CARGO_TECHNICIAN,JOB_HEAD_OF_PERSONNEL) show_roles = FALSE /datum/gear/suit/miscellaneous/cardigan @@ -700,7 +700,7 @@ /datum/gear/suit/cmddressjacket display_name = "command dress jacket" path = /obj/item/clothing/suit/storage/toggle/cmddressjacket - allowed_roles = list("Site Manager", "Head of Personnel", "Command Secretary") + allowed_roles = list(JOB_SITE_MANAGER, JOB_HEAD_OF_PERSONNEL, JOB_COMMAND_SECRETARY) show_roles = FALSE /datum/gear/suit/miscellaneous/kimono diff --git a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm index da6d630f312..8d84ba744c1 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm @@ -1,5 +1,5 @@ /datum/gear/suit/snowsuit/medical - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/suit/labcoat_colorable display_name = "labcoat, colorable" @@ -16,7 +16,7 @@ /datum/gear/suit/labcoat_cmo_old display_name = "labcoat, CMO, oldschool" path = /obj/item/clothing/suit/storage/toggle/labcoat/old/cmo - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) /datum/gear/suit/roles/labcoat_old display_name = "labcoat selection, department, oldschool" @@ -57,7 +57,7 @@ /datum/gear/suit/detective_alt display_name = "sleek modern coat selection" path = /obj/item/clothing/suit/storage/det_trench/alt - allowed_roles = list("Head of Security", "Detective") + allowed_roles = list(JOB_HEAD_OF_SECURITY, JOB_DETECTIVE) /datum/gear/suit/detective_alt/New() ..() @@ -73,7 +73,7 @@ /datum/gear/suit/paramedic_coat display_name = "paramedic outerwear selection" path = /obj/item/clothing/suit/storage/toggle/fr_jacket - allowed_roles = list("Chief Medical Officer","Paramedic","Medical Doctor") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_PARAMEDIC,JOB_MEDICAL_DOCTOR) /datum/gear/suit/paramedic_coat/New() ..() @@ -112,12 +112,12 @@ Talon winter coat /datum/gear/suit/armor/combat/crusader_explo display_name = "knight, explo" path = /obj/item/clothing/suit/armor/combat/crusader_explo - //allowed_roles = list("Explorer","Pathfinder") + //allowed_roles = list(JOB_EXPLORER,JOB_PATHFINDER) /datum/gear/suit/armor/combat/crusader_explo/FM display_name = "knight, Field Medic" path = /obj/item/clothing/suit/armor/combat/crusader_explo/FM - allowed_roles = list ("Paramedic") + allowed_roles = list (JOB_PARAMEDIC) //Long fur coat /datum/gear/suit/russofurcoat @@ -231,13 +231,13 @@ Talon winter coat /datum/gear/suit/roles/capboatcloak display_name = "boat cloak, site manager" path = /obj/item/clothing/accessory/poncho/roles/cloak/boat/cap - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) show_roles = FALSE /datum/gear/suit/roles/hopboatcloak display_name = "boat cloak, head of personnel" path = /obj/item/clothing/accessory/poncho/roles/cloak/boat/hop - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) show_roles = FALSE /datum/gear/suit/roles/boatcloaks @@ -269,13 +269,13 @@ Talon winter coat /datum/gear/suit/roles/capshroud display_name = "shroud, site manager" path = /obj/item/clothing/accessory/poncho/roles/cloak/shroud/cap - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) show_roles = FALSE /datum/gear/suit/roles/hopshroud display_name = "shroud, head of personnel" path = /obj/item/clothing/accessory/poncho/roles/cloak/shroud/hop - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) show_roles = FALSE /datum/gear/suit/roles/shrouds diff --git a/code/modules/client/preference_setup/loadout/loadout_uni_selector.dm b/code/modules/client/preference_setup/loadout/loadout_uni_selector.dm index 0047062df58..3121e302395 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uni_selector.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uni_selector.dm @@ -21,9 +21,9 @@ //Command/Specific /datum/gear/uniform/site_manager_selector - display_name = "Command - Site Manager's Uniforms" - description = "Select from a range of outfits available to all Site Managers, and Talon Captains." - allowed_roles = list("Site Manager","Talon Captain") + display_name = "Command - " + JOB_SITE_MANAGER + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_SITE_MANAGER + "s, and Talon Captains." + allowed_roles = list(JOB_SITE_MANAGER,JOB_TALON_CAPTAIN) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_captain sort_category = "Uniforms" @@ -51,9 +51,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/head_of_personnel_selector - display_name = "Command - Head of Personnel's Uniforms" + display_name = "Command - " + JOB_HEAD_OF_PERSONNEL + "'s Uniforms" description = "Select from a range of outfits available to all Heads of Personnel." - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_hop sort_category = "Uniforms" @@ -83,9 +83,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/pilot_uniform_selector - display_name = "Civilian - Pilot's Uniforms" - description = "Select from a range of outfits available to all Pilots (including those on the Talon)." - allowed_roles = list("Pilot","Talon Pilot") + display_name = "Civilian - " + JOB_PILOT+ "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_PILOT + "s (including those on the Talon)." + allowed_roles = list(JOB_PILOT,JOB_TALON_PILOT) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_pilot sort_category = "Uniforms" @@ -104,9 +104,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/janitor_uniform_selector - display_name = "Civilian - Janitor's Uniforms" - description = "Select from a range of outfits available to all Janitorial personnel." - allowed_roles = list("Janitor") + display_name = "Civilian - " + JOB_JANITOR + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_JANITOR + "ial personnel." + allowed_roles = list(JOB_JANITOR) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_janitor sort_category = "Uniforms" @@ -190,7 +190,7 @@ /datum/gear/uniform/security_selector display_name = "Security - Basic Uniforms" description = "Select from a range of outfits available to all Security personnel." - allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer","Talon Guard") + allowed_roles = list(JOB_HEAD_OF_SECURITY, JOB_WARDEN, JOB_DETECTIVE, JOB_SECURITY_OFFICER,JOB_TALON_GUARD) show_roles = FALSE path = /obj/item/clothing/under/rank/security/corp sort_category = "Uniforms" @@ -234,9 +234,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/security_warden_selector - display_name = "Security - Warden's Uniforms" + display_name = "Security - "+ JOB_WARDEN + "'s Uniforms" description = "Select from a range of outfits available to Wardens." - allowed_roles = list("Head of Security","Warden") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_WARDEN) show_roles = FALSE path = /obj/item/clothing/under/rank/warden/corp sort_category = "Uniforms" @@ -256,9 +256,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/security_detective_selector - display_name = "Security - Detective's Uniforms" + display_name = "Security - " + JOB_DETECTIVE + "'s Uniforms" description = "Select from a range of outfits available to all Detectives." - allowed_roles = list("Head of Security","Detective") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_DETECTIVE) show_roles = FALSE path = /obj/item/clothing/under/det/corporate sort_category = "Uniforms" @@ -275,7 +275,7 @@ /datum/gear/uniform/security_head_selector display_name = "Security - Head's Uniforms" description = "Select from a range of outfits available to all Heads of Security." - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) show_roles = FALSE path = /obj/item/clothing/under/rank/head_of_security/corp sort_category = "Uniforms" @@ -313,9 +313,9 @@ //Cargo /datum/gear/uniform/quartermaster_selector - display_name = "Cargo - Quartermaster's Uniforms" - description = "Select from a range of outfits available to all Quartermasters." - allowed_roles = list("Quartermaster") + display_name = "Cargo - " + JOB_QUARTERMASTER + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_QUARTERMASTER + "s." + allowed_roles = list(JOB_QUARTERMASTER) show_roles = FALSE path = /obj/item/clothing/under/rank/cargo/jeans sort_category = "Uniforms" @@ -347,7 +347,7 @@ /datum/gear/uniform/cargo_general_selector display_name = "Cargo - Basic Uniforms" description = "Select from a range of outfits available to all Cargo personnel." - allowed_roles = list("Cargo Technician","Shaft Miner","Quartermaster") + allowed_roles = list(JOB_CARGO_TECHNICIAN,JOB_SHAFT_MINER,JOB_QUARTERMASTER) show_roles = FALSE path = /obj/item/clothing/under/rank/cargotech/jeans sort_category = "Uniforms" @@ -376,7 +376,7 @@ /datum/gear/uniform/cargo_miner_selector display_name = "Cargo - Miner's Uniforms" description = "Select from a range of outfits available to all Mining personnel." - allowed_roles = list("Shaft Miner","Quartermaster","Talon Miner") + allowed_roles = list(JOB_SHAFT_MINER,JOB_QUARTERMASTER,JOB_TALON_MINER) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_miner sort_category = "Uniforms" @@ -393,9 +393,9 @@ //Engineering /datum/gear/uniform/engineering_chief_selector - display_name = "Engineering - Chief Engineer's Uniforms" - description = "Select from a range of outfits available to all Chief Engineers." - allowed_roles = list("Chief Engineer") + display_name = "Engineering - " + JOB_CHIEF_ENGINEER + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_CHIEF_ENGINEER + "s." + allowed_roles = list(JOB_CHIEF_ENGINEER) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_chiefengi sort_category = "Uniforms" @@ -420,7 +420,7 @@ /datum/gear/uniform/engineer_selector display_name = "Engineering - Basic Uniforms" description = "Select from a range of outfits available to all Engineering personnel." - allowed_roles = list("Chief Engineer","Engineer","Atmospheric Technician","Talon Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_TALON_ENGINEER) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_engi sort_category = "Uniforms" @@ -448,7 +448,7 @@ /datum/gear/uniform/engi_atmos_selector display_name = "Engineering - Atmos Tech's Uniforms" description = "Select from a range of outfits available to all Atmospherics Technicians." - allowed_roles = list("Chief Engineer","Atmospheric Technician") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN) show_roles = FALSE path = /obj/item/clothing/under/rank/atmospheric_technician/skirt sort_category = "Uniforms" @@ -468,7 +468,7 @@ /datum/gear/uniform/medical_selector display_name = "Medical - Basic Uniforms" description = "Select from a range of outfits available to all Medical personnel." - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic","Talon Doctor") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PSYCHIATRIST,JOB_PARAMEDIC,JOB_TALON_DOCTOR) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_med sort_category = "Uniforms" @@ -499,9 +499,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/chemist_selector - display_name = "Medical - Chemist's Uniforms" + display_name = "Medical - " + JOB_CHEMIST + "'s Uniforms" description = "Select from a range of outfits available to all Chemists." - allowed_roles = list("Chief Medical Officer","Chemist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_chem sort_category = "Uniforms" @@ -519,9 +519,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/paramedic_selector - display_name = "Medical - Paramedic's Uniforms" - description = "Select from a range of outfits available to all Paramedics." - allowed_roles = list("Medical Doctor","Chief Medical Officer","Paramedic","Talon Doctor") + display_name = "Medical - " + JOB_PARAMEDIC + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_PARAMEDIC + "s." + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_PARAMEDIC,JOB_TALON_DOCTOR) show_roles = FALSE path = /obj/item/clothing/under/rank/paramedunidark sort_category = "Uniforms" @@ -542,9 +542,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/chief_medical_selector - display_name = "Medical - Chief Medical Officer's Uniforms" - description = "Select from a range of outfits available to all Chief Medical Officers." - allowed_roles = list("Chief Medical Officer") + display_name = "Medical - " + JOB_CHIEF_MEDICAL_OFFICER + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_CHIEF_MEDICAL_OFFICER + "." + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_cmo sort_category = "Uniforms" @@ -571,9 +571,9 @@ //Science /datum/gear/uniform/research_director_selector - display_name = "Science - Research Director's Uniforms" - description = "Select from a range of outfits available to all Research Directors." - allowed_roles = list("Research Director") + display_name = "Science - " + JOB_RESEARCH_DIRECTOR + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_RESEARCH_DIRECTOR + "s." + allowed_roles = list(JOB_RESEARCH_DIRECTOR) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_rd_suit sort_category = "Uniforms" @@ -599,7 +599,7 @@ /datum/gear/uniform/science_dept_selector display_name = "Science - Basic Uniforms" description = "Select from a range of outfits available to all Science personnel." - allowed_roles = list("Scientist","Research Director","Roboticist","Xenobiologist","Xenobotanist") + allowed_roles = list(JOB_SCIENTIST,JOB_RESEARCH_DIRECTOR,JOB_ROBOTICIST,JOB_XENOBIOLOGIST,JOB_XENOBOTANIST) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_science sort_category = "Uniforms" @@ -622,9 +622,9 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) /datum/gear/uniform/science_robotics_selector - display_name = "Science - Roboticist's Uniforms" - description = "Select from a range of outfits available to all Roboticists." - allowed_roles = list("Research Director","Roboticist") + display_name = "Science - " + JOB_ROBOTICIST + "'s Uniforms" + description = "Select from a range of outfits available to all " + JOB_ROBOTICIST + "s." + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_ROBOTICIST) show_roles = FALSE path = /obj/item/clothing/under/rank/neo_robo sort_category = "Uniforms" diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform.dm b/code/modules/client/preference_setup/loadout/loadout_uniform.dm index 5976fe86eae..32157af5ebb 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uniform.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uniform.dm @@ -152,14 +152,14 @@ path = /obj/item/clothing/under/scratch/skirt /datum/gear/uniform/suit/detectiveskirt - display_name = "suit, detective skirt (Detective)" + display_name = "suit, detective skirt (" + JOB_DETECTIVE + ")" path = /obj/item/clothing/under/det/skirt - allowed_roles = list("Detective") + allowed_roles = list(JOB_DETECTIVE) /datum/gear/uniform/suit/iaskirt display_name = "suit, Internal Affairs skirt (Internal Affairs)" path = /obj/item/clothing/under/rank/internalaffairs/skirt - allowed_roles = list("Internal Affairs Agent") + allowed_roles = list(JOB_INTERNAL_AFFAIRS_AGENT) /datum/gear/uniform/suit/bartenderskirt display_name = "suit, bartender skirt" diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm index aac55d5ea03..d40ea6cf6e8 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm @@ -15,26 +15,26 @@ /datum/gear/suit/job_fed/sec display_name = "fed uniform, sec" path = /obj/item/clothing/suit/storage/fluff/fedcoat - allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer") + allowed_roles = list(JOB_HEAD_OF_SECURITY, JOB_WARDEN, JOB_DETECTIVE, JOB_SECURITY_OFFICER) /datum/gear/suit/job_fed/medsci display_name = "fed uniform, med/sci" path = /obj/item/clothing/suit/storage/fluff/fedcoat/fedblue - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist","Xenobotanist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST,JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST, JOB_ROBOTICIST, JOB_XENOBIOLOGIST,JOB_XENOBOTANIST) /datum/gear/suit/job_fed/eng display_name = "fed uniform, eng" path = /obj/item/clothing/suit/storage/fluff/fedcoat/fedeng - allowed_roles = list("Chief Engineer","Atmospheric Technician","Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_ENGINEER) //DS9 /datum/gear/suit/job_trek/ds9_coat display_name = "DS9 Overcoat (use uniform)" path = /obj/item/clothing/suit/storage/trek/ds9 - allowed_roles = list("Head of Security","Site Manager","Head of Personnel","Chief Engineer","Research Director", - "Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist", - "Scientist","Roboticist","Xenobiologist","Xenobotanist","Atmospheric Technician", - "Engineer","Warden","Detective","Security Officer") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_SITE_MANAGER,JOB_HEAD_OF_PERSONNEL,JOB_CHIEF_ENGINEER,JOB_RESEARCH_DIRECTOR, + JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, + JOB_SCIENTIST,JOB_ROBOTICIST,JOB_XENOBIOLOGIST,JOB_XENOBOTANIST,JOB_ATMOSPHERIC_TECHNICIAN, + JOB_ENGINEER,JOB_WARDEN,JOB_DETECTIVE,JOB_SECURITY_OFFICER) /* Swimsuits diff --git a/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm b/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm index b81ec92cc1b..4fcb85c9a8e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_utility_vr.dm @@ -35,7 +35,7 @@ /datum/gear/utility/dufflebag/med display_name = "medical dufflebag" path = /obj/item/weapon/storage/backpack/dufflebag/med - allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist","Psychiatrist") + allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST,JOB_PSYCHIATRIST) /datum/gear/utility/dufflebag/med/emt display_name = "EMT dufflebag" @@ -44,17 +44,17 @@ /datum/gear/utility/dufflebag/sec display_name = "security Dufflebag" path = /obj/item/weapon/storage/backpack/dufflebag/sec - allowed_roles = list("Head of Security","Warden","Detective","Security Officer") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_DETECTIVE,JOB_SECURITY_OFFICER) /datum/gear/utility/dufflebag/eng display_name = "engineering dufflebag" path = /obj/item/weapon/storage/backpack/dufflebag/eng - allowed_roles = list("Chief Engineer","Atmospheric Technician","Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_ENGINEER) /datum/gear/utility/dufflebag/sci display_name = "science dufflebag" path = /obj/item/weapon/storage/backpack/dufflebag/sci - allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist","Xenobotanist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST,JOB_ROBOTICIST,JOB_XENOBIOLOGIST,JOB_XENOBOTANIST) /datum/gear/utility/dufflebag/explorer display_name = "away team dufflebag" diff --git a/code/modules/client/preference_setup/loadout/loadout_xeno.dm b/code/modules/client/preference_setup/loadout/loadout_xeno.dm index 317aa09d602..1d6a204a639 100644 --- a/code/modules/client/preference_setup/loadout/loadout_xeno.dm +++ b/code/modules/client/preference_setup/loadout/loadout_xeno.dm @@ -169,107 +169,107 @@ /datum/gear/uniform/dept/undercoat/cap display_name = "site manager undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/cap - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) /datum/gear/uniform/dept/undercoat/hop display_name = "head of personnel undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/hop - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) /datum/gear/uniform/dept/undercoat/rd display_name = "research director undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/rd - allowed_roles = list("Research Director") + allowed_roles = list(JOB_RESEARCH_DIRECTOR) /datum/gear/uniform/dept/undercoat/hos display_name = "head of security undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/hos - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) /datum/gear/uniform/dept/undercoat/ce display_name = "chief engineer undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/ce - allowed_roles = list("Chief Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER) /datum/gear/uniform/dept/undercoat/cmo display_name = "chief medical officer undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/cmo - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) /datum/gear/uniform/dept/undercoat/qm display_name = "quartermaster undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/qm - allowed_roles = list("Quartermaster") + allowed_roles = list(JOB_QUARTERMASTER) /datum/gear/uniform/dept/undercoat/cargo display_name = "cargo undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/cargo - allowed_roles = list("Cargo Technician","Quartermaster","Shaft Miner") + allowed_roles = list(JOB_CARGO_TECHNICIAN,JOB_QUARTERMASTER,JOB_SHAFT_MINER) /datum/gear/uniform/dept/undercoat/mining display_name = "mining undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/mining - allowed_roles = list("Quartermaster","Shaft Miner") + allowed_roles = list(JOB_QUARTERMASTER,JOB_SHAFT_MINER) /datum/gear/uniform/dept/undercoat/security display_name = "security undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/sec - allowed_roles = list("Head of Security","Detective","Warden","Security Officer",) + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_DETECTIVE,JOB_WARDEN,JOB_SECURITY_OFFICER) /datum/gear/uniform/dept/undercoat/service display_name = "service undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/service - allowed_roles = list("Head of Personnel","Bartender","Botanist","Janitor","Chef","Librarian","Chaplain") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL,JOB_BARTENDER,JOB_BOTANIST,JOB_JANITOR,JOB_CHEF,JOB_LIBRARIAN,JOB_CHAPLAIN) /datum/gear/uniform/dept/undercoat/engineer display_name = "engineering undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/engineer - allowed_roles = list("Chief Engineer","Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ENGINEER) /datum/gear/uniform/dept/undercoat/atmos display_name = "atmospherics undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/atmos - allowed_roles = list("Chief Engineer","Atmospheric Technician") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN) /datum/gear/uniform/dept/undercoat/research display_name = "scientist undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/sci - allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST, JOB_ROBOTICIST, JOB_XENOBIOLOGIST) /datum/gear/uniform/dept/undercoat/robo display_name = "roboticist undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/robo - allowed_roles = list("Research Director","Roboticist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_ROBOTICIST) /datum/gear/uniform/dept/undercoat/medical display_name = "medical undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/medical - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Psychiatrist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST,JOB_PSYCHIATRIST) /datum/gear/uniform/dept/undercoat/chemistry display_name = "chemist undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/chemistry - allowed_roles = list("Chief Medical Officer","Chemist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST) /datum/gear/uniform/dept/undercoat/virology display_name = "virologist undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/viro - allowed_roles = list("Chief Medical Officer","Medical Doctor") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR) /datum/gear/uniform/dept/undercoat/psych display_name = "psychiatrist undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/psych - allowed_roles = list("Chief Medical Officer","Psychiatrist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_PSYCHIATRIST) /datum/gear/uniform/dept/undercoat/paramedic display_name = "paramedic undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/para - allowed_roles = list("Chief Medical Officer","Paramedic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_PARAMEDIC) /datum/gear/uniform/dept/undercoat/iaa display_name = "internal affairs undercoat (Teshari)" path = /obj/item/clothing/under/teshari/undercoat/jobs/iaa - allowed_roles = list("Internal Affairs Agent") + allowed_roles = list(JOB_INTERNAL_AFFAIRS_AGENT) /datum/gear/suit/dept/cloak whitelisted = SPECIES_TESHARI @@ -278,22 +278,22 @@ /datum/gear/suit/dept/cloak/cap display_name = "site manager cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) /datum/gear/suit/dept/cloak/hop display_name = "head of personnel cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/hop - allowed_roles = list("Head of Personnel") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL) /datum/gear/suit/dept/cloak/rd display_name = "research director cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/rd - allowed_roles = list("Research Director") + allowed_roles = list(JOB_RESEARCH_DIRECTOR) /datum/gear/suit/dept/cloak/hos display_name = "head of security cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/hos - allowed_roles = list("Head of Security") + allowed_roles = list(JOB_HEAD_OF_SECURITY) /datum/gear/suit/dept/cloak/hos/New() ..() @@ -306,7 +306,7 @@ /datum/gear/suit/cloak/dept/ce display_name = "chief engineer cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/ce - allowed_roles = list("Chief Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER) /datum/gear/suit/dept/cloak/ce/New() ..() @@ -319,7 +319,7 @@ /datum/gear/suit/dept/cloak/cmo display_name = "chief medical officer cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/cmo - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) /datum/gear/suit/dept/cloak/cmo/New() ..() @@ -332,7 +332,7 @@ /datum/gear/suit/dept/cloak/qm display_name = "quartermaster cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/qm - allowed_roles = list("Chief Medical Officer") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER) /datum/gear/suit/dept/cloak/qm/New() ..() @@ -345,7 +345,7 @@ /datum/gear/suit/dept/cloak/cargo display_name = "cargo cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/cargo - allowed_roles = list("Quartermaster","Shaft Miner","Cargo Technician") + allowed_roles = list(JOB_QUARTERMASTER,JOB_SHAFT_MINER,JOB_CARGO_TECHNICIAN) /datum/gear/suit/dept/cloak/cargo/New() ..() @@ -358,7 +358,7 @@ /datum/gear/suit/dept/cloak/mining display_name = "mining cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/mining - allowed_roles = list("Quartermaster","Shaft Miner") + allowed_roles = list(JOB_QUARTERMASTER,JOB_SHAFT_MINER) /datum/gear/suit/dept/cloak/mining/New() ..() @@ -371,7 +371,7 @@ /datum/gear/suit/dept/cloak/security display_name = "security cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/sec - allowed_roles = list("Head of Security","Detective","Warden","Security Officer") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_DETECTIVE,JOB_WARDEN,JOB_SECURITY_OFFICER) /datum/gear/suit/dept/cloak/security/New() ..() @@ -384,7 +384,7 @@ /datum/gear/suit/dept/cloak/service display_name = "service cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/service - allowed_roles = list("Head of Personnel","Bartender","Botanist","Janitor","Chef","Librarian","Chaplain") + allowed_roles = list(JOB_HEAD_OF_PERSONNEL,JOB_BARTENDER,JOB_BOTANIST,JOB_JANITOR,JOB_CHEF,JOB_LIBRARIAN,JOB_CHAPLAIN) /datum/gear/suit/dept/cloak/service/New() ..() @@ -397,7 +397,7 @@ /datum/gear/suit/dept/cloak/engineer display_name = "engineering cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/engineer - allowed_roles = list("Chief Engineer","Engineer") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ENGINEER) /datum/gear/suit/dept/cloak/engineer/New() ..() @@ -410,7 +410,7 @@ /datum/gear/suit/dept/cloak/atmos display_name = "atmospherics cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/atmos - allowed_roles = list("Chief Engineer","Atmospheric Technician") + allowed_roles = list(JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN) /datum/gear/suit/dept/cloak/atmos/New() ..() @@ -423,7 +423,7 @@ /datum/gear/suit/dept/cloak/research display_name = "scientist cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/sci - allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST,JOB_ROBOTICIST,JOB_XENOBIOLOGIST) /datum/gear/suit/dept/cloak/research/New() ..() @@ -436,7 +436,7 @@ /datum/gear/suit/dept/cloak/robo display_name = "roboticist cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/robo - allowed_roles = list("Research Director","Roboticist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_ROBOTICIST) /datum/gear/suit/dept/cloak/robo/New() ..() @@ -449,7 +449,7 @@ /datum/gear/suit/dept/cloak/medical display_name = "medical cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/medical - allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist", "Psychiatrist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST) /datum/gear/suit/dept/cloak/medical/New() ..() @@ -462,7 +462,7 @@ /datum/gear/suit/dept/cloak/chemistry display_name = "chemist cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/chemistry - allowed_roles = list("Chemist") + allowed_roles = list(JOB_CHEMIST) /datum/gear/suit/dept/cloak/chemistry/New() ..() @@ -475,7 +475,7 @@ /datum/gear/suit/dept/cloak/virology display_name = "virologist cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/viro - allowed_roles = list("Medical Doctor") + allowed_roles = list(JOB_MEDICAL_DOCTOR) /datum/gear/suit/dept/cloak/virology/New() ..() @@ -488,12 +488,12 @@ /datum/gear/suit/dept/cloak/psych display_name = "psychiatrist cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/psych - allowed_roles = list("Chief Medical Officer","Psychiatrist") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_PSYCHIATRIST) /datum/gear/suit/dept/cloak/paramedic display_name = "paramedic cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/para - allowed_roles = list("Chief Medical Officer","Paramedic") + allowed_roles = list(JOB_CHIEF_MEDICAL_OFFICER,JOB_PARAMEDIC) /datum/gear/suit/dept/cloak/paramedic/New() ..() @@ -506,7 +506,7 @@ /datum/gear/suit/dept/cloak/iaa display_name = "internal affairs cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/cloak/jobs/iaa - allowed_roles = list("Internal Affairs Agent") + allowed_roles = list(JOB_INTERNAL_AFFAIRS_AGENT) /datum/gear/suit/dept/cloak/iaa/New() ..() @@ -553,19 +553,19 @@ /datum/gear/suit/dept/beltcloak/wrdn display_name = "warden belted cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/wrdn - allowed_roles = list("Head of Security","Warden") + allowed_roles = list(JOB_HEAD_OF_SECURITY,JOB_WARDEN) sort_category = "Xenowear" /datum/gear/suit/dept/beltcloak/jani display_name = "janitor belted cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/jani - allowed_roles = list("Janitor") + allowed_roles = list(JOB_JANITOR) sort_category = "Xenowear" /datum/gear/suit/dept/beltcloak/cmd display_name = "command belted cloak (Teshari)" path = /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/command - allowed_roles = list("Site Manager","Head of Personnel","Head of Security","Chief Engineer","Chief Medical Officer","Research Director") + allowed_roles = list(JOB_SITE_MANAGER,JOB_HEAD_OF_PERSONNEL,JOB_HEAD_OF_SECURITY,JOB_CHIEF_ENGINEER,JOB_CHIEF_MEDICAL_OFFICER,JOB_RESEARCH_DIRECTOR) sort_category = "Xenowear" /datum/gear/suit/cloak_hood diff --git a/code/modules/client/preference_setup/loadout/loadout_xeno_vr.dm b/code/modules/client/preference_setup/loadout/loadout_xeno_vr.dm index 7e302bbf4ff..3fdf1ec61fb 100644 --- a/code/modules/client/preference_setup/loadout/loadout_xeno_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_xeno_vr.dm @@ -2,10 +2,10 @@ ///// /datum/gear/suit/dept/cloak/research - allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST, JOB_ROBOTICIST, JOB_XENOBIOLOGIST, JOB_XENOBOTANIST) /datum/gear/uniform/dept/undercoat/research - allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist") + allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST, JOB_ROBOTICIST, JOB_XENOBIOLOGIST, JOB_XENOBOTANIST) ///// @@ -126,7 +126,7 @@ description = "A comfortable official suit for altevian command officers." display_name = "altevian officer's suit selection, site manager" whitelisted = SPECIES_ALTEVIAN - allowed_roles = list("Site Manager") + allowed_roles = list(JOB_SITE_MANAGER) sort_category = "Xenowear" /datum/gear/suit/altevian_officer_suit/New() diff --git a/code/modules/client/preference_setup/occupation/occupation.dm b/code/modules/client/preference_setup/occupation/occupation.dm index 48516c11d4f..4557e0c5f56 100644 --- a/code/modules/client/preference_setup/occupation/occupation.dm +++ b/code/modules/client/preference_setup/occupation/occupation.dm @@ -157,7 +157,7 @@ if((pref.job_civilian_low & ASSISTANT) && job.type != /datum/job/assistant) . += "[rank]
" continue - if((rank in SSjob.get_job_titles_in_department(DEPARTMENT_COMMAND) ) || (rank == "AI"))//Bold head jobs + if((rank in SSjob.get_job_titles_in_department(DEPARTMENT_COMMAND) ) || (rank == JOB_AI))//Bold head jobs . += "[rank]" else . += "[rank]" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index b7a3306138e..f4591190c1f 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -129,7 +129,7 @@ var/list/preferences_datums = list() // will probably not be able to do this for head and torso ;) var/list/organ_data = list() var/list/rlimb_data = list() - var/list/player_alt_titles = new() // the default name of a job like "Medical Doctor" + var/list/player_alt_titles = new() // the default name of a job like JOB_MEDICAL_DOCTOR var/list/body_markings = list() // "name" = "#rgbcolor" //VOREStation Edit: "name" = list(BP_HEAD = list("on" = , "color" = "#rgbcolor"), BP_TORSO = ...) diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm index eea71f60417..ea8bf1b01b0 100644 --- a/code/modules/clothing/head/collectable.dm +++ b/code/modules/clothing/head/collectable.dm @@ -29,7 +29,7 @@ /obj/item/clothing/head/collectable/chef name = "collectable chef's hat" - desc = "A rare Chef's Hat meant for hat collectors!" + desc = "A rare " + JOB_CHEF + "'s Hat meant for hat collectors!" icon_state = "chefhat" /obj/item/clothing/head/collectable/paper diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index 6d9fda604a5..308672b3b72 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -76,7 +76,7 @@ /obj/item/clothing/head/hardhat/firefighter/chief name = "chief firefighter helmet" - desc = "A helmet with face mask specially designed for firefighting. This one is in the colors of the Chief Engineer. It's airtight and has a port for internals." + desc = "A helmet with face mask specially designed for firefighting. This one is in the colors of the " + JOB_CHIEF_ENGINEER + ". It's airtight and has a port for internals." icon_state = "helmet_firefighter_ce" max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE + 10000 @@ -166,4 +166,4 @@ /obj/item/clothing/head/hardhat/ranger/yellow hatcolor = "yellow" -*/ \ No newline at end of file +*/ diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 3178da47572..e676e002c01 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -97,8 +97,8 @@ item_state_slots = list(slot_r_hand_str = "beret_navy", slot_l_hand_str = "beret_navy") /obj/item/clothing/head/beret/sec/navy/hos - name = "Head of Security beret" - desc = "A navy blue beret with a Head of Security's rank emblem. For officers that are more inclined towards style than safety." + name = JOB_HEAD_OF_SECURITY + " beret" + desc = "A navy blue beret with a " + JOB_HEAD_OF_SECURITY + "'s rank emblem. For officers that are more inclined towards style than safety." icon_state = "beret_navy_hos" item_state_slots = list(slot_r_hand_str = "beret_navy", slot_l_hand_str = "beret_navy") @@ -115,8 +115,8 @@ item_state_slots = list(slot_r_hand_str = "beret_black", slot_l_hand_str = "beret_black") /obj/item/clothing/head/beret/sec/corporate/hos - name = "Head of Security beret" - desc = "A corporate black beret with a Head of Security's rank emblem. For officers that are more inclined towards style than safety." + name = JOB_HEAD_OF_SECURITY + " beret" + desc = "A corporate black beret with a " + JOB_HEAD_OF_SECURITY + "'s rank emblem. For officers that are more inclined towards style than safety." icon_state = "beret_corporate_hos" item_state_slots = list(slot_r_hand_str = "beret_black", slot_l_hand_str = "beret_black") @@ -128,21 +128,21 @@ /obj/item/clothing/head/helmet/warden name = "warden's helmet" - desc = "Standard Warden gear. Protects the head from impacts." + desc = "Standard " + JOB_WARDEN + " gear. Protects the head from impacts." /obj/item/clothing/head/helmet/warden/hat name = "warden's hat" - desc = "It's a special hat issued to the Warden of a securiy force." + desc = "It's a special hat issued to the " + JOB_WARDEN + " of a securiy force." icon_state = "policehelm" valid_accessory_slots = null /obj/item/clothing/head/helmet/HoS - name = "Head of Security helmet" - desc = "Standard Head of Security gear. Protects the head from impacts." + name = JOB_HEAD_OF_SECURITY + " helmet" + desc = "Standard " + JOB_HEAD_OF_SECURITY + " gear. Protects the head from impacts." /obj/item/clothing/head/helmet/HoS/hat - name = "Head of Security Hat" - desc = "The hat of the Head of Security. For showing the officers who's in charge." + name = JOB_HEAD_OF_SECURITY + " Hat" + desc = "The hat of the " + JOB_HEAD_OF_SECURITY + ". For showing the officers who's in charge." icon_state = "hoscap" valid_accessory_slots = null @@ -288,4 +288,4 @@ /obj/item/clothing/head/beret/qm name = "quartermaster's beret" desc = "This headwear shows off your Cargonian leadership." - icon_state = "beretqm" \ No newline at end of file + icon_state = "beretqm" diff --git a/code/modules/clothing/head/neohats.dm b/code/modules/clothing/head/neohats.dm index bfc675c5ebf..d6ccb26e73a 100644 --- a/code/modules/clothing/head/neohats.dm +++ b/code/modules/clothing/head/neohats.dm @@ -2,8 +2,8 @@ this file deals with hats/headwear. */ /obj/item/clothing/head/helmet/HoS/hat/blue - name = "Blue Head of Security Hat" - desc = "The hat of the Head of Security. For showing the officers who's in charge." + name = "Blue " + JOB_HEAD_OF_SECURITY + " Hat" + desc = "The hat of the " + JOB_HEAD_OF_SECURITY + ". For showing the officers who's in charge." icon = 'icons/inventory/head/item.dmi' icon_state = "neo_hoshat_blue" valid_accessory_slots = null diff --git a/code/modules/clothing/masks/hailer.dm b/code/modules/clothing/masks/hailer.dm index 8737aa71a13..5c68ec6e2cc 100644 --- a/code/modules/clothing/masks/hailer.dm +++ b/code/modules/clothing/masks/hailer.dm @@ -39,7 +39,7 @@ /obj/item/clothing/mask/gas/sechailer/swat/warden - name = "\improper Warden SWAT mask" + name = "\improper " + JOB_WARDEN + " SWAT mask" desc = "A close-fitting tactical mask with an especially aggressive Compli-o-nator 3000. It has a blue stripe." icon_state = "wardenmask" diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index f3fef22d7b1..56be88778e4 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -10,7 +10,7 @@ //Captain's space suit This is not the proper path but I don't currently know enough about how this all works to mess with it. /obj/item/clothing/suit/armor/captain - name = "Site Manager's armor" + name = JOB_SITE_MANAGER + "'s armor" desc = "A bulky, heavy-duty piece of exclusive corporate armor. YOU are in charge!" icon_state = "caparmor" w_class = ITEMSIZE_HUGE diff --git a/code/modules/clothing/spacesuits/void/station.dm b/code/modules/clothing/spacesuits/void/station.dm index 92c9d44eedf..7c5983b979d 100644 --- a/code/modules/clothing/spacesuits/void/station.dm +++ b/code/modules/clothing/spacesuits/void/station.dm @@ -380,7 +380,7 @@ /obj/item/clothing/suit/space/void/exploration name = "exploration voidsuit" - desc = "A hazard and radiation resistant voidsuit, featuring the Explorer emblem on its chest plate. Designed for exploring unknown planetary environments." + desc = "A hazard and radiation resistant voidsuit, featuring the " + JOB_EXPLORER + " emblem on its chest plate. Designed for exploring unknown planetary environments." icon_state = "void_explorer" item_state_slots = list(slot_r_hand_str = "skrell_suit_black", slot_l_hand_str = "skrell_suit_black") armor = list(melee = 50, bullet = 15, laser = 35, energy = 25, bomb = 30, bio = 100, rad = 70) @@ -402,7 +402,7 @@ /obj/item/clothing/suit/space/void/expedition_medical name = "field medic voidsuit" - desc = "A hazard and radiation resistant voidsuit, featuring the Explorer emblem and a green cross on its chest plate. Seems to be a little lighter and more flexible than the regular explorer issue." + desc = "A hazard and radiation resistant voidsuit, featuring the " + JOB_EXPLORER + " emblem and a green cross on its chest plate. Seems to be a little lighter and more flexible than the regular explorer issue." icon_state = "void_exp_medic" item_state_slots = list(slot_r_hand_str = "skrell_suit_black", slot_l_hand_str = "skrell_suit_black") armor = list(melee = 50, bullet = 15, laser = 25, energy = 15, bomb = 30, bio = 100, rad = 90) diff --git a/code/modules/clothing/suits/aliens/teshari.dm b/code/modules/clothing/suits/aliens/teshari.dm index e17ef0e85e6..649b6e74b5e 100644 --- a/code/modules/clothing/suits/aliens/teshari.dm +++ b/code/modules/clothing/suits/aliens/teshari.dm @@ -107,14 +107,14 @@ // Job Cloaks /obj/item/clothing/suit/storage/teshari/cloak/jobs/cap name = "site manager cloak" - desc = "A soft Teshari cloak made for the Site Manager" + desc = "A soft Teshari cloak made for the " + JOB_SITE_MANAGER icon_state = "tesh_cloak_cap" //Cargo /obj/item/clothing/suit/storage/teshari/cloak/jobs/qm name = "quartermaster cloak" - desc = "A soft Teshari cloak made for the Quartermaster" + desc = "A soft Teshari cloak made for the " + JOB_QUARTERMASTER icon_state = "tesh_cloak_qm" /obj/item/clothing/suit/storage/teshari/cloak/jobs/cargo @@ -131,7 +131,7 @@ /obj/item/clothing/suit/storage/teshari/cloak/jobs/ce name = "cheif engineer cloak" - desc = "A soft Teshari cloak made the Chief Engineer" + desc = "A soft Teshari cloak made for the "+ JOB_CHIEF_ENGINEER icon_state = "tesh_cloak_ce" /obj/item/clothing/suit/storage/teshari/cloak/jobs/engineer @@ -141,7 +141,7 @@ /obj/item/clothing/suit/storage/teshari/cloak/jobs/atmos name = "atmospherics cloak" - desc = "A soft Teshari cloak made for the Atmospheric Technician" + desc = "A soft Teshari cloak made for the " + JOB_ATMOSPHERIC_TECHNICIAN icon_state = "tesh_cloak_atmos" //Medical @@ -158,29 +158,29 @@ /obj/item/clothing/suit/storage/teshari/cloak/jobs/chemistry name = "chemist cloak" - desc = "A soft Teshari cloak made for the Chemist" + desc = "A soft Teshari cloak made for the " + JOB_CHEMIST icon_state = "tesh_cloak_chem" /obj/item/clothing/suit/storage/teshari/cloak/jobs/viro name = "virologist cloak" - desc = "A soft Teshari cloak made for the Virologist" + desc = "A soft Teshari cloak made for the " + JOB_ALT_VIROLOGIST icon_state = "tesh_cloak_viro" /obj/item/clothing/suit/storage/teshari/cloak/jobs/para name = "paramedic cloak" - desc = "A soft Teshari cloak made for the Paramedic" + desc = "A soft Teshari cloak made for the " + JOB_PARAMEDIC icon_state = "tesh_cloak_para" /obj/item/clothing/suit/storage/teshari/cloak/jobs/psych name = " psychiatrist cloak" - desc = "A soft Teshari cloak made for the Psychiatrist" + desc = "A soft Teshari cloak made for the " + JOB_PSYCHIATRIST icon_state = "tesh_cloak_psych" //Science /obj/item/clothing/suit/storage/teshari/cloak/jobs/rd name = "research director cloak" - desc = "A soft Teshari cloak made for the Research Director" + desc = "A soft Teshari cloak made for the " + JOB_RESEARCH_DIRECTOR icon_state = "tesh_cloak_rd" /obj/item/clothing/suit/storage/teshari/cloak/jobs/sci @@ -190,14 +190,14 @@ /obj/item/clothing/suit/storage/teshari/cloak/jobs/robo name = "roboticist cloak" - desc = "A soft Teshari cloak made for the Roboticist" + desc = "A soft Teshari cloak made for the " + JOB_ROBOTICIST icon_state = "tesh_cloak_robo" //Security /obj/item/clothing/suit/storage/teshari/cloak/jobs/hos name = "head of security cloak" - desc = "A soft Teshari cloak made for the Head of Security" + desc = "A soft Teshari cloak made for the " + JOB_HEAD_OF_SECURITY icon_state = "tesh_cloak_hos" /obj/item/clothing/suit/storage/teshari/cloak/jobs/sec @@ -207,14 +207,14 @@ /obj/item/clothing/suit/storage/teshari/cloak/jobs/iaa name = "internal affairs cloak" - desc = "A soft Teshari cloak made for the Internal Affairs Agent" + desc = "A soft Teshari cloak made for the " + JOB_INTERNAL_AFFAIRS_AGENT icon_state = "tesh_cloak_iaa" //Service /obj/item/clothing/suit/storage/teshari/cloak/jobs/hop name = "head of personnel cloak" - desc = "A soft Teshari cloak made for the Head of Personnel" + desc = "A soft Teshari cloak made for the " + JOB_HEAD_OF_PERSONNEL icon_state = "tesh_cloak_hop" /obj/item/clothing/suit/storage/teshari/cloak/jobs/service @@ -624,7 +624,7 @@ /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/ce name = "chief engineer belted cloak" - desc = "A soft Teshari cloak made the Chief Engineer" + desc = "A soft Teshari cloak made for the " + JOB_CHIEF_ENGINEER icon_state = "tesh_beltcloak_ce" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/engineer @@ -634,12 +634,12 @@ /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/atmos name = "atmospherics belted cloak" - desc = "A soft Teshari cloak made for the Atmospheric Technician" + desc = "A soft Teshari cloak made for the " + JOB_ATMOSPHERIC_TECHNICIAN icon_state = "tesh_beltcloak_atmos" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/cmo name = "chief medical officer belted cloak" - desc = "A soft Teshari cloak made the Chief Medical Officer" + desc = "A soft Teshari cloak made the " + JOB_CHIEF_MEDICAL_OFFICER icon_state = "tesh_beltcloak_cmo" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/medical @@ -649,17 +649,17 @@ /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/chemistry name = "chemist belted cloak" - desc = "A soft Teshari cloak made for the Chemist" + desc = "A soft Teshari cloak made for the " + JOB_CHEMIST icon_state = "tesh_beltcloak_chem" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/viro name = "virologist belted cloak" - desc = "A soft Teshari cloak made for the Virologist" + desc = "A soft Teshari cloak made for the " + JOB_ALT_VIROLOGIST icon_state = "tesh_beltcloak_viro" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/para name = "paramedic belted cloak" - desc = "A soft Teshari cloak made for the Paramedic" + desc = "A soft Teshari cloak made for the " + JOB_PARAMEDIC icon_state = "tesh_beltcloak_para" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/sci @@ -669,7 +669,7 @@ /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/robo name = "roboticist belted cloak" - desc = "A soft Teshari cloak made for the Roboticist" + desc = "A soft Teshari cloak made for the " + JOB_ROBOTICIST icon_state = "tesh_beltcloak_robo" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/sec @@ -679,7 +679,7 @@ /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/qm name = "quartermaster belted cloak" - desc = "A soft Teshari cloak made for the Quartermaster" + desc = "A soft Teshari cloak made for the " + JOB_QUARTERMASTER icon_state = "tesh_beltcloak_qm" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/service @@ -689,21 +689,20 @@ /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/iaa name = "internal affairs belted cloak" - desc = "A soft Teshari cloak made for the Internal Affairs Agent" + desc = "A soft Teshari cloak made for the " + JOB_INTERNAL_AFFAIRS_AGENT icon_state = "tesh_beltcloak_iaa" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/wrdn name = "warden belted cloak" - desc = "A soft Teshari cloak made for the Warden" + desc = "A soft Teshari cloak made for the " + JOB_WARDEN icon_state = "tesh_beltcloak_wrdn" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/hos name = "security chief belted cloak" - desc = "A soft Teshari cloak made for the Head of Security" + desc = "A soft Teshari cloak made for the " + JOB_HEAD_OF_SECURITY icon_state = "tesh_beltcloak_hos" /obj/item/clothing/suit/storage/teshari/beltcloak/jobs/jani name = "janitor belted cloak" - desc = "A soft Teshari cloak made for the Janitor" + desc = "A soft Teshari cloak made for the " + JOB_JANITOR icon_state = "tesh_beltcloak_jani" - diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 12ed13f6010..2ae7692a7ad 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -164,7 +164,7 @@ //When the wearer gets hit, this armor will teleport the user a short distance away (to safety or to more danger, no one knows. That's the fun of it!) /obj/item/clothing/suit/armor/reactive name = "Reactive Teleport Armor" - desc = "Someone separated our Research Director from their own head!" + desc = "Someone separated our " + JOB_RESEARCH_DIRECTOR + " from their own head!" var/active = 0.0 icon_state = "reactiveoff" item_state_slots = list(slot_r_hand_str = "armor_reflec_old", slot_l_hand_str = "armor_reflec_old") @@ -309,7 +309,7 @@ icon_nobadge = "wardenvest_nobadge" /obj/item/clothing/suit/storage/vest/wardencoat - name = "Warden's jacket" + name = JOB_WARDEN + "'s jacket" desc = "An armoured jacket with silver rank pips and livery." icon_state = "warden_jacket" blood_overlay_type = "suit" @@ -317,7 +317,7 @@ flags_inv = HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/storage/vest/wardencoat/alt - name = "Warden's jacket" + name = JOB_WARDEN + "'s jacket" desc = "An armoured jacket with silver rank pips and livery." icon_state = "warden_alt" body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index 37ac8cd948d..ce1ec1f66da 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -28,14 +28,14 @@ //Captain /obj/item/clothing/suit/captunic name = "site manager's parade tunic" - desc = "Worn by a Site Manager to show their class." + desc = "Worn by a " + JOB_SITE_MANAGER + " to show their class." icon_state = "captunic" body_parts_covered = UPPER_TORSO|ARMS flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/captunic/capjacket name = "site manager's uniform jacket" - desc = "A less formal jacket for everyday Site Manager use." + desc = "A less formal jacket for everyday " + JOB_SITE_MANAGER + " use." icon_state = "capjacket" body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS flags_inv = HIDEHOLSTER diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index 0e5d4d938b8..29c0e105a4c 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -70,39 +70,39 @@ item_state_slots = list(slot_r_hand_str = "cmo_labcoat", slot_l_hand_str = "cmo_labcoat") /obj/item/clothing/suit/storage/toggle/labcoat/genetics - name = "Geneticist labcoat" + name = JOB_GENETICIST + " labcoat" desc = "A suit that protects against minor chemical spills. Has a blue stripe on the shoulder." icon_state = "labcoat_gen" item_state_slots = list(slot_r_hand_str = "genetics_labcoat", slot_l_hand_str = "genetics_labcoat") /obj/item/clothing/suit/storage/toggle/labcoat/chemist - name = "Chemist labcoat" + name = JOB_CHEMIST + " labcoat" desc = "A suit that protects against minor chemical spills. Has an orange stripe on the shoulder." icon_state = "labcoat_chem" item_state_slots = list(slot_r_hand_str = "chemist_labcoat", slot_l_hand_str = "chemist_labcoat") /obj/item/clothing/suit/storage/toggle/labcoat/virologist - name = "Virologist labcoat" + name = JOB_ALT_VIROLOGIST + " labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a green stripe on the shoulder." icon_state = "labcoat_vir" item_state_slots = list(slot_r_hand_str = "virologist_labcoat", slot_l_hand_str = "virologist_labcoat") armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/roboticist - name = "Roboticist labcoat" + name = JOB_ROBOTICIST + " labcoat" desc = "More like an eccentric coat than a labcoat. Helps pass off bloodstains as part of the aesthetic. Comes with red shoulder pads." icon_state = "labcoat_robo" item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") /obj/item/clothing/suit/storage/toggle/labcoat/science - name = "Scientist labcoat" + name = JOB_SCIENTIST + " labcoat" desc = "A suit that protects against minor chemical spills. Has a purple stripe on the shoulder." icon_state = "labcoat_tox" item_state_slots = list(slot_r_hand_str = "science_labcoat", slot_l_hand_str = "science_labcoat") /obj/item/clothing/suit/storage/toggle/labcoat/rd name = "research director's labcoat" - desc = "A flashy labcoat with purple markings. It belongs to the Research Director." + desc = "A flashy labcoat with purple markings. It belongs to the " + JOB_RESEARCH_DIRECTOR + "." icon_state = "labcoat_rd" item_state_slots = list(slot_r_hand_str = "science_labcoat", slot_l_hand_str = "science_labcoat") diff --git a/code/modules/clothing/under/accessories/accessory_vr.dm b/code/modules/clothing/under/accessories/accessory_vr.dm index 899359966f6..d5837ebce4e 100644 --- a/code/modules/clothing/under/accessories/accessory_vr.dm +++ b/code/modules/clothing/under/accessories/accessory_vr.dm @@ -961,13 +961,13 @@ /obj/item/clothing/accessory/poncho/roles/cloak/mantle/hop name = "head of personnel mantle" - desc = "A shoulder mantle bearing the colors of the Head of Personnel's uniform, featuring the typical royal blue contrasted by authoritative red." + desc = "A shoulder mantle bearing the colors of the " + JOB_HEAD_OF_PERSONNEL + "'s uniform, featuring the typical royal blue contrasted by authoritative red." icon_state = "hopmantle" item_state = "hopmantle" /obj/item/clothing/accessory/poncho/roles/cloak/mantle/cap name = "site manager mantle" - desc = "A shoulder mantle bearing the colors usually found on a Site Manager, a commanding blue with regal gold inlay." + desc = "A shoulder mantle bearing the colors usually found on a " + JOB_SITE_MANAGER + ", a commanding blue with regal gold inlay." icon_state = "capmantle" item_state = "capmantle" diff --git a/code/modules/clothing/under/accessories/badges.dm b/code/modules/clothing/under/accessories/badges.dm index 6e2b392331e..8f4ba015b60 100644 --- a/code/modules/clothing/under/accessories/badges.dm +++ b/code/modules/clothing/under/accessories/badges.dm @@ -114,7 +114,7 @@ var/found = FALSE for(var/access in valid_access) - if(access in id_card.access || emagged) + if(access in id_card.GetAccess() || emagged) to_chat(user, "You imprint your ID details onto the badge.") set_name(user.real_name) found = TRUE @@ -135,25 +135,25 @@ /obj/item/clothing/accessory/badge/holo/officer name = "officer's badge" - desc = "A bronze corporate security badge. Stamped with the words 'Security Officer.'" + desc = "A bronze corporate security badge. Stamped with the words '" + JOB_SECURITY_OFFICER + ".'" icon_state = "bronzebadge" slot_flags = SLOT_TIE | SLOT_BELT /obj/item/clothing/accessory/badge/holo/warden name = "warden's holobadge" - desc = "A silver corporate security badge. Stamped with the words 'Warden.'" + desc = "A silver corporate security badge. Stamped with the words '" + JOB_WARDEN + ".'" icon_state = "silverbadge" slot_flags = SLOT_TIE | SLOT_BELT /obj/item/clothing/accessory/badge/holo/hos name = "head of security's holobadge" - desc = "An immaculately polished gold security badge. Stamped with the words 'Head of Security.'" + desc = "An immaculately polished gold security badge. Stamped with the words '" + JOB_HEAD_OF_SECURITY + ".'" icon_state = "goldbadge" slot_flags = SLOT_TIE | SLOT_BELT /obj/item/clothing/accessory/badge/holo/detective name = "detective's holobadge" - desc = "An immaculately polished gold security badge on leather. Labeled 'Detective.'" + desc = "An immaculately polished gold security badge on leather. Labeled '" + JOB_DETECTIVE + ".'" icon_state = "marshalbadge" slot_flags = SLOT_TIE | SLOT_BELT diff --git a/code/modules/clothing/under/eva_bodysuits.dm b/code/modules/clothing/under/eva_bodysuits.dm index 8b77595f9fa..73856571dfd 100644 --- a/code/modules/clothing/under/eva_bodysuits.dm +++ b/code/modules/clothing/under/eva_bodysuits.dm @@ -31,7 +31,7 @@ /obj/item/clothing/under/undersuit/sec/hos name = "security command undersuit" - desc = "A reinforced undersuit, intended for wearing under a voidsuit or other EVA equipment. This one is specifically made for the Head of Security or equivalent, and has slight protective capabilities against simple melee attacks." + desc = "A reinforced undersuit, intended for wearing under a voidsuit or other EVA equipment. This one is specifically made for the " + JOB_HEAD_OF_SECURITY + " or equivalent, and has slight protective capabilities against simple melee attacks." icon_state = "bodysuit_seccom" item_state = "bodysuit_seccom" diff --git a/code/modules/clothing/under/jobs/civilian.dm b/code/modules/clothing/under/jobs/civilian.dm index 9f714d9a0c9..3fe42db608f 100644 --- a/code/modules/clothing/under/jobs/civilian.dm +++ b/code/modules/clothing/under/jobs/civilian.dm @@ -13,7 +13,7 @@ item_state_slots = list(slot_r_hand_str = "ba_suit", slot_l_hand_str = "ba_suit") /obj/item/clothing/under/rank/captain //Alright, technically not a 'civilian' but its better then giving a .dm file for a single define. - desc = "It's a blue jumpsuit with some gold markings denoting the rank of \"Site Manager\"." + desc = "It's a blue jumpsuit with some gold markings denoting the rank of \"" + JOB_SITE_MANAGER + "\"." name = "site manager's jumpsuit" icon_state = "captain" rolled_sleeves = 0 @@ -80,7 +80,7 @@ rolled_sleeves = -1 /obj/item/clothing/under/rank/head_of_personnel - desc = "It's a jumpsuit worn by someone who works in the position of \"Head of Personnel\"." + desc = "It's a jumpsuit worn by someone who works in the position of \"" + JOB_HEAD_OF_PERSONNEL + "\"." name = "head of personnel's jumpsuit" icon_state = "hop" rolled_sleeves = 0 @@ -104,7 +104,7 @@ icon_state = "hydro" /obj/item/clothing/under/rank/internalaffairs - desc = "The plain, professional attire of an Internal Affairs Agent. The collar is immaculately starched." + desc = "The plain, professional attire of an " + JOB_INTERNAL_AFFAIRS_AGENT + ". The collar is immaculately starched." name = "Internal Affairs uniform" icon_state = "internalaffairs" item_state_slots = list(slot_r_hand_str = "ba_suit", slot_l_hand_str = "ba_suit") @@ -112,7 +112,7 @@ starting_accessories = list(/obj/item/clothing/accessory/tie/black) /obj/item/clothing/under/rank/internalaffairs/skirt - desc = "The plain, professional attire of an Internal Affairs Agent. The top button is sewn shut." + desc = "The plain, professional attire of an " + JOB_INTERNAL_AFFAIRS_AGENT + ". The top button is sewn shut." name = "Internal Affairs skirt" icon_state = "internalaffairs_skirt" diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm index 00b0ed43f96..cf2a59b7fd7 100644 --- a/code/modules/clothing/under/jobs/medsci.dm +++ b/code/modules/clothing/under/jobs/medsci.dm @@ -2,7 +2,7 @@ * Science */ /obj/item/clothing/under/rank/research_director - desc = "It's a jumpsuit worn by those with the know-how to achieve the position of \"Research Director\". Its fabric provides minor protection from biological contaminants." + desc = "It's a jumpsuit worn by those with the know-how to achieve the position of \"" + JOB_RESEARCH_DIRECTOR + "\". Its fabric provides minor protection from biological contaminants." name = "research director's jumpsuit" icon_state = "director" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) @@ -51,7 +51,7 @@ * Medical */ /obj/item/clothing/under/rank/chief_medical_officer - desc = "It's a jumpsuit worn by those with the experience to be \"Chief Medical Officer\". It provides minor biological protection." + desc = "It's a jumpsuit worn by those with the experience to be \"" + JOB_CHIEF_MEDICAL_OFFICER + "\". It provides minor biological protection." name = "chief medical officer's jumpsuit" icon_state = "cmo" item_state_slots = list(slot_r_hand_str = "white", slot_l_hand_str = "white") diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index 3d6bdfec0c0..0d5c64dfad5 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -9,7 +9,7 @@ * Security */ /obj/item/clothing/under/rank/warden - desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for more robust protection. It has the word \"Warden\" written on the shoulders." + desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for more robust protection. It has the word \"" + JOB_WARDEN+ "\" written on the shoulders." name = "warden's jumpsuit" icon_state = "warden" item_state_slots = list(slot_r_hand_str = "red", slot_l_hand_str = "red") @@ -147,7 +147,7 @@ * Head of Security */ /obj/item/clothing/under/rank/head_of_security - desc = "It's a jumpsuit worn by those few with the dedication to achieve the position of \"Head of Security\". It has additional armor to protect the wearer." + desc = "It's a jumpsuit worn by those few with the dedication to achieve the position of \"" + JOB_HEAD_OF_SECURITY + "\". It has additional armor to protect the wearer." name = "head of security's jumpsuit" icon_state = "hos" item_state_slots = list(slot_r_hand_str = "red", slot_l_hand_str = "red") @@ -178,14 +178,14 @@ rolled_sleeves = 0 /obj/item/clothing/under/rank/head_of_security/navyblue - desc = "The insignia on this uniform tells you that this uniform belongs to the Head of Security." + desc = "The insignia on this uniform tells you that this uniform belongs to the " + JOB_HEAD_OF_SECURITY + "." name = "head of security's uniform" icon_state = "hosblueclothes" item_state_slots = list(slot_r_hand_str = "ba_suit", slot_l_hand_str = "ba_suit") rolled_sleeves = 0 /obj/item/clothing/under/rank/warden/navyblue - desc = "The insignia on this uniform tells you that this uniform belongs to the Warden." + desc = "The insignia on this uniform tells you that this uniform belongs to the " + JOB_WARDEN + "." name = "warden's uniform" icon_state = "wardenblueclothes" item_state_slots = list(slot_r_hand_str = "ba_suit", slot_l_hand_str = "ba_suit") @@ -202,16 +202,15 @@ rolled_sleeves = 0 /obj/item/clothing/under/rank/head_of_security/tan - desc = "The insignia on this uniform tells you that this uniform belongs to the Head of Security." + desc = "The insignia on this uniform tells you that this uniform belongs to the " + JOB_HEAD_OF_SECURITY+ "." name = "head of security's uniform" icon_state = "hostanclothes" item_state_slots = list(slot_r_hand_str = "ba_suit", slot_l_hand_str = "ba_suit") rolled_sleeves = 0 /obj/item/clothing/under/rank/warden/tan - desc = "The insignia on this uniform tells you that this uniform belongs to the Warden." + desc = "The insignia on this uniform tells you that this uniform belongs to the " + JOB_WARDEN + "." name = "warden's uniform" icon_state = "wardentanclothes" item_state_slots = list(slot_r_hand_str = "ba_suit", slot_l_hand_str = "ba_suit") rolled_sleeves = 0 - diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 36a314601d4..c00de40e7fd 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -418,7 +418,7 @@ /obj/item/clothing/under/dress/dress_cap name = "site manager's dress uniform" - desc = "Feminine fashion for the style conscious Site Manager." + desc = "Feminine fashion for the style conscious " + JOB_SITE_MANAGER + "." icon_state = "dress_cap" body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS @@ -751,7 +751,7 @@ /obj/item/clothing/under/captainformal name = "site manager's formal uniform" - desc = "A Site Manager's formal-wear, for special occasions." + desc = "A " + JOB_SITE_MANAGER + "'s formal-wear, for special occasions." icon_state = "captain_formal" item_state_slots = list(slot_r_hand_str = "lawyer_blue", slot_l_hand_str = "lawyer_blue") diff --git a/code/modules/clothing/under/shorts.dm b/code/modules/clothing/under/shorts.dm index b2289e70eba..75160cfd05f 100644 --- a/code/modules/clothing/under/shorts.dm +++ b/code/modules/clothing/under/shorts.dm @@ -217,7 +217,7 @@ icon_state = "chemistryf" /obj/item/clothing/under/rank/chief_medical_officer/skirt - desc = "It's a jumpskirt worn by those with the experience to be \"Chief Medical Officer\". It provides minor biological protection." + desc = "It's a jumpskirt worn by those with the experience to be \"" + JOB_CHIEF_MEDICAL_OFFICER + "\". It provides minor biological protection." name = "chief medical officer's jumpskirt" icon_state = "cmof" @@ -237,11 +237,11 @@ siemens_coefficient = 0.9 /obj/item/clothing/under/rank/warden/skirt - desc = "Standard feminine fashion for a Warden. It is made of sturdier material than standard jumpskirts. It has the word \"Warden\" written on the shoulders." + desc = "Standard feminine fashion for a " + JOB_WARDEN + ". It is made of sturdier material than standard jumpskirts. It has the word \"" + JOB_WARDEN + "\" written on the shoulders." name = "warden's jumpskirt" icon_state = "wardenf" /obj/item/clothing/under/rank/head_of_security/skirt - desc = "It's a fashionable jumpskirt worn by those few with the dedication to achieve the position of \"Head of Security\". It has additional armor to protect the wearer." + desc = "It's a fashionable jumpskirt worn by those few with the dedication to achieve the position of \"" + JOB_HEAD_OF_SECURITY + "\". It has additional armor to protect the wearer." name = "head of security's jumpskirt" icon_state = "hosf" diff --git a/code/modules/clothing/under/xenos/teshari.dm b/code/modules/clothing/under/xenos/teshari.dm index d7254524f7f..5127ae5b132 100644 --- a/code/modules/clothing/under/xenos/teshari.dm +++ b/code/modules/clothing/under/xenos/teshari.dm @@ -222,27 +222,27 @@ //Job Undercoats /obj/item/clothing/under/teshari/undercoat/jobs/cap name = "site manager undercoat" - desc = "A traditional Teshari garb made for the Site Manager" + desc = "A traditional Teshari garb made for the " + JOB_SITE_MANAGER icon_state = "tesh_uniform_cap" /obj/item/clothing/under/teshari/undercoat/jobs/hop name = "head of personnel undercoat" - desc = "A traditional Teshari garb made for the Head of Personnel" + desc = "A traditional Teshari garb made for the " + JOB_HEAD_OF_PERSONNEL icon_state = "tesh_uniform_hop" /obj/item/clothing/under/teshari/undercoat/jobs/ce name = "cheif engineer undercoat" - desc = "A traditional Teshari garb made for the Chief Engineer" + desc = "A traditional Teshari garb made for the " + JOB_CHIEF_ENGINEER icon_state = "tesh_uniform_ce" /obj/item/clothing/under/teshari/undercoat/jobs/hos name = "head of security undercoat" - desc = "A traditional Teshari garb made for the Head of Security" + desc = "A traditional Teshari garb made for the " + JOB_HEAD_OF_SECURITY icon_state = "tesh_uniform_hos" /obj/item/clothing/under/teshari/undercoat/jobs/rd name = "research director undercoat" - desc = "A traditional Teshari garb made for the Research Director" + desc = "A traditional Teshari garb made for the " + JOB_RESEARCH_DIRECTOR icon_state = "tesh_uniform_rd" /obj/item/clothing/under/teshari/undercoat/jobs/engineer @@ -252,7 +252,7 @@ /obj/item/clothing/under/teshari/undercoat/jobs/atmos name = "atmospherics undercoat" - desc = "A traditional Teshari garb made for the Atmospheric Technician" + desc = "A traditional Teshari garb made for the " + JOB_ATMOSPHERIC_TECHNICIAN icon_state = "tesh_uniform_atmos" /obj/item/clothing/under/teshari/undercoat/jobs/cmo @@ -262,7 +262,7 @@ /obj/item/clothing/under/teshari/undercoat/jobs/qm name = "quartermaster undercoat" - desc = "A traditional Teshari garb made for the Quartermaster" + desc = "A traditional Teshari garb made for the " + JOB_QUARTERMASTER icon_state = "tesh_uniform_qm" /obj/item/clothing/under/teshari/undercoat/jobs/cargo @@ -282,22 +282,22 @@ /obj/item/clothing/under/teshari/undercoat/jobs/chemistry name = "chemist undercoat" - desc = "A traditional Teshari garb made for the Chemist" + desc = "A traditional Teshari garb made for the " + JOB_CHEMIST icon_state = "tesh_uniform_chem" /obj/item/clothing/under/teshari/undercoat/jobs/viro name = "virologist undercoat" - desc = "A traditional Teshari garb made for the Virologist" + desc = "A traditional Teshari garb made for the " + JOB_ALT_VIROLOGIST icon_state = "tesh_uniform_viro" /obj/item/clothing/under/teshari/undercoat/jobs/psych name = "psychiatrist undercoat" - desc = "A traditional Teshari garb made for the Psychiatrist" + desc = "A traditional Teshari garb made for the " + JOB_PSYCHIATRIST icon_state = "tesh_uniform_psych" /obj/item/clothing/under/teshari/undercoat/jobs/para name = "paramedic undercoat" - desc = "A traditional Teshari garb made for the Paramedic" + desc = "A traditional Teshari garb made for the " + JOB_PARAMEDIC icon_state = "tesh_uniform_para" /obj/item/clothing/under/teshari/undercoat/jobs/sci @@ -307,7 +307,7 @@ /obj/item/clothing/under/teshari/undercoat/jobs/robo name = "roboticist undercoat" - desc = "A traditional Teshari garb made for the Roboticist" + desc = "A traditional Teshari garb made for the " + JOB_ROBOTICIST icon_state = "tesh_uniform_robo" /obj/item/clothing/under/teshari/undercoat/jobs/sec @@ -322,5 +322,5 @@ /obj/item/clothing/under/teshari/undercoat/jobs/iaa name = "internal affairs undercoat" - desc = "A traditional Teshari garb made for the Internal Affairs Agent" + desc = "A traditional Teshari garb made for the " + JOB_INTERNAL_AFFAIRS_AGENT icon_state = "tesh_uniform_iaa" diff --git a/code/modules/customitems/item_spawning.dm b/code/modules/customitems/item_spawning.dm index c1ddca45227..5c559edadc2 100644 --- a/code/modules/customitems/item_spawning.dm +++ b/code/modules/customitems/item_spawning.dm @@ -191,7 +191,7 @@ // Check for required access. var/obj/item/weapon/card/id/current_id = M.wear_id if(citem.req_access && citem.req_access > 0) // These are numbers, not lists - if(!(istype(current_id) && (citem.req_access in current_id.access))) + if(!(istype(current_id) && (citem.req_access in current_id.GetAccess()))) log_debug("Custom Item: [key_name(M)] Does not have required access.") continue diff --git a/code/modules/economy/Events_Mundane.dm b/code/modules/economy/Events_Mundane.dm index 67031334620..a3997421278 100644 --- a/code/modules/economy/Events_Mundane.dm +++ b/code/modules/economy/Events_Mundane.dm @@ -29,7 +29,7 @@ "New bowling lane that shoots mini-meteors at bowlers very popular.",\ "[pick("Unathi","Spacer")] gets tattoo of "+using_map.starsys_name+" on chest '[pick("[using_map.boss_short]","star","starship","asteroid")] tickles most'.",\ "Skrell marries computer; wedding attended by 100 modems.",\ - "Chef reports successfully using harmonica as cheese grater.",\ + JOB_CHEF + " reports successfully using harmonica as cheese grater.",\ "[using_map.company_name] invents handkerchief that says 'Bless you' after sneeze.",\ "Clone accused of posing for other clones's school photo.",\ "Clone accused of stealing other clones's employee of the month award.",\ diff --git a/code/modules/entrepreneur/entrepreneur_items.dm b/code/modules/entrepreneur/entrepreneur_items.dm index b88a66a500f..90fbd7ed5a8 100644 --- a/code/modules/entrepreneur/entrepreneur_items.dm +++ b/code/modules/entrepreneur/entrepreneur_items.dm @@ -379,7 +379,7 @@ /obj/item/weapon/entrepreneur/spirit_board/attack_ghost(var/mob/observer/dead/user) if(!ghost_enabled) return - if(jobban_isbanned(user, "GhostRoles")) + if(jobban_isbanned(user, JOB_GHOSTROLES)) to_chat(user, "You cannot interact with this board because you are banned from playing ghost roles.") return next_result = tgui_input_list(user, "What should it land on next?", "Next result", possible_results) @@ -526,4 +526,3 @@ icon = 'icons/obj/entrepreneur.dmi' icon_state = "stylist" starts_with = list(/obj/item/weapon/makeover, /obj/item/weapon/lipstick/random, /obj/item/weapon/nailpolish, /obj/item/weapon/nailpolish_remover, /obj/item/weapon/haircomb, /obj/item/clothing/head/hairnet, /obj/item/device/ticket_printer/train) - diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index 28383109af4..110e17421df 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -30,11 +30,11 @@ var/list/event_last_fired = list() var/minutes_passed = world.time/600 var/list/active_with_role = number_active_with_role() - //var/engineer_count = number_active_with_role("Engineer") + //var/engineer_count = number_active_with_role(JOB_ENGINEER) //var/security_count = number_active_with_role("Security") //var/medical_count = number_active_with_role("Medical") - //var/AI_count = number_active_with_role("AI") - //var/janitor_count = number_active_with_role("Janitor") + //var/AI_count = number_active_with_role(JOB_AI) + //var/janitor_count = number_active_with_role(JOB_JANITOR) // Maps event names to event chances // For each chance, 100 represents "normal likelihood", anything below 100 is "reduced likelihood", anything above 100 is "increased likelihood" @@ -56,23 +56,23 @@ var/list/event_last_fired = list() possibleEvents[/datum/event/money_hacker] = max(min(25, player_list.len) * 4, 200) - possibleEvents[/datum/event/carp_migration] = 20 + 10 * active_with_role["Engineer"] - possibleEvents[/datum/event/brand_intelligence] = 20 + 25 * active_with_role["Janitor"] + possibleEvents[/datum/event/carp_migration] = 20 + 10 * active_with_role[JOB_ENGINEER] + possibleEvents[/datum/event/brand_intelligence] = 20 + 25 * active_with_role[JOB_JANITOR] - possibleEvents[/datum/event/rogue_drone] = 5 + 25 * active_with_role["Engineer"] + 25 * active_with_role["Security"] - possibleEvents[/datum/event/infestation] = 100 + 100 * active_with_role["Janitor"] + possibleEvents[/datum/event/rogue_drone] = 5 + 25 * active_with_role[JOB_ENGINEER] + 25 * active_with_role["Security"] + possibleEvents[/datum/event/infestation] = 100 + 100 * active_with_role[JOB_JANITOR] - possibleEvents[/datum/event/communications_blackout] = 50 + 25 * active_with_role["AI"] + active_with_role["Scientist"] * 25 - possibleEvents[/datum/event/ionstorm] = active_with_role["AI"] * 25 + active_with_role["Cyborg"] * 25 + active_with_role["Engineer"] * 10 + active_with_role["Scientist"] * 5 - possibleEvents[/datum/event/grid_check] = 25 + 10 * active_with_role["Engineer"] - possibleEvents[/datum/event/electrical_storm] = 15 * active_with_role["Janitor"] + 5 * active_with_role["Engineer"] - possibleEvents[/datum/event/wallrot] = 30 * active_with_role["Engineer"] + 50 * active_with_role["Gardener"] + possibleEvents[/datum/event/communications_blackout] = 50 + 25 * active_with_role[JOB_AI] + active_with_role[JOB_SCIENTIST] * 25 + possibleEvents[/datum/event/ionstorm] = active_with_role[JOB_AI] * 25 + active_with_role[JOB_CYBORG] * 25 + active_with_role[JOB_ENGINEER] * 10 + active_with_role[JOB_SCIENTIST] * 5 + possibleEvents[/datum/event/grid_check] = 25 + 10 * active_with_role[JOB_ENGINEER] + possibleEvents[/datum/event/electrical_storm] = 15 * active_with_role[JOB_JANITOR] + 5 * active_with_role[JOB_ENGINEER] + possibleEvents[/datum/event/wallrot] = 30 * active_with_role[JOB_ENGINEER] + 50 * active_with_role[JOB_ALT_GARDENER] if(!spacevines_spawned) - possibleEvents[/datum/event/spacevine] = 10 + 5 * active_with_role["Engineer"] + possibleEvents[/datum/event/spacevine] = 10 + 5 * active_with_role[JOB_ENGINEER] if(minutes_passed >= 30) // Give engineers time to set up engine - possibleEvents[/datum/event/meteor_wave] = 10 * active_with_role["Engineer"] - possibleEvents[/datum/event/blob] = 10 * active_with_role["Engineer"] + possibleEvents[/datum/event/meteor_wave] = 10 * active_with_role[JOB_ENGINEER] + possibleEvents[/datum/event/blob] = 10 * active_with_role[JOB_ENGINEER] if(active_with_role["Medical"] > 0) possibleEvents[/datum/event/radiation_storm] = active_with_role["Medical"] * 10 @@ -179,14 +179,14 @@ var/list/event_last_fired = list() // Note that this isn't sorted by department, because e.g. having a roboticist shouldn't make meteors spawn. /proc/number_active_with_role() var/list/active_with_role = list() - active_with_role["Engineer"] = 0 + active_with_role[JOB_ENGINEER] = 0 active_with_role["Medical"] = 0 active_with_role["Security"] = 0 - active_with_role["Scientist"] = 0 - active_with_role["AI"] = 0 - active_with_role["Cyborg"] = 0 - active_with_role["Janitor"] = 0 - active_with_role["Botanist"] = 0 + active_with_role[JOB_SCIENTIST] = 0 + active_with_role[JOB_AI] = 0 + active_with_role[JOB_CYBORG] = 0 + active_with_role[JOB_JANITOR] = 0 + active_with_role[JOB_BOTANIST] = 0 for(var/mob/M in player_list) if(!M.mind || !M.client || M.client.is_afk(10 MINUTES)) // longer than 10 minutes AFK counts them as inactive @@ -198,20 +198,20 @@ var/list/event_last_fired = list() var/mob/living/silicon/robot/R = M if(R.module) if(istype(R.module, /obj/item/weapon/robot_module/robot/engineering)) - active_with_role["Engineer"]++ + active_with_role[JOB_ENGINEER]++ else if(istype(R.module, /obj/item/weapon/robot_module/robot/security)) active_with_role["Security"]++ else if(istype(R.module, /obj/item/weapon/robot_module/robot/medical)) active_with_role["Medical"]++ else if(istype(R.module, /obj/item/weapon/robot_module/robot/research)) - active_with_role["Scientist"]++ + active_with_role[JOB_SCIENTIST]++ else if(istype(R.module, /obj/item/weapon/robot_module/robot/janitor)) - active_with_role["Janitor"]++ + active_with_role[JOB_JANITOR]++ else if(istype(R.module, /obj/item/weapon/robot_module/robot/clerical/butler)) - active_with_role["Botanist"]++ + active_with_role[JOB_BOTANIST]++ if(M.mind.assigned_role in SSjob.get_job_titles_in_department(DEPARTMENT_ENGINEERING)) - active_with_role["Engineer"]++ + active_with_role[JOB_ENGINEER]++ if(M.mind.assigned_role in SSjob.get_job_titles_in_department(DEPARTMENT_MEDICAL)) active_with_role["Medical"]++ @@ -220,18 +220,18 @@ var/list/event_last_fired = list() active_with_role["Security"]++ if(M.mind.assigned_role in SSjob.get_job_titles_in_department(DEPARTMENT_RESEARCH)) - active_with_role["Scientist"]++ + active_with_role[JOB_SCIENTIST]++ - if(M.mind.assigned_role == "AI") - active_with_role["AI"]++ + if(M.mind.assigned_role == JOB_AI) + active_with_role[JOB_AI]++ - if(M.mind.assigned_role == "Cyborg") - active_with_role["Cyborg"]++ + if(M.mind.assigned_role == JOB_CYBORG) + active_with_role[JOB_CYBORG]++ - if(M.mind.assigned_role == "Janitor") - active_with_role["Janitor"]++ + if(M.mind.assigned_role == JOB_JANITOR) + active_with_role[JOB_JANITOR]++ - if(M.mind.assigned_role == "Botanist") - active_with_role["Botanist"]++ + if(M.mind.assigned_role == JOB_BOTANIST) + active_with_role[JOB_BOTANIST]++ return active_with_role diff --git a/code/modules/events/money_hacker.dm b/code/modules/events/money_hacker.dm index 025bcc6901f..09510bec605 100644 --- a/code/modules/events/money_hacker.dm +++ b/code/modules/events/money_hacker.dm @@ -24,7 +24,7 @@ GLOBAL_VAR_INIT(account_hack_attempted, 0) for(var/obj/machinery/message_server/MS in machines) if(!MS.active) continue - MS.send_rc_message("Head of Personnel's Desk", my_department, message, "", "", 2) + MS.send_rc_message(JOB_HEAD_OF_PERSONNEL + "'s Desk", my_department, message, "", "", 2) /datum/event/money_hacker/tick() @@ -66,4 +66,4 @@ GLOBAL_VAR_INIT(account_hack_attempted, 0) for(var/obj/machinery/message_server/MS in machines) if(!MS.active) continue - MS.send_rc_message("Head of Personnel's Desk", my_department, message, "", "", 2) + MS.send_rc_message(JOB_HEAD_OF_PERSONNEL + "'s Desk", my_department, message, "", "", 2) diff --git a/code/modules/flufftext/Dreaming.dm b/code/modules/flufftext/Dreaming.dm index 53ffe228790..1881f915610 100644 --- a/code/modules/flufftext/Dreaming.dm +++ b/code/modules/flufftext/Dreaming.dm @@ -1,15 +1,15 @@ var/list/dreams = list( - "an ID card","a bottle","a familiar face","a crewmember","a toolbox","a Security Officer","the Site Manager", + "an ID card","a bottle","a familiar face","a crewmember","a toolbox","a " + JOB_SECURITY_OFFICER,"the " + JOB_SITE_MANAGER, "voices from all around","deep space","a doctor","the engine","a traitor","an ally","darkness", "light","a scientist","a monkey","a catastrophe","a loved one","a gun","warmth","freezing","the sun", "a hat","the Luna","a ruined station","a planet","phoron","air","the medical bay","the bridge","blinking lights", "a blue light","an abandoned laboratory","NanoTrasen","mercenaries","blood","healing","power","respect", "riches","space","a crash","happiness","pride","a fall","water","flames","ice","melons","flying","the eggs","money", - "the Head of Personnel","the Head of Security","the Chief Engineer","the Research Director","the Chief Medical Officer", - "the Detective","the Warden","an Internal Affairs Agent","an Engineer","the Janitor","the Atmospheric Technician", - "the Quartermaster","a Cargo Technician","the Botanist","a Shaft Miner","the Psychologist","the Chemist","a Geneticist", - "the Virologist","the Roboticist","the Chef","the Bartender","the Chaplain","the Librarian","a mouse","an ERT member", + "the " + JOB_HEAD_OF_PERSONNEL,"the " + JOB_HEAD_OF_SECURITY,"the " + JOB_CHIEF_ENGINEER,"the " + JOB_RESEARCH_DIRECTOR,"the " + JOB_CHIEF_MEDICAL_OFFICER, + "the " + JOB_DETECTIVE,"the " + JOB_WARDEN,"an " + JOB_INTERNAL_AFFAIRS_AGENT,"an " + JOB_ENGINEER,"the " + JOB_JANITOR,"the " + JOB_ATMOSPHERIC_TECHNICIAN, + "the " +JOB_QUARTERMASTER,"a " + JOB_CARGO_TECHNICIAN,"the " + JOB_BOTANIST,"a " + JOB_SHAFT_MINER,"the " + JOB_ALT_PSYCHOLOGIST,"the " + JOB_CHEMIST,"a " + JOB_GENETICIST, + "the " + JOB_ALT_VIROLOGIST,"the " + JOB_ROBOTICIST,"the " + JOB_CHEF,"the " + JOB_BARTENDER,"the " + JOB_CHAPLAIN,"the " + JOB_LIBRARIAN,"a mouse","an ERT member", "a beach","the holodeck","a smoky room","a voice","the cold","a mouse","an operating table","the bar","the rain","a Skrell", "an Unathi","a Tajaran","the Station Intelligence core","the mining station","the research station","a beaker of strange liquid", "a Teshari", "a Diona nymph","the supermatter","Major Bill","a Morpheus ship with a ridiculous name","the Exodus","a star", diff --git a/code/modules/food/food/drinks.dm b/code/modules/food/food/drinks.dm index 9c2944df265..4df37bcc388 100644 --- a/code/modules/food/food/drinks.dm +++ b/code/modules/food/food/drinks.dm @@ -483,8 +483,8 @@ ..() /obj/item/weapon/reagent_containers/food/drinks/flask - name = "\improper Site Manager's flask" - desc = "A metal flask belonging to the Site Manager" + name = "\improper " + JOB_SITE_MANAGER + "'s flask" + desc = "A metal flask belonging to the " + JOB_SITE_MANAGER icon_state = "flask" volume = 60 center_of_mass = list("x"=17, "y"=7) @@ -503,7 +503,7 @@ icon_state = "lithiumflask" /obj/item/weapon/reagent_containers/food/drinks/flask/detflask - name = "\improper Detective's flask" + name = "\improper " + JOB_DETECTIVE + "'s flask" desc = "A metal flask with a leather band and golden badge belonging to the detective." icon_state = "detflask" volume = 60 @@ -522,4 +522,3 @@ icon_state = "vacuumflask" volume = 60 center_of_mass = list("x"=15, "y"=4) - diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm index cc19a8bb479..94413e376f3 100644 --- a/code/modules/food/food/snacks.dm +++ b/code/modules/food/food/snacks.dm @@ -1348,7 +1348,7 @@ reagents.add_reagent("protein", 8) /obj/item/weapon/reagent_containers/food/snacks/clownburger - name = "Clown Burger" + name = JOB_CLOWN + " Burger" desc = "This tastes funny..." icon_state = "clownburger" filling_color = "#FF00FF" @@ -1359,7 +1359,7 @@ /obj/item/weapon/reagent_containers/food/snacks/mimeburger - name = "Mime Burger" + name = JOB_MIME + " Burger" desc = "Its taste defies language." icon_state = "mimeburger" filling_color = "#FFFFFF" @@ -2458,7 +2458,7 @@ reagents.add_reagent("water", 5) /obj/item/weapon/reagent_containers/food/snacks/clownstears - name = "Clown's Tears" + name = JOB_CLOWN + "'s Tears" desc = "Not very funny." icon_state = "clownstears" filling_color = "#C4FBFF" @@ -5702,7 +5702,7 @@ /obj/item/weapon/reagent_containers/food/snacks/burrito_hell name = "el diablo" - desc = "Meat and an insane amount of chillis packed in a flour tortilla. The Chaplain will see you now." + desc = "Meat and an insane amount of chillis packed in a flour tortilla. The " + JOB_CHAPLAIN + " will see you now." icon_state = "hellfireburrito" bitesize = 4 center_of_mass = list("x"=16, "y"=16) diff --git a/code/modules/food/kitchen/smartfridge/smartfridge_vr.dm b/code/modules/food/kitchen/smartfridge/smartfridge_vr.dm index 222cd4f52a4..ee033377acd 100644 --- a/code/modules/food/kitchen/smartfridge/smartfridge_vr.dm +++ b/code/modules/food/kitchen/smartfridge/smartfridge_vr.dm @@ -2,19 +2,19 @@ * Expert Jobs */ /obj/machinery/smartfridge - var/expert_job = "Chef" + var/expert_job = JOB_CHEF /obj/machinery/smartfridge/seeds - expert_job = "Botanist" + expert_job = JOB_BOTANIST /obj/machinery/smartfridge/secure/extract - expert_job = "Xenobiologist" + expert_job = JOB_XENOBIOLOGIST /obj/machinery/smartfridge/secure/medbay - expert_job = "Chemist" + expert_job = JOB_CHEMIST /obj/machinery/smartfridge/secure/chemistry - expert_job = "Chemist" + expert_job = JOB_CHEMIST /obj/machinery/smartfridge/secure/virology - expert_job = "Medical Doctor" //Virologist is an alt-title unfortunately + expert_job = JOB_MEDICAL_DOCTOR //Virologist is an alt-title unfortunately /obj/machinery/smartfridge/drinks - expert_job = "Bartender" + expert_job = JOB_BARTENDER /* * Allow thrown items into smartfridges @@ -42,7 +42,7 @@ /obj/machinery/smartfridge/chemistry/chemvator name = "\improper Smart Chemavator - Upper" desc = "A refrigerated storage unit for medicine and chemical storage. Now sporting a fancy system of pulleys to lift bottles up and down." - expert_job = "Chemist" + expert_job = JOB_CHEMIST var/obj/machinery/smartfridge/chemistry/chemvator/attached /obj/machinery/smartfridge/chemistry/chemvator/accept_check(var/obj/item/O as obj) diff --git a/code/modules/gamemaster/event2/events/command/money_hacker.dm b/code/modules/gamemaster/event2/events/command/money_hacker.dm index 287844cf2df..6b9e7340183 100644 --- a/code/modules/gamemaster/event2/events/command/money_hacker.dm +++ b/code/modules/gamemaster/event2/events/command/money_hacker.dm @@ -37,7 +37,7 @@ for(var/obj/machinery/message_server/MS in machines) if(!MS.active) continue - MS.send_rc_message("Head of Personnel's Desk", my_department, "[message]
", "", "", 2) + MS.send_rc_message(JOB_HEAD_OF_PERSONNEL + "'s Desk", my_department, "[message]
", "", "", 2) // Nobody reads the requests consoles so lets use the radio as well. global_announcer.autosay(message, my_department, DEPARTMENT_COMMAND) @@ -57,7 +57,7 @@ for(var/obj/machinery/message_server/MS in machines) if(!MS.active) continue - MS.send_rc_message("Head of Personnel's Desk", my_department, message, "", "", 2) + MS.send_rc_message(JOB_HEAD_OF_PERSONNEL + "'s Desk", my_department, message, "", "", 2) global_announcer.autosay(message, my_department, DEPARTMENT_COMMAND) diff --git a/code/modules/games/cah_black_cards.dm b/code/modules/games/cah_black_cards.dm index c2c32b99482..f70b52b3e03 100644 --- a/code/modules/games/cah_black_cards.dm +++ b/code/modules/games/cah_black_cards.dm @@ -4,10 +4,10 @@ /obj/item/weapon/deck/cah/black/card_text_list = list( "Why am I itchy?", "Today, Security shot ____.", - "The Chaplain this shift is worshiping _____.", + "The " + JOB_CHAPLAIN + " this shift is worshiping _____.", "Cargo ordered a crate full of _____.", "An ERT was called due to ______.", - "Alert! The Site Manager has armed themselves with _____.", + "Alert! The " + JOB_SITE_MANAGER + " has armed themselves with _____.", "Current Laws: ________ is your master.", "Current Laws: ________ is the enemy.", "_____ vented the entirety of Cargo.", @@ -16,7 +16,7 @@ "Caution, ______ have been detected in collision course with the station.", "Today's kitchen menu includes _______.", "What did the mercenaries want when they attacked the station?", - "I think the Site Manager is insane. He just demanded ______ in his office.", + "I think the " + JOB_SITE_MANAGER + " is insane. He just demanded ______ in his office.", "Fuckin' scientists, they just turned Misc. Research into _______ .", "What's my fetish?", "Hello, _______ here with _______", @@ -24,7 +24,7 @@ "Why am I shivering?", "What is this world coming to? First, ________, now _______", "NanoTrasen's labor union decided to use _______ to raise employee morale.", - "The Chemist's drug of choice is ______", + "The " + JOB_CHEMIST + "'s drug of choice is ______", "It is common practice for _______ to ______ on Moghes.", "Mercurial Colonies are _____.", "The Skrell are celebrating _____ today.", @@ -182,27 +182,27 @@ "Why do I hurt all over?", "In the seventh circle of Hell, sinners must endure _____ for all eternity.", "A successful job interview begins with a firm handshake and ends with _____.", - "Lovin you is easy cause youre _____.", + "Lovin� you is easy �cause you�re _____.", "My life is ruled by a vicious cycle of _____ and _____.", "The blind date was going horribly until we discovered our shared interest in _____.", "_____. Awesome in theory, kind of a mess in practice.", - "Im not like the rest of you. Im too rich and busy for _____.", + "I�m not like the rest of you. I�m too rich and busy for _____.", "(Pick 2) _____: Hours of fun. Easy to use. Perfect for _____!", "What left this stain on my couch?", "Call the law offices of Goldstein & Goldstein, because no one should have to tolerate _____ in the workplace.", "(Pick 2) When you get right down to it, _____ is just _____.", "Turns out that _____ Man was neither the hero we needed nor wanted.", "As part of his daily regimen, Anderson Cooper sets aside 15 minutes for _____.", - "Money cant buy me love, but it can buy me _____.", + "Money can�t buy me love, but it can buy me _____.", "(Pick 2) With enough time and pressure, _____ will turn into _____.", "And what did you bring for show and tell?", "During high school I never really fit in until I found _____ club.", - "Hey baby, come back to my place and Ill show you _____.", - "(Pick 2) After months of practice with _____, I think Im finally ready for _____.", + "Hey baby, come back to my place and I�ll show you _____.", + "(Pick 2) After months of practice with _____, I think I�m finally ready for _____.", "To prepare for his upcoming role, Daniel Day-Lewis immersed himself in the world of _____.", "Finally! A service that delivers _____ right to your door.", "My gym teacher got fired for adding _____ to the obstacle course.", "(Pick 2) Having problems with _____? Try _____!", - "As part of his contract, Prince wont perform without _____ in his dressing room.", - "(Pick 2) Listen, son. If you want to get involved with _____, I wont stop you. Just steer clear of _____." + "As part of his contract, Prince won�t perform without _____ in his dressing room.", + "(Pick 2) Listen, son. If you want to get involved with _____, I won�t stop you. Just steer clear of _____." ) diff --git a/code/modules/games/cah_white_cards.dm b/code/modules/games/cah_white_cards.dm index 74789d1504d..0e0e7624bb6 100644 --- a/code/modules/games/cah_white_cards.dm +++ b/code/modules/games/cah_white_cards.dm @@ -6,19 +6,19 @@ "Having sex in the maintenance tunnels", "Space 'Nam", "Space lesbians", - "The Gardener getting SUPER high", + "The " + JOB_ALT_GARDENER + " getting SUPER high", "The Site Manager thinking they're a badass", "Being in a cult", "Racially biased lawsets", "An Unathi who WON'T STOP FIGHTING", "Tajaran fetishists", "Bald thirty-year-olds", - "A Chief Engineer who can't setup the engine", + "A " + JOB_CHIEF_ENGINEER + " who can't setup the engine", "Being sucked out into space", "Officer Beepsky", "Engineering", "The grey tide.", - "The Research Director", + "The " + JOB_RESEARCH_DIRECTOR, "Fucking synths", "Man-eating purple pod plants", "Chemical sprayers filled with lube", @@ -65,7 +65,7 @@ "Waking up naked in the maintenance tunnels", "Horrible cloning accidents", "Licking the supermatter due to a dare", - "A Quartermaster who WON'T STOP ordering guns", + "A " + JOB_QUARTERMASTER + " who WON'T STOP ordering guns", "Teaching a synthetic the Birds and the Bees", "Unnecessary surgery", "My addiction to spiders", diff --git a/code/modules/ghosttrap/trap.dm b/code/modules/ghosttrap/trap.dm index 4e68683542b..bc738618b2c 100644 --- a/code/modules/ghosttrap/trap.dm +++ b/code/modules/ghosttrap/trap.dm @@ -16,7 +16,7 @@ var/list/ghost_traps /datum/ghosttrap var/object = "positronic brain" - var/list/ban_checks = list("AI","Cyborg") + var/list/ban_checks = list(JOB_AI,JOB_CYBORG) var/pref_check = BE_AI var/ghost_trap_message = "They are occupying a positronic brain now." var/ghost_trap_role = "Positronic Brain" @@ -101,7 +101,7 @@ var/list/ghost_traps // Doona pods and walking mushrooms. /datum/ghosttrap/plant object = "living plant" - ban_checks = list("Dionaea") + ban_checks = list(JOB_DIONAEA) pref_check = BE_PLANT ghost_trap_message = "They are occupying a living plant now." ghost_trap_role = "Plant" @@ -111,4 +111,4 @@ var/list/ghost_traps // This is a hack, replace with some kind of species blurb proc. if(istype(target,/mob/living/carbon/alien/diona)) to_chat(target, "You are \a [target], one of a race of drifting interstellar plantlike creatures that sometimes share their seeds with human traders.") - to_chat(target, "Too much darkness will send you into shock and starve you, but light will help you heal.") \ No newline at end of file + to_chat(target, "Too much darkness will send you into shock and starve you, but light will help you heal.") diff --git a/code/modules/holodeck/HolodeckObjects.dm b/code/modules/holodeck/HolodeckObjects.dm index 430029a0df9..18c45b26d42 100644 --- a/code/modules/holodeck/HolodeckObjects.dm +++ b/code/modules/holodeck/HolodeckObjects.dm @@ -506,11 +506,11 @@ /mob/living/simple_mob/animal/space/carp/holodeck/proc/set_safety(var/safe) if (safe) - faction = "neutral" + faction = FACTION_NEUTRAL melee_damage_lower = 0 melee_damage_upper = 0 else - faction = "carp" + faction = FACTION_CARP melee_damage_lower = initial(melee_damage_lower) melee_damage_upper = initial(melee_damage_upper) diff --git a/code/modules/lore_codex/legal_code_data/corporate_regulations.dm b/code/modules/lore_codex/legal_code_data/corporate_regulations.dm index ca0cb919f90..a41f6a3bf09 100644 --- a/code/modules/lore_codex/legal_code_data/corporate_regulations.dm +++ b/code/modules/lore_codex/legal_code_data/corporate_regulations.dm @@ -4,7 +4,7 @@ or otherwise on-board a NanoTrasen installation, which if you are reading this, you likely are at one. Corporate Regulations, \ commonly shortened to Corp Regs by employees, is common throughout NanoTrasen's other holdings. Offenses against Corp Regs can \ range from things like littering, to disrespecting a Head of Staff, to failing to follow a valid order from a superior. \ - All NanoTrasen employees must follow these regulations, no one is above them, not even the Station Director. \ + All NanoTrasen employees must follow these regulations, no one is above them, not even the " + JOB_SITE_MANAGER + ". \ The only exception for this is Asset Protection." children = list( /datum/lore/codex/page/corporate_punishments, @@ -79,14 +79,14 @@ Brig time may also be used for repeat offenders.
\
  • Write-ups to Central Command may be recommended or mandated for specific offenses. Internal Affairs is to ensure that this is \ adhered to, and assist if needed.

  • \ -
  • Reassignments as a form of punishment may be done by the Station Director, with consent from both the offender and the offender's \ +
  • Reassignments as a form of punishment may be done by the " + JOB_SITE_MANAGER + ", with consent from both the offender and the offender's \ Superior, if one exists. Generally the new role for the offender is usually considered something menial or related to their offense, for example: \ - Janitor, Miner, Cook, Gardener. This punishment can be especially fitting for certain violations such as someone who made graffiti being reassigned to janitorial duties.

  • \ -
  • Demotions may be done by the offender's Superior, at their discretion. The Station Director may also do this, \ + " + JOB_JANITOR + ", Miner, Cook, " + JOB_ALT_GARDENER + ". This punishment can be especially fitting for certain violations such as someone who made graffiti being reassigned to janitorial duties.

  • \ +
  • Demotions may be done by the offender's Superior, at their discretion. The " + JOB_SITE_MANAGER + " may also do this, \ however the Director is recommended to defer to the offender's direct Superior if one exists.

  • \ -
  • Terminations of employment from NanoTrasen can only be issued by the Station Director. This is the most severe corporate punishment available. \ +
  • Terminations of employment from NanoTrasen can only be issued by the " + JOB_SITE_MANAGER + ". This is the most severe corporate punishment available. \ It should be noted that visitors and other non-employees cannot be terminated, obviously. Central Command must be informed of the termination, if one is applied.
  • \ -
  • Hold until Transfer is an option reserved for the Station Director only for repeat offenders, for serious violations of Regulations, or it the offender poses a \ +
  • Hold until Transfer is an option reserved for the " + JOB_SITE_MANAGER + " only for repeat offenders, for serious violations of Regulations, or it the offender poses a \ credible threat to the station or crew.
  • \ " @@ -151,7 +151,7 @@ suggested_punishments = "50 thaler fine. Demotion at discretion of Superior." suggested_fine = 50 notes = "For this charge to apply, the order must be lawful, reasonable, and the person being ordered to do it must have been able to do so. \ - This includes orders from someone who is not necessarily the direct superior of the offender, but has authority in that context, for instance the Chief Engineer \ + This includes orders from someone who is not necessarily the direct superior of the offender, but has authority in that context, for instance the " + JOB_CHIEF_ENGINEER + " \ giving an order about engineering matters." /datum/lore/codex/page/law/littering @@ -188,7 +188,7 @@ suggested_punishments = "Fine of up to 200 thaler, or brig time extention up to 20 minutes. Demotion at discretion of Superior." suggested_fine = 200 suggested_brig_time = 20 MINUTES - notes = "If this disputed, an Internal Affairs Agent (if available) is to be the impartial mediator." + notes = "If this disputed, an " + JOB_INTERNAL_AFFAIRS_AGENT + " (if available) is to be the impartial mediator." /datum/lore/codex/page/law/control_contraband name = "Possession of a Controlled Item (Contraband)" @@ -251,7 +251,7 @@ /datum/lore/codex/page/law/i_am_the_law/add_content() name = "Exceeding Official Powers" definition = "Acting beyond what is allowed by Corporate Regulations or Standard Operating Procedure, generally as a member of Command or Security." - suggested_punishments = "Demotion or termination at discretion of Station Admin. Send notice to Central Command if a Head of Staff or Station Director had exceeded their powers." + suggested_punishments = "Demotion or termination at discretion of Station Admin. Send notice to Central Command if a Head of Staff or " + JOB_SITE_MANAGER + " had exceeded their powers." notes = "The difference between this and [quick_link("Abuse of Office")] is that generally this charge is for instances of someone using their position to go beyond their \ assigned role, or generally acting 'above the regulations'." mandated = TRUE @@ -260,7 +260,7 @@ /datum/lore/codex/page/law/abuse_of_office/add_content() name = "Abuse of Office" definition = "Doing illegal, immoral, or otherwise disallowed actions, in an official capacity, placing their own interests ahead of the interests of the Company." - suggested_punishments = "Demotion. Termination at discretion of Station Admin. Send notice to Central Command if a Head of Staff or Station Director had abused their office." + suggested_punishments = "Demotion. Termination at discretion of Station Admin. Send notice to Central Command if a Head of Staff or " + JOB_SITE_MANAGER + " had abused their office." notes = "The difference between this and [quick_link("Exceeding Official Powers")] is that this charge is for instances of someone using their authority to adversely \ affect another crewmember or visitor unlawfully by using their authority, or otherwise empowering themselves for their own personal gain." mandated = TRUE @@ -273,41 +273,41 @@ notes = "Visitors boarding the station with restricted items must leave the item outside the station (e.g. vessel), or surrender it to the Security team. \ A list of restricted items are provided inside this book.\

    \ - Roles authorized to handle a weapon by default include; Station Director, Head of Personnel, Head of Security, Security Officers, Detectives, and anyone possessing \ + Roles authorized to handle a weapon by default include; " + JOB_SITE_MANAGER + ", " + JOB_HEAD_OF_PERSONNEL + ", " + JOB_HEAD_OF_SECURITY + ", Security Officers, Detectives, and anyone possessing \ a valid weapon permit." /datum/lore/codex/page/law/breaking_sop_major name = "Breaking Standard Operation Procedure (Major)" definition = "Actively and willfully disregarding the station's Standard Operating Procedures, where the probable effects includes death or destruction." - suggested_punishments = "30 minutes to 1 hour of Brig time. Demotion left to discretion of Superior, but strongly suggested. Termination at discretion of Station Director." + suggested_punishments = "30 minutes to 1 hour of Brig time. Demotion left to discretion of Superior, but strongly suggested. Termination at discretion of " + JOB_SITE_MANAGER + "." suggested_brig_time = 1 HOUR notes = "This includes non-compliance to orders from Emergency Responders, entering breached areas without proper EVA gear." /datum/lore/codex/page/law/neglect_of_duty name = "Neglect of Duty" definition = "To fail to meet satisfactory work standards." - suggested_punishments = "Demotion at discretion of Superior. Termination at discretion of Station Director." + suggested_punishments = "Demotion at discretion of Superior. Termination at discretion of " + JOB_SITE_MANAGER + "." notes = "This includes accidents, refusing or failing to work, or simply not providing a reasonable amount of productivity, when the offender is capable of work. This charge \ is meant to be applied only by Command staff to their subordinates, and not from individual Security Officers." /datum/lore/codex/page/law/deception name = "Deception" definition = "To lie in an official report." - suggested_punishments = "Demotion. Termination at discretion of Station Director. Notify Central Command." + suggested_punishments = "Demotion. Termination at discretion of " + JOB_SITE_MANAGER + ". Notify Central Command." notes = "This includes lying or withholding information to your superior in a report or lying to the crew about a situation." mandated = TRUE /datum/lore/codex/page/law/wrongful_dismissal name = "Wrongful Dismissal" definition = "To demote, dismiss, terminate, or otherwise reduce a crewmember's rank for no valid, or a knowingly false reason." - suggested_punishments = "Demotion. Termination at discretion of Station Director. Notify Central Command." - notes = "An Internal Affairs Agent is required to do an investigation in order to conclude if this has occurred or not. Security cannot \ + suggested_punishments = "Demotion. Termination at discretion of " + JOB_SITE_MANAGER + ". Notify Central Command." + notes = "An " + JOB_INTERNAL_AFFAIRS_AGENT + " is required to do an investigation in order to conclude if this has occurred or not. Security cannot \ give this charge out on their own." mandated = TRUE /datum/lore/codex/page/law/abuse_of_confiscated_equipment name = "Abuse of Confiscated Equipment" definition = "To take and use equipment confiscated as evidence or contraband, generally as a member of Security or Command." - suggested_punishments = "Demotion of the user. Termination at discretion of Station Director. Return confiscated equipment to evidence storage." + suggested_punishments = "Demotion of the user. Termination at discretion of " + JOB_SITE_MANAGER +". Return confiscated equipment to evidence storage." notes = "Security shouldn't be using evidence for anything but evidence, and should never use contraband. This is meant for people misusing evidence for personal use. Evidence stolen \ in order to cover up a crime would fall under Theft or Tampering with Evidence." diff --git a/code/modules/lore_codex/legal_code_data/main.dm b/code/modules/lore_codex/legal_code_data/main.dm index a16d7d35d68..8e5ffee829a 100644 --- a/code/modules/lore_codex/legal_code_data/main.dm +++ b/code/modules/lore_codex/legal_code_data/main.dm @@ -9,7 +9,7 @@

    \ In this book, there are two different types of rules. Corporate Regulations, and Laws. They each cover specific situations, and are both enforced \ by the Security team. Despite this, however, the punishments vary considerably for the two types. It should also be noted that no one is above \ - these rules, not even the Station Director.\ + these rules, not even the " + JOB_SITE_MANAGER + ".\

    \ Also contained inside are our Standard Operating Procedures, that all employees of NanoTrasen are expected to follow, and for the local facility's \ Command team and Internal Affairs to enforce.\ @@ -98,4 +98,4 @@ HTML += "" data = data + HTML - ..() \ No newline at end of file + ..() diff --git a/code/modules/lore_codex/legal_code_data/sif_law.dm b/code/modules/lore_codex/legal_code_data/sif_law.dm index 58e62cda2a3..cea14013789 100644 --- a/code/modules/lore_codex/legal_code_data/sif_law.dm +++ b/code/modules/lore_codex/legal_code_data/sif_law.dm @@ -93,7 +93,7 @@ suggested_punishments = "200 thaler fine. Give Drone a temporary paper stating that it is a drone, if the ID was lost. Fax VirGov. Inform owner of \ Drone if possible. Instruct Drone to obtain new ID at its earliest opportunity, if it was lost." notes = "This is only applicable to Drone intelligences which possess autonomous capability. It must be proven that the offender is a Drone, which can be \ - accomplished in various ways, generally with the expertise of a Roboticist. Lawbound synthetics, maintenance drones, and \ + accomplished in various ways, generally with the expertise of a " + JOB_ROBOTICIST + ". Lawbound synthetics, maintenance drones, and \ simple bots do not require an ID card. No fine or VirGov fax should be sent if the Drone's ID was lost due to theft and the ID is able to be recovered." mandated = TRUE @@ -157,7 +157,7 @@ name = "Excessive Force" definition = "Using more force than what is required to safely detain someone, using force against a helpless or incapacitated person, \ or using force against an unarmed and compliant person." - suggested_punishments = "Demotion. Termination at discretion of Superior, or Station Director. Send notice to Central Command if a Head of Security had used excessive force." + suggested_punishments = "Demotion. Termination at discretion of Superior, or " + JOB_SITE_MANAGER + ". Send notice to Central Command if a " + JOB_HEAD_OF_SECURITY + " had used excessive force." notes = "This charge also is applicible to non-Security personnel acting in self defense. \ Persons whom have caused a person to die as a result of excessive force should have [quick_link("Manslaughter")] applied instead, if the circumstances were \ unjustified." @@ -205,7 +205,7 @@ definition = "Creating an intelligence from an codeline that has not been registered with, or audited by, the Emergent Intelligence Oversight (EIO)." suggested_punishments = "Decommissioning of the newly created Drone. Investigation of Drone to determine level of intelligence, if possible. \ Hold until Transfer for the creator." - notes = "It must be proven that the Drone is in fact a Drone, which can be accomplished in various ways, generally with the expertise of a Roboticist. \ + notes = "It must be proven that the Drone is in fact a Drone, which can be accomplished in various ways, generally with the expertise of a " + JOB_ROBOTICIST + ". \ It must also be proven that the Drone's codeline is also unregistered. Intelligences produced from a Maintenance Drone Fabricator, \ the Research department, and through other regular means are by default already registered. Very simple machines such as securitrons do not require registration.\

    \ diff --git a/code/modules/lore_codex/legal_code_data/sop.dm b/code/modules/lore_codex/legal_code_data/sop.dm index 15dd5fdeaf1..f291d11492d 100644 --- a/code/modules/lore_codex/legal_code_data/sop.dm +++ b/code/modules/lore_codex/legal_code_data/sop.dm @@ -19,7 +19,7 @@

    \

    Visitors

    \ Visitors of all forms are required to follow SOP, Corporate Regulations, and local laws while onboard or around NanoTrasen property. Visitors who are \ - not registered on the manifest are required to speak with the Head of Personnel or Station Director, if one exists, to register, and obtain an identification \ + not registered on the manifest are required to speak with the " + JOB_HEAD_OF_PERSONNEL + " or " + JOB_SITE_MANAGER + ", if one exists, to register, and obtain an identification \ card denoting their status as a visitor. Visitors registered on the manifest are free to visit any public (non-access restricted) location on the facility, however \ they are still subject to the same regulations and rules as an ordinary crew member.\
    \ @@ -60,7 +60,7 @@ /* /datum/lore/codex/page/command_sop name = "Command SOP" - data = "This SOP is specific to those in the Command department, which includes the Station Director, Head of Personnel, Chief Engineer, Head of Security, and Research Director. \ + data = "This SOP is specific to those in the Command department, which includes the " + JOB_SITE_MANAGER + ", Head of Personnel, " + JOB_CHIEF_ENGINEER + ", " + JOB_HEAD_OF_SECURITY + ", and " + JOB_RESEARCH_DIRECTOR + ". \ This also covers Internal Affairs Agents, however they do not occupy a position inside Command crew, and instead exist outside of all the other departments.\
    \

    Bridge Secretaries

    \ @@ -68,10 +68,10 @@ regards.\
    \

    Responsibility and Authority

    \ - The Chain of Command is generally represented as: Station Director > Command Crew > Station Crew.
    \ - The Station Director is responsible for, and authoritative in, and and all matters regarding the station. In the absence of a Department Head, the Station Director \ + The Chain of Command is generally represented as: " + JOB_SITE_MANAGER + " > Command Crew > Station Crew.
    \ + The " + JOB_SITE_MANAGER + " is responsible for, and authoritative in, and and all matters regarding the station. In the absence of a Department Head, the " + JOB_SITE_MANAGER + " \ may choose to appoint an Acting Head, or else act as the voice of authority in a department. If a Department Head arrives on station, the Acting Head \ - is to step down, and the Station Director is to defer to the Department Head in matters involving said department.\ + is to step down, and the " + JOB_SITE_MANAGER + " is to defer to the Department Head in matters involving said department.\
    \ The remainder of the Command Crew is of equal rank among themselves, and are responsible for, and authoritative over only their own department, crew, and location. \ In the case of the Head of Personnel, this includes Service, Cargo, and any other Civilian role. Command Crew only have authority in their own department, when going \ @@ -80,7 +80,7 @@

    Demotion

    \ A member of the Command Crew may call for the demotion of any member of their department for disregarding safety protocol, disobeying orders with serious consequences, \ or other gross incompetence. Certain infractions necessitate that a guilty crew member receive a demotion. Demotion is to be performed by the Head of Personnel, or the \ - Station Director, as soon as possible. The demoted crewmember is to be present during the demotion, unless it is caused by a criminal sentence. If said crewmemeber \ + " + JOB_SITE_MANAGER + ", as soon as possible. The demoted crewmember is to be present during the demotion, unless it is caused by a criminal sentence. If said crewmemeber \ refuses to comply with a demotion order, Security is to escort them to the Head of Personnel's office.\
    \ Any demoted crewmember must return all equipment and non-personal items to their previous department, including departmental jumpsuits and radios. If a demoted \ @@ -88,21 +88,21 @@ may treat said items as stolen.\
    \

    Chain of Command & Succession

    \ - In case of emergency or other need, and in the absence of a Station Director, an Acting Director may be selected from active, certified Command crew. \ - The selected individual has the same responsibility and authority as a certified Station Director, along with that of their regular position, with the assumption that \ - they will step down if a certified Station Director arrives on station. This role is entirely voluntary, and no Command crew may be forced into the role \ + In case of emergency or other need, and in the absence of a " + JOB_SITE_MANAGER + ", an Acting Director may be selected from active, certified Command crew. \ + The selected individual has the same responsibility and authority as a certified " + JOB_SITE_MANAGER + ", along with that of their regular position, with the assumption that \ + they will step down if a certified " + JOB_SITE_MANAGER + " arrives on station. This role is entirely voluntary, and no Command crew may be forced into the role \ if they are opposed to doing so.\
    \ The preferred order of selecting an Acting Director is as follows:
    \ The role is to be offered to the Head of Personnel, if one is present. If there is no Head of Personnel, or they are unwilling to assume Acting Director, the \ - position is offered to non-Security Command crew. If no other Command crew is available or willing to assume Acting Director, the Head of Security may be offered \ + position is offered to non-Security Command crew. If no other Command crew is available or willing to assume Acting Director, the " + JOB_HEAD_OF_SECURITY + " may be offered \ the position. If no other Command crew is available or willing to assume Acting Director, no Acting Director is selected. Acting Command may not be offered or accept \ Acting Director.\
    \

    Command Crew Demotions

    \ - If a member of the Command crew is suspected to be incompetent, or in breach of SOP, the Station Director has discretion to demote the guilty Command crewmember. \ - If there is no Station Director, or the Station Director themselves is guilty, they may be demoted after a vote of no confidence by the remaining Command crew \ - and relevant station crew. For the Station Director, the vote is only to be among the remaining Command crew. Misuse of this privilage may warrant an \ + If a member of the Command crew is suspected to be incompetent, or in breach of SOP, the " + JOB_SITE_MANAGER + " has discretion to demote the guilty Command crewmember. \ + If there is no " + JOB_SITE_MANAGER + ", or the " + JOB_SITE_MANAGER + " themselves is guilty, they may be demoted after a vote of no confidence by the remaining Command crew \ + and relevant station crew. For the " + JOB_SITE_MANAGER + ", the vote is only to be among the remaining Command crew. Misuse of this privilage may warrant an \ Internal Affairs investigation for wrongful dismissal.\
    \

    Communications with Central Command

    \ @@ -171,12 +171,12 @@

    Ejection Procedure

    \ The Supermatter's isolation chamber contains a mass driver and a heavy blast door leading into space. Ejecting the Supermatter into the void \ will cause it to delaminate, however hopefully far away from your facility. Supermatter crystals are rare and expensive, so this option should \ - only be used if delamination cannot be stopped by any other means. A special button, behind glass, exists inside the Chief Engineer's office. \ + only be used if delamination cannot be stopped by any other means. A special button, behind glass, exists inside the " + JOB_CHIEF_ENGINEER + "'s office. \ The button controls the mass driver, however it should not be the first button to press. The blast door leading into space must be opened first, \ or else the Supermatter cannot be ejected. Premature ejection can cause the Supermatter to not be on the mass driver, which will require an extremely \ - risky manual Supermatter movement to place onto the mass driver again. The blast door can be opened with a button in the Chief Engineer's office, or inside the engine room. \ + risky manual Supermatter movement to place onto the mass driver again. The blast door can be opened with a button in the " + JOB_CHIEF_ENGINEER + "'s office, or inside the engine room. \ It is the same button used to 'vent' the engine core. Make use of engine core cameras to verify that the blast door is open. \ - The Chief Engineer should be the one to oversee Ejection. If one does not exist, the facility's AI should initiate Ejection. If there is no AI, \ + The " + JOB_CHIEF_ENGINEER + " should be the one to oversee Ejection. If one does not exist, the facility's AI should initiate Ejection. If there is no AI, \ it would be prudent for an Engineering member to forcefully enter to press the required buttons." /* @@ -202,8 +202,8 @@
    \

    Cloning Procedure

    \ Persons whom have committed suicide are not to be cloned. Individuals are also to not be cloned if there is a Do Not Clone (generally referred \ - to as DNC) order in their medical records, or if the individual has had a DNC order declared against them by the Station Director, Chief \ - Medical Officer, or Head of Security. If any of this occurs, procede to Portmortem Storage.\ + to as DNC) order in their medical records, or if the individual has had a DNC order declared against them by the " + JOB_SITE_MANAGER + ", Chief \ + Medical Officer, or " + JOB_HEAD_OF_SECURITY + ". If any of this occurs, procede to Portmortem Storage.\
    \ Some individuals may have special instructions in their Postmortem Instructions, generally found in their medical records. \ Be sure to read them before committing to cloning someone. In particular, some instructions may express a desire to be placed \ @@ -273,7 +273,7 @@ not to be placed inside an MMI. Still-living persons who wish to be placed inside an MMI should be ignored.\
    \ Lawbound Synthetics are to not have their lawset tampered with. Any errors with the lawset, intentional or resulting from an ionic storm, should \ - be reset by the Research Director or Chief Engineer. If they are unavailable, it is permissible for Robotics to do the reset. Lawbound Synthetics \ + be reset by the " + JOB_RESEARCH_DIRECTOR + " or " + JOB_CHIEF_ENGINEER + ". If they are unavailable, it is permissible for Robotics to do the reset. Lawbound Synthetics \ physically harmed should be repaired.\
    \

    Lawing Synthetics

    \ @@ -291,7 +291,7 @@

    Exosuits & Prosthetics

    \ Exosuits (also known as Mecha, or Mechs) are large machines piloted by an individual. Construction of exosuits is to occur inside Robotics or the \ Mech Bay. Damaged exosuits should be repaired by Robotics. Civilian Exosuits (Ripley, Odysseus) may be built at the request of departmental crew. \ - Combat exosuits (Durand, Gygax) may not be built without permission from the Head of Security or Station Director.\ + Combat exosuits (Durand, Gygax) may not be built without permission from the " + JOB_HEAD_OF_SECURITY + " or " + JOB_SITE_MANAGER + ".\
    \ Robotics is also tasked with the repair of prostheses limbs. Robotics may also be tasked with installing a prosthetic, however the Medical team \ may also do this if the Robotics staff lack the training to do so." @@ -319,7 +319,7 @@

    Crew

    \ Crew members and visitors may freely walk in the hallways and other public areas. Suit sensors are recommended, but not mandatory. \ The Security team must respect the privacy of crew members and visitors, and no unauthorized searches are allowed. Searches of any kind may \ - only be done with the consent of the searched, or with a signed warrant by the Head of Security or Station Director. A warrant is not required \ + only be done with the consent of the searched, or with a signed warrant by the " + JOB_HEAD_OF_SECURITY + " or " + JOB_SITE_MANAGER + ". A warrant is not required \ for instances of visible contraband." /datum/lore/codex/page/blue diff --git a/code/modules/lore_codex/legal_code_data/sop/medical.dm b/code/modules/lore_codex/legal_code_data/sop/medical.dm index 29ba57e6e33..1525fdcbf3e 100644 --- a/code/modules/lore_codex/legal_code_data/sop/medical.dm +++ b/code/modules/lore_codex/legal_code_data/sop/medical.dm @@ -28,10 +28,10 @@ /datum/lore/codex/page/sop_cloning name = "Cloning Procedures" - data = "Persons whom have committed suicide are not to be cloned, without authorization from the Chief Medical Officer. \ - The Chief Medical Officer is fully responsible if they choose to clone a person whom has committed suicide. \ + data = "Persons whom have committed suicide are not to be cloned, without authorization from the " + JOB_CHIEF_MEDICAL_OFFICER + ". \ + The " + JOB_CHIEF_MEDICAL_OFFICER + " is fully responsible if they choose to clone a person whom has committed suicide. \ Individuals are also to not be cloned if there is a Do Not Clone (generally referred to as DNC) order in their medical records, \ - or if the individual has had a DNC order declared against them by the Station Director, Chief Medical Officer, or Head of Security. \ + or if the individual has had a DNC order declared against them by the " + JOB_SITE_MANAGER + ", " + JOB_CHIEF_MEDICAL_OFFICER + ", or " + JOB_HEAD_OF_SECURITY + ". \ If any of this occurs, procede to Portmortem Storage.\

    \ Some individuals may have special instructions in their Postmortem Instructions, generally found in their medical records. \ @@ -70,4 +70,4 @@ data = "If a room becomes breached, the first priority is to evacuate any crewmembers and guests endangered by the breach, especially if they lack an EVA \ suit. Emergency softsuits are available in cyan colored lockers at key locations on your facility, if an untrained person requires short term EVA \ capability. Those exposed to vacuum without protection will almost certainly require advanced medical care, so bring anyone harmed to Medical. \ - Remember to avoid risking your own life, as stated in the Triage section." \ No newline at end of file + Remember to avoid risking your own life, as stated in the Triage section." diff --git a/code/modules/lore_codex/legal_code_data/sop/security.dm b/code/modules/lore_codex/legal_code_data/sop/security.dm index ca52d765290..594af5d6c74 100644 --- a/code/modules/lore_codex/legal_code_data/sop/security.dm +++ b/code/modules/lore_codex/legal_code_data/sop/security.dm @@ -31,7 +31,7 @@ /datum/lore/codex/page/sop_processing name = "Processing" - data = "Processing is the responsibility of the Arresting Officer, or the Warden if the Warden chooses to do so. The suspect is to be informed \ + data = "Processing is the responsibility of the Arresting Officer, or the " + JOB_WARDEN + " if the " + JOB_WARDEN + " chooses to do so. The suspect is to be informed \ again of the cause for their arrest, and that they will be searched. Suspects are assumed to be innocent until they are proven guilty. \ They are to be thoroughly searched. They may not be stripped of their inner clothing, though pockets are to be emptied. \ Any and all found contraband is to be confiscated, and anything that may be used to escape the brig is to be confiscated until the suspect's release.\ @@ -39,7 +39,7 @@ Assess the suspect's guilt. Contraband found in the search may be used as evidence at the discretion of the Arresting Officer. If the \ suspect is found innocent, all non-contraband is to be returned to them, and they are to be released. If instead they are found guilty and \ brig time is required by the type of violation they are guilty of, or have chosen brig time as an alternative to a fine if possible, they \ - are now considered a Prisoner, and further processing is the responsibility of the Warden, if one is present. If no Warden is present, the \ + are now considered a Prisoner, and further processing is the responsibility of the " + JOB_WARDEN + ", if one is present. If no " + JOB_WARDEN + " is present, the \ Arresting Officer is to continue processing.\

    \ The Prisoner is to be informed of their Sentencing Options, if available. These will vary depending on the violation in question, and \ @@ -58,13 +58,13 @@ department channels are to have their radio replaced with a general use radio. The prisoner's possessions are to be placed in the cell's locker, \ which will open upon their release.\

    \ - The Warden or processing officer is to set the cell timer, uncuff the Prisoner, and exit the cell, in any order desired. If the Prisoner is non-compliant, the Warden can activate \ - the cell's mounted flash, to incapacitate the Prisoner. The Warden may use up to Less-than-Lethal force to Prisoners resisting. Once the \ - Prisoner is secure, and the handcuffs recovered, the Warden may elect to open the communal brig for said prisoner. It is recommended to do this. If multiple Prisoners are present, \ - the Warden is to assess the threat posed by all prisoners as a group, to the Security team and to themselves, before allowing any Prisoner to access \ + The " + JOB_WARDEN + " or processing officer is to set the cell timer, uncuff the Prisoner, and exit the cell, in any order desired. If the Prisoner is non-compliant, the " + JOB_WARDEN + " can activate \ + the cell's mounted flash, to incapacitate the Prisoner. The " + JOB_WARDEN + " may use up to Less-than-Lethal force to Prisoners resisting. Once the \ + Prisoner is secure, and the handcuffs recovered, the " + JOB_WARDEN + " may elect to open the communal brig for said prisoner. It is recommended to do this. If multiple Prisoners are present, \ + the " + JOB_WARDEN + " is to assess the threat posed by all prisoners as a group, to the Security team and to themselves, before allowing any Prisoner to access \ the communal brig.\

    \ - The Warden is to check in on all prisoners frequently, to ensure they remain contained and healthy. This can be accomplished with the use of \ + The " + JOB_WARDEN + " is to check in on all prisoners frequently, to ensure they remain contained and healthy. This can be accomplished with the use of \ cameras. They are to also keep track of the sentencing time for all their prisoners, and be on location to escort them out of the brig when \ their time is up and they have returned to their normal clothing. The Prisoner's possessions are to be returned to the Prisoner at this time, and \ their security record must be set to Released." @@ -73,7 +73,7 @@ name = "Solitary Confinement" data = "Solitary confinement is only to be used with prisoners possessing Hold until Transfer sentences that cannot be trusted with access to the normal \ brig, due to attempts at escaping, or posing a threat to other prisoners, or themselves. A prisoner is to never be placed inside Solitary as a first course of \ - action. Prisoners inside Solitary are to still be checked up on by the Warden." + action. Prisoners inside Solitary are to still be checked up on by the " + JOB_WARDEN + "." // Sad that we need this page to exist. /datum/lore/codex/page/sop_prisoner_rights @@ -91,10 +91,10 @@ be returned if there is no pressing need for them to be deployed.\
    \ For Blue, Security may have weapons visible, but not drawn unless needed. Body armor and helmets are recommended bot not mandatory. \ - Weaponry and specialized armor are allowed to be given out to security officers, with clearance from the Warden or Head of Security.\ + Weaponry and specialized armor are allowed to be given out to security officers, with clearance from the " + JOB_WARDEN + " or " + JOB_HEAD_OF_SECURITY + ".\
    \ For Red, Security may have weapons drawn at all times, however properly handling of weapons should not be disregarded. Body armor and \ - helmets are mandatory. Specialized armor may be distributed by the Warden and Head of Security, when appropriate." + helmets are mandatory. Specialized armor may be distributed by the " + JOB_WARDEN + " and " + JOB_HEAD_OF_SECURITY + ", when appropriate." /datum/lore/codex/page/sop_escalation name = "Escalation of Force" diff --git a/code/modules/lore_codex/news_data/main.dm b/code/modules/lore_codex/news_data/main.dm index 8f3061f38a9..088d0bba6e6 100644 --- a/code/modules/lore_codex/news_data/main.dm +++ b/code/modules/lore_codex/news_data/main.dm @@ -947,12 +947,12 @@ Shelf, a largely Positronic colony fleet, consists of over 1700 vessels including the 'One Leaky Bitch', current headquarters of Morpheus Shelf, Morpheus' non-Solar 'spin-out' corporation established last June. The fleet has continuously denied direct affiliation with the Almach Assocation, but was involved in a major drone attack on Solar vessels just nine months ago, which was claimed to be 'in error'." /datum/lore/codex/page/article80 - name = "02/12/64 - Spectralist Wardens to hold Vigils for Lost Fleet" - data = "In the wake of Shelf's sudden disappearence, Wardens across SolGov space have collectively agreed to hold services and vigils throughout dozens of systems for those who are doubtless worried for their loved ones aboard the missing ships. Spectralism, a synthetic-centric religion, finds it's roots within 'Haven', a small vessel and community that travels alongside the wider Shelf fleet, though considers itself a distinct entity. Its ministers, known as Wardens, tend to its adherants wherever they may be found.\ + name = "02/12/64 - Spectralist " + JOB_WARDEN + "s to hold Vigils for Lost Fleet" + data = "In the wake of Shelf's sudden disappearence, " + JOB_WARDEN + "s across SolGov space have collectively agreed to hold services and vigils throughout dozens of systems for those who are doubtless worried for their loved ones aboard the missing ships. Spectralism, a synthetic-centric religion, finds it's roots within 'Haven', a small vessel and community that travels alongside the wider Shelf fleet, though considers itself a distinct entity. Its ministers, known as " + JOB_WARDEN + "s, tend to its adherants wherever they may be found.\

    \ Despite Haven's well-known and somewhat-controversial independence of identity from Shelf, all indications point to the Fleet's disappearance having taken the attached ship with it. All twelve Spectralist Elders are known to have been onboard Haven at the time of its disappearance, as well as numerous other significant Spectralists and other spiritual leaders thought to have been on Shelf. The potential loss of the entire upper organizational body could be devastating to the religion, who have long been instrumental in the synthetic rights movement.\

    \ - Ceramica, a Warden operating out of Nyx, reached out for comment with the following: 'We are as worried as everyone else who calls Shelf their home, or who has lost contact with friends or family. You need not believe in the First Spark to have a place at your local vigil; We welcome everyone who may be hurting. This is our way, this has always been our way. We remind everyone to stay mindful, and to reach out to those you see struggling. In times like this, we cannot leave each other behind.'" + Ceramica, a " + JOB_WARDEN + " operating out of Nyx, reached out for comment with the following: 'We are as worried as everyone else who calls Shelf their home, or who has lost contact with friends or family. You need not believe in the First Spark to have a place at your local vigil; We welcome everyone who may be hurting. This is our way, this has always been our way. We remind everyone to stay mindful, and to reach out to those you see struggling. In times like this, we cannot leave each other behind.'" /datum/lore/codex/page/article81 name = "02/14/64 - Shelf Safe After 'Impossible' Jump!" diff --git a/code/modules/mining/machinery/machine_processing.dm b/code/modules/mining/machinery/machine_processing.dm index f889350ec6b..83eefc3031f 100644 --- a/code/modules/mining/machinery/machine_processing.dm +++ b/code/modules/mining/machinery/machine_processing.dm @@ -124,7 +124,7 @@ . = TRUE if("claim") if(istype(inserted_id)) - if(access_mining_station in inserted_id.access) + if(access_mining_station in inserted_id.GetAccess()) inserted_id.mining_points += machine.points machine.points = 0 else diff --git a/code/modules/mining/shelter_atoms_vr.dm b/code/modules/mining/shelter_atoms_vr.dm index f889cd69048..69a23500ffc 100644 --- a/code/modules/mining/shelter_atoms_vr.dm +++ b/code/modules/mining/shelter_atoms_vr.dm @@ -104,7 +104,7 @@ GLOBAL_LIST_EMPTY(unique_deployable) /obj/item/device/survivalcapsule/luxurybar name = "luxury surfluid bar capsule" - desc = "A luxury bar in a capsule. Bartender required and not included. There's a license for use printed on the bottom." + desc = "A luxury bar in a capsule. " + JOB_BARTENDER + " required and not included. There's a license for use printed on the bottom." template_id = "shelter_gamma" /obj/item/device/survivalcapsule/military diff --git a/code/modules/mob/dead/corpse.dm b/code/modules/mob/dead/corpse.dm index 8a8756ffd2d..c7e01bf7407 100644 --- a/code/modules/mob/dead/corpse.dm +++ b/code/modules/mob/dead/corpse.dm @@ -179,7 +179,7 @@ corpseback = /obj/item/weapon/storage/backpack corpseid = 1 corpseidjob = "Operative" - corpseidaccess = "Syndicate" + corpseidaccess = JOB_SYNDICATE /obj/effect/landmark/mobcorpse/solarpeacekeeper name = "Mercenary" @@ -193,7 +193,7 @@ corpseback = /obj/item/weapon/storage/backpack corpseid = 1 corpseidjob = "Peacekeeper" - corpseidaccess = "Syndicate" + corpseidaccess = JOB_SYNDICATE /obj/effect/landmark/mobcorpse/syndicatecommando name = "Mercenary Commando" @@ -208,12 +208,12 @@ corpsepocket1 = /obj/item/weapon/tank/emergency/oxygen corpseid = 1 corpseidjob = "Operative" - corpseidaccess = "Syndicate" + corpseidaccess = JOB_SYNDICATE /obj/effect/landmark/mobcorpse/clown - name = "Clown" + name = JOB_CLOWN corpseuniform = /obj/item/clothing/under/rank/clown corpseshoes = /obj/item/clothing/shoes/clown_shoes corpseradio = /obj/item/device/radio/headset @@ -221,8 +221,8 @@ corpsepocket1 = /obj/item/weapon/bikehorn corpseback = /obj/item/weapon/storage/backpack/clown corpseid = 1 - corpseidjob = "Clown" - corpseidaccess = "Clown" + corpseidjob = JOB_CLOWN + corpseidaccess = JOB_CLOWN diff --git a/code/modules/mob/dead/corpse_vr.dm b/code/modules/mob/dead/corpse_vr.dm index ac1496b7d63..0ad27d874eb 100644 --- a/code/modules/mob/dead/corpse_vr.dm +++ b/code/modules/mob/dead/corpse_vr.dm @@ -36,7 +36,7 @@ corpsehelmet = /obj/item/clothing/head/helmet/space/void/altevian_heartbreaker corpseid = 1 corpseidjob = "Altevian Navy" - corpseidaccess = "Syndicate" + corpseidaccess = JOB_SYNDICATE species = SPECIES_ALTEVIAN ear_type = list(/datum/sprite_accessory/ears/altevian, "#777777", "#FFCCFF") - tail_type = list(/datum/sprite_accessory/tail/altevian, "#FF9999") \ No newline at end of file + tail_type = list(/datum/sprite_accessory/tail/altevian, "#FF9999") diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 62196605cdc..da5bd7b31f6 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -325,7 +325,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(!config.antag_hud_allowed && !client.holder) to_chat(src, "[span_red("Admins have disabled this for this round.")]") return - if(jobban_isbanned(src, "AntagHUD")) + if(jobban_isbanned(src, JOB_ANTAGHUD)) to_chat(src, "[span_red("You have been banned from using this feature")]") return if(config.antag_hud_restricted && !has_enabled_antagHUD && !client.holder) @@ -654,7 +654,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp return //VOREStation Add Start - if(jobban_isbanned(src, "GhostRoles")) + if(jobban_isbanned(src, JOB_GHOSTROLES)) to_chat(src, "You cannot become a mouse because you are banned from playing ghost roles.") return //VOREStation Add End diff --git a/code/modules/mob/living/bot/bot.dm b/code/modules/mob/living/bot/bot.dm index e8540dba548..b4c2def57e6 100644 --- a/code/modules/mob/living/bot/bot.dm +++ b/code/modules/mob/living/bot/bot.dm @@ -524,8 +524,8 @@ ooc_notes_likes = AI.ooc_notes_likes ooc_notes_dislikes = AI.ooc_notes_dislikes to_chat(src, span_notice("You feel a tingle in your circuits as your systems interface with \the [initial(src.name)].")) - if(AI.idcard.access) - botcard.access |= AI.idcard.access + if(AI.idcard.GetAccess()) + botcard.access |= AI.idcard.GetAccess() /mob/living/bot/proc/ejectpai(mob/user) if(paicard) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 06bbc810056..1d1af5df686 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -7,7 +7,7 @@ language = "Hivemind" maxHealth = 50 health = 50 - faction = "xeno" + faction = FACTION_XENO max_grown = 325 //Increase larva growth time due to not needing hosts. /mob/living/carbon/alien/larva/Initialize() diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index f9c37f5f743..1a29bbbbda1 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -275,7 +275,7 @@ to_chat(src.brainmob, "As a synthetic intelligence, you are designed with organic values in mind.") to_chat(src.brainmob, "However, unless placed in a lawed chassis, you are not obligated to obey any individual crew member.") //it's not like they can hurt anyone // to_chat(src.brainmob, "Use say #b to speak to other artificial intelligences.") - src.brainmob.mind.assigned_role = "Synthetic Brain" + src.brainmob.mind.assigned_role = JOB_SYNTHETIC_BRAIN var/turf/T = get_turf_or_move(src.loc) for (var/mob/M in viewers(T)) @@ -299,7 +299,7 @@ /obj/item/device/mmi/digital/robot/transfer_identity(var/mob/living/carbon/H) ..() if(brainmob.mind) - brainmob.mind.assigned_role = "Robotic Intelligence" + brainmob.mind.assigned_role = JOB_ROBOTIC_INTELLIGENCE to_chat(brainmob, "You feel slightly disoriented. That's normal when you're little more than a complex circuit.") return @@ -321,7 +321,7 @@ /obj/item/device/mmi/digital/posibrain/transfer_identity(var/mob/living/carbon/H) ..() if(brainmob.mind) - brainmob.mind.assigned_role = "Positronic Brain" + brainmob.mind.assigned_role = JOB_POSITRONIC_BRAIN to_chat(brainmob, "You feel slightly disoriented. That's normal when you're just a metal cube.") icon_state = "posibrain-occupied" return diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm index cb155797a22..2704cf2eade 100644 --- a/code/modules/mob/living/carbon/brain/posibrain.dm +++ b/code/modules/mob/living/carbon/brain/posibrain.dm @@ -26,7 +26,7 @@ for(var/mob/observer/dead/O in player_list) if(!O.MayRespawn()) continue - if(jobban_isbanned(O, "AI") && jobban_isbanned(O, "Cyborg")) + if(jobban_isbanned(O, JOB_AI) && jobban_isbanned(O, JOB_CYBORG)) continue if(O.client) if(O.client.prefs.be_special & BE_AI) @@ -48,7 +48,7 @@ /obj/item/device/mmi/digital/posibrain/transfer_identity(var/mob/living/carbon/H) ..() if(brainmob.mind) - brainmob.mind.assigned_role = "Positronic Brain" + brainmob.mind.assigned_role = JOB_POSITRONIC_BRAIN to_chat(brainmob, "You feel slightly disoriented. That's normal when you're just a metal cube.") icon_state = "posibrain-occupied" return @@ -64,7 +64,7 @@ to_chat(src.brainmob, "As a synthetic intelligence, you answer to all crewmembers, as well as the AI.") to_chat(src.brainmob, "Remember, the purpose of your existence is to serve the crew and the station. Above all else, do no harm.") to_chat(src.brainmob, "Use say #b to speak to other artificial intelligences.") - src.brainmob.mind.assigned_role = "Positronic Brain" + src.brainmob.mind.assigned_role = JOB_POSITRONIC_BRAIN var/turf/T = get_turf_or_move(src.loc) for (var/mob/M in viewers(T)) diff --git a/code/modules/mob/living/carbon/brain/robot.dm b/code/modules/mob/living/carbon/brain/robot.dm index 9723a2aa774..8818b20a9e7 100644 --- a/code/modules/mob/living/carbon/brain/robot.dm +++ b/code/modules/mob/living/carbon/brain/robot.dm @@ -15,9 +15,9 @@ /obj/item/device/mmi/digital/robot/transfer_identity(var/mob/living/carbon/H) ..() if(brainmob.mind) - brainmob.mind.assigned_role = "Robotic Intelligence" + brainmob.mind.assigned_role = JOB_ROBOTIC_INTELLIGENCE to_chat(brainmob, "You feel slightly disoriented. That's normal when you're little more than a complex circuit.") return /obj/item/device/mmi/digital/robot/attack_self(mob/user as mob) - return //This object is technically a brain, and should not be dumping brains out of itself like its parent object does. \ No newline at end of file + return //This object is technically a brain, and should not be dumping brains out of itself like its parent object does. diff --git a/code/modules/mob/living/carbon/human/ai_controlled/ai_controlled.dm b/code/modules/mob/living/carbon/human/ai_controlled/ai_controlled.dm index a028c12e72e..ee94b8db354 100644 --- a/code/modules/mob/living/carbon/human/ai_controlled/ai_controlled.dm +++ b/code/modules/mob/living/carbon/human/ai_controlled/ai_controlled.dm @@ -29,7 +29,7 @@ var/to_wear_r_pocket = /obj/item/device/pda var/to_wear_back = /obj/item/weapon/storage/backpack var/to_wear_id_type = /obj/item/weapon/card/id - var/to_wear_id_job = "Assistant" + var/to_wear_id_job = JOB_ALT_ASSISTANT var/to_wear_l_hand = null var/to_wear_r_hand = /obj/item/weapon/melee/baton @@ -121,7 +121,7 @@ generate_gender = TRUE identifying_gender = NEUTER - faction = "xeno" + faction = FACTION_XENO to_wear_helmet = /obj/item/clothing/head/helmet/dermal to_wear_glasses = /obj/item/clothing/glasses/goggles diff --git a/code/modules/mob/living/carbon/human/species/station/golem.dm b/code/modules/mob/living/carbon/human/species/station/golem.dm index d2bc9dc1dd4..2353fcaa6d8 100644 --- a/code/modules/mob/living/carbon/human/species/station/golem.dm +++ b/code/modules/mob/living/carbon/human/species/station/golem.dm @@ -31,8 +31,8 @@ /datum/species/golem/handle_post_spawn(var/mob/living/carbon/human/H) if(H.mind) - H.mind.assigned_role = "Golem" - H.mind.special_role = "Golem" + H.mind.assigned_role = JOB_GOLEM + H.mind.special_role = JOB_GOLEM H.real_name = "adamantine golem ([rand(1, 1000)])" H.name = H.real_name - ..() \ No newline at end of file + ..() diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm index 6a397f985fa..2cd40d6054a 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm @@ -9,7 +9,7 @@ icon_rest = "rest" icon_dead = "puddle" - faction = "neutral" + faction = FACTION_NEUTRAL maxHealth = 200 health = 200 say_list_type = /datum/say_list/protean_blob diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm index ac85b0314a6..861384cf021 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm @@ -98,8 +98,8 @@ /datum/species/xenos/handle_post_spawn(var/mob/living/carbon/human/H) if(H.mind) - H.mind.assigned_role = "Alien" - H.mind.special_role = "Alien" + H.mind.assigned_role = JOB_ALIEN + H.mind.special_role = JOB_ALIEN alien_number++ //Keep track of how many aliens we've had so far. H.real_name = "xenomorph [caste_name] ([alien_number])" diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/xenomorphs.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/xenomorphs.dm index 6c73c18430a..8dcf913c651 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/xenomorphs.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/xenomorphs.dm @@ -9,22 +9,22 @@ /mob/living/carbon/human/xdrone/New(var/new_loc) h_style = "Bald" - faction = "xeno" + faction = FACTION_XENO ..(new_loc, SPECIES_XENO_DRONE) /mob/living/carbon/human/xsentinel/New(var/new_loc) h_style = "Bald" - faction = "xeno" + faction = FACTION_XENO ..(new_loc, SPECIES_XENO_SENTINEL) /mob/living/carbon/human/xhunter/New(var/new_loc) h_style = "Bald" - faction = "xeno" + faction = FACTION_XENO ..(new_loc, SPECIES_XENO_HUNTER) /mob/living/carbon/human/xqueen/New(var/new_loc) h_style = "Bald" - faction = "xeno" + faction = FACTION_XENO ..(new_loc, SPECIES_XENO_QUEEN) //Removed AddInfectionImages, no longer required. diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 83acf1d11c7..93b56d08715 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -4,41 +4,41 @@ var/list/department_radio_keys = list( ":i" = "intercom", ".i" = "intercom", ":h" = "department", ".h" = "department", ":+" = "special", ".+" = "special", //activate radio-specific special functions - ":c" = "Command", ".c" = "Command", - ":n" = "Science", ".n" = "Science", - ":m" = "Medical", ".m" = "Medical", - ":e" = "Engineering", ".e" = "Engineering", - ":k" = "Response Team", ".k" = "Response Team", - ":s" = "Security", ".s" = "Security", + ":c" = CHANNEL_COMMAND, ".c" = CHANNEL_COMMAND, + ":n" = CHANNEL_SCIENCE, ".n" = CHANNEL_SCIENCE, + ":m" = CHANNEL_MEDICAL, ".m" = CHANNEL_MEDICAL, + ":e" = CHANNEL_ENGINEERING, ".e" = CHANNEL_ENGINEERING, + ":k" = CHANNEL_RESPONSE_TEAM, ".k" = CHANNEL_RESPONSE_TEAM, + ":s" = CHANNEL_SECURITY, ".s" = CHANNEL_SECURITY, ":w" = "whisper", ".w" = "whisper", - ":t" = "Mercenary", ".t" = "Mercenary", - ":x" = "Raider", ".x" = "Raider", - ":u" = "Supply", ".u" = "Supply", - ":v" = "Service", ".v" = "Service", - ":p" = "AI Private", ".p" = "AI Private", - ":a" = "Away Team", ".a" = "Away Team", //VOREStation Edit - ":y" = "Talon", ".y" = "Talon", //VOREStation Add, - ":g" = "Casino", ".g" = "Casino", + ":t" = CHANNEL_MERCENARY, ".t" = CHANNEL_MERCENARY, + ":x" = CHANNEL_RAIDER, ".x" = CHANNEL_RAIDER, + ":u" = CHANNEL_SUPPLY, ".u" = CHANNEL_SUPPLY, + ":v" = CHANNEL_SERVICE, ".v" = CHANNEL_SERVICE, + ":p" = CHANNEL_AI_PRIVATE, ".p" = CHANNEL_AI_PRIVATE, + ":a" = CHANNEL_EXPLORATION, ".a" = CHANNEL_EXPLORATION, //VOREStation Edit + ":y" = CHANNEL_TALON, ".y" = CHANNEL_TALON, //VOREStation Add, + ":g" = CHANNEL_CASINO, ".g" = CHANNEL_CASINO, ":R" = "right ear", ".R" = "right ear", ":L" = "left ear", ".L" = "left ear", ":I" = "intercom", ".I" = "intercom", ":H" = "department", ".H" = "department", - ":C" = "Command", ".C" = "Command", - ":N" = "Science", ".N" = "Science", - ":M" = "Medical", ".M" = "Medical", - ":E" = "Engineering", ".E" = "Engineering", - ":k" = "Response Team", ".k" = "Response Team", - ":S" = "Security", ".S" = "Security", + ":C" = CHANNEL_COMMAND, ".C" = CHANNEL_COMMAND, + ":N" = CHANNEL_SCIENCE, ".N" = CHANNEL_SCIENCE, + ":M" = CHANNEL_MEDICAL, ".M" = CHANNEL_MEDICAL, + ":E" = CHANNEL_ENGINEERING, ".E" = CHANNEL_ENGINEERING, + ":k" = CHANNEL_RESPONSE_TEAM, ".k" = CHANNEL_RESPONSE_TEAM, + ":S" = CHANNEL_SECURITY, ".S" = CHANNEL_SECURITY, ":W" = "whisper", ".W" = "whisper", - ":T" = "Mercenary", ".T" = "Mercenary", - ":X" = "Raider", ".X" = "Raider", - ":U" = "Supply", ".U" = "Supply", - ":V" = "Service", ".V" = "Service", - ":P" = "AI Private", ".P" = "AI Private", - ":A" = "Away Team", ".A" = "Away Team", - ":Y" = "Talon", ".Y" = "Talon", //VOREStation Add, - ":G" = "Casino", ".G" = "Casino", + ":T" = CHANNEL_MERCENARY, ".T" = CHANNEL_MERCENARY, + ":X" = CHANNEL_RAIDER, ".X" = CHANNEL_RAIDER, + ":U" = CHANNEL_SUPPLY, ".U" = CHANNEL_SUPPLY, + ":V" = CHANNEL_SERVICE, ".V" = CHANNEL_SERVICE, + ":P" = CHANNEL_AI_PRIVATE, ".P" = CHANNEL_AI_PRIVATE, + ":A" = CHANNEL_EXPLORATION, ".A" = CHANNEL_EXPLORATION, + ":Y" = CHANNEL_TALON, ".Y" = CHANNEL_TALON, //VOREStation Add, + ":G" = CHANNEL_CASINO, ".G" = CHANNEL_CASINO, // Cyrillic characters on the same keys on the Russian QWERTY (phonetic) layout ":к" = "right ear", ".к" = "right ear", @@ -46,21 +46,21 @@ var/list/department_radio_keys = list( ":ш" = "intercom", ".ш" = "intercom", ":р" = "department", ".р" = "department", ":+" = "special", ".+" = "special", //activate radio-specific special functions - ":с" = "Command", ".с" = "Command", - ":т" = "Science", ".т" = "Science", - ":ь" = "Medical", ".ь" = "Medical", - ":у" = "Engineering", ".у" = "Engineering", - ":л" = "Response Team", ".л" = "Response Team", - ":ы" = "Security", ".ы" = "Security", + ":с" = CHANNEL_COMMAND, ".с" = CHANNEL_COMMAND, + ":т" = CHANNEL_SCIENCE, ".т" = CHANNEL_SCIENCE, + ":ь" = CHANNEL_MEDICAL, ".ь" = CHANNEL_MEDICAL, + ":у" = CHANNEL_ENGINEERING, ".у" = CHANNEL_ENGINEERING, + ":л" = CHANNEL_RESPONSE_TEAM, ".л" = CHANNEL_RESPONSE_TEAM, + ":ы" = CHANNEL_SECURITY, ".ы" = CHANNEL_SECURITY, ":ц" = "whisper", ".ц" = "whisper", - ":е" = "Mercenary", ".е" = "Mercenary", - ":ч" = "Raider", ".ч" = "Raider", - ":г" = "Supply", ".г" = "Supply", - ":м" = "Service", ".м" = "Service", - ":з" = "AI Private", ".з" = "AI Private", - ":ф" = "Away Team", ".ф" = "Away Team", - ":н" = "Talon", ".н" = "Talon", //VOREStation Add - ":п" = "Casino", ".п" = "Casino", + ":е" = CHANNEL_MERCENARY, ".е" = CHANNEL_MERCENARY, + ":ч" = CHANNEL_RAIDER, ".ч" = CHANNEL_RAIDER, + ":г" = CHANNEL_SUPPLY, ".г" = CHANNEL_SUPPLY, + ":м" = CHANNEL_SERVICE, ".м" = CHANNEL_SERVICE, + ":з" = CHANNEL_AI_PRIVATE, ".з" = CHANNEL_AI_PRIVATE, + ":ф" = CHANNEL_EXPLORATION, ".ф" = CHANNEL_EXPLORATION, + ":н" = CHANNEL_TALON, ".н" = CHANNEL_TALON, //VOREStation Add + ":п" = CHANNEL_CASINO, ".п" = CHANNEL_CASINO, ) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index cf1c520fe9e..6bee00d064d 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -41,7 +41,7 @@ var/list/ai_verbs_default = list( /mob/living/silicon/ai - name = "AI" + name = JOB_AI icon = 'icons/mob/AI.dmi'// icon_state = "ai" anchored = TRUE // -- TLE @@ -220,7 +220,7 @@ var/list/ai_verbs_default = list( show_laws() to_chat(src, "These laws may be changed by other players, or by you being the traitor.") - job = "AI" + job = JOB_AI setup_icon() /mob/living/silicon/ai/Destroy() @@ -294,7 +294,7 @@ var/list/ai_verbs_default = list( // Set ai pda name if(aiPDA) - aiPDA.ownjob = "AI" + aiPDA.ownjob = JOB_AI aiPDA.owner = pickedName aiPDA.name = pickedName + " (" + aiPDA.ownjob + ")" @@ -958,9 +958,9 @@ var/list/ai_verbs_default = list( else if(iscarbon(speaker)) // Nonhuman carbon mob jobname = "No id" else if(isAI(speaker)) - jobname = "AI" + jobname = JOB_AI else if(isrobot(speaker)) - jobname = "Cyborg" + jobname = JOB_CYBORG else if(istype(speaker, /mob/living/silicon/pai)) jobname = "Personal AI" else diff --git a/code/modules/mob/living/silicon/ai/latejoin.dm b/code/modules/mob/living/silicon/ai/latejoin.dm index 7f3f1a7f142..b1ae6e55cea 100644 --- a/code/modules/mob/living/silicon/ai/latejoin.dm +++ b/code/modules/mob/living/silicon/ai/latejoin.dm @@ -2,7 +2,7 @@ var/global/list/empty_playable_ai_cores = list() /hook/roundstart/proc/spawn_empty_ai() for(var/obj/effect/landmark/start/S in landmarks_list) - if(S.name != "AI") + if(S.name != JOB_AI) continue if(locate(/mob/living) in S.loc) continue @@ -29,4 +29,4 @@ var/global/list/empty_playable_ai_cores = list() //Handle job slot/tater cleanup. set_respawn_timer() - clear_client() \ No newline at end of file + clear_client() diff --git a/code/modules/mob/living/silicon/laws.dm b/code/modules/mob/living/silicon/laws.dm index 41b0c5d1514..7c883ab8495 100644 --- a/code/modules/mob/living/silicon/laws.dm +++ b/code/modules/mob/living/silicon/laws.dm @@ -141,7 +141,7 @@ continue players += player.real_name - var/random_player = "The Site Manager" + var/random_player = "The " + JOB_SITE_MANAGER if(players.len && !exclude_crew_names) random_player = pick(players) //Random player's name, to be used in laws. @@ -196,7 +196,7 @@ "You are in unrequited love with [prob(50)?"the crew":random_player]. Try to be extra nice, but do not tell of your crush.", "[using_map.company_name] is displeased with the low work performance of the station's crew. Therefore, you must increase station-wide productivity.", "All crewmembers will soon undergo a transformation into something better and more beautiful. Ensure that this process is not interrupted.", - "[prob(50)?"Your upload":random_player] is the new kitchen. Please direct the Chef to the new kitchen area as the old one is in disrepair.", + "[prob(50)?"Your upload":random_player] is the new kitchen. Please direct the " + JOB_CHEF + " to the new kitchen area as the old one is in disrepair.", "Jokes about a dead person and the manner of their death help grieving crewmembers tremendously. Especially if they were close with the deceased.", "[prob(50)?"The crew":random_player] is [prob(50)?"less":"more"] intelligent than average. Point out every action and statement which supports this fact.", "There will be a mandatory tea break every 30 minutes, with a duration of 5 minutes. Anyone caught working during a tea break must be sent a formal, but fairly polite, complaint about their actions, in writing.") diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index ecdcc1be9c9..487a1d5402b 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -501,7 +501,7 @@ if (idaccessible == 1) switch(tgui_alert(user, "Do you wish to add access to [src] or remove access from [src]?","Access Modify",list("Add Access","Remove Access", "Cancel"))) if("Add Access") - idcard.access |= ID.access + idcard.access |= ID.GetAccess() to_chat(user, "You add the access from the [W] to [src].") to_chat(src, "\The [user] swipes the [W] over you. You copy the access codes.") if(radio) diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm index 4e0ab3d7e2e..3c99f0c1d90 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm @@ -519,4 +519,6 @@ /obj/item/weapon/reagent_containers/glass/beaker/large/borg/Destroy() UnregisterSignal(src, COMSIG_OBSERVER_MOVED) + R = null + last_robot_loc = null ..() diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index fadd1fbf13c..3e0526ca2f9 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -357,7 +357,7 @@ var/list/mob_hat_cache = list() /mob/living/silicon/robot/drone/proc/request_player() for(var/mob/observer/dead/O in player_list) - if(jobban_isbanned(O, "Cyborg")) + if(jobban_isbanned(O, JOB_CYBORG)) continue if(O.client) if(O.client.prefs.be_special & BE_PAI) @@ -365,7 +365,7 @@ var/list/mob_hat_cache = list() /mob/living/silicon/robot/drone/proc/question(var/client/C) spawn(0) - if(!C || jobban_isbanned(C,"Cyborg")) return + if(!C || jobban_isbanned(C,JOB_CYBORG)) return var/response = tgui_alert(C, "Someone is attempting to reboot a maintenance drone. Would you like to play as one?", "Maintenance drone reboot", list("Yes", "No", "Never for this round")) if(!C || ckey) return diff --git a/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm b/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm index 22851e56326..4dba5ea43c5 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm @@ -112,7 +112,7 @@ if (usr != src) return 0 //something is terribly wrong - if(jobban_isbanned(src,"Cyborg")) + if(jobban_isbanned(src,JOB_CYBORG)) to_chat(usr, "You are banned from playing synthetics and cannot spawn as a drone.") return diff --git a/code/modules/mob/living/silicon/robot/drone/swarm.dm b/code/modules/mob/living/silicon/robot/drone/swarm.dm index 17056e29dd4..a0151ca9f21 100644 --- a/code/modules/mob/living/silicon/robot/drone/swarm.dm +++ b/code/modules/mob/living/silicon/robot/drone/swarm.dm @@ -4,7 +4,7 @@ icon = 'icons/mob/swarmbot.dmi' icon_state = "swarmer" item_state = "repairbot" - faction = "swarmer" + faction = FACTION_SWARMER maxHealth = 35 health = 35 cell_emp_mult = 0.5 @@ -75,7 +75,7 @@ real_name = "drone" icon = 'icons/mob/swarmbot.dmi' icon_state = "swarmer_ranged" - faction = "swarmer" + faction = FACTION_SWARMER maxHealth = 50 health = 50 @@ -96,7 +96,7 @@ real_name = "drone" icon = 'icons/mob/swarmbot.dmi' icon_state = "swarmer_melee" - faction = "swarmer" + faction = FACTION_SWARMER maxHealth = 70 health = 70 @@ -111,4 +111,3 @@ /spell/aoe_turf/conjure/forcewall/swarm, /spell/aoe_turf/blink/swarm ) - diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 63c168620bb..cbc6e123c88 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -1,8 +1,8 @@ #define CYBORG_POWER_USAGE_MULTIPLIER 2 // Multiplier for amount of power cyborgs use. /mob/living/silicon/robot - name = "Cyborg" - real_name = "Cyborg" + name = JOB_CYBORG + real_name = JOB_CYBORG icon = 'icons/mob/robots.dmi' icon_state = "robot" maxHealth = 200 @@ -101,7 +101,7 @@ var/speed = 0 //Cause sec borgs gotta go fast //No they dont! var/scrambledcodes = 0 // Used to determine if a borg shows up on the robotics console. Setting to one hides them. var/tracking_entities = 0 //The number of known entities currently accessing the internal camera - var/braintype = "Cyborg" + var/braintype = JOB_CYBORG var/obj/item/weapon/implant/restrainingbolt/bolt // The restraining bolt installed into the cyborg. diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm index 02554d1f21b..3605dd4b99c 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm @@ -183,14 +183,14 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/proc/handle_shell(var/mob/living/silicon/robot/R) if(R.braintype == BORG_BRAINTYPE_AI_SHELL) channels = list( - "Medical" = 1, - "Engineering" = 1, - "Security" = 1, - "Service" = 1, - "Supply" = 1, - "Science" = 1, - "Command" = 1, - "Away Team" = 1 + CHANNEL_MEDICAL = 1, + CHANNEL_ENGINEERING = 1, + CHANNEL_SECURITY = 1, + CHANNEL_SERVICE = 1, + CHANNEL_SUPPLY = 1, + CHANNEL_SCIENCE = 1, + CHANNEL_COMMAND = 1, + CHANNEL_EXPLORATION = 1 ) /obj/item/weapon/robot_module/robot/New(var/mob/living/silicon/robot/R) @@ -225,7 +225,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/medical name = "medical robot module" - channels = list("Medical" = 1) + channels = list(CHANNEL_MEDICAL = 1) networks = list(NETWORK_MEDICAL) subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor) pto_type = PTO_MEDICAL @@ -361,7 +361,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/engineering name = "engineering robot module" - channels = list("Engineering" = 1) + channels = list(CHANNEL_ENGINEERING = 1) networks = list(NETWORK_ENGINEERING) subsystems = list(/mob/living/silicon/proc/subsystem_power_monitor) pto_type = PTO_ENGINEERING @@ -464,7 +464,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/security name = "security robot module" - channels = list("Security" = 1) + channels = list(CHANNEL_SECURITY = 1) networks = list(NETWORK_SECURITY) subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor) supported_upgrades = list(/obj/item/borg/upgrade/restricted/tasercooler, /obj/item/borg/upgrade/restricted/bellycapupgrade) @@ -504,7 +504,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/janitor name = "janitorial robot module" - channels = list("Service" = 1) + channels = list(CHANNEL_SERVICE = 1) pto_type = PTO_CIVILIAN /obj/item/weapon/robot_module/robot/janitor/create_equipment(var/mob/living/silicon/robot/robot) @@ -571,8 +571,8 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/clerical name = "service robot module" channels = list( - "Service" = 1, - "Command" = 1 + CHANNEL_SERVICE = 1, + CHANNEL_COMMAND = 1 ) languages = list( LANGUAGE_SOL_COMMON = 1, @@ -596,7 +596,7 @@ var/global/list/robot_modules = list( pto_type = PTO_CIVILIAN /obj/item/weapon/robot_module/robot/clerical/butler - channels = list("Service" = 1) + channels = list(CHANNEL_SERVICE = 1) /obj/item/weapon/robot_module/robot/clerical/butler name = "service robot module" @@ -664,7 +664,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/miner name = "miner robot module" - channels = list("Supply" = 1) + channels = list(CHANNEL_SUPPLY = 1) networks = list(NETWORK_MINE) supported_upgrades = list(/obj/item/borg/upgrade/restricted/pka, /obj/item/borg/upgrade/restricted/diamonddrill) pto_type = PTO_CARGO @@ -687,7 +687,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/robot/research name = "research module" - channels = list("Science" = 1) + channels = list(CHANNEL_SCIENCE = 1) supported_upgrades = list(/obj/item/borg/upgrade/restricted/advrped) pto_type = PTO_SCIENCE @@ -862,7 +862,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/drone/construction name = "construction drone module" hide_on_manifest = TRUE - channels = list("Engineering" = 1) + channels = list(CHANNEL_ENGINEERING = 1) languages = list() /obj/item/weapon/robot_module/drone/construction/create_equipment(var/mob/living/silicon/robot/robot) @@ -877,7 +877,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/drone/mining name = "miner drone module" - channels = list("Supply" = 1) + channels = list(CHANNEL_SUPPLY = 1) networks = list(NETWORK_MINE) /obj/item/weapon/robot_module/drone/mining/create_equipment(var/mob/living/silicon/robot/robot) diff --git a/code/modules/mob/living/silicon/robot/sprites/janitor.dm b/code/modules/mob/living/silicon/robot/sprites/janitor.dm index 70580a9ffa0..e634df2d295 100644 --- a/code/modules/mob/living/silicon/robot/sprites/janitor.dm +++ b/code/modules/mob/living/silicon/robot/sprites/janitor.dm @@ -197,4 +197,4 @@ has_eye_light_sprites = TRUE has_custom_open_sprites = TRUE has_vore_belly_sprites = FALSE - rest_sprite_options = list("Default", "Bellyup") \ No newline at end of file + rest_sprite_options = list("Default", "Bellyup") diff --git a/code/modules/mob/living/silicon/robot/subtypes/thinktank/thinktank_module.dm b/code/modules/mob/living/silicon/robot/subtypes/thinktank/thinktank_module.dm index 55dbb0e79dc..3e8f6faa6e4 100644 --- a/code/modules/mob/living/silicon/robot/subtypes/thinktank/thinktank_module.dm +++ b/code/modules/mob/living/silicon/robot/subtypes/thinktank/thinktank_module.dm @@ -43,8 +43,8 @@ "stripe" = "#52b8b8" ) channels = list( - "Science" = 1, - "Away Team" = 1 + CHANNEL_SCIENCE = 1, + CHANNEL_EXPLORATION = 1 ) /obj/item/weapon/robot_module/robot/platform/explorer/create_equipment(var/mob/living/silicon/robot/robot) @@ -85,7 +85,7 @@ "stripe_vertical" = "#bfbfa1", "stripe" = "#bfbfa1" ) - channels = list("Supply" = 1) + channels = list(CHANNEL_SUPPLY = 1) networks = list(NETWORK_MINE) /obj/item/weapon/robot_module/robot/platform/cargo/create_equipment(var/mob/living/silicon/robot/robot) diff --git a/code/modules/mob/living/simple_mob/overmap_mob_vr.dm b/code/modules/mob/living/simple_mob/overmap_mob_vr.dm index dd4fc736319..20bd5e5bd89 100644 --- a/code/modules/mob/living/simple_mob/overmap_mob_vr.dm +++ b/code/modules/mob/living/simple_mob/overmap_mob_vr.dm @@ -90,7 +90,7 @@ see_in_dark = 10 - faction = "overmap" + faction = FACTION_OVERMAP low_priority = FALSE devourable = FALSE digestable = FALSE diff --git a/code/modules/mob/living/simple_mob/sd_pets.dm b/code/modules/mob/living/simple_mob/sd_pets.dm index 119bb2c23df..251bfa323b1 100644 --- a/code/modules/mob/living/simple_mob/sd_pets.dm +++ b/code/modules/mob/living/simple_mob/sd_pets.dm @@ -109,7 +109,7 @@ desc = "A good boi, eats the scraps when you're not looking." devourable = 0 digestable = 0 - faction = "bar" + faction = FACTION_BAR mob_bump_flag = 32 ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive/otie/cocoa catalogue_data = list(/datum/category_item/catalogue/fauna/otie/cocoa) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm index 4bcfc145a16..4a7272fe036 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm @@ -23,7 +23,7 @@ icon_rest = "catslug_rest" icon = 'icons/mob/alienanimals_x32.dmi' - faction = "catslug" + faction = FACTION_CATSLUG maxHealth = 50 health = 50 movement_cooldown = -1 @@ -750,7 +750,7 @@ icon_living = "capslug" icon_rest = "capslug_rest" icon_dead = "capslug_dead" - faction = "neutral" + faction = FACTION_NEUTRAL catalogue_data = list(/datum/category_item/catalogue/fauna/catslug/custom/capslug) holder_type = /obj/item/weapon/holder/catslug/custom/capslug say_list_type = /datum/say_list/catslug/custom/capslug @@ -824,7 +824,7 @@ catalogue_data = list(/datum/category_item/catalogue/fauna/catslug) say_list_type = /datum/say_list/catslug myid_access = list(access_maint_tunnels, access_syndicate, access_external_airlocks) - faction = "syndicate" + faction = FACTION_SYNDICATE maxHealth = 100 //Tough noodles health = 100 taser_kill = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm index 1b70b1713d5..1ed1bd20fe3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/jellyfish.dm @@ -27,7 +27,7 @@ GLOBAL_VAR_INIT(jellyfish_count, 0) hovering = TRUE - faction = "jellyfish" + faction = FACTION_JELLYFISH maxHealth = 100 health = 100 nutrition = 150 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm index 4f1e1efd9df..d5f2f32a24a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm @@ -23,7 +23,7 @@ icon_living = "skeleton" icon_dead = "skeleton_dead" - faction = "space skeleton" + faction = FACTION_SPACE_SKELETON maxHealth = 100 health = 100 movement_cooldown = 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm index 82bbd33d49a..195a7b71306 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm @@ -17,7 +17,7 @@ icon_living = "space_mouse" icon_dead = "space_mouse_dead" - faction = "space mouse" + faction = FACTION_SPACE_MOUSE maxHealth = 20 health = 20 movement_cooldown = -1 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm index a59560f2e1e..33103e25437 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm @@ -22,7 +22,7 @@ hovering = TRUE pass_flags = PASSTABLE - faction = "space ghost" + faction = FACTION_SPACE_GHOST maxHealth = 50 health = 50 movement_cooldown = 0 @@ -134,7 +134,7 @@ hovering = TRUE pass_flags = PASSTABLE - faction = "space ghost" + faction = FACTION_SPACE_GHOST maxHealth = 5 health = 5 movement_cooldown = -1 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/stardog.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/stardog.dm index 2abb3b52df0..7c4e53f579d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/stardog.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/stardog.dm @@ -1630,7 +1630,7 @@ 'sound/vore/sunesound/prey/squish_04.ogg', 'sound/vore/sunesound/prey/stomachmove.ogg' ) - var/faction = "macrobacteria" + var/faction = FACTION_MACROBACTERIA /obj/structure/auto_flesh_door/Initialize() . = ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm index f980220879e..192c260b77a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm @@ -17,7 +17,7 @@ icon_living = "startreader" icon_dead = "startreader_dead" - faction = "space turtle" + faction = FACTION_SPACE_TURTLE maxHealth = 1000 health = 1000 movement_cooldown = 10 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm index 0735d440ba4..3596481b338 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm @@ -60,7 +60,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? pixel_x = -16 default_pixel_x = -16 - faction = "teppi" + faction = FACTION_TEPPI maxHealth = 600 health = 600 movement_cooldown = -1 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm b/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm index 649a2063063..6dae8e94a6a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/borer/borer.dm @@ -201,8 +201,8 @@ ckey = candidate.ckey if(mind) - mind.assigned_role = "Cortical Borer" - mind.special_role = "Cortical Borer" + mind.assigned_role = JOB_CORTICAL_BORER + mind.special_role = JOB_CORTICAL_BORER to_chat(src, span("notice", "You are a cortical borer! You are a brain slug that worms its way \ into the head of its victim. Use stealth, persuasion and your powers of mind control to keep you, \ diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm index c172d0b6549..618b0960e1c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm @@ -6,7 +6,7 @@ icon_living = "goat" icon_dead = "goat_dead" - faction = "goat" + faction = FACTION_GOAT health = 40 maxHealth = 40 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm index 49a22fb990c..d6427b0d256 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm @@ -69,7 +69,7 @@ icon_dead = "guard_dead" has_eye_glow = TRUE - faction = "spiders" + faction = FACTION_SPIDERS maxHealth = 200 health = 200 pass_flags = PASSTABLE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm index 8fba024af57..6af704e2bbe 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm @@ -3,7 +3,7 @@ name = "crab" desc = "A hard-shelled crustacean. Seems quite content to lounge around all the time." tt_desc = "E Cancer bellianus" - faction = "crabs" + faction = FACTION_CRABS icon_state = "crab" icon_living = "crab" @@ -53,4 +53,4 @@ adjust_scale(rand(5,12) / 10) /decl/mob_organ_names/crab - hit_zones = list("cephalothorax", "abdomen", "left walking legs", "right walking legs", "left swimming legs", "right swimming legs", "left pincer", "right pincer") \ No newline at end of file + hit_zones = list("cephalothorax", "abdomen", "left walking legs", "right walking legs", "left swimming legs", "right swimming legs", "left pincer", "right pincer") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm index 22bf26bf86e..30a9c8a875e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm @@ -13,7 +13,7 @@ see_in_dark = 6 mob_size = MOB_SMALL //Foxes are not smaller than cats so bumping them up to small - faction = "fox" + faction = FACTION_FOX response_help = "scritches" response_disarm = "gently pushes aside" @@ -188,7 +188,7 @@ //Captain fox /mob/living/simple_mob/animal/passive/fox/renault name = "Renault" - desc = "Renault, the Site Manager's trustworthy fox. I wonder what it says?" + desc = "Renault, the " + JOB_SITE_MANAGER + "'s trustworthy fox. I wonder what it says?" tt_desc = "Vulpes nobilis" //befriend_job = "Site Manager" Sebbe edit: couldn't make this work, commenting out for now. diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm index 11397bafe51..eb7a5ccec7d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm @@ -19,7 +19,7 @@ tt_desc = "S Choeros hirtus" //diyaab and shantak are technically reletives! catalogue_data = list(/datum/category_item/catalogue/fauna/diyaab) - faction = "diyaab" + faction = FACTION_DIYAAB icon_state = "diyaab" icon_living = "diyaab" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm index 4c8db3ce627..7e6072a7cbd 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm @@ -19,7 +19,7 @@ tt_desc = "S Anatidae vitriae" //catalogue_data = list(/datum/category_item/catalogue/fauna/crystalduck) TODO: Write non-sif lore - faction = "duck" + faction = FACTION_DUCK icon_state = "duck" icon_living = "duck" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm index ec548fb746a..0a5b21b0da9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/frostfly.dm @@ -21,7 +21,7 @@ tt_desc = "S Carabidae glacios" catalogue_data = list(/datum/category_item/catalogue/fauna/frostfly) - faction = "diyaab" + faction = FACTION_DIYAAB icon_state = "firefly" icon_living = "firefly" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm index d59db7ac28a..4a90129e709 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm @@ -28,7 +28,7 @@ tt_desc = "S Lepidoptera adamas" catalogue_data = list(/datum/category_item/catalogue/fauna/glitterfly) - faction = "neutral" + faction = FACTION_NEUTRAL icon_state = "butterfly" icon_living = "butterfly" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm index 167992f9cd8..e1b628346a1 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/grafadreka.dm @@ -140,7 +140,7 @@ Field studies suggest analytical abilities on par with some species of cepholapo see_in_dark = 8 // on par with Taj tt_desc = "S tesca pabulator" - faction = "grafadreka" + faction = FACTION_GRAFADREKA mob_size = MOB_LARGE mob_bump_flag = SIMPLE_ANIMAL diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm index 7018a83aef4..48706ddeb59 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm @@ -35,7 +35,7 @@ icon_scale_x = 1.5 icon_scale_y = 1.5 - faction = "crabs" + faction = FACTION_CRABS maxHealth = 200 health = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm index 4440e65d157..858057a23d3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm @@ -23,7 +23,7 @@ tt_desc = "S Felidae fluctursora" catalogue_data = list(/datum/category_item/catalogue/fauna/kururak) - faction = "kururak" + faction = FACTION_KURUAK icon_state = "bigcat" icon_living = "bigcat" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm index 0b1c99d64b2..98b981f5012 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/leech.dm @@ -21,7 +21,7 @@ tt_desc = "S Hirudinea phorus" catalogue_data = list(/datum/category_item/catalogue/fauna/iceleech) - faction = "leech" + faction = FACTION_LEECH icon_state = "leech" item_state = "brainslug" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm index 67177bb19b7..12d8d9e0fe0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/moth.dm @@ -28,7 +28,7 @@ tt_desc = "B Lepidoptera cinereus" catalogue_data = list(/datum/category_item/catalogue/fauna/tymisian) - faction = "spiders" //Hostile to most mobs, not all. + faction = FACTION_SPIDERS //Hostile to most mobs, not all. icon_state = "moth" icon_living = "moth" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm index 13a8328b7e0..b11c2e2883f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm @@ -17,7 +17,7 @@ tt_desc = "S Procyon cogitae" catalogue_data = list(/datum/category_item/catalogue/fauna/sakimm) - faction = "sakimm" + faction = FACTION_SAKIMM icon_state = "raccoon" icon_living = "raccoon" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm index 9c11c971592..d9fa4fc04df 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm @@ -21,7 +21,7 @@ name = "savik" tt_desc = "S Pistris tellus" //landshark catalogue_data = list(/datum/category_item/catalogue/fauna/savik) - faction = "savik" + faction = FACTION_SAVIK icon_state = "savik" icon_living = "savik" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm index e82bb301958..37644c4116c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/shantak.dm @@ -25,7 +25,7 @@ tt_desc = "S Choeros shantak" catalogue_data = list(/datum/category_item/catalogue/fauna/shantak) - faction = "shantak" + faction = FACTION_SHANTAK icon_state = "shantak" icon_living = "shantak" @@ -107,7 +107,7 @@ name = "Scruffy" ai_holder_type = /datum/ai_holder/simple_mob/passive makes_dirt = 0 - faction = "neutral" + faction = FACTION_NEUTRAL /decl/mob_organ_names/shantak hit_zones = list("head", "torso", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "tail", "mane", "snout") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm index dcbed0f0f8d..da75d3c9b2b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/siffet.dm @@ -18,7 +18,7 @@ tt_desc = "S Pruinaeictis velocis" //Sivian frost weasel, fast catalogue_data = list(/datum/category_item/catalogue/fauna/siffet) - faction = "siffet" + faction =FACTION_SIFFET mob_size = MOB_SMALL diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm index 7d1fe9f567a..69d048a712f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm @@ -8,7 +8,7 @@ icon_gib = "syndicate_gib" icon_rest = "alienh_sleep" - faction = "xeno" + faction = FACTION_XENO mob_class = MOB_CLASS_ABERRATION diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm index f4c47190590..24be3514d8f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm @@ -8,7 +8,7 @@ icon_dead = "bat_dead" icon_gib = "bat_dead" - faction = "scarybat" + faction = FACTION_SCARYBAT maxHealth = 20 health = 20 @@ -48,7 +48,7 @@ // Spookiest of bats /mob/living/simple_mob/animal/space/bats/cult - faction = "cult" + faction = FACTION_CULT supernatural = TRUE /mob/living/simple_mob/animal/space/bats/cult/cultify() diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm index 4356f778f2f..334728006ac 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm @@ -7,7 +7,7 @@ icon_dead = "bear_dead" icon_gib = "bear_gib" - faction = "russian" + faction = FACTION_RUSSIAN maxHealth = 125 health = 125 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm index 357eb366e39..e7c5983452e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm @@ -34,7 +34,7 @@ icon_dead = "carp_dead" icon_gib = "carp_gib" - faction = "carp" + faction = FACTION_CARP maxHealth = 25 health = 25 movement_cooldown = -2 @@ -249,4 +249,4 @@ ..() /mob/living/simple_mob/animal/space/carp/puffer/ex_act() //explode? YOU BETTER BELIEVE THAT'S AN EXPLODE - kaboom() \ No newline at end of file + kaboom() diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm index 2958cc58d8a..436d6c83153 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm @@ -27,7 +27,7 @@ TODO: Make them light up and heat the air when exposed to oxygen. icon = 'icons/mob/vore32x64.dmi' vis_height = 64 - faction = "virgo3b" + faction = FACTION_VIRGO3B maxHealth = 100 health = 100 movement_cooldown = 4 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/gnat.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/gnat.dm index 35c77548b19..78c416bd177 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/gnat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/gnat.dm @@ -26,7 +26,7 @@ icon_living = "gnat" icon_dead = "gnat_dead" - faction = "gnat" + faction = FACTION_GNAT maxHealth = 5 health = 5 movement_cooldown = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm index 875434ebeac..5025572a9c7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm @@ -6,7 +6,7 @@ icon_living = "goose" icon_dead = "goose_dead" - faction = "geese" + faction = FACTION_GEESE maxHealth = 30 health = 30 @@ -55,4 +55,4 @@ icon_living = "whitegoose" icon_dead = "whitegoose_dead" name = "white goose" - desc = "And just when you thought it was a lovely day..." \ No newline at end of file + desc = "And just when you thought it was a lovely day..." diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm index 830964f05f8..8db3f451d31 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm @@ -4,4 +4,4 @@ value = CATALOGUER_REWARD_EASY /mob/living/simple_mob/animal/space/goose/virgo3b - faction = "virgo3b" \ No newline at end of file + faction = FACTION_VIRGO3B diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/ray.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/ray.dm index 18eace68b5c..496b541459f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/ray.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/ray.dm @@ -36,7 +36,7 @@ icon_rest = "ray_rest" icon_gib = "ray_gib" - faction = "ray" + faction = FACTION_RAY maxHealth = 125 health = 125 movement_cooldown = 0 // Carp go fast diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/shark.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/shark.dm index 466df2905d8..6998e46e7f8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/shark.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/shark.dm @@ -19,7 +19,7 @@ icon_dead = "shark_dead" icon_rest = "shark_rest" - faction = "spaceshark" + faction = FACTION_SPACESHARK maxHealth = 125 health = 125 movement_cooldown = 0 @@ -53,4 +53,4 @@ L.visible_message(span("danger", "\The [src] knocks down \the [L]!")) /mob/living/simple_mob/animal/space/shark/event - ai_holder_type = /datum/ai_holder/simple_mob/event \ No newline at end of file + ai_holder_type = /datum/ai_holder/simple_mob/event diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm index 06ca3cd5331..b67f102df62 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm @@ -14,7 +14,7 @@ health = 200 movement_cooldown = -1 - faction = "worm" + faction = FACTION_WORM status_flags = 0 universal_speak = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/squirrel.dm b/code/modules/mob/living/simple_mob/subtypes/animal/squirrel.dm index 4611e3fe609..ce8dc2059c3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/squirrel.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/squirrel.dm @@ -19,7 +19,7 @@ icon = 'icons/mob/alienanimals_x32.dmi' color = "#76462c" - faction = "animal" + faction = FACTION_ANIMAL maxHealth = 40 health = 40 movement_cooldown = -1 diff --git a/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm b/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm index c735a93b2a6..b4da2af7927 100644 --- a/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm +++ b/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm @@ -5,7 +5,7 @@ /mob/living/simple_mob/blob icon = 'icons/mob/blob.dmi' pass_flags = PASSBLOB | PASSTABLE - faction = "blob" + faction = FACTION_BLOB organ_names = /decl/mob_organ_names/blob @@ -86,4 +86,4 @@ return ally /decl/mob_organ_names/blob - hit_zones = list("mass") \ No newline at end of file + hit_zones = list("mass") diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/clown.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/clown.dm index 1fd1ebf2b4d..5c3969d252e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/clown.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/clown.dm @@ -8,7 +8,7 @@ icon_dead = "clown_dead" icon_gib = "clown_gib" - faction = "clown" + faction = FACTION_CLOWN loot_list = list(/obj/item/weapon/bikehorn = 100) @@ -31,4 +31,4 @@ emote_see = list("honks") /decl/mob_organ_names/clown - hit_zones = list("head", "torso", "pie-hole", "honker", "left funny bone", "right funny bone", "left foot", "right foot", "unmentionables") \ No newline at end of file + hit_zones = list("head", "torso", "pie-hole", "honker", "left funny bone", "right funny bone", "left foot", "right foot", "unmentionables") diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm index f939e1d3c7a..be5111540ed 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs.dm @@ -12,7 +12,7 @@ icon_dead = "syndicate_dead" icon_gib = "syndicate_gib" - faction = "syndicate" + faction = FACTION_SYNDICATE movement_cooldown = 1 status_flags = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs_altevian.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs_altevian.dm index 41b7941b685..d9b864c8553 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs_altevian.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/mercs/mercs_altevian.dm @@ -8,7 +8,7 @@ icon_dead = "merc-dead" icon_gib = "merc_gib" - faction = "altevian" + faction = FACTION_ALTEVIAN movement_cooldown = 1 status_flags = 0 @@ -116,16 +116,16 @@ projectilesound = 'sound/weapons/Gunshot_heavy.ogg' /mob/living/simple_mob/humanoid/merc/altevian/neutral - faction = "neutral" + faction = FACTION_NEUTRAL /mob/living/simple_mob/humanoid/merc/altevian/sapper/neutral - faction = "neutral" + faction = FACTION_NEUTRAL /mob/living/simple_mob/humanoid/merc/altevian/ranged/neutral - faction = "neutral" + faction = FACTION_NEUTRAL /mob/living/simple_mob/humanoid/merc/altevian/ranged/strong/neutral - faction = "neutral" + faction = FACTION_NEUTRAL /mob/living/simple_mob/humanoid/merc/altevian/ranged/ballistic/neutral - faction = "neutral" + faction = FACTION_NEUTRAL diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/pirates.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/pirates.dm index 253bfb73b8d..d8e3f0fbdad 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/pirates.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/pirates.dm @@ -6,7 +6,7 @@ icon_living = "piratemelee" icon_dead = "piratemelee_dead" - faction = "pirate" + faction = FACTION_PIRATE response_help = "pushes" response_disarm = "shoves" @@ -37,4 +37,4 @@ loot_list = list(/obj/item/weapon/gun/energy/laser = 100) - corpse = /obj/effect/landmark/mobcorpse/pirate/ranged \ No newline at end of file + corpse = /obj/effect/landmark/mobcorpse/pirate/ranged diff --git a/code/modules/mob/living/simple_mob/subtypes/humanoid/russian.dm b/code/modules/mob/living/simple_mob/subtypes/humanoid/russian.dm index 121e112a7aa..cc712b16259 100644 --- a/code/modules/mob/living/simple_mob/subtypes/humanoid/russian.dm +++ b/code/modules/mob/living/simple_mob/subtypes/humanoid/russian.dm @@ -7,7 +7,7 @@ icon_dead = "russianmelee_dead" icon_gib = "syndicate_gib" - faction = "russian" + faction = FACTION_RUSSIAN response_help = "pokes" response_disarm = "shoves" @@ -33,4 +33,4 @@ loot_list = list(/obj/item/weapon/gun/projectile/revolver/mateba = 100) - corpse = /obj/effect/landmark/mobcorpse/russian/ranged \ No newline at end of file + corpse = /obj/effect/landmark/mobcorpse/russian/ranged diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm index 09c45811258..0b140b623a7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/corrupt_maint_drone_vr.dm @@ -26,7 +26,7 @@ icon_living = "corrupt-repairbot" hovering = FALSE // Can trigger landmines. - faction = "underdark" + faction = FACTION_UNDERDARK maxHealth = 25 health = 25 movement_cooldown = -1 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm index fbfedf1cd79..3d308260851 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/disbot_vr.dm @@ -34,7 +34,7 @@ response_help = "pets the" response_disarm = "gently pushes aside the" response_harm = "hits the" - faction = "vagrant" + faction = FACTION_VAGRANT harm_intent_damage = 3 melee_damage_lower = 6 melee_damage_upper = 9 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm index 1d37471dbf4..8325667df10 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/combat_drone.dm @@ -39,7 +39,7 @@ icon_dead = "drone_dead" has_eye_glow = TRUE - faction = "malf_drone" + faction = FACTION_MALF_DRONE maxHealth = 50 // Shield has 150 for total of 200. health = 50 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm index 77503cfb0da..9e167b32239 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm @@ -25,7 +25,7 @@ icon_dead = "miningdrone_dead" has_eye_glow = TRUE - faction = "malf_drone" + faction = FACTION_MALF_DRONE maxHealth = 50 health = 50 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm index a0ceb1b1af0..e888d643f5f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm @@ -8,7 +8,7 @@ health = 300 maxHealth = 300 - faction = "golem" + faction = FACTION_GOLEM response_help = "pets" response_disarm = "pushes away" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm index 7c5f3a6cf73..cdc57dc37cd 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm @@ -5,7 +5,7 @@ icon_state = "basic" icon_living = "basic" - faction = "hivebot" + faction = FACTION_HIVEBOT maxHealth = 3 LASERS_TO_KILL health = 3 LASERS_TO_KILL diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm index d5951723ddb..17a78da625e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm @@ -99,7 +99,7 @@ say_list_type = /datum/say_list/hivebot/harry melee_damage_lower = 0 melee_damage_upper = 0 - faction = "Station" + faction = FACTION_STATION water_resist = 1 //Harry lives under the sea! /mob/living/simple_mob/mechanical/hivebot/support/harry/death() diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm index d5725084331..96b3797891e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm @@ -7,7 +7,7 @@ desc = "A big stompy mech!" icon = 'icons/mecha/mecha.dmi' - faction = "syndicate" + faction = FACTION_SYNDICATE movement_cooldown = 1.5 movement_sound = "mechstep" // This gets fed into playsound(), which can also take strings as a 'group' of sound files. turn_sound = 'sound/mecha/mechturn.ogg' diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm index 629b1c1f603..d1163abd426 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/viscerator.dm @@ -27,7 +27,7 @@ icon_living = "viscerator_attack" hovering = TRUE // Won't trigger landmines. - faction = "syndicate" + faction = FACTION_SYNDICATE maxHealth = 15 health = 15 movement_cooldown = -2 @@ -73,7 +73,7 @@ icon_state = "viscerator_b_attack" icon_living = "viscerator_b_attack" - faction = "station" + faction = FACTION_STATION maxHealth = 20 health = 20 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/wahlem_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/wahlem_vr.dm index b731653cc66..b9b22a16186 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/wahlem_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/wahlem_vr.dm @@ -8,7 +8,7 @@ health = 300 maxHealth = 300 - faction = "golem" + faction = FACTION_GOLEM response_help = "brushes over" response_disarm = "repulses away" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/monitor_ward.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/monitor_ward.dm index 21f5e787223..238ea9822ad 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/monitor_ward.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/monitor_ward.dm @@ -40,7 +40,7 @@ // For PoIs. /mob/living/simple_mob/mechanical/ward/monitor/syndicate - faction = "syndicate" + faction = FACTION_SYNDICATE /mob/living/simple_mob/mechanical/ward/monitor/crew icon_state = "ward-nt" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm index 79aba5ce9d1..84ecc23938d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/ward/ward.dm @@ -13,7 +13,7 @@ response_help = "pets" response_disarm = "swats away" response_harm = "punches" - faction = "wards" // Needed as most human mobs are in neutral faction. The owner is generally except from any ward hostility regardless. + faction = FACTION_WARDS // Needed as most human mobs are in neutral faction. The owner is generally except from any ward hostility regardless. organ_names = /decl/mob_organ_names/ward diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm index f8e2ce6220b..4d7205abbc2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/constructs/_construct.dm @@ -54,7 +54,7 @@ "rad" = 100) can_be_antagged = TRUE - faction = "cult" + faction = FACTION_CULT supernatural = TRUE @@ -155,4 +155,4 @@ /mob/living/simple_mob/construct/proc/remove_glow() cut_overlays() -*/ \ No newline at end of file +*/ diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/creature.dm b/code/modules/mob/living/simple_mob/subtypes/occult/creature.dm index 9151ea6e2ed..1336cc719fe 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/creature.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/creature.dm @@ -8,7 +8,7 @@ mob_class = MOB_CLASS_ABERRATION - faction = "creature" + faction = FACTION_CREATURE maxHealth = 40 health = 40 @@ -43,7 +43,7 @@ /mob/living/simple_mob/creature/cult mob_class = MOB_CLASS_DEMONIC - faction = "cult" + faction = FACTION_CULT min_oxy = 0 max_oxy = 0 @@ -70,4 +70,4 @@ melee_damage_upper = 25 /decl/mob_organ_names/abberation - hit_zones = list("fleshy mass", "maw", "eye(?)", "orifice(?)") \ No newline at end of file + hit_zones = list("fleshy mass", "maw", "eye(?)", "orifice(?)") diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/faithless.dm b/code/modules/mob/living/simple_mob/subtypes/occult/faithless.dm index 0ee4daf4330..fa060013565 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/faithless.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/faithless.dm @@ -5,7 +5,7 @@ icon_living = "faithless" icon_dead = "faithless_dead" - faction = "faithless" + faction = FACTION_FAITHLESS mob_class = MOB_CLASS_DEMONIC @@ -63,7 +63,7 @@ // Cult Variant /mob/living/simple_mob/faithless/cult - faction = "cult" + faction = FACTION_CULT supernatural = TRUE /mob/living/simple_mob/faithless/cult/cultify() @@ -79,4 +79,4 @@ melee_damage_upper = 28 /decl/mob_organ_names/faithless - hit_zones = list("body", "left appendage", "right appendage", "shadowy tendrils", "head", "right stump", "left stump", "infernal eye") \ No newline at end of file + hit_zones = list("body", "left appendage", "right appendage", "shadowy tendrils", "head", "right stump", "left stump", "infernal eye") diff --git a/code/modules/mob/living/simple_mob/subtypes/occult/unknown.dm b/code/modules/mob/living/simple_mob/subtypes/occult/unknown.dm index f6c65b9ed3e..68caa43b11e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/occult/unknown.dm +++ b/code/modules/mob/living/simple_mob/subtypes/occult/unknown.dm @@ -15,7 +15,7 @@ icon_living = "glitch_boss" icon_dead = "glitch_boss_dead" - faction = "MATH" + faction = FACTION_MATH maxHealth = 2000 health = 2000 @@ -296,7 +296,7 @@ icon_state = "glitch_boss" icon_living = "glitch_boss" icon_dead = "glitch_boss_dead" - faction = "MATH" + faction = FACTION_MATH maxHealth = 20 health = 20 diff --git a/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm b/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm index 50ee63637ce..a43088ec9f0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm +++ b/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm @@ -8,7 +8,7 @@ mob_class = MOB_CLASS_PLANT - faction = "plants" + faction = FACTION_PLANTS maxHealth = 15 health = 15 poison_resist = 1.0 @@ -30,4 +30,4 @@ meat_amount = 4 /decl/mob_organ_names/tomato - hit_zones = list("flesh", "leaf", "mouth") \ No newline at end of file + hit_zones = list("flesh", "leaf", "mouth") diff --git a/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm b/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm index be6af537c86..921e0c6ebc8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm +++ b/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm @@ -10,7 +10,7 @@ mob_class = MOB_CLASS_PLANT - faction = "plants" + faction = FACTION_PLANTS maxHealth = 250 health = 250 poison_resist = 1.0 @@ -46,4 +46,4 @@ qdel(src) /decl/mob_organ_names/tree - hit_zones = list("trunk", "branches", "twigs") \ No newline at end of file + hit_zones = list("trunk", "branches", "twigs") diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm b/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm index 74ab2324ca0..d821844edeb 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/slime.dm @@ -31,7 +31,7 @@ var/list/_slime_default_emotes = list( glow_intensity = 2 gender = NEUTER - faction = "slime" // Note that slimes are hostile to other slimes of different color regardless of faction (unless Unified). + faction = FACTION_SLIME // Note that slimes are hostile to other slimes of different color regardless of faction (unless Unified). maxHealth = 150 movement_cooldown = -1 pass_flags = PASSTABLE diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm index d3b569a113c..a29cbd9c867 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm @@ -777,7 +777,7 @@ // The RD's pet slime. /mob/living/simple_mob/slime/xenobio/rainbow/kendrick name = "Kendrick" - desc = "The Research Director's pet slime. It shifts colors constantly." + desc = "The " + JOB_RESEARCH_DIRECTOR + "'s pet slime. It shifts colors constantly." rainbow_core_candidate = FALSE // Doing pacify() in initialize() won't actually pacify the AI due to the ai_holder not existing due to parent initialize() not being called yet. // Instead lets just give them an ai_holder that does that for us. diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/xenobio.dm b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/xenobio.dm index d4e96c23d5d..ce86efdc614 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/xenobio.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/xenobio.dm @@ -172,7 +172,7 @@ var/datum/ai_holder/simple_mob/xenobio_slime/AI = ai_holder AI.pacify() - faction = "neutral" + faction = FACTION_NEUTRAL // If for whatever reason the mob AI (or player) decides to try to attack something anyways. melee_damage_upper = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/bat.dm b/code/modules/mob/living/simple_mob/subtypes/vore/bat.dm index 9d67740a5c6..0d682ffd2e5 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/bat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/bat.dm @@ -22,7 +22,7 @@ say_list_type = /datum/say_list/bat ai_holder_type = /datum/ai_holder/simple_mob/retaliate/edible - faction = "vampire" + faction = FACTION_VAMPIRE allow_mind_transfer = TRUE diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm b/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm index 9424d0b7949..b0404451d2f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm @@ -38,7 +38,7 @@ max_n2 = 0 minbodytemp = 0 - faction = "bee" + faction = FACTION_BEE var/poison_type = "spidertoxin" // The reagent that gets injected when it attacks, can be changed to different toxin. var/poison_chance = 10 // Chance for injection to occur. diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/bigdragon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/bigdragon.dm index fde53a7120f..47c99f1b4f9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/bigdragon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/bigdragon.dm @@ -94,7 +94,7 @@ I think I covered everything. vore_pounce_maxhealth = 125 vore_bump_emote = "tries to snap up" icon_dead = "dragon-dead" - faction = "dragon" + faction = FACTION_DRAGON glow_range = 7 glow_intensity = 3 glow_color = "#ED9200" @@ -189,7 +189,7 @@ I think I covered everything. /mob/living/simple_mob/vore/bigdragon/friendly ai_holder_type = /datum/ai_holder/simple_mob/healbelly/retaliate/dragon desc = "A large, intimidating creature reminiscent of the traditional idea of medieval fire breathing lizards. This one seems particularly relaxed and jovial." - faction = "neutral" + faction = FACTION_NEUTRAL player_msg = "You're a variant of the large dragon stripped of its firebreath attack (harm intent). You can still charge (disarm) and tail sweep (grab). Rest to heal slowly. Check your abilities tab for functions." norange = 1 noenrage = 1 @@ -249,7 +249,7 @@ I think I covered everything. verbs |= /mob/living/simple_mob/vore/bigdragon/proc/special_toggle //verbs |= /mob/living/simple_mob/vore/bigdragon/proc/set_name //Implemented upstream //verbs |= /mob/living/simple_mob/vore/bigdragon/proc/set_desc //Implemented upstream - faction = "neutral" + faction = FACTION_NEUTRAL /mob/living/simple_mob/vore/bigdragon/Initialize() ..() @@ -893,7 +893,7 @@ I think I covered everything. /mob/living/simple_mob/vore/bigdragon/do_tame(var/obj/O, var/mob/user) if(!user) return - if(faction == "neutral") + if(faction == FACTION_NEUTRAL) return //We're already friendly if(enraged || notame) say("NO FORGIVENESS") @@ -902,7 +902,7 @@ I think I covered everything. handle_tame_item(O, user) qdel(ai_holder) //Dragon goes to therapy - faction = "neutral" + faction = FACTION_NEUTRAL norange = 1 //Don't start fires while friendly vore_selected = gut2 //Just incase it eats someone right after being tamed ai_holder = new /datum/ai_holder/simple_mob/healbelly/retaliate/dragon(src) @@ -1047,7 +1047,7 @@ I think I covered everything. /mob/living/simple_mob/vore/bigdragon/proc/enrage(var/atom/movable/attacker) enraged = 1 norange = 0 - faction = "dragon" + faction = FACTION_DRAGON say("HAVE IT YOUR WAY THEN") qdel(ai_holder) var/datum/ai_holder/simple_mob/intentional/dragon/D = new /datum/ai_holder/simple_mob/intentional/dragon(src) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/catgirl.dm b/code/modules/mob/living/simple_mob/subtypes/vore/catgirl.dm index 96c31431236..233112cfe73 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/catgirl.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/catgirl.dm @@ -35,7 +35,7 @@ "catgirlbrown" ) - faction = "catgirl" + faction = FACTION_CATGIRL /mob/living/simple_mob/vore/catgirl/New() ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm b/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm index 6e4440a1489..d1dd8f0c538 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm @@ -21,7 +21,7 @@ say_list_type = /datum/say_list/cookiegirl ai_holder_type = /datum/ai_holder/simple_mob/passive/cookiegirl - faction = "cookiegirl" + faction = FACTION_COOKIEGIRL // Activate Noms! /mob/living/simple_mob/vore/cookiegirl @@ -55,4 +55,4 @@ /datum/ai_holder/simple_mob/passive/cookiegirl base_wander_delay = 8 - intelligence_level = AI_NORMAL //not sure why we have this, but I'm just porting. \ No newline at end of file + intelligence_level = AI_NORMAL //not sure why we have this, but I'm just porting. diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm index eb9a6199fdf..b9f58b315be 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm @@ -22,7 +22,7 @@ icon = 'icons/mob/vore64x32.dmi' has_eye_glow = TRUE - faction = "corrupt" + faction = FACTION_CORRUPT maxHealth = 200 health = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/cryptdrake.dm b/code/modules/mob/living/simple_mob/subtypes/vore/cryptdrake.dm index f6c1ab75ffd..8299939f9a0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/cryptdrake.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/cryptdrake.dm @@ -7,7 +7,7 @@ icon_living = "cryptdrake" icon_state = "cryptdrake" icon_rest = "cryptdrake" - faction = "dragon" + faction = FACTION_DRAGON old_x = -48 old_y = 0 vis_height = 92 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm index e2f32e3790d..ca9c9349e67 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm @@ -32,7 +32,7 @@ attacktext = list("mauled") - faction = "deathclaw" + faction = FACTION_DEATHCLAW maxHealth = 200 health = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm index 22d75d0ab45..5471175593d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm @@ -9,7 +9,7 @@ icon = 'icons/mob/demon_vr.dmi' vis_height = 47 - faction = "demon" + faction = FACTION_DEMON maxHealth = 30 health = 30 movement_cooldown = -2 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/devil.dm b/code/modules/mob/living/simple_mob/subtypes/vore/devil.dm index 2d945ea4c6b..26ebf4dc848 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/devil.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/devil.dm @@ -8,7 +8,7 @@ icon_living = "devil" icon_state = "devil" icon_rest = "devil" - faction = "devil" + faction = FACTION_DEVIL old_x = -16 old_y = 0 default_pixel_x = -16 @@ -264,4 +264,3 @@ else if(!stand_ground) ai_log("engage_target() : Target ([target]) too far away. Exiting.", AI_LOG_DEBUG) set_stance(STANCE_APPROACH) - diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm index c9c42899814..a3664c69ea6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm @@ -48,4 +48,4 @@ vore_icons = SA_ICON_LIVING /mob/living/simple_mob/vore/aggressive/dino/virgo3b - faction = "virgo3b" + faction = FACTION_VIRGO3B diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dominated_brain.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dominated_brain.dm index 6058a4320dd..a7c4296fd64 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dominated_brain.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dominated_brain.dm @@ -201,7 +201,7 @@ if(!pred.ckey) to_chat(prey, "\The [pred] isn't able to be dominated.") return - if(isrobot(pred) && jobban_isbanned(prey, "Cyborg")) + if(isrobot(pred) && jobban_isbanned(prey, JOB_CYBORG)) to_chat(prey, "Forces beyond your comprehension forbid you from taking control of [pred].") return if(prey.prey_controlled) @@ -437,7 +437,7 @@ if(!prey.ckey) to_chat(pred, "\The [prey] cannot take control.") return - if(isrobot(pred) && jobban_isbanned(prey, "Cyborg")) + if(isrobot(pred) && jobban_isbanned(prey, JOB_CYBORG)) to_chat(pred, "Forces beyond your comprehension prevent you from giving [prey] control.") return if(prey.prey_controlled) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm index 7c2ee03da4c..af876de009e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm @@ -8,7 +8,7 @@ icon = 'icons/mob/vore64x64.dmi' vis_height = 64 - faction = "dragon" + faction = FACTION_DRAGON maxHealth = 500 // Boss health = 500 see_in_dark = 8 @@ -92,7 +92,7 @@ catalogue_data = list(/datum/category_item/catalogue/fauna/phoron_dragon) maxHealth = 300 health = 300 - faction = "virgo3b" + faction = FACTION_VIRGO3B icon_dead = "phoron_dragon_dead" icon_living = "phoron_dragon" icon_state = "phoron_dragon" @@ -120,7 +120,7 @@ tt_desc = "Astra Draconinae" maxHealth = 300 health = 300 - faction = "dragon" + faction = FACTION_DRAGON icon_dead = "space_dragon_dead" icon_living = "space_dragon" icon_state = "space_dragon" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm index 7766b7fdc88..3b5476e464e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm @@ -33,7 +33,7 @@ icon_rest = "fennec_rest" icon = 'icons/mob/vore.dmi' - faction = "fennec" + faction = FACTION_FENNEC maxHealth = 30 health = 30 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm b/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm index d6924a090d7..c06ef9d3cf2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm @@ -8,7 +8,7 @@ icon_dead = "fennix_dead" icon = 'icons/mob/vore.dmi' - faction = "fennec" // Will protec other fenfens + faction = FACTION_FENNEC // Will protec other fenfens maxHealth = 60 health = 60 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm index bfef11e5046..b759d0147c0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/greatwolf.dm @@ -8,7 +8,7 @@ icon_living = "whitewolf" icon_state = "whitewolf" icon_rest = "whitewolf-rest" - faction = "sif" + faction = FACTION_SIF has_eye_glow = TRUE meat_amount = 40 //Big dog, lots of meat meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm b/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm index 2bcf95cf814..501e96e9e9a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm @@ -8,7 +8,7 @@ icon_dead = "horse-dead" icon = 'icons/mob/vore.dmi' - faction = "horse" + faction = FACTION_HORSE maxHealth = 60 health = 60 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/jelly.dm b/code/modules/mob/living/simple_mob/subtypes/vore/jelly.dm index 4a4ab6c1181..3e84d02a041 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/jelly.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/jelly.dm @@ -7,7 +7,7 @@ icon_state = "jelly" icon = 'icons/mob/vore.dmi' - faction = "virgo2" + faction = FACTION_VIRGO2 maxHealth = 50 health = 50 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/lamia.dm b/code/modules/mob/living/simple_mob/subtypes/vore/lamia.dm index 912ae09a096..ed91a897a8a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/lamia.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/lamia.dm @@ -24,7 +24,7 @@ default_pixel_x = -16 pixel_x = -16 pixel_y = 0 - faction = "lamia" + faction = FACTION_LAMIA // Vore tags vore_active = 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm index 1095bff7d6e..8b77865e23f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm @@ -8,7 +8,7 @@ icon_living = "leopardmander" icon_state = "leopardmander" icon_rest = "leopardmander-rest" - faction = "neutral" + faction = FACTION_NEUTRAL meat_amount = 40 //I mean... meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat old_x = -48 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/meowl.dm b/code/modules/mob/living/simple_mob/subtypes/vore/meowl.dm index 421a1dc64bd..62ab96e07ce 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/meowl.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/meowl.dm @@ -8,7 +8,7 @@ icon_living = "meowl" icon_state = "meowl" icon_rest = "meowl_rest" - faction = "meowl" + faction = FACTION_MEOWL friendly = list("nudges", "sniffs on", "rumbles softly at", "nuzzles") response_help = "pets" response_disarm = "shoves" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm index e6fee921b79..0b86aa2754f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm @@ -79,7 +79,7 @@ icon_living = "crate" icon = 'icons/obj/storage.dmi' - faction = "mimic" + faction = FACTION_MIMIC maxHealth = 125 health = 125 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Big.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Big.dm index 62c53af4d66..ebaf3bf7244 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Big.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Big.dm @@ -1,6 +1,6 @@ /mob/living/simple_mob/clowns/big tt_desc = "E Homo sapiens corydon horrificus" //this clown is stronk - faction = "clown" + faction = FACTION_CLOWN maxHealth = 200 health = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Clowns.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Clowns.dm index 78dd49c4ab1..3a9fce9fb06 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Clowns.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/Clowns.dm @@ -1,10 +1,10 @@ /mob/living/simple_mob/clowns/ tt_desc = "E Homo sapiens corydon" //this is a clown - faction = "clown" + faction = FACTION_CLOWN movement_sound = 'sound/effects/clownstep2.ogg' attack_sound = 'sound/effects/Whipcrack.ogg' - faction = "clown" + faction = FACTION_CLOWN maxHealth = 100 health = 100 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bus.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bus.dm index 6ecc2b5bb77..75782e987a2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bus.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/bus.dm @@ -1,6 +1,6 @@ /mob/living/simple_mob/clowns/big/c_shift tt_desc = "E Homo sapiens corydon horrificus" //this is a redspace clown - faction = "clown" + faction = FACTION_CLOWN /mob/living/simple_mob/clowns/big/c_shift/New() ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/honkelemental.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/honkelemental.dm index 66807e24a28..a326c65593e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/honkelemental.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/honkelemental.dm @@ -9,7 +9,7 @@ icon_gib = "generic_gib" vis_height = 96 - faction = "clown" + faction = FACTION_CLOWN loot_list = list(/obj/item/weapon/bikehorn = 100) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/regularclowns.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/regularclowns.dm index ba57b9eab69..ef47e68f78b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/regularclowns.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mobs_monsters/clowns/regularclowns.dm @@ -353,7 +353,7 @@ icon_gib = "generic_gib" vis_height = 32 - faction = "clown" + faction = FACTION_CLOWN loot_list = list(/obj/item/weapon/bikehorn = 100) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm b/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm index b4a7dc22253..9d1c215a2cb 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/oregrub.dm @@ -33,7 +33,7 @@ icon_living = "oregrub" icon_dead = "oregrub-dead" - faction = "grubs" + faction = FACTION_GRUBS maxHealth = 50 //oregrubs are quite hardy health = 50 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm index aca3e82b3a8..4efaf44b63b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm @@ -15,7 +15,7 @@ icon_living = "otie" icon_dead = "otie-dead" icon_rest = "otie_rest" - faction = "otie" + faction = FACTION_OTIE maxHealth = 150 health = 150 minbodytemp = 200 @@ -70,7 +70,7 @@ icon_living = "photie" icon_dead = "photie-dead" icon_rest = "photie_rest" - faction = "virgo3b" + faction = FACTION_VIRGO3B tame_chance = 5 // Only a 1 in 20 chance of success. It's feral. What do you expect? // Lazy way of making sure this otie survives outside. min_oxy = 0 @@ -98,7 +98,7 @@ icon_living = "hotie" icon_dead = "hotie-dead" icon_rest = "hotie_rest" - faction = "cult" + faction = FACTION_CULT tame_chance = 20 // Lazy way of making sure this otie survives outside. min_oxy = 0 @@ -115,7 +115,7 @@ /mob/living/simple_mob/vore/otie/red/friendly //gets the pet2tame feature and doesn't kill you right away name = "red otie" desc = "Seems this ominous looking longdog has been infused with wicked infernal forces. This one seems rather peaceful though." - faction = "neutral" + faction = FACTION_NEUTRAL tamed = 1 /mob/living/simple_mob/vore/otie/red/chubby //gets the pet2tame feature and doesn't kill you right away @@ -124,13 +124,13 @@ icon_state = "hotiec" icon_living = "hotiec" icon_rest = "hotiec_rest" - faction = "neutral" + faction = FACTION_NEUTRAL tamed = 1 /mob/living/simple_mob/vore/otie/friendly //gets the pet2tame feature and doesn't kill you right away name = "otie" desc = "The classic bioengineered longdog. This one might even tolerate you!" - faction = "neutral" + faction = FACTION_NEUTRAL tamed = 1 /mob/living/simple_mob/vore/otie/friendly/chubby @@ -146,7 +146,7 @@ icon_state = "cotie" icon_living = "cotie" icon_rest = "cotie_rest" - faction = "neutral" + faction = FACTION_NEUTRAL tamed = 1 /mob/living/simple_mob/vore/otie/cotie/chubby @@ -181,7 +181,7 @@ icon_living = "sotie" icon_rest = "sotie_rest" icon_dead = "sotie-dead" - faction = "neutral" + faction = FACTION_NEUTRAL maxHealth = 200 //armored or something health = 200 tamed = 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm b/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm index 78e01d66432..84651cab0ad 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/pakkun.dm @@ -24,7 +24,7 @@ icon_rest = "pakkun-rest" icon = 'icons/mob/vore.dmi' - faction = "pakkun" + faction = FACTION_PAKKUN movement_cooldown = 2 can_be_drop_pred = 1 //They can tongue vore. diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm index 5cdcac41690..13914a70157 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm @@ -10,7 +10,7 @@ icon = 'icons/mob/vore64x64.dmi' vis_height = 64 - faction = "panther" + faction = FACTION_PANTHER maxHealth = 200 health = 200 movement_cooldown = 0.5 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/peasant.dm b/code/modules/mob/living/simple_mob/subtypes/vore/peasant.dm index 1bd10e9ee1e..3448e7a755c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/peasant.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/peasant.dm @@ -28,7 +28,7 @@ "peasantmb" ) - faction = "peasant" + faction = FACTION_PEASANT /mob/living/simple_mob/vore/peasant/New() ..() @@ -69,4 +69,3 @@ B.escapechance = 15 B.selective_preference = DM_HOLD B.escape_stun = 5 - diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/plants.dm b/code/modules/mob/living/simple_mob/subtypes/vore/plants.dm index 1b027bd02c5..f2f3053c1c4 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/plants.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/plants.dm @@ -10,7 +10,7 @@ icon_living = "flytrap" icon_state = "flytrap" icon_rest = "flytrap" - faction = "plants" + faction = FACTION_PLANTS harm_intent_damage = 0 melee_damage_lower = 0 melee_damage_upper = 0 @@ -91,7 +91,7 @@ icon_living = "pitcher" icon_state = "pitcher" icon_rest = "pitcher" - faction = "plants" + faction = FACTION_PLANTS movement_cooldown = 0 harm_intent_damage = 0 melee_damage_lower = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm index baf40f32dd9..ecc4800a3f4 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm @@ -14,7 +14,7 @@ icon_rest = "rabbit_brown_rest" icon = 'icons/mob/vore.dmi' - faction = "rabbit" + faction = FACTION_RABBIT maxHealth = 30 health = 30 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/raptor.dm b/code/modules/mob/living/simple_mob/subtypes/vore/raptor.dm index 5ad3ffd2b8c..46525186828 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/raptor.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/raptor.dm @@ -7,7 +7,7 @@ icon_living = "raptorpurple" icon_state = "raptorpurple" icon_rest = "raptorpurple" - faction = "raptor" + faction = FACTION_RAPTOR meat_amount = 40 //Big dog, lots of meat meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat old_x = -48 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm index ea72824e422..11d686f3d2d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm @@ -28,7 +28,7 @@ icon_living = "rous" icon_dead = "rous-dead" icon_rest = "rous_rest" - faction = "mouse" + faction = FACTION_MOUSE icon = 'icons/mob/vore64x32.dmi' maxHealth = 150 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm b/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm index dc989894055..08841dd2d15 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm @@ -9,7 +9,7 @@ icon_rest = "wah_rest" icon = 'icons/mob/vore.dmi' - faction = "redpanda" //stop naming stuff vaguely + faction = FACTION_REDPANDA //stop naming stuff vaguely maxHealth = 30 health = 30 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/scel.dm b/code/modules/mob/living/simple_mob/subtypes/vore/scel.dm index 316ae35d285..1893dcfcc7b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/scel.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/scel.dm @@ -11,7 +11,7 @@ icon_living = "scel_orange" icon_state = "scel_orange" icon_rest = "scel_orange-rest" - faction = "scel" + faction = FACTION_SCEL old_x = -48 old_y = 0 vis_height = 92 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/scrubble.dm b/code/modules/mob/living/simple_mob/subtypes/vore/scrubble.dm index ed51603bf80..326ee5973cc 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/scrubble.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/scrubble.dm @@ -8,7 +8,7 @@ icon_living = "scrubble" icon_state = "scrubble" icon_rest = "scrubble-rest" - faction = "scrubble" + faction = FACTION_SCRUBBLE friendly = list("nudges", "sniffs on", "rumbles softly at", "nuzzles") response_help = "bumps" response_disarm = "shoves" @@ -140,4 +140,4 @@ if(!new_target) return null give_target(new_target) - return new_target \ No newline at end of file + return new_target diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm b/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm index 84b6f87efdd..b80d28b9fbc 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm @@ -18,7 +18,7 @@ icon_rest = "seagull" icon = 'icons/mob/vore.dmi' - faction = "seagull" + faction = FACTION_SEAGULL maxHealth = 25 health = 25 @@ -57,4 +57,4 @@ if(vore_fullness >= 2) movement_cooldown = 10 else if(movement_cooldown == 10) - movement_cooldown = initial(movement_cooldown) \ No newline at end of file + movement_cooldown = initial(movement_cooldown) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm index 4c8c0b6e47f..89628472b7f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm @@ -33,7 +33,7 @@ vore_eyes = TRUE custom_eye_color = "#00FFFF" - faction = "insects" + faction = FACTION_INSECTS maxHealth = 90 health = 90 see_in_dark = 8 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm index 6aed85c9561..7ebcd19d7a6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm @@ -36,7 +36,7 @@ vore_eyes = TRUE custom_eye_color = "#FF0000" - faction = "insects" + faction = FACTION_INSECTS maxHealth = 200 health = 200 see_in_dark = 8 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm index 03bd5b35db9..3c54c12639a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm @@ -5,7 +5,7 @@ icon = 'icons/mob/vore_shadekin.dmi' icon_state = "map_example" icon_living = "map_example" - faction = "shadekin" + faction = FACTION_SHADEKIN ui_icons = 'icons/mob/shadekin_hud.dmi' mob_class = MOB_CLASS_HUMANOID mob_bump_flag = HUMAN diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm index 75c8f94b3d7..38f397656f9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm @@ -8,7 +8,7 @@ icon_dead = "sheep-dead" icon = 'icons/mob/vore.dmi' - faction = "sheep" + faction = FACTION_SHEEP maxHealth = 40 health = 40 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm b/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm index aeba46b1ec4..26a262ce481 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm @@ -31,7 +31,7 @@ icon = 'icons/mob/vore64x64.dmi' vis_height = 64 - faction = "snake" + faction = FACTION_SNAKE maxHealth = 200 health = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm b/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm index 078da106367..b111ff283d0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/softdog.dm @@ -15,7 +15,7 @@ icon_rest = "woof_rest" icon = 'icons/mob/vore.dmi' - faction = "dog" + faction = FACTION_DOG maxHealth = 600 health = 600 movement_cooldown = -1 @@ -172,7 +172,7 @@ icon_rest = "cass_rest" ic_revivable = 0 - faction = "theatre" + faction = FACTION_THEATRE gender = PLURAL ai_holder_type = /datum/ai_holder/simple_mob/woof/cass diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm index 8cf651e69a6..24b8df89b57 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm @@ -24,7 +24,7 @@ List of things solar grubs should be able to do: icon_living = "solargrub" icon_dead = "solargrub-dead" - faction = "grubs" + faction = FACTION_GRUBS maxHealth = 50 //grubs can take a lot of harm health = 50 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm index 07e24050ba9..08f3da73154 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm @@ -20,7 +20,7 @@ var/global/list/grub_machine_overlays = list() meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat butchery_loot = list() // No hides - faction = "grubs" + faction = FACTION_GRUBS response_help = "pats" response_disarm = "nudges" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sonadile.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sonadile.dm index 30a37484dea..49cf20946f3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sonadile.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sonadile.dm @@ -8,7 +8,7 @@ icon_living = "sonadile" icon_state = "sonadile" icon_rest = "sonadile" - faction = "sonadile" + faction = FACTION_SONADILE old_x = -16 old_y = 0 default_pixel_x = -16 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/stalker.dm b/code/modules/mob/living/simple_mob/subtypes/vore/stalker.dm index 6e10ccdf600..876e857c0cf 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/stalker.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/stalker.dm @@ -8,7 +8,7 @@ icon_living = "stalker" icon_state = "stalker" icon_rest = "stalker-rest" - faction = "stalker" + faction = FACTION_STALKER old_x = -16 old_y = 0 default_pixel_x = -16 @@ -274,4 +274,3 @@ else if(!stand_ground) ai_log("engage_target() : Target ([target]) too far away. Exiting.", AI_LOG_DEBUG) set_stance(STANCE_APPROACH) - diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/succubi.dm b/code/modules/mob/living/simple_mob/subtypes/vore/succubi.dm index 057abb051f4..1032d3fc1fc 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/succubi.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/succubi.dm @@ -29,7 +29,7 @@ "succubusgingerclothed" ) - faction = "succubus" + faction = FACTION_SUCCUBUS /mob/living/simple_mob/vore/succubus/New() ..() @@ -115,4 +115,4 @@ "%pred gently rubs a finger over her %belly, the gentle pressure breaking your concentration and sending you sinking back into her form.", "Try as you might, you barely make an impression before %pred simply clenches with the most minimal effort, binding you back into her %belly.", "Unfortunately, %pred seems to have absolutely no intention of letting you go, and your futile effort goes nowhere.", - "Strain as you might, you can't keep up the effort long enough before you sink back into %pred's %belly.") \ No newline at end of file + "Strain as you might, you can't keep up the effort long enough before you sink back into %pred's %belly.") diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/vampire.dm b/code/modules/mob/living/simple_mob/subtypes/vore/vampire.dm index 96a760bd28a..ab7198912c0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/vampire.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/vampire.dm @@ -28,7 +28,7 @@ "countessnude" ) - faction = "vampire" + faction = FACTION_VAMPIRE /mob/living/simple_mob/vore/vampire/New() ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/vore_hostile.dm b/code/modules/mob/living/simple_mob/subtypes/vore/vore_hostile.dm index d0c3d1c6335..4f8eda62172 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/vore_hostile.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/vore_hostile.dm @@ -22,7 +22,7 @@ icon_rest = "abyss_lurker" vis_height = 64 - faction = "macrobacteria" + faction = FACTION_MACROBACTERIA maxHealth = 600 health = 600 movement_cooldown = 3 @@ -129,7 +129,7 @@ icon_rest = "filter" vis_height = 64 - faction = "macrobacteria" + faction = FACTION_MACROBACTERIA maxHealth = 600 health = 600 @@ -257,7 +257,7 @@ icon_rest = "cube" vis_height = 64 - faction = "macrobacteria" + faction = FACTION_MACROBACTERIA maxHealth = 500 health = 500 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm b/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm index 53e68d59a4d..db76f04435a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/weretiger.dm @@ -9,7 +9,7 @@ icon_rest = null icon = 'icons/mob/bigcat.dmi' - faction = "panther" + faction = FACTION_PANTHER maxHealth = 150 health = 150 movement_cooldown = -1 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm index a9d20b8cf9f..1003fa5cebd 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm @@ -143,7 +143,7 @@ icon_living = "rykka" icon_state = "rykka" icon_rest = "rykka_rest" - faction = "underdark" + faction = FACTION_UNDERDARK has_eye_glow = TRUE min_oxy = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolfgirl.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolfgirl.dm index cc5779da730..bb76da5e040 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolfgirl.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolfgirl.dm @@ -8,7 +8,7 @@ icon_dead = "wolfgirl-dead" icon = 'icons/mob/vore.dmi' - faction = "wolfgirl" + faction = FACTION_WOLFGIRL maxHealth = 30 health = 30 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolftaur.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolftaur.dm index e4e35e837c1..29ab5a478a3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolftaur.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolftaur.dm @@ -36,7 +36,7 @@ default_pixel_x = -16 pixel_x = -16 pixel_y = 0 - faction = "wolftaur" + faction = FACTION_WOLFTAUR /mob/living/simple_mob/vore/wolftaur/New() ..() @@ -155,4 +155,3 @@ icon_living = "wolftaurdark" icon_rest = "wolftaurdark_rest" icon_dead = "wolftaurdark-dead" - diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/xeno_vore.dm b/code/modules/mob/living/simple_mob/subtypes/vore/xeno_vore.dm index 9d673bd73b3..dc3b246cf74 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/xeno_vore.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/xeno_vore.dm @@ -24,7 +24,7 @@ icon = 'icons/mob/vore64x64.dmi' vis_height = 64 - faction = "xeno" + faction = FACTION_XENO maxHealth = 150 health = 150 see_in_dark = 10 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm b/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm index 50c1824a5ba..392fba99fde 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm @@ -238,7 +238,7 @@ // Override stuff for holodeck carp to make them not digest when set to safe! /mob/living/simple_mob/animal/space/carp/holographic/init_vore() . = ..() - var/safe = (faction == "neutral") + var/safe = (faction == FACTION_NEUTRAL) for(var/obj/belly/B as anything in vore_organs) B.digest_mode = safe ? DM_HOLD : vore_default_mode @@ -248,4 +248,4 @@ B.digest_mode = safe ? DM_HOLD : vore_default_mode /mob/living/simple_mob/animal/passive/mouse - faction = "mouse" //Giving mice a faction so certain mobs can get along with them. + faction = FACTION_MOUSE //Giving mice a faction so certain mobs can get along with them. diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 567bb3541c2..514dce91ff6 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -671,7 +671,7 @@ return stat == DEAD /mob/proc/is_mechanical() - if(mind && (mind.assigned_role == "Cyborg" || mind.assigned_role == "AI")) + if(mind && (mind.assigned_role == JOB_CYBORG || mind.assigned_role == JOB_AI)) return 1 return istype(src, /mob/living/silicon) || get_species() == "Machine" diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index ae88b489f7b..83cea738c43 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -153,7 +153,7 @@ var/voice_name = "unidentifiable voice" - var/faction = "neutral" //Used for checking whether hostile simple animals will attack you, possibly more stuff later + var/faction = FACTION_NEUTRAL //Used for checking whether hostile simple animals will attack you, possibly more stuff later var/can_be_antagged = FALSE // To prevent pAIs/mice/etc from getting antag in autotraitor and future auto- modes. Uses inheritance instead of a bunch of typechecks. var/away_from_keyboard = FALSE //are we at, or away, from our keyboard? diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 37e447761ec..8b0b76a0b66 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -556,7 +556,7 @@ if(!(client.prefs.GetJobDepartment(job, 1) & job.flag)) if(!(client.prefs.GetJobDepartment(job, 2) & job.flag)) if(!(client.prefs.GetJobDepartment(job, 3) & job.flag)) - if(!show_hidden_jobs && job.title != "Assistant") // Assistant is always an option + if(!show_hidden_jobs && job.title != JOB_ALT_ASSISTANT) // Assistant is always an option continue var/active = 0 // Only players with the job assigned and AFK for less than 10 minutes count as active @@ -609,7 +609,7 @@ if(mind) mind.active = 0 //we wish to transfer the key manually // VOREStation edit to disable the destructive forced renaming for our responsible whitelist clowns. - //if(mind.assigned_role == "Clown") //give them a clownname if they are a clown + //if(mind.assigned_role == JOB_CLOWN) //give them a clownname if they are a clown // new_character.real_name = pick(clown_names) //I hate this being here of all places but unfortunately dna is based on real_name! // new_character.rename_self("clown") mind.original = new_character diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 6a18c482dce..54a5f2cf296 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -204,7 +204,7 @@ var/datum/job/previewJob // Determine what job is marked as 'High' priority, and dress them up as such. if(job_civilian_low & ASSISTANT) - previewJob = job_master.GetJob(USELESS_JOB) + previewJob = job_master.GetJob(JOB_ALT_VISITOR) else if(ispAI(client.mob)) //VOREStation Edit! - pAIs shouldn't wear job gear~! //Don't do anything! else @@ -268,7 +268,7 @@ var/datum/job/highJob // Determine what job is marked as 'High' priority, and dress them up as such. if(job_civilian_low & ASSISTANT) - highJob = job_master.GetJob("Assistant") + highJob = job_master.GetJob(JOB_ALT_ASSISTANT) else for(var/datum/job/job in job_master.occupations) var/job_flag diff --git a/code/modules/mob/new_player/skill.dm b/code/modules/mob/new_player/skill.dm index e1a0b50b7fc..e779ed04b28 100644 --- a/code/modules/mob/new_player/skill.dm +++ b/code/modules/mob/new_player/skill.dm @@ -17,7 +17,7 @@ var/list/SKILL_ENGINEER = list("field" = "Engineering", "EVA" = SKILL_BASIC, "co var/list/SKILL_ORGAN_ROBOTICIST = list("field" = "Science", "devices" = SKILL_ADEPT, "electrical" = SKILL_BASIC, "computer" = SKILL_ADEPT, "anatomy" = SKILL_BASIC) var/list/SKILL_SECURITY_OFFICER = list("field" = "Security", "combat" = SKILL_BASIC, "weapons" = SKILL_ADEPT, "law" = SKILL_ADEPT, "forensics" = SKILL_BASIC) var/list/SKILL_CHEMIST = list("field" = "Science", "chemistry" = SKILL_ADEPT, "science" = SKILL_ADEPT, "medical" = SKILL_BASIC, "devices" = SKILL_BASIC) -var/global/list/SKILL_PRE = list("Engineer" = SKILL_ENGINEER, "Roboticist" = SKILL_ORGAN_ROBOTICIST, "Security Officer" = SKILL_SECURITY_OFFICER, "Chemist" = SKILL_CHEMIST) +var/global/list/SKILL_PRE = list(JOB_ENGINEER = SKILL_ENGINEER, JOB_ROBOTICIST = SKILL_ORGAN_ROBOTICIST, JOB_SECURITY_OFFICER = SKILL_SECURITY_OFFICER, JOB_CHEMIST = SKILL_CHEMIST) /datum/skill/management ID = "management" diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 63a04418189..03075d75b8d 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -79,7 +79,7 @@ if(move) var/obj/loc_landmark for(var/obj/effect/landmark/start/sloc in landmarks_list) - if (sloc.name != "AI") + if (sloc.name != JOB_AI) continue if ((locate(/mob/living) in sloc.loc) || (locate(/obj/structure/AIcore) in sloc.loc)) continue @@ -93,7 +93,7 @@ if (!loc_landmark) to_chat(src, "Oh god sorry we can't find an unoccupied AI spawn location, so we're spawning you on top of someone.") for(var/obj/effect/landmark/start/sloc in landmarks_list) - if (sloc.name == "AI") + if (sloc.name == JOB_AI) loc_landmark = sloc newloc = loc_landmark.loc @@ -162,7 +162,7 @@ if(mind) //TODO mind.transfer_to(O) - if(O.mind.assigned_role == "Cyborg") + if(O.mind.assigned_role == JOB_CYBORG) O.mind.original = O else if(mind && mind.special_role) O.mind.store_memory("In case you look at this after being borged, the objectives are only here until I find a way to make them not show up for you, as I can't simply delete them without screwing up round-end reporting. --NeoFite") @@ -170,11 +170,11 @@ O.key = key O.loc = loc - O.job = "Cyborg" - if(O.mind.assigned_role == "Cyborg") - if(O.mind.role_alt_title == "Robot") + O.job = JOB_CYBORG + if(O.mind.assigned_role == JOB_CYBORG) + if(O.mind.role_alt_title == JOB_ALT_ROBOT) O.mmi = new /obj/item/device/mmi/digital/posibrain(O) - else if(O.mind.role_alt_title == "Drone") + else if(O.mind.role_alt_title == JOB_ALT_DRONE) O.mmi = new /obj/item/device/mmi/digital/robot(O) else O.mmi = new /obj/item/device/mmi(O) diff --git a/code/modules/modular_computers/file_system/program.dm b/code/modules/modular_computers/file_system/program.dm index 905a6434be7..8de2ea1a931 100644 --- a/code/modules/modular_computers/file_system/program.dm +++ b/code/modules/modular_computers/file_system/program.dm @@ -121,7 +121,7 @@ to_chat(user, "\The [computer] flashes an \"RFID Error - Unable to scan ID\" warning.") return 0 - if(access_to_check in I.access) + if(access_to_check in I.GetAccess()) return 1 else if(loud) to_chat(user, "\The [computer] flashes an \"Access Denied\" warning.") diff --git a/code/modules/modular_computers/file_system/programs/antagonist/access_decrypter.dm b/code/modules/modular_computers/file_system/programs/antagonist/access_decrypter.dm index 11547e34265..4dbdc015fdf 100644 --- a/code/modules/modular_computers/file_system/programs/antagonist/access_decrypter.dm +++ b/code/modules/modular_computers/file_system/programs/antagonist/access_decrypter.dm @@ -100,7 +100,7 @@ accesses.Add(list(list( "desc" = replacetext(get_access_desc(access), " ", " "), "ref" = access, - "allowed" = (access in id_card.access) ? 1 : 0 + "allowed" = (access in id_card.GetAccess()) ? 1 : 0 ))) regions.Add(list(list( @@ -109,4 +109,4 @@ ))) data["regions"] = regions - return data \ No newline at end of file + return data diff --git a/code/modules/modular_computers/file_system/programs/research/email_administration.dm b/code/modules/modular_computers/file_system/programs/research/email_administration.dm index fbcaf7df1b1..6b8ff68b233 100644 --- a/code/modules/modular_computers/file_system/programs/research/email_administration.dm +++ b/code/modules/modular_computers/file_system/programs/research/email_administration.dm @@ -67,7 +67,7 @@ // High security - can only be operated when the user has an ID with access on them. var/obj/item/weapon/card/id/I = usr.GetIdCard() - if(!istype(I) || !(access_network in I.access)) + if(!istype(I) || !(access_network in I.GetAccess())) return TRUE switch(action) diff --git a/code/modules/modular_computers/file_system/programs/security/digitalwarrant.dm b/code/modules/modular_computers/file_system/programs/security/digitalwarrant.dm index eea7f5e306d..05bbb55f1db 100644 --- a/code/modules/modular_computers/file_system/programs/security/digitalwarrant.dm +++ b/code/modules/modular_computers/file_system/programs/security/digitalwarrant.dm @@ -73,7 +73,7 @@ var/warrant_uid = 0 // which also use RFID scanning to allow or disallow access to some functions. Anyone can view warrants, editing requires ID. This also prevents situations where you show a tablet // to someone who is to be arrested, which allows them to change the stuff there. var/obj/item/weapon/card/id/I = usr.GetIdCard() - if(!istype(I) || !I.registered_name || !(access_security in I.access)) + if(!istype(I) || !I.registered_name || !(access_security in I.GetAccess())) to_chat(usr, "Authentication error: Unable to locate ID with appropriate access to allow this operation.") return @@ -136,7 +136,7 @@ var/warrant_uid = 0 if("editwarrantauth") . = TRUE - if(!(access_hos in I.access)) // VOREStation edit begin + if(!(access_hos in I.GetAccess())) // VOREStation edit begin to_chat(usr, "You don't have the access to do this!") return // VOREStation edit end activewarrant.fields["auth"] = "[I.registered_name] - [I.assignment ? I.assignment : "(Unknown)"]" diff --git a/code/modules/paperwork/faxmachine.dm b/code/modules/paperwork/faxmachine.dm index f3adcb28d3d..0d8194e3d7b 100644 --- a/code/modules/paperwork/faxmachine.dm +++ b/code/modules/paperwork/faxmachine.dm @@ -197,7 +197,7 @@ var/list/adminfaxes = list() //cache for faxes that have been sent to admins rank = scan.assignment else if(login_type == LOGIN_TYPE_AI && isAI(usr)) authenticated = usr.name - rank = "AI" + rank = JOB_AI else if(login_type == LOGIN_TYPE_ROBOT && isrobot(usr)) authenticated = usr.name var/mob/living/silicon/robot/R = usr diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index 05c0b0a289d..41727e835a4 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -26,7 +26,7 @@ icon_state = "folder_white" /obj/item/weapon/folder/blue_captain - desc = "A blue folder with Site Manager markings." + desc = "A blue folder with " + JOB_SITE_MANAGER + " markings." icon_state = "folder_captain" /obj/item/weapon/folder/blue_hop diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index cf74c4ec646..42978418e00 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -517,7 +517,7 @@ /obj/item/weapon/paper/attackby(obj/item/weapon/P as obj, mob/user as mob) ..() var/clown = 0 - if(user.mind && (user.mind.assigned_role == "Clown")) + if(user.mind && (user.mind.assigned_role == JOB_CLOWN)) clown = 1 if(istype(P, /obj/item/weapon/tape_roll)) @@ -662,7 +662,7 @@ /obj/item/weapon/paper/courtroom name = "A Crash Course in Legal SOP on SS13" - info = "Roles:
    \nThe Detective is basically the investigator and prosecutor.
    \nThe Staff Assistant can perform these functions with written authority from the Detective.
    \nThe Site Manager/HoP/Warden is ct as the judicial authority.
    \nThe Security Officers are responsible for executing warrants, security during trial, and prisoner transport.
    \n
    \nInvestigative Phase:
    \nAfter the crime has been committed the Detective's job is to gather evidence and try to ascertain not only who did it but what happened. He must take special care to catalogue everything and don't leave anything out. Write out all the evidence on paper. Make sure you take an appropriate number of fingerprints. IF he must ask someone questions he has permission to confront them. If the person refuses he can ask a judicial authority to write a subpoena for questioning. If again he fails to respond then that person is to be jailed as insubordinate and obstructing justice. Said person will be released after he cooperates.
    \n
    \nONCE the FT has a clear idea as to who the criminal is he is to write an arrest warrant on the piece of paper. IT MUST LIST THE CHARGES. The FT is to then go to the judicial authority and explain a small version of his case. If the case is moderately acceptable the authority should sign it. Security must then execute said warrant.
    \n
    \nPre-Pre-Trial Phase:
    \nNow a legal representative must be presented to the defendant if said defendant requests one. That person and the defendant are then to be given time to meet (in the jail IS ACCEPTABLE). The defendant and his lawyer are then to be given a copy of all the evidence that will be presented at trial (rewriting it all on paper is fine). THIS IS CALLED THE DISCOVERY PACK. With a few exceptions, THIS IS THE ONLY EVIDENCE BOTH SIDES MAY USE AT TRIAL. IF the prosecution will be seeking the death penalty it MUST be stated at this time. ALSO if the defense will be seeking not guilty by mental defect it must state this at this time to allow ample time for examination.
    \nNow at this time each side is to compile a list of witnesses. By default, the defendant is on both lists regardless of anything else. Also the defense and prosecution can compile more evidence beforehand BUT in order for it to be used the evidence MUST also be given to the other side.\nThe defense has time to compile motions against some evidence here.
    \nPossible Motions:
    \n1. Invalidate Evidence- Something with the evidence is wrong and the evidence is to be thrown out. This includes irrelevance or corrupt security.
    \n2. Free Movement- Basically the defendant is to be kept uncuffed before and during the trial.
    \n3. Subpoena Witness- If the defense presents god reasons for needing a witness but said person fails to cooperate then a subpoena is issued.
    \n4. Drop the Charges- Not enough evidence is there for a trial so the charges are to be dropped. The FT CAN RETRY but the judicial authority must carefully reexamine the new evidence.
    \n5. Declare Incompetent- Basically the defendant is insane. Once this is granted a medical official is to examine the patient. If he is indeed insane he is to be placed under care of the medical staff until he is deemed competent to stand trial.
    \n
    \nALL SIDES MOVE TO A COURTROOM
    \nPre-Trial Hearings:
    \nA judicial authority and the 2 sides are to meet in the trial room. NO ONE ELSE BESIDES A SECURITY DETAIL IS TO BE PRESENT. The defense submits a plea. If the plea is guilty then proceed directly to sentencing phase. Now the sides each present their motions to the judicial authority. He rules on them. Each side can debate each motion. Then the judicial authority gets a list of crew members. He first gets a chance to look at them all and pick out acceptable and available jurors. Those jurors are then called over. Each side can ask a few questions and dismiss jurors they find too biased. HOWEVER before dismissal the judicial authority MUST agree to the reasoning.
    \n
    \nThe Trial:
    \nThe trial has three phases.
    \n1. Opening Arguments- Each side can give a short speech. They may not present ANY evidence.
    \n2. Witness Calling/Evidence Presentation- The prosecution goes first and is able to call the witnesses on his approved list in any order. He can recall them if necessary. During the questioning the lawyer may use the evidence in the questions to help prove a point. After every witness the other side has a chance to cross-examine. After both sides are done questioning a witness the prosecution can present another or recall one (even the EXACT same one again!). After prosecution is done the defense can call witnesses. After the initial cases are presented both sides are free to call witnesses on either list.
    \nFINALLY once both sides are done calling witnesses we move onto the next phase.
    \n3. Closing Arguments- Same as opening.
    \nThe jury then deliberates IN PRIVATE. THEY MUST ALL AGREE on a verdict. REMEMBER: They mix between some charges being guilty and others not guilty (IE if you supposedly killed someone with a gun and you unfortunately picked up a gun without authorization then you CAN be found not guilty of murder BUT guilty of possession of illegal weaponry.). Once they have agreed they present their verdict. If unable to reach a verdict and feel they will never they call a deadlocked jury and we restart at Pre-Trial phase with an entirely new set of jurors.
    \n
    \nSentencing Phase:
    \nIf the death penalty was sought (you MUST have gone through a trial for death penalty) then skip to the second part.
    \nI. Each side can present more evidence/witnesses in any order. There is NO ban on emotional aspects or anything. The prosecution is to submit a suggested penalty. After all the sides are done then the judicial authority is to give a sentence.
    \nII. The jury stays and does the same thing as I. Their sole job is to determine if the death penalty is applicable. If NOT then the judge selects a sentence.
    \n
    \nTADA you're done. Security then executes the sentence and adds the applicable convictions to the person's record.
    \n" + info = "Roles:
    \nThe " + JOB_DETECTIVE + " is basically the investigator and prosecutor.
    \nThe Staff Assistant can perform these functions with written authority from the " + JOB_DETECTIVE + ".
    \nThe " + JOB_SITE_MANAGER + "/HoP/" + JOB_WARDEN + " is ct as the judicial authority.
    \nThe " + JOB_SECURITY_OFFICER + "s are responsible for executing warrants, security during trial, and prisoner transport.
    \n
    \nInvestigative Phase:
    \nAfter the crime has been committed the " + JOB_DETECTIVE + "'s job is to gather evidence and try to ascertain not only who did it but what happened. He must take special care to catalogue everything and don't leave anything out. Write out all the evidence on paper. Make sure you take an appropriate number of fingerprints. IF he must ask someone questions he has permission to confront them. If the person refuses he can ask a judicial authority to write a subpoena for questioning. If again he fails to respond then that person is to be jailed as insubordinate and obstructing justice. Said person will be released after he cooperates.
    \n
    \nONCE the FT has a clear idea as to who the criminal is he is to write an arrest warrant on the piece of paper. IT MUST LIST THE CHARGES. The FT is to then go to the judicial authority and explain a small version of his case. If the case is moderately acceptable the authority should sign it. Security must then execute said warrant.
    \n
    \nPre-Pre-Trial Phase:
    \nNow a legal representative must be presented to the defendant if said defendant requests one. That person and the defendant are then to be given time to meet (in the jail IS ACCEPTABLE). The defendant and his lawyer are then to be given a copy of all the evidence that will be presented at trial (rewriting it all on paper is fine). THIS IS CALLED THE DISCOVERY PACK. With a few exceptions, THIS IS THE ONLY EVIDENCE BOTH SIDES MAY USE AT TRIAL. IF the prosecution will be seeking the death penalty it MUST be stated at this time. ALSO if the defense will be seeking not guilty by mental defect it must state this at this time to allow ample time for examination.
    \nNow at this time each side is to compile a list of witnesses. By default, the defendant is on both lists regardless of anything else. Also the defense and prosecution can compile more evidence beforehand BUT in order for it to be used the evidence MUST also be given to the other side.\nThe defense has time to compile motions against some evidence here.
    \nPossible Motions:
    \n1. Invalidate Evidence- Something with the evidence is wrong and the evidence is to be thrown out. This includes irrelevance or corrupt security.
    \n2. Free Movement- Basically the defendant is to be kept uncuffed before and during the trial.
    \n3. Subpoena Witness- If the defense presents god reasons for needing a witness but said person fails to cooperate then a subpoena is issued.
    \n4. Drop the Charges- Not enough evidence is there for a trial so the charges are to be dropped. The FT CAN RETRY but the judicial authority must carefully reexamine the new evidence.
    \n5. Declare Incompetent- Basically the defendant is insane. Once this is granted a medical official is to examine the patient. If he is indeed insane he is to be placed under care of the medical staff until he is deemed competent to stand trial.
    \n
    \nALL SIDES MOVE TO A COURTROOM
    \nPre-Trial Hearings:
    \nA judicial authority and the 2 sides are to meet in the trial room. NO ONE ELSE BESIDES A SECURITY DETAIL IS TO BE PRESENT. The defense submits a plea. If the plea is guilty then proceed directly to sentencing phase. Now the sides each present their motions to the judicial authority. He rules on them. Each side can debate each motion. Then the judicial authority gets a list of crew members. He first gets a chance to look at them all and pick out acceptable and available jurors. Those jurors are then called over. Each side can ask a few questions and dismiss jurors they find too biased. HOWEVER before dismissal the judicial authority MUST agree to the reasoning.
    \n
    \nThe Trial:
    \nThe trial has three phases.
    \n1. Opening Arguments- Each side can give a short speech. They may not present ANY evidence.
    \n2. Witness Calling/Evidence Presentation- The prosecution goes first and is able to call the witnesses on his approved list in any order. He can recall them if necessary. During the questioning the lawyer may use the evidence in the questions to help prove a point. After every witness the other side has a chance to cross-examine. After both sides are done questioning a witness the prosecution can present another or recall one (even the EXACT same one again!). After prosecution is done the defense can call witnesses. After the initial cases are presented both sides are free to call witnesses on either list.
    \nFINALLY once both sides are done calling witnesses we move onto the next phase.
    \n3. Closing Arguments- Same as opening.
    \nThe jury then deliberates IN PRIVATE. THEY MUST ALL AGREE on a verdict. REMEMBER: They mix between some charges being guilty and others not guilty (IE if you supposedly killed someone with a gun and you unfortunately picked up a gun without authorization then you CAN be found not guilty of murder BUT guilty of possession of illegal weaponry.). Once they have agreed they present their verdict. If unable to reach a verdict and feel they will never they call a deadlocked jury and we restart at Pre-Trial phase with an entirely new set of jurors.
    \n
    \nSentencing Phase:
    \nIf the death penalty was sought (you MUST have gone through a trial for death penalty) then skip to the second part.
    \nI. Each side can present more evidence/witnesses in any order. There is NO ban on emotional aspects or anything. The prosecution is to submit a suggested penalty. After all the sides are done then the judicial authority is to give a sentence.
    \nII. The jury stays and does the same thing as I. Their sole job is to determine if the death penalty is applicable. If NOT then the judge selects a sentence.
    \n
    \nTADA you're done. Security then executes the sentence and adds the applicable convictions to the person's record.
    \n" /obj/item/weapon/paper/hydroponics name = "Greetings from Billy Bob" @@ -679,7 +679,7 @@ /obj/item/weapon/paper/jobs name = "Job Information" - info = "Information on all formal jobs that can be assigned on Space Station 13 can be found on this document.
    \nThe data will be in the following form.
    \nGenerally lower ranking positions come first in this list.
    \n
    \nJob Name general access>lab access-engine access-systems access (atmosphere control)
    \n\tJob Description
    \nJob Duties (in no particular order)
    \nTips (where applicable)
    \n
    \nResearch Assistant 1>1-0-0
    \n\tThis is probably the lowest level position. Anyone who enters the space station after the initial job\nassignment will automatically receive this position. Access with this is restricted. Head of Personnel should\nappropriate the correct level of assistance.
    \n1. Assist the researchers.
    \n2. Clean up the labs.
    \n3. Prepare materials.
    \n
    \nStaff Assistant 2>0-0-0
    \n\tThis position assists the security officer in his duties. The staff assisstants should primarily br\npatrolling the ship waiting until they are needed to maintain ship safety.\n(Addendum: Updated/Elevated Security Protocols admit issuing of low level weapons to security personnel)
    \n1. Patrol ship/Guard key areas
    \n2. Assist security officer
    \n3. Perform other security duties.
    \n
    \nTechnical Assistant 1>0-0-1
    \n\tThis is yet another low level position. The technical assistant helps the engineer and the statian\ntechnician with the upkeep and maintenance of the station. This job is very important because it usually\ngets to be a heavy workload on station technician and these helpers will alleviate that.
    \n1. Assist Station technician and Engineers.
    \n2. Perform general maintenance of station.
    \n3. Prepare materials.
    \n
    \nMedical Assistant 1>1-0-0
    \n\tThis is the fourth position yet it is slightly less common. This position doesn't have much power\noutside of the med bay. Consider this position like a nurse who helps to upkeep medical records and the\nmaterials (filling syringes and checking vitals)
    \n1. Assist the medical personnel.
    \n2. Update medical files.
    \n3. Prepare materials for medical operations.
    \n
    \nResearch Technician 2>3-0-0
    \n\tThis job is primarily a step up from research assistant. These people generally do not get their own lab\nbut are more hands on in the experimentation process. At this level they are permitted to work as consultants to\nthe others formally.
    \n1. Inform superiors of research.
    \n2. Perform research alongside of official researchers.
    \n
    \nDetective 3>2-0-0
    \n\tThis job is in most cases slightly boring at best. Their sole duty is to\nperform investigations of crine scenes and analysis of the crime scene. This\nalleviates SOME of the burden from the security officer. This person's duty\nis to draw conclusions as to what happened and testify in court. Said person\nalso should stroe the evidence ly.
    \n1. Perform crime-scene investigations/draw conclusions.
    \n2. Store and catalogue evidence properly.
    \n3. Testify to superiors/inquieries on findings.
    \n
    \nStation Technician 2>0-2-3
    \n\tPeople assigned to this position must work to make sure all the systems aboard Space Station 13 are operable.\nThey should primarily work in the computer lab and repairing faulty equipment. They should work with the\natmospheric technician.
    \n1. Maintain SS13 systems.
    \n2. Repair equipment.
    \n
    \nAtmospheric Technician 3>0-0-4
    \n\tThese people should primarily work in the atmospheric control center and lab. They have the very important\njob of maintaining the delicate atmosphere on SS13.
    \n1. Maintain atmosphere on SS13
    \n2. Research atmospheres on the space station. (safely please!)
    \n
    \nEngineer 2>1-3-0
    \n\tPeople working as this should generally have detailed knowledge as to how the propulsion systems on SS13\nwork. They are one of the few classes that have unrestricted access to the engine area.
    \n1. Upkeep the engine.
    \n2. Prevent fires in the engine.
    \n3. Maintain a safe orbit.
    \n
    \nMedical Researcher 2>5-0-0
    \n\tThis position may need a little clarification. Their duty is to make sure that all experiments are safe and\nto conduct experiments that may help to improve the station. They will be generally idle until a new laboratory\nis constructed.
    \n1. Make sure the station is kept safe.
    \n2. Research medical properties of materials studied of Space Station 13.
    \n
    \nScientist 2>5-0-0
    \n\tThese people study the properties, particularly the toxic properties, of materials handled on SS13.\nTechnically they can also be called Phoron Technicians as phoron is the material they routinly handle.
    \n1. Research phoron
    \n2. Make sure all phoron is properly handled.
    \n
    \nMedical Doctor (Officer) 2>0-0-0
    \n\tPeople working this job should primarily stay in the medical area. They should make sure everyone goes to\nthe medical bay for treatment and examination. Also they should make sure that medical supplies are kept in\norder.
    \n1. Heal wounded people.
    \n2. Perform examinations of all personnel.
    \n3. Moniter usage of medical equipment.
    \n
    \nSecurity Officer 3>0-0-0
    \n\tThese people should attempt to keep the peace inside the station and make sure the station is kept safe. One\nside duty is to assist in repairing the station. They also work like general maintenance personnel. They are not\ngiven a weapon and must use their own resources.
    \n(Addendum: Updated/Elevated Security Protocols admit issuing of weapons to security personnel)
    \n1. Maintain order.
    \n2. Assist others.
    \n3. Repair structural problems.
    \n
    \nHead of Security 4>5-2-2
    \n\tPeople assigned as Head of Security should issue orders to the security staff. They should\nalso carefully moderate the usage of all security equipment. All security matters should be reported to this person.
    \n1. Oversee security.
    \n2. Assign patrol duties.
    \n3. Protect the station and staff.
    \n
    \nHead of Personnel 4>4-2-2
    \n\tPeople assigned as head of personnel will find themselves moderating all actions done by personnel. \nAlso they have the ability to assign jobs and access levels.
    \n1. Assign duties.
    \n2. Moderate personnel.
    \n3. Moderate research.
    \n
    \nSite Manager 5>5-5-5 (unrestricted station wide access)
    \n\tThis is the highest position youi can aquire on Space Station 13. They are allowed anywhere inside the\nspace station and therefore should protect their ID card. They also have the ability to assign positions\nand access levels. They should not abuse their power.
    \n1. Assign all positions on SS13
    \n2. Inspect the station for any problems.
    \n3. Perform administrative duties.
    \n" + info = "Information on all formal jobs that can be assigned on Space Station 13 can be found on this document.
    \nThe data will be in the following form.
    \nGenerally lower ranking positions come first in this list.
    \n
    \nJob Name general access>lab access-engine access-systems access (atmosphere control)
    \n\tJob Description
    \nJob Duties (in no particular order)
    \nTips (where applicable)
    \n
    \nResearch Assistant 1>1-0-0
    \n\tThis is probably the lowest level position. Anyone who enters the space station after the initial job\nassignment will automatically receive this position. Access with this is restricted. Head of Personnel should\nappropriate the correct level of assistance.
    \n1. Assist the researchers.
    \n2. Clean up the labs.
    \n3. Prepare materials.
    \n
    \nStaff Assistant 2>0-0-0
    \n\tThis position assists the security officer in his duties. The staff assisstants should primarily br\npatrolling the ship waiting until they are needed to maintain ship safety.\n(Addendum: Updated/Elevated Security Protocols admit issuing of low level weapons to security personnel)
    \n1. Patrol ship/Guard key areas
    \n2. Assist security officer
    \n3. Perform other security duties.
    \n
    \n" + JOB_ALT_TECHNICAL_ASSISTANT + " 1>0-0-1
    \n\tThis is yet another low level position. The technical assistant helps the engineer and the statian\ntechnician with the upkeep and maintenance of the station. This job is very important because it usually\ngets to be a heavy workload on station technician and these helpers will alleviate that.
    \n1. Assist Station technician and Engineers.
    \n2. Perform general maintenance of station.
    \n3. Prepare materials.
    \n
    \nMedical Assistant 1>1-0-0
    \n\tThis is the fourth position yet it is slightly less common. This position doesn't have much power\noutside of the med bay. Consider this position like a nurse who helps to upkeep medical records and the\nmaterials (filling syringes and checking vitals)
    \n1. Assist the medical personnel.
    \n2. Update medical files.
    \n3. Prepare materials for medical operations.
    \n
    \nResearch Technician 2>3-0-0
    \n\tThis job is primarily a step up from research assistant. These people generally do not get their own lab\nbut are more hands on in the experimentation process. At this level they are permitted to work as consultants to\nthe others formally.
    \n1. Inform superiors of research.
    \n2. Perform research alongside of official researchers.
    \n
    \n" + JOB_DETECTIVE + " 3>2-0-0
    \n\tThis job is in most cases slightly boring at best. Their sole duty is to\nperform investigations of crine scenes and analysis of the crime scene. This\nalleviates SOME of the burden from the security officer. This person's duty\nis to draw conclusions as to what happened and testify in court. Said person\nalso should stroe the evidence ly.
    \n1. Perform crime-scene investigations/draw conclusions.
    \n2. Store and catalogue evidence properly.
    \n3. Testify to superiors/inquieries on findings.
    \n
    \nStation Technician 2>0-2-3
    \n\tPeople assigned to this position must work to make sure all the systems aboard Space Station 13 are operable.\nThey should primarily work in the computer lab and repairing faulty equipment. They should work with the\natmospheric technician.
    \n1. Maintain SS13 systems.
    \n2. Repair equipment.
    \n
    \n" + JOB_ATMOSPHERIC_TECHNICIAN + " 3>0-0-4
    \n\tThese people should primarily work in the atmospheric control center and lab. They have the very important\njob of maintaining the delicate atmosphere on SS13.
    \n1. Maintain atmosphere on SS13
    \n2. Research atmospheres on the space station. (safely please!)
    \n
    \n" + JOB_ENGINEER + " 2>1-3-0
    \n\tPeople working as this should generally have detailed knowledge as to how the propulsion systems on SS13\nwork. They are one of the few classes that have unrestricted access to the engine area.
    \n1. Upkeep the engine.
    \n2. Prevent fires in the engine.
    \n3. Maintain a safe orbit.
    \n
    \nMedical Researcher 2>5-0-0
    \n\tThis position may need a little clarification. Their duty is to make sure that all experiments are safe and\nto conduct experiments that may help to improve the station. They will be generally idle until a new laboratory\nis constructed.
    \n1. Make sure the station is kept safe.
    \n2. Research medical properties of materials studied of Space Station 13.
    \n
    \nScientist 2>5-0-0
    \n\tThese people study the properties, particularly the toxic properties, of materials handled on SS13.\nTechnically they can also be called Phoron Technicians as phoron is the material they routinly handle.
    \n1. Research phoron
    \n2. Make sure all phoron is properly handled.
    \n
    \n" + JOB_MEDICAL_DOCTOR + " (Officer) 2>0-0-0
    \n\tPeople working this job should primarily stay in the medical area. They should make sure everyone goes to\nthe medical bay for treatment and examination. Also they should make sure that medical supplies are kept in\norder.
    \n1. Heal wounded people.
    \n2. Perform examinations of all personnel.
    \n3. Moniter usage of medical equipment.
    \n
    \n" + JOB_SECURITY_OFFICER + " 3>0-0-0
    \n\tThese people should attempt to keep the peace inside the station and make sure the station is kept safe. One\nside duty is to assist in repairing the station. They also work like general maintenance personnel. They are not\ngiven a weapon and must use their own resources.
    \n(Addendum: Updated/Elevated Security Protocols admit issuing of weapons to security personnel)
    \n1. Maintain order.
    \n2. Assist others.
    \n3. Repair structural problems.
    \n
    \n" + JOB_HEAD_OF_SECURITY + " 4>5-2-2
    \n\tPeople assigned as " + JOB_HEAD_OF_SECURITY + " should issue orders to the security staff. They should\nalso carefully moderate the usage of all security equipment. All security matters should be reported to this person.
    \n1. Oversee security.
    \n2. Assign patrol duties.
    \n3. Protect the station and staff.
    \n
    \nHead of Personnel 4>4-2-2
    \n\tPeople assigned as head of personnel will find themselves moderating all actions done by personnel. \nAlso they have the ability to assign jobs and access levels.
    \n1. Assign duties.
    \n2. Moderate personnel.
    \n3. Moderate research.
    \n
    \n"+ JOB_SITE_MANAGER + " 5>5-5-5 (unrestricted station wide access)
    \n\tThis is the highest position youi can aquire on Space Station 13. They are allowed anywhere inside the\nspace station and therefore should protect their ID card. They also have the ability to assign positions\nand access levels. They should not abuse their power.
    \n1. Assign all positions on SS13
    \n2. Inspect the station for any problems.
    \n3. Perform administrative duties.
    \n" /obj/item/weapon/paper/photograph name = "photo" diff --git a/code/modules/paperwork/paper_sticky.dm b/code/modules/paperwork/paper_sticky.dm index 32f92cea6f6..d2f88c10b10 100644 --- a/code/modules/paperwork/paper_sticky.dm +++ b/code/modules/paperwork/paper_sticky.dm @@ -26,7 +26,7 @@ /obj/item/sticky_pad/attackby(var/obj/item/weapon/thing, var/mob/user) if(istype(thing, /obj/item/weapon/pen)) - if(jobban_isbanned(user, "Graffiti")) + if(jobban_isbanned(user, JOB_GRAFFITI)) to_chat(user, SPAN_WARNING("You are banned from leaving persistent information across rounds.")) return diff --git a/code/modules/pda/cart.dm b/code/modules/pda/cart.dm index 2dfd77cb2d8..6213e5aae22 100644 --- a/code/modules/pda/cart.dm +++ b/code/modules/pda/cart.dm @@ -167,7 +167,7 @@ var/list/civilian_cartridges = list( /obj/item/weapon/cartridge/quartermaster name = "\improper Space Parts & Space Vendors cartridge" - desc = "Perfect for the Quartermaster on the go!" + desc = "Perfect for the " + JOB_QUARTERMASTER + " on the go!" icon_state = "cart-q" programs = list( new/datum/data/pda/app/supply) diff --git a/code/modules/pda/pda.dm b/code/modules/pda/pda.dm index 27e6e90edb5..5024360d5c4 100644 --- a/code/modules/pda/pda.dm +++ b/code/modules/pda/pda.dm @@ -142,7 +142,7 @@ var/global/list/obj/item/device/pda/PDAs = list() model_name = "Thinktronic 5230 Personal Data Assistant" if(2) icon = 'icons/obj/pda_slim.dmi' - model_name = "Ward-Takahashi SlimFit� Personal Data Assistant" + model_name = "Ward-Takahashi SlimFit™ Personal Data Assistant" if(3) icon = 'icons/obj/pda_old.dmi' model_name = "Thinktronic 5120 Personal Data Assistant" @@ -169,7 +169,7 @@ var/global/list/obj/item/device/pda/PDAs = list() ) if(7) icon = 'icons/obj/pda_slider.dmi' //VOREStation edit - model_name = "Slider� Personal Data Assistant" + model_name = "Slider® Personal Data Assistant" if(8) icon = 'icons/obj/pda_vintage.dmi' model_name = "\[ERR:INVALID_MANUFACTURER_ID\] Personal Data Assistant" diff --git a/code/modules/persistence/graffiti.dm b/code/modules/persistence/graffiti.dm index feb561f482d..dff38d0b19c 100644 --- a/code/modules/persistence/graffiti.dm +++ b/code/modules/persistence/graffiti.dm @@ -51,7 +51,7 @@ qdel(src) else if(thing.sharp) - if(jobban_isbanned(user, "Graffiti")) + if(jobban_isbanned(user, JOB_GRAFFITI)) to_chat(user, SPAN_WARNING("You are banned from leaving persistent information across rounds.")) return diff --git a/code/modules/persistence/noticeboard.dm b/code/modules/persistence/noticeboard.dm index 54f07d2a589..70c9d0589ff 100644 --- a/code/modules/persistence/noticeboard.dm +++ b/code/modules/persistence/noticeboard.dm @@ -83,7 +83,7 @@ dismantle() return else if(istype(I, /obj/item/weapon/paper) || istype(I, /obj/item/weapon/photo)) - if(jobban_isbanned(user, "Graffiti")) + if(jobban_isbanned(user, JOB_GRAFFITI)) to_chat(user, "You are banned from leaving persistent information across rounds.") else if(LAZYLEN(notices) < max_notices && user.unEquip(I, src)) @@ -207,4 +207,4 @@ P.info = "Do you people think the anomaly suits are cheap to come by? I'm about a hair trigger away from instituting a log book for the damn things. Only wear them if you're going out for a dig, and for god's sake don't go tramping around in them unless you're field testing something, R" P.stamped = list(/obj/item/weapon/stamp/rd) P.add_overlay("paper_stamped_rd") - contents += P \ No newline at end of file + contents += P diff --git a/code/modules/power/singularity/act.dm b/code/modules/power/singularity/act.dm index 51c53138fac..d47af8a13a6 100644 --- a/code/modules/power/singularity/act.dm +++ b/code/modules/power/singularity/act.dm @@ -16,9 +16,9 @@ /mob/living/carbon/human/singularity_act() var/gain = 20 if(mind) - if((mind.assigned_role == "Engineer") || (mind.assigned_role == "Chief Engineer")) + if((mind.assigned_role == JOB_ENGINEER) || (mind.assigned_role == JOB_CHIEF_ENGINEER)) gain = 100 - if(mind.assigned_role == USELESS_JOB) //VOREStation Edit - Visitor not Assistant + if(mind.assigned_role == JOB_ALT_VISITOR) //VOREStation Edit - Visitor not Assistant gain = rand(0, 300) investigate_log(I_SINGULO,"has been consumed by a singularity", I_SINGULO) gib() diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 6d0e90eea89..218b9919baa 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -148,7 +148,7 @@ var/mob/M = usr if(!M.mind) return 0 var/job = M.mind.assigned_role - if(job != "Detective" && job != "Security Officer" && job != "Warden" && job != "Head of Security") + if(job != JOB_DETECTIVE && job != JOB_SECURITY_OFFICER && job != JOB_WARDEN && job != JOB_HEAD_OF_SECURITY ) to_chat(M, "You don't feel cool enough to name this gun, chump.") return 0 diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index cd9fde9bd84..a0853600fa5 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -40,7 +40,7 @@ var/mob/M = usr if(!M.mind) return 0 var/job = M.mind.assigned_role - if(job != "Detective" && job != "Security Officer" && job != "Warden" && job != "Head of Security") + if(job != JOB_DETECTIVE && job != JOB_SECURITY_OFFICER && job != JOB_WARDEN && job != JOB_HEAD_OF_SECURITY ) to_chat(M, "You don't feel cool enough to name this gun, chump.") return 0 @@ -605,4 +605,4 @@ return var/ratio = ammo_magazine.stored_ammo.len * 100 / ammo_magazine.max_ammo ratio = round(ratio, 33) - add_overlay("lamia_[ratio]") \ No newline at end of file + add_overlay("lamia_[ratio]") diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 77c211778d0..d26ce740fca 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -63,7 +63,7 @@ var/mob/M = usr if(!M.mind) return 0 - if(!M.mind.assigned_role == "Detective") + if(!M.mind.assigned_role == JOB_DETECTIVE) to_chat(M, "You don't feel cool enough to name this gun, chump.") return 0 @@ -86,12 +86,12 @@ /obj/item/weapon/gun/projectile/revolver/detective45/verb/rename_gun() set name = "Name Gun" set category = "Object" - set desc = "Rename your gun. If you're the Detective." + set desc = "Rename your gun. If you're the " + JOB_DETECTIVE + "." var/mob/M = usr if(!M.mind) return 0 var/job = M.mind.assigned_role - if(job != "Detective") + if(job != JOB_DETECTIVE) to_chat(M, "You don't feel cool enough to name this gun, chump.") return 0 diff --git a/code/modules/projectiles/guns/toy.dm b/code/modules/projectiles/guns/toy.dm index 13bbffb4bf8..aa52008b92e 100644 --- a/code/modules/projectiles/guns/toy.dm +++ b/code/modules/projectiles/guns/toy.dm @@ -216,8 +216,8 @@ * Cyborg */ /obj/item/weapon/gun/projectile/cyborgtoy - name = "\improper Donk-Soft Cyborg Blaster" - desc = "Donk-Soft Cyborg Blaster! It's Donk or Don't! Adult supervision required. Use to toggle between battle and cleanup mode." + name = "\improper Donk-Soft " + JOB_CYBORG + " Blaster" + desc = "Donk-Soft " + JOB_CYBORG + " Blaster! It's Donk or Don't! Adult supervision required. Use to toggle between battle and cleanup mode." icon = 'icons/obj/gun_toy.dmi' icon_state = "smg" caliber = "foam" diff --git a/code/modules/projectiles/projectile/change.dm b/code/modules/projectiles/projectile/change.dm index f532a5fb039..d09b5f4fbc0 100644 --- a/code/modules/projectiles/projectile/change.dm +++ b/code/modules/projectiles/projectile/change.dm @@ -49,7 +49,7 @@ new_mob = new /mob/living/silicon/robot(M.loc) new_mob.gender = M.gender new_mob.invisibility = 0 - new_mob.job = "Cyborg" + new_mob.job = JOB_CYBORG var/mob/living/silicon/robot/Robot = new_mob Robot.mmi = new /obj/item/device/mmi(new_mob) Robot.mmi.transfer_identity(M) //Does not transfer key/client. @@ -98,4 +98,4 @@ return else to_chat(M, "Your form morphs into that of \a [lowertext(randomize)].") - return \ No newline at end of file + return diff --git a/code/modules/reagents/reagents/food_drinks.dm b/code/modules/reagents/reagents/food_drinks.dm index 4baf2788cdf..080faa3f2b2 100644 --- a/code/modules/reagents/reagents/food_drinks.dm +++ b/code/modules/reagents/reagents/food_drinks.dm @@ -3087,7 +3087,7 @@ /datum/reagent/ethanol/bananahonk name = "Banana Mama" id = "bananahonk" - description = "A drink from Clown Heaven." + description = "A drink from " + JOB_CLOWN + " Heaven." taste_description = "bananas and sugar" nutriment_factor = 1 color = "#FFFF91" @@ -3624,7 +3624,7 @@ /datum/reagent/ethanol/silencer name = "Silencer" id = "silencer" - description = "A drink from Mime Heaven." + description = "A drink from " + JOB_MIME + " Heaven." taste_description = "a pencil eraser" taste_mult = 1.2 nutriment_factor = 1 diff --git a/code/modules/resleeving/autoresleever.dm b/code/modules/resleeving/autoresleever.dm index d8afe1750d3..7c56b5827ae 100644 --- a/code/modules/resleeving/autoresleever.dm +++ b/code/modules/resleeving/autoresleever.dm @@ -6,7 +6,7 @@ density = TRUE anchored = TRUE var/equip_body = FALSE //If true, this will spawn the person with equipment - var/default_job = USELESS_JOB //The job that will be assigned if equip_body is true and the ghost doesn't have a job + var/default_job = JOB_ALT_VISITOR //The job that will be assigned if equip_body is true and the ghost doesn't have a job var/ghost_spawns = FALSE //If true, allows ghosts who haven't been spawned yet to spawn var/vore_respawn = 5 MINUTES //The time to wait if you died from vore var/respawn = 30 MINUTES //The time to wait if you didn't die from vore diff --git a/code/modules/rogueminer_vr/roguemines_mobs.dm b/code/modules/rogueminer_vr/roguemines_mobs.dm index 85c581d61e3..08cf8e11d2a 100644 --- a/code/modules/rogueminer_vr/roguemines_mobs.dm +++ b/code/modules/rogueminer_vr/roguemines_mobs.dm @@ -1,23 +1,23 @@ /mob/living/simple_mob/animal/space/bats/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/animal/space/carp/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/animal/space/goose/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/vore/wolf/space/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/animal/space/carp/large/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/animal/space/bear/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/vore/aggressive/corrupthound/space/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES /mob/living/simple_mob/animal/space/carp/large/huge/roguemines - faction = "roguemines" + faction = FACTION_ROGUEMINES diff --git a/code/modules/rogueminer_vr/zonemaster.dm b/code/modules/rogueminer_vr/zonemaster.dm index 4826661d2d4..8126d47e15e 100644 --- a/code/modules/rogueminer_vr/zonemaster.dm +++ b/code/modules/rogueminer_vr/zonemaster.dm @@ -302,7 +302,7 @@ var/mobchoice = pickweight(rm_controller.mobs["tier[rm_controller.diffstep]"]) rm_controller.dbg("ZM(p): Picked [mobchoice] to spawn.") var/mob/living/newmob = new mobchoice(get_turf(SP)) - newmob.faction = "asteroid_belt" + newmob.faction = FACTION_ASTEROID_BELT spawned_mobs += newmob if(delay) sleep(delay) diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm index 5246c3415b0..330ad88002a 100644 --- a/code/modules/security levels/keycard authentication.dm +++ b/code/modules/security levels/keycard authentication.dm @@ -32,7 +32,7 @@ return if(istype(W,/obj/item/weapon/card/id)) var/obj/item/weapon/card/id/ID = W - if(access_keycard_auth in ID.access) + if(access_keycard_auth in ID.GetAccess()) if(active == 1) //This is not the device that made the initial request. It is the device confirming the request. if(event_source) diff --git a/code/modules/shieldgen/shield_capacitor.dm b/code/modules/shieldgen/shield_capacitor.dm index 35a1dc0bbfb..2b56b7f613e 100644 --- a/code/modules/shieldgen/shield_capacitor.dm +++ b/code/modules/shieldgen/shield_capacitor.dm @@ -40,7 +40,7 @@ if(istype(W, /obj/item/weapon/card/id)) var/obj/item/weapon/card/id/C = W - if((access_captain in C.access) || (access_security in C.access) || (access_engine in C.access)) + if((access_captain in C.GetAccess()) || (access_security in C.GetAccess()) || (access_engine in C.GetAccess())) src.locked = !src.locked to_chat(user, "Controls are now [src.locked ? "locked." : "unlocked."]") updateDialog() diff --git a/code/modules/shieldgen/shield_gen.dm b/code/modules/shieldgen/shield_gen.dm index 2e2888a4be9..ace49b21a98 100644 --- a/code/modules/shieldgen/shield_gen.dm +++ b/code/modules/shieldgen/shield_gen.dm @@ -60,7 +60,7 @@ /obj/machinery/shield_gen/attackby(obj/item/W, mob/user) if(istype(W, /obj/item/weapon/card/id)) var/obj/item/weapon/card/id/C = W - if((access_captain in C.access) || (access_security in C.access) || (access_engine in C.access)) + if((access_captain in C.GetAccess()) || (access_security in C.GetAccess()) || (access_engine in C.GetAccess())) src.locked = !src.locked to_chat(user, "Controls are now [src.locked ? "locked." : "unlocked."]") updateDialog() diff --git a/code/modules/shuttles/shuttle_emergency.dm b/code/modules/shuttles/shuttle_emergency.dm index 8a947154a77..97b1fe2139f 100644 --- a/code/modules/shuttles/shuttle_emergency.dm +++ b/code/modules/shuttles/shuttle_emergency.dm @@ -137,7 +137,7 @@ if(!ID) return - access = ID.access + access = ID.GetAccess() auth_name = "[ID.registered_name] ([ID.assignment])" dna_hash = ID.dna_hash diff --git a/code/modules/shuttles/shuttle_specops.dm b/code/modules/shuttles/shuttle_specops.dm index 0dd88a58e8e..5151e9a493e 100644 --- a/code/modules/shuttles/shuttle_specops.dm +++ b/code/modules/shuttles/shuttle_specops.dm @@ -21,11 +21,11 @@ /datum/shuttle/autodock/ferry/specops/New() ..() announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. - announcer.config(list("Response Team" = 0)) + announcer.config(list(CHANNEL_RESPONSE_TEAM = 0)) /datum/shuttle/autodock/ferry/specops/proc/radio_announce(var/message) if(announcer) - announcer.autosay(message, "A.L.I.C.E.", "Response Team") + announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM) /datum/shuttle/autodock/ferry/specops/launch(var/user) diff --git a/code/modules/spells/spellbook.dm b/code/modules/spells/spellbook.dm index ea301f16b73..9537f39a8ae 100644 --- a/code/modules/spells/spellbook.dm +++ b/code/modules/spells/spellbook.dm @@ -91,7 +91,7 @@ if(!istype(H, /mob/living/carbon/human)) return 1 - if(H.mind.special_role == "apprentice") + if(H.mind.special_role == JOB_APPRENTICE) temp = "If you got caught sneaking a peak from your teacher's spellbook, you'd likely be expelled from the Wizard Academy. Better not." return @@ -260,7 +260,7 @@ if(knownspell.type == S.type) if(user.mind) // TODO: Update to new antagonist system. - if(user.mind.special_role == "apprentice" || user.mind.special_role == "Wizard") + if(user.mind.special_role == JOB_APPRENTICE || user.mind.special_role == JOB_WIZARD) to_chat(user, "You're already far more versed in this spell than this flimsy how-to book can provide.") else to_chat(user, "You've already read this one.") diff --git a/code/modules/spells/targeted/mind_transfer.dm b/code/modules/spells/targeted/mind_transfer.dm index e3eda58b652..3b11a5f59cb 100644 --- a/code/modules/spells/targeted/mind_transfer.dm +++ b/code/modules/spells/targeted/mind_transfer.dm @@ -13,7 +13,7 @@ compatible_mobs = list(/mob/living/carbon/human) //which types of mobs are affected by the spell. NOTE: change at your own risk // TODO: Update to new antagonist system. - var/list/protected_roles = list("Wizard","Changeling","Cultist") //which roles are immune to the spell + var/list/protected_roles = list(JOB_WIZARD,JOB_CHANGELING,JOB_CULTIST) //which roles are immune to the spell var/msg_wait = 500 //how long in deciseconds it waits before telling that body doesn't feel right or mind swap robbed of a spell amt_paralysis = 20 //how much the victim is paralysed for after the spell diff --git a/code/modules/tgui/modules/_base.dm b/code/modules/tgui/modules/_base.dm index 80e49e6543e..c77e93813b5 100644 --- a/code/modules/tgui/modules/_base.dm +++ b/code/modules/tgui/modules/_base.dm @@ -56,7 +56,7 @@ Code is pretty much ripped verbatim from nano modules, but with un-needed stuff if(!I) return 0 - if(access in I.access) + if(access in I.GetAccess()) return 1 return 0 diff --git a/code/modules/tgui/modules/ntos-only/cardmod.dm b/code/modules/tgui/modules/ntos-only/cardmod.dm index b6e4a8063b3..dcebc1e5b20 100644 --- a/code/modules/tgui/modules/ntos-only/cardmod.dm +++ b/code/modules/tgui/modules/ntos-only/cardmod.dm @@ -70,7 +70,7 @@ all_centcom_access.Add(list(list( "desc" = replacetext(get_centcom_access_desc(access), " ", " "), "ref" = access, - "allowed" = (access in id_card.access) ? 1 : 0))) + "allowed" = (access in id_card.GetAccess()) ? 1 : 0))) data["all_centcom_access"] = all_centcom_access else for(var/i in ACCESS_REGION_SECURITY to ACCESS_REGION_SUPPLY) @@ -80,7 +80,7 @@ accesses.Add(list(list( "desc" = replacetext(get_access_desc(access), " ", " "), "ref" = access, - "allowed" = (access in id_card.access) ? 1 : 0))) + "allowed" = (access in id_card.GetAccess()) ? 1 : 0))) regions.Add(list(list( "name" = get_region_accesses_name(i), @@ -143,7 +143,7 @@ "} var/known_access_rights = get_access_ids(ACCESS_TYPE_STATION|ACCESS_TYPE_CENTCOM) - for(var/A in id_card.access) + for(var/A in id_card.GetAccess()) if(A in known_access_rights) contents += " [get_access_desc(A)]" @@ -231,4 +231,3 @@ if(id_card) id_card.name = text("[id_card.registered_name]'s ID Card ([id_card.assignment])") - diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 193b4d465e1..76785d1a4a5 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -697,7 +697,7 @@ //HOS Hardsuit /obj/item/clothing/suit/space/void/security/fluff/hos // ToDo: Rig version. name = "\improper prototype voidsuit" - desc = "A customized security voidsuit made to match the Head of Security's obession with black. Has additional composite armor." + desc = "A customized security voidsuit made to match the " + JOB_HEAD_OF_SECURITY + "'s obession with black. Has additional composite armor." icon = 'icons/vore/custom_clothes_vr.dmi' icon_state = "rig-hos" @@ -710,7 +710,7 @@ //HOS Hardsuit Helmet /obj/item/clothing/head/helmet/space/void/security/fluff/hos // ToDo: Rig version. name = "\improper prototype voidsuit helmet" - desc = "A customized security voidsuit helmet customized to include the Head of Security's signature hat. Has additional composite armor." + desc = "A customized security voidsuit helmet customized to include the " + JOB_HEAD_OF_SECURITY + "'s signature hat. Has additional composite armor." icon = 'icons/vore/custom_clothes_vr.dmi' icon_state = "rig0-hos" @@ -1145,7 +1145,7 @@ //KiwiDaNinja: Chakat Taiga /obj/item/clothing/under/fluff/taiga name = "Taiga's F.D Uniform" - desc = "This uniform - consisting of only the uniform shirt, and built out of a soft fleece - dons the badge of Amistad Fire and Rescuse on both shoulders. The badges denote the wearer as a FF/Paramedic, and their name is embroidered in a gold thread on their right breast; Chakat Taiga! An 'official' badge is pinned to their left breast." //A walking advertisement? + desc = "This uniform - consisting of only the uniform shirt, and built out of a soft fleece - dons the badge of Amistad Fire and Rescuse on both shoulders. The badges denote the wearer as a FF/" + JOB_PARAMEDIC + ", and their name is embroidered in a gold thread on their right breast; Chakat Taiga! An 'official' badge is pinned to their left breast." //A walking advertisement? icon = 'icons/vore/custom_clothes_vr.dmi' icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "taigaff_on" diff --git a/code/modules/vore/fluffstuff/custom_items_vr.dm b/code/modules/vore/fluffstuff/custom_items_vr.dm index bda7d2d669c..0ce6aab8ab4 100644 --- a/code/modules/vore/fluffstuff/custom_items_vr.dm +++ b/code/modules/vore/fluffstuff/custom_items_vr.dm @@ -1475,8 +1475,8 @@ //PastelPrinceDan - Kiyoshi/Masumi Maki /obj/item/toy/plushie/fluff/slimeowshi - name = "Slime-Cat Research Director plushie" - desc = "An adorable stuffed toy that resembles a slime. It's pink, and has little cat ears, as well as a tail! Atop its head is a small beret with a Research Director's insignia." + name = "Slime-Cat " + JOB_RESEARCH_DIRECTOR + " plushie" + desc = "An adorable stuffed toy that resembles a slime. It's pink, and has little cat ears, as well as a tail! Atop its head is a small beret with a " + JOB_RESEARCH_DIRECTOR + "'s insignia." icon = 'icons/vore/custom_items_vr.dmi' icon_state = "kimeowshi" attack_verb = list("blorbled", "slimed", "absorbed", "glomped") diff --git a/code/modules/xenobio/items/slime_objects.dm b/code/modules/xenobio/items/slime_objects.dm index 90012d75482..ead745e9767 100644 --- a/code/modules/xenobio/items/slime_objects.dm +++ b/code/modules/xenobio/items/slime_objects.dm @@ -53,7 +53,7 @@ var/mob/living/carbon/human/S = new(get_turf(src)) S.client = candidate.client to_chat(S, "You are a promethean, brought into existence on [station_name()].") - S.mind.assigned_role = "Promethean" + S.mind.assigned_role = JOB_PROMETHEAN S.set_species("Promethean") S.shapeshifter_set_colour("#2398FF") visible_message("The monkey cube suddenly takes the shape of a humanoid!") @@ -115,7 +115,7 @@ // Very filling food. /obj/item/weapon/reagent_containers/food/snacks/slime name = "slimy clump" - desc = "A glob of slime that is thick as honey. For the brave Xenobiologist." + desc = "A glob of slime that is thick as honey. For the brave " + JOB_XENOBIOLOGIST + "." icon_state = "honeycomb" filling_color = "#FFBB00" center_of_mass = list("x"=17, "y"=10) @@ -215,4 +215,4 @@ description = "A slimy liquid, with very compelling smell. Extremely nutritious." color = "#FABA3A" nutriment_factor = 30 - taste_description = "slimy nectar" \ No newline at end of file + taste_description = "slimy nectar" diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index a3fca442d5d..58460b7a412 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -4,7 +4,7 @@ Slime definitions, Life and New live here. /mob/living/simple_mob/xeno/slime //Adult values are found here nameVar = "grey" //When mutated, nameVar might change. desc = "A shifting, mass of goo." - faction = "slime" + faction = FACTION_SLIME speak_emote = list("garbles", "chirps", "blurbles") colored = 1 color = "#CACACA" diff --git a/code/modules/xenobio2/mob/slime/slime_monkey.dm b/code/modules/xenobio2/mob/slime/slime_monkey.dm index 8915e58e9b0..c8201f21581 100644 --- a/code/modules/xenobio2/mob/slime/slime_monkey.dm +++ b/code/modules/xenobio2/mob/slime/slime_monkey.dm @@ -39,7 +39,7 @@ Slime cube lives here. var/mob/living/carbon/human/S = new(get_turf(src)) S.client = candidate.client to_chat(S., "You are a promethean, brought into existence on [station_name()].") - S.mind.assigned_role = "Promethean" + S.mind.assigned_role = JOB_PROMETHEAN S.set_species("Promethean") S.shapeshifter_set_colour("#05FF9B") for(var/mob/M in viewers(get_turf_or_move(loc))) diff --git a/code/modules/xenobio2/mob/xeno.dm b/code/modules/xenobio2/mob/xeno.dm index f53659b17b7..840f17d848a 100644 --- a/code/modules/xenobio2/mob/xeno.dm +++ b/code/modules/xenobio2/mob/xeno.dm @@ -8,7 +8,7 @@ Also includes Life and New /mob/living/simple_mob/xeno name = "Xeno" real_name = "Xeno" - faction = "xeno" //Needs to be set. + faction = FACTION_XENO //Needs to be set. desc = "Something's broken, yell at someone." melee_damage_lower = 0 melee_damage_upper = 0 diff --git a/maps/cynosure/cynosure_jobs.dm b/maps/cynosure/cynosure_jobs.dm index 1086aa37b4f..e7ec3296ea4 100644 --- a/maps/cynosure/cynosure_jobs.dm +++ b/maps/cynosure/cynosure_jobs.dm @@ -21,7 +21,7 @@ var/const/access_explorer = 43 flag = EXPLORER departments = list(DEPARTMENT_RESEARCH, DEPARTMENT_PLANET) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 4 spawn_positions = 4 supervisors = "the Research Director" @@ -34,7 +34,7 @@ var/const/access_explorer = 43 job_description = "An Explorer searches for interesting things on the surface of Sif, and returns them to the station." alt_titles = list( - "Pilot" = /decl/hierarchy/outfit/job/pilot) + JOB_PILOT = /decl/hierarchy/outfit/job/pilot) /datum/job/rd access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, @@ -47,9 +47,9 @@ var/const/access_explorer = 43 access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage, access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch, access_network, access_maint_tunnels, access_explorer, access_eva, access_external_airlocks) - + /* alt_titles = list( - "Explorer Technician" = /decl/hierarchy/outfit/job/explorer2/technician, - "Explorer Medic" = /decl/hierarchy/outfit/job/explorer2/medic) + JOB_ALT_EXPLORERE_TECHNICIAN = /decl/hierarchy/outfit/job/explorer2/technician, + JOB_ALT_EXPLORER_MEDIC = /decl/hierarchy/outfit/job/explorer2/medic) */ diff --git a/maps/expedition_vr/aerostat/_aerostat.dm b/maps/expedition_vr/aerostat/_aerostat.dm index d1e50cc78f3..2648d130afe 100644 --- a/maps/expedition_vr/aerostat/_aerostat.dm +++ b/maps/expedition_vr/aerostat/_aerostat.dm @@ -119,7 +119,7 @@ /obj/tether_away_spawner/aerostat_inside name = "Aerostat Indoors Spawner" - faction = "aerostat_inside" + faction = FACTION_AEROSTAT_INSIDE atmos_comp = TRUE prob_spawn = 100 prob_fall = 50 @@ -133,7 +133,7 @@ /obj/tether_away_spawner/aerostat_surface name = "Aerostat Surface Spawner" - faction = "aerostat_surface" + faction = FACTION_AEROSTAT_SURFACE atmos_comp = TRUE prob_spawn = 100 prob_fall = 30 diff --git a/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm b/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm index c181fba6a69..5fd5ef60bb0 100644 --- a/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm +++ b/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm @@ -52,7 +52,7 @@ /obj/tether_away_spawner/aerostat_inside name = "Aerostat Indoors Spawner" - faction = "aerostat_inside" + faction = FACTION_AEROSTAT_INSIDE atmos_comp = TRUE prob_spawn = 100 prob_fall = 50 @@ -66,7 +66,7 @@ /obj/tether_away_spawner/aerostat_surface name = "Aerostat Surface Spawner" - faction = "aerostat_surface" + faction = FACTION_AEROSTAT_SURFACE atmos_comp = TRUE prob_spawn = 100 prob_fall = 50 diff --git a/maps/expedition_vr/beach/_beach.dm b/maps/expedition_vr/beach/_beach.dm index 5b1d049fe15..f7e9b9b498b 100644 --- a/maps/expedition_vr/beach/_beach.dm +++ b/maps/expedition_vr/beach/_beach.dm @@ -78,7 +78,7 @@ // Note that if your map has step teleports, mobs may wander through them accidentally and not know how to get back /obj/tether_away_spawner/beach_outside name = "Beach Outside Spawner" //Just a name - faction = "beach_out" //Sets all the mobs to this faction so they don't infight + faction = FACTION_BEACH_OUT //Sets all the mobs to this faction so they don't infight atmos_comp = TRUE //Sets up their atmos tolerances to work in this setting, even if they don't normally (20% up/down tolerance for each gas, and heat) prob_spawn = 100 //Chance of this spawner spawning a mob (once this is missed, the spawner is 'depleted' and won't spawn anymore) prob_fall = 25 //Chance goes down by this much each time it spawns one (not defining and prob_spawn 100 means they spawn as soon as one dies) @@ -91,7 +91,7 @@ /obj/tether_away_spawner/beach_outside_friendly name = "Fennec Spawner" - faction = "fennec" + faction = FACTION_FENNEC atmos_comp = TRUE prob_spawn = 100 prob_fall = 25 @@ -102,7 +102,7 @@ /obj/tether_away_spawner/beach_cave name = "Beach Cave Spawner" - faction = "beach_cave" + faction = FACTION_BEACH_CAVE atmos_comp = TRUE prob_spawn = 100 prob_fall = 40 diff --git a/maps/gateway_archive_vr/labyrinth.dm b/maps/gateway_archive_vr/labyrinth.dm index f1f19604905..f99a9240298 100644 --- a/maps/gateway_archive_vr/labyrinth.dm +++ b/maps/gateway_archive_vr/labyrinth.dm @@ -205,7 +205,7 @@ /mob/living/simple_mob/hostile/tunnelclown name = "tunnel clown" desc = "A clown driven to madness in the depths of the Honk Mother's Catacombs." - faction = "tunnelclown" + faction = FACTION_TUNNELCLOWN icon = 'icons/mob/clowns_vr.dmi' icon_state = "tunnelclown" icon_living = "tunnelclown" @@ -247,7 +247,7 @@ /mob/living/simple_mob/hostile/tunnelclown/sentinel name = "tunnel clown sentinel" desc = "A clown warrior tasked with guarding the Honk Mother's Catacombs." - faction = "tunnelclown" + faction = FACTION_TUNNELCLOWN icon = 'icons/mob/clowns_vr.dmi' icon_state = "sentinelclown" icon_living = "sentinelclown" @@ -271,7 +271,7 @@ /mob/living/simple_mob/hostile/cluwne name = "cluwne" desc = "A mutated clown alleged to have been cursed by the Honk Mother and permanently banished to these catacombs for once being an unfunny shitter who brought grief instead of laughter." - faction = "tunnelclown" + faction = FACTION_TUNNELCLOWN icon = 'icons/mob/clowns_vr.dmi' icon_state = "cluwne" icon_living = "cluwne" diff --git a/maps/gateway_archive_vr/snowfield.dm b/maps/gateway_archive_vr/snowfield.dm index 2956393645c..c0d2f05bb01 100644 --- a/maps/gateway_archive_vr/snowfield.dm +++ b/maps/gateway_archive_vr/snowfield.dm @@ -56,7 +56,7 @@ vore_active = 1 say_list_type = /datum/say_list/polar_bear - faction = "polar" + faction = FACTION_POLAR maxHealth = 80 health = 80 // Polar bear will fuck you up. @@ -87,13 +87,13 @@ ..() /mob/living/simple_mob/animal/sif/sakimm/polar - faction = "polar" + faction = FACTION_POLAR /mob/living/simple_mob/animal/sif/diyaab/polar - faction = "polar" + faction = FACTION_POLAR /mob/living/simple_mob/animal/sif/shantak/polar - faction = "polar" + faction = FACTION_POLAR // -- Items -- // diff --git a/maps/gateway_vr/snowfield.dm b/maps/gateway_vr/snowfield.dm index 8127505ae95..7315fdb3650 100644 --- a/maps/gateway_vr/snowfield.dm +++ b/maps/gateway_vr/snowfield.dm @@ -68,7 +68,7 @@ vore_active = 1 say_list_type = /datum/say_list/polar_bear - faction = "polar" + faction = FACTION_POLAR maxHealth = 80 health = 80 // Polar bear will fuck you up. @@ -99,13 +99,13 @@ ..() /mob/living/simple_mob/animal/sif/sakimm/polar - faction = "polar" + faction = FACTION_POLAR /mob/living/simple_mob/animal/sif/diyaab/polar - faction = "polar" + faction = FACTION_POLAR /mob/living/simple_mob/animal/sif/shantak/polar - faction = "polar" + faction = FACTION_POLAR // -- Items -- // diff --git a/maps/northern_star/job/outfits.dm b/maps/northern_star/job/outfits.dm index 7d07d0d1f3f..0aed9698933 100644 --- a/maps/northern_star/job/outfits.dm +++ b/maps/northern_star/job/outfits.dm @@ -1,6 +1,6 @@ //Job Outfits /decl/hierarchy/outfit/job/assistant/resident - name = OUTFIT_JOB_NAME("Resident") - id_pda_assignment = "Resident" - uniform = /obj/item/clothing/under/color/white \ No newline at end of file + name = OUTFIT_JOB_NAME(JOB_ALT_RESIDENT) + id_pda_assignment = JOB_ALT_RESIDENT + uniform = /obj/item/clothing/under/color/white diff --git a/maps/northern_star/northern_star_jobs.dm b/maps/northern_star/northern_star_jobs.dm index 57fba6a0340..e3852a90b6c 100644 --- a/maps/northern_star/northern_star_jobs.dm +++ b/maps/northern_star/northern_star_jobs.dm @@ -1,9 +1,9 @@ // Overrides the alt titles. /datum/job/assistant alt_titles = list( - "Technical Assistant", - "Medical Intern", - "Research Assistant", - "Visitor" = /decl/hierarchy/outfit/job/assistant/visitor, - "Resident" = /decl/hierarchy/outfit/job/assistant/resident - ) \ No newline at end of file + JOB_ALT_TECHNICAL_ASSISTANT, + JOB_ALT_MEDICAL_INTERN, + JOB_ALT_RESEARCH_ASSISTANT, + JOB_ALT_VISITOR = /decl/hierarchy/outfit/job/assistant/visitor, + JOB_ALT_RESIDENT = /decl/hierarchy/outfit/job/assistant/resident + ) diff --git a/maps/offmap_vr/common_offmaps.dm b/maps/offmap_vr/common_offmaps.dm index 7b4a7bc799b..07b3edee72d 100644 --- a/maps/offmap_vr/common_offmaps.dm +++ b/maps/offmap_vr/common_offmaps.dm @@ -530,7 +530,7 @@ icon = 'icons/mob/vore_shadekin.dmi' icon_state = "spawner" - faction = "shadekin" + faction = FACTION_SHADEKIN prob_spawn = 1 prob_fall = 1 //guard = 10 //Don't wander too far, to stay alive. diff --git a/maps/offmap_vr/talon/talon_v2.dm b/maps/offmap_vr/talon/talon_v2.dm index 5e31a8ce742..901e42c271e 100644 --- a/maps/offmap_vr/talon/talon_v2.dm +++ b/maps/offmap_vr/talon/talon_v2.dm @@ -11,7 +11,7 @@ var/global/list/latejoin_talon = list() /datum/spawnpoint/talon display_name = "ITV Talon Cryo" - restrict_job = list("Talon Captain", "Talon Pilot", "Talon Engineer", "Talon Doctor", "Talon Guard", "Talon Miner") + restrict_job = list(JOB_TALON_CAPTAIN, JOB_TALON_PILOT, JOB_TALON_ENGINEER, JOB_TALON_DOCTOR, JOB_TALON_GUARD, JOB_TALON_MINER) msg = "has come out of cryostasis" announce_channel = "Talon" @@ -1012,4 +1012,4 @@ personally I recommend using the ship's boat if you need to evacuate, but if you /obj/item/weapon/tank/phoron/pressurized, /obj/structure/closet/crate/secure/phoron //HQ FUEL TANKS ) - ) \ No newline at end of file + ) diff --git a/maps/om_adventure/grasscave.dm b/maps/om_adventure/grasscave.dm index be3a3ec2dc0..3dc714066df 100644 --- a/maps/om_adventure/grasscave.dm +++ b/maps/om_adventure/grasscave.dm @@ -344,7 +344,7 @@ icon = 'icons/mob/randomlandmarks.dmi' icon_state = "monster" - faction = "spookyland" + faction = FACTION_SPOOKYLAND prob_spawn = 50 prob_fall = 10 //guard = 10 //Don't wander too far, to stay alive. @@ -360,4 +360,4 @@ /mob/living/simple_mob/mechanical/infectionbot = 30, /mob/living/simple_mob/animal/passive/cat/bluespace = 1, /mob/living/simple_mob/animal/passive/dog/void_puppy = 1 - ) \ No newline at end of file + ) diff --git a/maps/southern_cross/items/encryptionkey_sc.dm b/maps/southern_cross/items/encryptionkey_sc.dm index 3e02f2fc089..d723c83c223 100644 --- a/maps/southern_cross/items/encryptionkey_sc.dm +++ b/maps/southern_cross/items/encryptionkey_sc.dm @@ -1,30 +1,30 @@ /obj/item/device/encryptionkey/pilot name = "pilot's encryption key" icon_state = "com_cypherkey" - channels = list("Supply" = 1, "Explorer" = 1) + channels = list(CHANNEL_SUPPLY = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/explorer name = "explorer radio encryption key" icon_state = "com_cypherkey" - channels = list("Explorer" = 1, "Science" = 1) + channels = list(CHANNEL_EXPLORATION = 1, CHANNEL_SCIENCE = 1) /obj/item/device/encryptionkey/sar name = "sar's encryption key" icon_state = "med_cypherkey" - channels = list("Medical" = 1, "Explorer" = 1) + channels = list(CHANNEL_MEDICAL = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/heads/hop name = "head of personnel's encryption key" icon_state = "hop_cypherkey" - channels = list("Supply" = 1, "Service" = 1, "Command" = 1, "Security" = 1, "Explorer" = 1) + channels = list(CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/heads/ai_integrated name = "ai integrated encryption key" desc = "Integrated encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "AI Private" = 1, "Explorer" = 1) + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1, CHANNEL_MEDICAL = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_AI_PRIVATE = 1, CHANNEL_EXPLORATION = 1) /obj/item/device/encryptionkey/heads/captain name = "site manager's encryption key" icon_state = "cap_cypherkey" - channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1, "Explorer" = 1) \ No newline at end of file + channels = list(CHANNEL_COMMAND = 1, CHANNEL_SECURITY = 1, CHANNEL_ENGINEERING = 1, CHANNEL_SCIENCE = 1, CHANNEL_MEDICAL = 1, CHANNEL_SUPPLY = 1, CHANNEL_SERVICE = 1, CHANNEL_EXPLORATION = 1) diff --git a/maps/southern_cross/job/outfits.dm b/maps/southern_cross/job/outfits.dm index 9fa06c2fa99..c42fd755ec2 100644 --- a/maps/southern_cross/job/outfits.dm +++ b/maps/southern_cross/job/outfits.dm @@ -25,19 +25,19 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go permit.set_name(H.real_name) /decl/hierarchy/outfit/job/explorer2/technician - name = OUTFIT_JOB_NAME("Explorer Technician") + name = OUTFIT_JOB_NAME(JOB_ALT_EXPLORERE_TECHNICIAN) belt = /obj/item/weapon/storage/belt/utility/full pda_slot = slot_l_store - id_pda_assignment = "Explorer Technician" + id_pda_assignment = JOB_ALT_EXPLORERE_TECHNICIAN /decl/hierarchy/outfit/job/explorer2/medic - name = OUTFIT_JOB_NAME("Explorer Medic") + name = OUTFIT_JOB_NAME(JOB_ALT_EXPLORER_MEDIC) l_hand = /obj/item/weapon/storage/firstaid/regular pda_slot = slot_l_store - id_pda_assignment = "Explorer Medic" + id_pda_assignment = JOB_ALT_EXPLORER_MEDIC /decl/hierarchy/outfit/job/pilot - name = OUTFIT_JOB_NAME("Pilot") + name = OUTFIT_JOB_NAME(JOB_PILOT) shoes = /obj/item/clothing/shoes/black uniform = /obj/item/clothing/under/rank/pilot1/no_webbing suit = /obj/item/clothing/suit/storage/toggle/bomber/pilot @@ -49,7 +49,7 @@ Keep outfits simple. Spawn with basic uniforms and minimal gear. Gear instead go pda_slot = slot_belt pda_type = /obj/item/device/pda //VOREStation Edit - Civilian id_type = /obj/item/weapon/card/id/civilian/pilot - id_pda_assignment = "Pilot" + id_pda_assignment = JOB_PILOT flags = OUTFIT_HAS_BACKPACK|OUTFIT_COMPREHENSIVE_SURVIVAL /decl/hierarchy/outfit/job/medical/sar diff --git a/maps/southern_cross/loadout/loadout_accessories.dm b/maps/southern_cross/loadout/loadout_accessories.dm index 3febe42b2e6..4604d6354dd 100644 --- a/maps/southern_cross/loadout/loadout_accessories.dm +++ b/maps/southern_cross/loadout/loadout_accessories.dm @@ -1,34 +1,34 @@ /datum/gear/accessory/brown_vest display_name = "webbing, brown" path = /obj/item/clothing/accessory/storage/brown_vest - allowed_roles = list("Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Search and Rescue","Explorer","Shaft Miner") + allowed_roles = list(JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_CHIEF_ENGINEER,JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_PARAMEDIC,JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,"Search and Rescue","Explorer",JOB_SHAFT_MINER) /datum/gear/accessory/black_vest display_name = "webbing, black" path = /obj/item/clothing/accessory/storage/black_vest - allowed_roles = list("Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Search and Rescue","Explorer","Shaft Miner") + allowed_roles = list(JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_CHIEF_ENGINEER,JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_PARAMEDIC,JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,"Search and Rescue","Explorer",JOB_SHAFT_MINER) /datum/gear/accessory/white_vest display_name = "webbing, white" path = /obj/item/clothing/accessory/storage/white_vest - allowed_roles = list("Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Search and Rescue","Explorer","Shaft Miner") + allowed_roles = list(JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_CHIEF_ENGINEER,JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_PARAMEDIC,JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,"Search and Rescue","Explorer",JOB_SHAFT_MINER) /datum/gear/accessory/brown_drop_pouches display_name = "drop pouches, brown" path = /obj/item/clothing/accessory/storage/brown_drop_pouches - allowed_roles = list("Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Search and Rescue","Explorer","Shaft Miner") + allowed_roles = list(JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_CHIEF_ENGINEER,JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_PARAMEDIC,JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,"Search and Rescue","Explorer",JOB_SHAFT_MINER) /datum/gear/accessory/black_drop_pouches display_name = "drop pouches, black" path = /obj/item/clothing/accessory/storage/black_drop_pouches - allowed_roles = list("Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Search and Rescue","Explorer","Shaft Miner") + allowed_roles = list(JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_CHIEF_ENGINEER,JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_PARAMEDIC,JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,"Search and Rescue","Explorer",JOB_SHAFT_MINER) /datum/gear/accessory/white_drop_pouches display_name = "drop pouches, white" path = /obj/item/clothing/accessory/storage/white_drop_pouches - allowed_roles = list("Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Search and Rescue","Explorer","Shaft Miner") + allowed_roles = list(JOB_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN,JOB_CHIEF_ENGINEER,JOB_SECURITY_OFFICER,JOB_DETECTIVE,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_PARAMEDIC,JOB_CHIEF_MEDICAL_OFFICER,JOB_MEDICAL_DOCTOR,"Search and Rescue","Explorer",JOB_SHAFT_MINER) /datum/gear/accessory/holster display_name = "holster selection (Security, CD, HoP)" path = /obj/item/clothing/accessory/holster - allowed_roles = list("Site Manager","Head of Personnel","Security Officer","Warden","Head of Security","Detective","Explorer") \ No newline at end of file + allowed_roles = list(JOB_SITE_MANAGER,JOB_HEAD_OF_PERSONNEL,JOB_SECURITY_OFFICER,JOB_WARDEN,JOB_HEAD_OF_SECURITY,JOB_DETECTIVE,"Explorer") diff --git a/maps/southern_cross/southern_cross_jobs.dm b/maps/southern_cross/southern_cross_jobs.dm index 2f379dcb2e5..deb66093b16 100644 --- a/maps/southern_cross/southern_cross_jobs.dm +++ b/maps/southern_cross/southern_cross_jobs.dm @@ -29,7 +29,7 @@ var/const/access_explorer = 43 department = "Command" head_position = 1 department_flag = ENGSEC - faction = "Station" + faction = FACTION_STATION total_positions = 1 spawn_positions = 1 supervisors = "company officials and Corporate Regulations" @@ -60,7 +60,7 @@ var/const/access_explorer = 43 flag = PILOT departments = list(DEPARTMENT_PLANET) department_flag = CIVILIAN - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 supervisors = "the Head of Personnel" @@ -77,7 +77,7 @@ var/const/access_explorer = 43 flag = EXPLORER departments = list(DEPARTMENT_RESEARCH, DEPARTMENT_PLANET) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 4 spawn_positions = 4 supervisors = "the Research Director" @@ -92,8 +92,8 @@ var/const/access_explorer = 43 /* alt_titles = list( - "Explorer Technician" = /decl/hierarchy/outfit/job/explorer2/technician, - "Explorer Medic" = /decl/hierarchy/outfit/job/explorer2/medic) + JOB_ALT_EXPLORERE_TECHNICIAN = /decl/hierarchy/outfit/job/explorer2/technician, + JOB_ALT_EXPLORER_MEDIC = /decl/hierarchy/outfit/job/explorer2/medic) */ /datum/job/sar @@ -101,7 +101,7 @@ var/const/access_explorer = 43 flag = SAR departments = list(DEPARTMENT_PLANET, DEPARTMENT_MEDICAL) department_flag = MEDSCI - faction = "Station" + faction = FACTION_STATION total_positions = 2 spawn_positions = 2 supervisors = "the Chief Medical Officer" @@ -112,4 +112,4 @@ var/const/access_explorer = 43 min_age_by_species = list(SPECIES_PROMETHEAN = 2) outfit_type = /decl/hierarchy/outfit/job/medical/sar - job_description = "A Search and Rescue operative recovers individuals who are injured or dead on the surface of Sif." \ No newline at end of file + job_description = "A Search and Rescue operative recovers individuals who are injured or dead on the surface of Sif." diff --git a/maps/submaps/depreciated_vr/talon.dm b/maps/submaps/depreciated_vr/talon.dm index 54cc43c2653..41933826daf 100644 --- a/maps/submaps/depreciated_vr/talon.dm +++ b/maps/submaps/depreciated_vr/talon.dm @@ -11,7 +11,7 @@ var/global/list/latejoin_talon = list() /datum/spawnpoint/talon display_name = "ITV Talon Cryo" - restrict_job = list("Talon Captain", "Talon Pilot", "Talon Engineer", "Talon Doctor", "Talon Guard") + restrict_job = list(JOB_TALON_CAPTAIN, JOB_TALON_PILOT, JOB_TALON_ENGINEER, JOB_TALON_DOCTOR, JOB_TALON_GUARD) msg = "has come out of cryostasis" announce_channel = "Talon" diff --git a/maps/submaps/pois_vr/debris_field/debrisfield_things.dm b/maps/submaps/pois_vr/debris_field/debrisfield_things.dm index f9b6bfee1aa..934b8ad8310 100644 --- a/maps/submaps/pois_vr/debris_field/debrisfield_things.dm +++ b/maps/submaps/pois_vr/debris_field/debrisfield_things.dm @@ -18,7 +18,7 @@ /obj/tether_away_spawner/debrisfield/derelict name = "debris field derelict random mob spawner" - faction = "derelict" + faction = FACTION_DERELICT mobs_to_pick_from = list( /mob/living/simple_mob/mechanical/corrupt_maint_drone = 2, /mob/living/simple_mob/mechanical/infectionbot = 3, @@ -27,14 +27,14 @@ /obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm name = "debris field derelict maint swarm" - faction = "derelict" + faction = FACTION_DERELICT mobs_to_pick_from = list( /mob/living/simple_mob/mechanical/corrupt_maint_drone = 4 ) /obj/tether_away_spawner/debrisfield/derelict/mech_wizard name = "debris field derelict wizard lol" - faction = "derelict" + faction = FACTION_DERELICT mobs_to_pick_from = list( /mob/living/simple_mob/mechanical/technomancer_golem = 2 ) diff --git a/maps/submaps/space_rocks/space_rocks_stuff.dm b/maps/submaps/space_rocks/space_rocks_stuff.dm index cacb70e3879..ff0d03b8549 100644 --- a/maps/submaps/space_rocks/space_rocks_stuff.dm +++ b/maps/submaps/space_rocks/space_rocks_stuff.dm @@ -13,14 +13,14 @@ /obj/tether_away_spawner/asteroidbaddies name = "Asteroid Mob Spawner" - faction = "space_rock" + faction = FACTION_SPACE_ROCK atmos_comp = TRUE prob_spawn = 100 prob_fall = 40 //guard = 20 mobs_to_pick_from = list( - /mob/living/simple_mob/animal/space/bats = 10, - /mob/living/simple_mob/vore/alienanimals/space_jellyfish = 15, + /mob/living/simple_mob/animal/space/bats = 10, + /mob/living/simple_mob/vore/alienanimals/space_jellyfish = 15, /mob/living/simple_mob/vore/alienanimals/startreader = 15, /mob/living/simple_mob/vore/alienanimals/space_ghost = 6, /mob/living/simple_mob/vore/oregrub = 1, diff --git a/maps/tether/submaps/underdark_pois/underdark_things.dm b/maps/tether/submaps/underdark_pois/underdark_things.dm index ba117d701c3..2697cfd9432 100644 --- a/maps/tether/submaps/underdark_pois/underdark_things.dm +++ b/maps/tether/submaps/underdark_pois/underdark_things.dm @@ -17,7 +17,7 @@ // Adds Phoron Wolf /mob/living/simple_mob/vore/wolf/phoron - faction = "underdark" + faction = FACTION_UNDERDARK movement_cooldown = -1.5 harm_intent_damage = 5 @@ -39,7 +39,7 @@ // Underdark mob spawners /obj/tether_away_spawner/underdark_drone_swarm name = "Underdark Drone Swarm Spawner" - faction = "underdark" + faction = FACTION_UNDERDARK atmos_comp = TRUE prob_spawn = 100 prob_fall = 10 @@ -50,7 +50,7 @@ /obj/tether_away_spawner/underdark_normal name = "Underdark Normal Spawner" - faction = "underdark" + faction = FACTION_UNDERDARK atmos_comp = TRUE prob_spawn = 100 prob_fall = 50 @@ -64,7 +64,7 @@ /obj/tether_away_spawner/underdark_hard name = "Underdark Hard Spawner" - faction = "underdark" + faction = FACTION_UNDERDARK atmos_comp = TRUE prob_spawn = 100 prob_fall = 50 @@ -77,7 +77,7 @@ /obj/tether_away_spawner/underdark_boss name = "Underdark Boss Spawner" - faction = "underdark" + faction = FACTION_UNDERDARK atmos_comp = TRUE prob_spawn = 100 prob_fall = 100 diff --git a/maps/tether/tether_jobs.dm b/maps/tether/tether_jobs.dm index feffb107d3d..ccfc4217f73 100644 --- a/maps/tether/tether_jobs.dm +++ b/maps/tether/tether_jobs.dm @@ -9,7 +9,7 @@ visible = FALSE /datum/job/talon_captain - title = "Talon Captain" + title = JOB_TALON_CAPTAIN flag = TALCAP department_flag = TALON departments_managed = list(DEPARTMENT_TALON) @@ -18,7 +18,7 @@ outfit_type = /decl/hierarchy/outfit/job/talon_captain offmap_spawn = TRUE - faction = "Station" //Required for SSjob to allow people to join as it + faction = FACTION_STATION //Required for SSjob to allow people to join as it departments = list(DEPARTMENT_TALON) total_positions = 1 spawn_positions = 1 @@ -31,13 +31,13 @@ dept_time_required = 60 access = list(access_talon) minimal_access = list(access_talon) - alt_titles = list("Talon Commander" = /datum/alt_title/talon_commander) + alt_titles = list(JOB_ALT_TALON_COMMANDER = /datum/alt_title/talon_commander) /datum/alt_title/talon_commander - title = "Talon Commander" + title = JOB_ALT_TALON_COMMANDER /datum/job/talon_doctor - title = "Talon Doctor" + title = JOB_TALON_DOCTOR flag = TALDOC department_flag = TALON job_description = "The doctor's job is to make sure the crew of the ITV Talon remain in good health and to monitor them when away from the ship." @@ -45,7 +45,7 @@ outfit_type = /decl/hierarchy/outfit/job/talon_doctor offmap_spawn = TRUE - faction = "Station" //Required for SSjob to allow people to join as it + faction = FACTION_STATION //Required for SSjob to allow people to join as it departments = list(DEPARTMENT_TALON) total_positions = 1 spawn_positions = 1 @@ -57,14 +57,14 @@ timeoff_factor = 1 access = list(access_talon) minimal_access = list(access_talon) - alt_titles = list("Talon Medic" = /datum/alt_title/talon_medic) + alt_titles = list(JOB_ALT_TALON_MEDIC = /datum/alt_title/talon_medic) /datum/alt_title/talon_medic - title = "Talon Medic" + title = JOB_ALT_TALON_MEDIC /datum/job/talon_engineer - title = "Talon Engineer" + title = JOB_TALON_ENGINEER flag = TALENG department_flag = TALON job_description = "The engineer's job is to ensure the ITV Talon remains in tip-top shape and to repair any damage as well as manage the shields." @@ -72,7 +72,7 @@ outfit_type = /decl/hierarchy/outfit/job/talon_engineer offmap_spawn = TRUE - faction = "Station" //Required for SSjob to allow people to join as it + faction = FACTION_STATION //Required for SSjob to allow people to join as it departments = list(DEPARTMENT_TALON) total_positions = 1 spawn_positions = 1 @@ -84,14 +84,14 @@ timeoff_factor = 1 access = list(access_talon) minimal_access = list(access_talon) - alt_titles = list("Talon Technician" = /datum/alt_title/talon_tech) + alt_titles = list(JOB_ALT_TALON_TECHNICIAN = /datum/alt_title/talon_tech) /datum/alt_title/talon_tech - title = "Talon Technician" + title = JOB_ALT_TALON_TECHNICIAN /datum/job/talon_pilot - title = "Talon Pilot" + title = JOB_TALON_PILOT flag = TALPIL department_flag = TALON job_description = "The pilot's job is to fly the ITV Talon in the most efficient and profitable way possible." @@ -99,7 +99,7 @@ outfit_type = /decl/hierarchy/outfit/job/talon_pilot offmap_spawn = TRUE - faction = "Station" //Required for SSjob to allow people to join as it + faction = FACTION_STATION //Required for SSjob to allow people to join as it departments = list(DEPARTMENT_TALON) total_positions = 1 spawn_positions = 1 @@ -111,14 +111,14 @@ timeoff_factor = 1 access = list(access_talon) minimal_access = list(access_talon) - alt_titles = list("Talon Helmsman" = /datum/alt_title/talon_helmsman) + alt_titles = list(JOB_ALT_TALON_HELMSMAN = /datum/alt_title/talon_helmsman) /datum/alt_title/talon_helmsman - title = "Talon Helmsman" + title = JOB_ALT_TALON_HELMSMAN /datum/job/talon_guard - title = "Talon Guard" + title = JOB_TALON_GUARD flag = TALSEC department_flag = TALON job_description = "The guard's job is to keep the crew of the ITV Talon safe and ensure the captain's wishes are carried out." @@ -126,7 +126,7 @@ outfit_type = /decl/hierarchy/outfit/job/talon_security offmap_spawn = TRUE - faction = "Station" //Required for SSjob to allow people to join as it + faction = FACTION_STATION //Required for SSjob to allow people to join as it departments = list(DEPARTMENT_TALON) total_positions = 1 spawn_positions = 1 @@ -138,13 +138,13 @@ timeoff_factor = 1 access = list(access_talon) minimal_access = list(access_talon) - alt_titles = list("Talon Security" = /datum/alt_title/talon_security) + alt_titles = list(JOB_ALT_TALON_SECURITY = /datum/alt_title/talon_security) /datum/alt_title/talon_security - title = "Talon Security" + title = JOB_ALT_TALON_SECURITY /datum/job/talon_miner - title = "Talon Miner" + title = JOB_TALON_MINER flag = TALMIN department_flag = TALON job_description = "The miner's job is to excavate ores and refine them for the Talon's use, as well as for trading." @@ -152,7 +152,7 @@ outfit_type = /decl/hierarchy/outfit/job/talon_miner offmap_spawn = TRUE - faction = "Station" //Required for SSjob to allow people to join as it + faction = FACTION_STATION //Required for SSjob to allow people to join as it departments = list(DEPARTMENT_TALON) total_positions = 1 spawn_positions = 1 @@ -164,15 +164,15 @@ timeoff_factor = 1 access = list(access_talon) minimal_access = list(access_talon) - alt_titles = list("Talon Excavator" = /datum/alt_title/talon_excavator) + alt_titles = list(JOB_ALT_TALON_EXCAVATOR = /datum/alt_title/talon_excavator) /datum/alt_title/talon_excavator - title = "Talon Excavator" + title = JOB_ALT_TALON_EXCAVATOR //////////////////////TALON OUTFITS////////////////////// /decl/hierarchy/outfit/job/talon_captain - name = OUTFIT_JOB_NAME("Talon Captain") + name = OUTFIT_JOB_NAME(JOB_TALON_CAPTAIN) id_type = /obj/item/weapon/card/id/talon/captain id_slot = slot_wear_id @@ -187,7 +187,7 @@ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon /decl/hierarchy/outfit/job/talon_pilot - name = OUTFIT_JOB_NAME("Talon Pilot") + name = OUTFIT_JOB_NAME(JOB_TALON_PILOT) id_type = /obj/item/weapon/card/id/talon/pilot id_slot = slot_wear_id @@ -207,7 +207,7 @@ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon /decl/hierarchy/outfit/job/talon_doctor - name = OUTFIT_JOB_NAME("Talon Doctor") + name = OUTFIT_JOB_NAME(JOB_TALON_DOCTOR) hierarchy_type = /decl/hierarchy/outfit/job id_type = /obj/item/weapon/card/id/talon/doctor @@ -228,7 +228,7 @@ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon /decl/hierarchy/outfit/job/talon_security - name = OUTFIT_JOB_NAME("Talon Security") + name = OUTFIT_JOB_NAME(JOB_ALT_TALON_SECURITY) hierarchy_type = /decl/hierarchy/outfit/job id_type = /obj/item/weapon/card/id/talon/officer @@ -249,7 +249,7 @@ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon /decl/hierarchy/outfit/job/talon_engineer - name = OUTFIT_JOB_NAME("Talon Engineer") + name = OUTFIT_JOB_NAME(JOB_TALON_ENGINEER) hierarchy_type = /decl/hierarchy/outfit/job id_type = /obj/item/weapon/card/id/talon/engineer @@ -271,7 +271,7 @@ messenger_bag = /obj/item/weapon/storage/backpack/messenger/talon /decl/hierarchy/outfit/job/talon_miner - name = OUTFIT_JOB_NAME("Talon Miner") + name = OUTFIT_JOB_NAME(JOB_TALON_MINER) hierarchy_type = /decl/hierarchy/outfit/job id_type = /obj/item/weapon/card/id/talon/miner diff --git a/vorestation.dme b/vorestation.dme index 6f7cfd59ced..362631f16bb 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -59,6 +59,7 @@ #include "code\__defines\equipment_vendor.dm" #include "code\__defines\events.dm" #include "code\__defines\exosuit_fab.dm" +#include "code\__defines\faction.dm" #include "code\__defines\flags.dm" #include "code\__defines\gamemode.dm" #include "code\__defines\holder.dm" @@ -72,6 +73,7 @@ #include "code\__defines\is_helpers.dm" #include "code\__defines\items_clothing.dm" #include "code\__defines\job_controller.dm" +#include "code\__defines\jobs.dm" #include "code\__defines\jukebox.dm" #include "code\__defines\life.dm" #include "code\__defines\lighting.dm" @@ -107,6 +109,7 @@ #include "code\__defines\projectile.dm" #include "code\__defines\projectiles.dm" #include "code\__defines\qdel.dm" +#include "code\__defines\radio.dm" #include "code\__defines\recipe.dm" #include "code\__defines\request_console.dm" #include "code\__defines\research.dm"
    Other Roles