Replaces the IAA with the Representative job (#6752)

This pr does what is suggested in this thread: https://forums.aurorastation.org/topic/12395-iaa-rework-representatives/
This commit is contained in:
Alberyk
2019-07-25 01:15:21 +03:00
committed by Erki
parent 07fbf53b47
commit 8ceefde494
33 changed files with 1223 additions and 781 deletions
+1
View File
@@ -509,6 +509,7 @@
#include "code\game\jobs\job\security.dm"
#include "code\game\jobs\job\silicon.dm"
#include "code\game\jobs\job\outsider\merchant.dm"
#include "code\game\jobs\job\outsider\representative.dm"
#include "code\game\machinery\adv_med.dm"
#include "code\game\machinery\ai_slipper.dm"
#include "code\game\machinery\alarm.dm"
@@ -138,7 +138,7 @@ var/datum/controller/subsystem/atlas/SSatlas
admin_departments = list(
"[current_map.boss_name]",
"[current_map.system_name] Government",
"External Routing",
"Supply"
)
+1 -1
View File
@@ -6,7 +6,7 @@ var/datum/antagonist/legion/legion
role_text = "Tau Ceti Foreign Legion Volunteer"
role_text_plural = "Tau Ceti Foreign Legion Volunteers"
welcome_text = "As member of the Tau Ceti Foreign Legion, you answer to your leader and NanoTrasen officials."
leader_welcome_text = "As leader of the Tau Ceti Foreign Legion Team, you answer only to the Tau Ceti goverment and NanoTrasen officials. It is recommended that you attempt to cooperate with the captain and the crew when possible."
leader_welcome_text = "As leader of the Tau Ceti Foreign Legion Team, you answer only to the Tau Ceti government and NanoTrasen officials. It is recommended that you attempt to cooperate with the captain and the crew when possible."
landmark_id = "Tau Ceti Legion"
id_type = /obj/item/weapon/card/id/legion
+2 -2
View File
@@ -240,8 +240,8 @@
/var/const/access_lawyer = 38
/datum/access/lawyer
id = access_lawyer
desc = "Internal Affairs"
region = ACCESS_REGION_COMMAND
desc = "Representative"
region = ACCESS_TYPE_CENTCOM
/var/const/access_virology = 39
/datum/access/virology
+16 -2
View File
@@ -26,7 +26,8 @@
/datum/job/officer,
/datum/job/warden,
/datum/job/forensics,
/datum/job/paramedic
/datum/job/paramedic,
/datum/job/representative
)
allowed_species_types = list(
@@ -41,21 +42,34 @@
"Security Officer" = /datum/outfit/job/officer/eridani,
"Warden" = /datum/outfit/job/warden/eridani,
"Forensic Technician" = /datum/outfit/job/forensics/eridani,
"Paramedic" = /datum/outfit/job/paramedic/eridani
"Paramedic" = /datum/outfit/job/paramedic/eridani,
"Corporate Liaison" = /datum/outfit/job/representative/eridani
)
/datum/outfit/job/officer/eridani
name = "Security Officer - Eridani"
uniform = /obj/item/clothing/under/rank/security/eridani
id = /obj/item/weapon/card/id/eridani
/datum/outfit/job/warden/eridani
name = "Warden - Eridani"
uniform = /obj/item/clothing/under/rank/security/eridani
id = /obj/item/weapon/card/id/eridani
/datum/outfit/job/forensics/eridani
name = "Forensic Technician - Eridani"
uniform = /obj/item/clothing/under/rank/security/eridani
id = /obj/item/weapon/card/id/eridani
/datum/outfit/job/paramedic/eridani
name = "Paramedic - Eridani"
uniform = /obj/item/clothing/under/rank/security/eridani/alt
id = /obj/item/weapon/card/id/eridani
/datum/outfit/job/representative/eridani
name = "Corporate Liaison - Eridani"
uniform = /obj/item/clothing/under/rank/security/eridani/alt
head = null
suit = null
implants = null
id = /obj/item/weapon/card/id/eridani
+15
View File
@@ -46,3 +46,18 @@
/datum/faction/proc/get_logo_name()
return "faction_[title_suffix].png"
/datum/faction/proc/get_corporate_objectives(var/mission_level)
var/objective
switch(mission_level)
if("high")
objective = pick("Assist your contractor in smuggling [rand(1,4)] items of value",
"Collect evidence of Nanotrasen being unfair or oppressive against your contractors to be used as leverage in future talks")
if("medium")
objective = pick("Convince [rand(1,3)] of NT employees to join your own company",
"Have [rand(1,3)] of your contractors write down their grievances with the company, and present the report to station command.")
else
objective = pick("Collect [rand(3,7)] pictures of secure station areas",
"Make sure that [rand(2,4)] complaints related to contractors are solved on the station")
return objective
+12 -2
View File
@@ -34,7 +34,8 @@
/datum/job/scientist,
/datum/job/roboticist,
/datum/job/mining,
/datum/job/cargo_tech
/datum/job/cargo_tech,
/datum/job/representative
)
allowed_species_types = list(
@@ -51,7 +52,8 @@
"Scientist" = /datum/outfit/job/scientist/hephaestus,
"Roboticist" = /datum/outfit/job/roboticist/hephaestus,
"Miner" = /datum/outfit/job/mining/hephaestus,
"Cargo Technician" = /datum/outfit/job/cargo_tech/hephaestus
"Cargo Technician" = /datum/outfit/job/cargo_tech/hephaestus,
"Corporate Liaison" = /datum/outfit/job/representative/hephaestus
)
/datum/outfit/job/engineer/hephaestus
@@ -83,3 +85,11 @@
name = "Cargo Technician - Hephaestus"
uniform = /obj/item/clothing/under/rank/hephaestus
id = /obj/item/weapon/card/id/hephaestus
/datum/outfit/job/representative/hephaestus
name = "Corporate Liaison - Hephaestus"
uniform = /obj/item/clothing/under/rank/hephaestus
head = null
suit = null
implants = null
id = /obj/item/weapon/card/id/hephaestus
+12 -2
View File
@@ -36,7 +36,8 @@
/datum/job/bartender,
/datum/job/chef,
/datum/job/hydro,
/datum/job/cargo_tech
/datum/job/cargo_tech,
/datum/job/representative
)
allowed_species_types = list(
@@ -51,7 +52,8 @@
"Bartender" = /datum/outfit/job/bartender/idris,
"Chef" = /datum/outfit/job/chef/idris,
"Gardener" = /datum/outfit/job/hydro/idris,
"Cargo Technician" = /datum/outfit/job/cargo_tech/idris
"Cargo Technician" = /datum/outfit/job/cargo_tech/idris,
"Corporate Liaison" = /datum/outfit/job/representative/idris
)
/datum/outfit/job/officer/idris
@@ -78,3 +80,11 @@
name = "Cargo Technician - Idris"
uniform = /obj/item/clothing/under/rank/idris
id = /obj/item/weapon/card/id/idris
/datum/outfit/job/representative/idris
name = "Corporate Liaison - Idris"
uniform = /obj/item/clothing/under/rank/idris
head = null
suit = null
implants = null
id = /obj/item/weapon/card/id/idris
+18
View File
@@ -15,3 +15,21 @@
// Really shitty hack until I get around to rewriting jobs a bit.
allowed_role_types -= /datum/job/merchant
/datum/faction/nano_trasen/get_corporate_objectives(var/mission_level)
var/objective
switch(mission_level)
if("high")
objective = pick("Have [rand(1,4)] crewmember sign NT apprenticeship contracts",
"Make sure that the station fullfils [rand(4,12)] cargo bounties",
"Make sure that the station raises [rand(5000,12000)] credits by the end of the shift")
if("medium")
objective = pick("Have [rand(2,5)] crewmembers sign contract extensions",
"Have [rand(2,5)] crewmembers buy Odin real estate",
"[rand(3,10)] crewmember must buy Getmore products from the vendors")
else
objective = pick("Conduct and present a survey on crew morale and content",
"Make sure that [rand(2,4)] complaints are solved on the station",
"Have [rand(3,10)] crewmembers buy Getmore products from the vendors")
return objective
+12 -2
View File
@@ -38,7 +38,8 @@
/datum/job/doctor,
/datum/job/pharmacist,
/datum/job/scientist,
/datum/job/roboticist
/datum/job/roboticist,
/datum/job/representative
)
allowed_species_types = list(
@@ -55,7 +56,8 @@
"Pharmacist" = /datum/outfit/job/pharmacist/necropolis,
"Medical Doctor" = /datum/outfit/job/doctor/necropolis,
"Scientist" = /datum/outfit/job/scientist/necropolis,
"Roboticist" = /datum/outfit/job/roboticist/necropolis
"Roboticist" = /datum/outfit/job/roboticist/necropolis,
"Corporate Liaison" = /datum/outfit/job/representative/necropolis
)
/datum/outfit/job/officer/necropolis
@@ -87,3 +89,11 @@
name = "Roboticist - Necropolis"
uniform = /obj/item/clothing/under/rank/necropolis
id = /obj/item/weapon/card/id/necropolis
/datum/outfit/job/representative/necropolis
name = "Corporate Liaison - Necropolis"
uniform = /obj/item/clothing/under/rank/necropolis
head = null
suit = null
implants = null
id = /obj/item/weapon/card/id/necropolis
+2 -1
View File
@@ -11,7 +11,8 @@
allowed_role_types = list(
/datum/job/journalist,
/datum/job/merchant
/datum/job/merchant,
/datum/job/representative
)
/datum/faction/unaffiliated/get_logo_name()
+12 -2
View File
@@ -37,7 +37,8 @@
/datum/job/doctor,
/datum/job/pharmacist,
/datum/job/psychiatrist,
/datum/job/paramedic
/datum/job/paramedic,
/datum/job/representative
)
allowed_species_types = list(
@@ -51,7 +52,8 @@
"Medical Doctor" = /datum/outfit/job/doctor/zeng_hu,
"Pharmacist" = /datum/outfit/job/pharmacist/zeng_hu,
"Psychiatrist" = /datum/outfit/job/psychiatrist/zeng_hu,
"Paramedic" = /datum/outfit/job/paramedic/zeng_hu
"Paramedic" = /datum/outfit/job/paramedic/zeng_hu,
"Corporate Liaison" = /datum/outfit/job/representative/zeng_hu
)
/datum/outfit/job/doctor/zeng_hu
@@ -78,3 +80,11 @@
name = "Paramedic - Zeng-Hu"
uniform = /obj/item/clothing/under/rank/zeng
id = /obj/item/weapon/card/id/zeng_hu
/datum/outfit/job/representative/zeng_hu
name = "Corporate Liaison - Zeng-Hu"
uniform = /obj/item/clothing/under/rank/zeng
head = null
suit = null
implants = null
id = /obj/item/weapon/card/id/zeng_hu
+278 -310
View File
@@ -1,310 +1,278 @@
//Food
/datum/job/bartender
title = "Bartender"
flag = BARTENDER
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_hydroponics, access_bar, access_kitchen)
minimal_access = list(access_bar)
alt_titles = list("Barista")
outfit = /datum/outfit/job/bartender
/datum/outfit/job/bartender
name = "Bartender"
jobtype = /datum/job/bartender
uniform = /obj/item/clothing/under/rank/bartender
pda = /obj/item/device/pda/bar
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
/datum/job/chef
title = "Chef"
flag = CHEF
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_hydroponics, access_bar, access_kitchen)
minimal_access = list(access_kitchen)
alt_titles = list("Cook")
outfit = /datum/outfit/job/chef
/datum/outfit/job/chef
name = "Chef"
jobtype = /datum/job/chef
uniform = /obj/item/clothing/under/rank/chef
suit = /obj/item/clothing/suit/chef
head = /obj/item/clothing/head/chefhat
pda = /obj/item/device/pda/chef
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
backpack_contents = list(
/obj/item/weapon/storage/box/produce = 1
)
/datum/job/hydro
title = "Gardener"
flag = BOTANIST
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_hydroponics, access_bar, access_kitchen)
minimal_access = list(access_hydroponics)
alt_titles = list("Hydroponicist")
outfit = /datum/outfit/job/hydro
/datum/outfit/job/hydro
name = "Gardener"
jobtype = /datum/job/hydro
uniform = /obj/item/clothing/under/rank/hydroponics
suit = /obj/item/clothing/suit/apron
pda = /obj/item/device/pda/botanist
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
suit_store = /obj/item/device/analyzer/plant_analyzer
backpack = /obj/item/weapon/storage/backpack/hydroponics
satchel = /obj/item/weapon/storage/backpack/satchel_hyd
dufflebag = /obj/item/weapon/storage/backpack/duffel/hyd
messengerbag = /obj/item/weapon/storage/backpack/messenger/hyd
/datum/outfit/job/hydro/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
. = ..()
if(istajara(H))
H.equip_or_collect(new /obj/item/clothing/gloves/botanic_leather/tajara(H), slot_gloves)
else if(isunathi(H))
H.equip_or_collect(new /obj/item/clothing/gloves/botanic_leather/unathi(H), slot_gloves)
else
H.equip_or_collect(new /obj/item/clothing/gloves/botanic_leather(H), slot_gloves)
//Cargo
/datum/job/qm
title = "Quartermaster"
flag = QUARTERMASTER
head_position = 1
department = "Cargo"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
ideal_character_age = 40
outfit = /datum/outfit/job/qm
/datum/outfit/job/qm
name = "Quartermaster"
jobtype = /datum/job/qm
uniform = /obj/item/clothing/under/rank/cargo
pda = /obj/item/device/pda/quartermaster
shoes = /obj/item/clothing/shoes/brown
l_ear = /obj/item/device/radio/headset/headset_cargo
l_hand = /obj/item/weapon/clipboard
glasses = /obj/item/clothing/glasses/sunglasses
/datum/job/cargo_tech
title = "Cargo Technician"
flag = CARGOTECH
department = "Cargo"
department_flag = CIVILIAN
faction = "Station"
total_positions = 3
spawn_positions = 3
supervisors = "the quartermaster and the head of personnel"
selection_color = "#dddddd"
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting)
outfit = /datum/outfit/job/cargo_tech
/datum/outfit/job/cargo_tech
name = "Cargo Technician"
jobtype = /datum/job/cargo_tech
uniform = /obj/item/clothing/under/rank/cargotech
pda = /obj/item/device/pda/cargo
shoes = /obj/item/clothing/shoes/brown
l_ear = /obj/item/device/radio/headset/headset_cargo
/datum/job/mining
title = "Shaft Miner"
flag = MINER
department = "Cargo"
department_flag = CIVILIAN
faction = "Station"
total_positions = 4
spawn_positions = 4
supervisors = "the quartermaster and the head of personnel"
selection_color = "#dddddd"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_mining, access_mining_station, access_mailsorting)
outfit = /datum/outfit/job/mining
/datum/outfit/job/mining
name = "Shaft Miner"
jobtype = /datum/job/mining
uniform = /obj/item/clothing/under/rank/miner
pda = /obj/item/device/pda/shaftminer
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_cargo
backpack_contents = list(
/obj/item/weapon/crowbar = 1,
/obj/item/weapon/storage/bag/ore = 1
)
backpack = /obj/item/weapon/storage/backpack/industrial
satchel = /obj/item/weapon/storage/backpack/satchel_eng
dufflebag = /obj/item/weapon/storage/backpack/duffel/eng
messengerbag = /obj/item/weapon/storage/backpack/messenger/engi
//Not engineers, just the mop boys
/datum/job/janitor
title = "Janitor"
flag = JANITOR
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_janitor, access_maint_tunnels, access_engine, access_research, access_sec_doors, access_medical)
minimal_access = list(access_janitor, access_maint_tunnels, access_engine, access_research, access_sec_doors, access_medical)
outfit = /datum/outfit/job/janitor
/datum/outfit/job/janitor
name = "Janitor"
jobtype = /datum/job/janitor
uniform = /obj/item/clothing/under/rank/janitor
pda = /obj/item/device/pda/janitor
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
/datum/job/journalist
title = "Corporate Reporter"
flag = JOURNALIST
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_journalist, access_maint_tunnels)
minimal_access = list(access_journalist, access_maint_tunnels)
alt_titles = list("Freelance Journalist")
alt_outfits = list("Freelance Journalist" = /datum/outfit/job/journalistf)
title_accesses = list("Corporate Reporter" = list(access_medical, access_sec_doors, access_research, access_engine))
outfit = /datum/outfit/job/journalist
/datum/outfit/job/journalist
name = "Corporate Reporter"
jobtype = /datum/job/journalist
uniform = /obj/item/clothing/under/suit_jacket/red
pda = /obj/item/device/pda/librarian
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
backpack_contents = list(
/obj/item/clothing/accessory/badge/press = 1
)
/datum/outfit/job/journalistf
name = "Freelance Journalist"
jobtype = /datum/job/journalist
uniform = /obj/item/clothing/under/suit_jacket/red
pda = /obj/item/device/pda/librarian
shoes = /obj/item/clothing/shoes/black
backpack_contents = list(
/obj/item/clothing/accessory/badge/press/independent = 1
)
/datum/job/librarian
title = "Librarian"
flag = LIBRARIAN
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_library, access_maint_tunnels)
minimal_access = list(access_library)
outfit = /datum/outfit/job/librarian
/datum/outfit/job/librarian
name = "Librarian"
jobtype = /datum/job/librarian
uniform = /obj/item/clothing/under/suit_jacket/red
pda = /obj/item/device/pda/librarian
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
r_pocket = /obj/item/weapon/barcodescanner
l_hand = /obj/item/weapon/storage/bag/books
/datum/job/lawyer
title = "Internal Affairs Agent"
flag = LAWYER
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "company officials and Corporate Regulations"
selection_color = "#dddddd"
economic_modifier = 7
access = list(access_lawyer, access_sec_doors, access_maint_tunnels, access_heads)
minimal_access = list(access_lawyer, access_sec_doors, access_heads)
outfit = /datum/outfit/job/iaa
/datum/outfit/job/iaa
name = "Internal Affairs Agent"
jobtype = /datum/job/lawyer
uniform = /obj/item/clothing/under/rank/internalaffairs
suit = /obj/item/clothing/suit/storage/toggle/internalaffairs
pda = /obj/item/device/pda/lawyer
shoes = /obj/item/clothing/shoes/brown
glasses = /obj/item/clothing/glasses/sunglasses/big
l_ear = /obj/item/device/radio/headset/ia
l_hand = /obj/item/weapon/storage/briefcase
implants = list(
/obj/item/weapon/implant/loyalty
)
//Food
/datum/job/bartender
title = "Bartender"
flag = BARTENDER
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_hydroponics, access_bar, access_kitchen)
minimal_access = list(access_bar)
alt_titles = list("Barista")
outfit = /datum/outfit/job/bartender
/datum/outfit/job/bartender
name = "Bartender"
jobtype = /datum/job/bartender
uniform = /obj/item/clothing/under/rank/bartender
pda = /obj/item/device/pda/bar
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
/datum/job/chef
title = "Chef"
flag = CHEF
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_hydroponics, access_bar, access_kitchen)
minimal_access = list(access_kitchen)
alt_titles = list("Cook")
outfit = /datum/outfit/job/chef
/datum/outfit/job/chef
name = "Chef"
jobtype = /datum/job/chef
uniform = /obj/item/clothing/under/rank/chef
suit = /obj/item/clothing/suit/chef
head = /obj/item/clothing/head/chefhat
pda = /obj/item/device/pda/chef
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
backpack_contents = list(
/obj/item/weapon/storage/box/produce = 1
)
/datum/job/hydro
title = "Gardener"
flag = BOTANIST
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_hydroponics, access_bar, access_kitchen)
minimal_access = list(access_hydroponics)
alt_titles = list("Hydroponicist")
outfit = /datum/outfit/job/hydro
/datum/outfit/job/hydro
name = "Gardener"
jobtype = /datum/job/hydro
uniform = /obj/item/clothing/under/rank/hydroponics
suit = /obj/item/clothing/suit/apron
pda = /obj/item/device/pda/botanist
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
suit_store = /obj/item/device/analyzer/plant_analyzer
backpack = /obj/item/weapon/storage/backpack/hydroponics
satchel = /obj/item/weapon/storage/backpack/satchel_hyd
dufflebag = /obj/item/weapon/storage/backpack/duffel/hyd
messengerbag = /obj/item/weapon/storage/backpack/messenger/hyd
/datum/outfit/job/hydro/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
. = ..()
if(istajara(H))
H.equip_or_collect(new /obj/item/clothing/gloves/botanic_leather/tajara(H), slot_gloves)
else if(isunathi(H))
H.equip_or_collect(new /obj/item/clothing/gloves/botanic_leather/unathi(H), slot_gloves)
else
H.equip_or_collect(new /obj/item/clothing/gloves/botanic_leather(H), slot_gloves)
//Cargo
/datum/job/qm
title = "Quartermaster"
flag = QUARTERMASTER
head_position = 1
department = "Cargo"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
ideal_character_age = 40
outfit = /datum/outfit/job/qm
/datum/outfit/job/qm
name = "Quartermaster"
jobtype = /datum/job/qm
uniform = /obj/item/clothing/under/rank/cargo
pda = /obj/item/device/pda/quartermaster
shoes = /obj/item/clothing/shoes/brown
l_ear = /obj/item/device/radio/headset/headset_cargo
l_hand = /obj/item/weapon/clipboard
glasses = /obj/item/clothing/glasses/sunglasses
/datum/job/cargo_tech
title = "Cargo Technician"
flag = CARGOTECH
department = "Cargo"
department_flag = CIVILIAN
faction = "Station"
total_positions = 3
spawn_positions = 3
supervisors = "the quartermaster and the head of personnel"
selection_color = "#dddddd"
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting)
outfit = /datum/outfit/job/cargo_tech
/datum/outfit/job/cargo_tech
name = "Cargo Technician"
jobtype = /datum/job/cargo_tech
uniform = /obj/item/clothing/under/rank/cargotech
pda = /obj/item/device/pda/cargo
shoes = /obj/item/clothing/shoes/brown
l_ear = /obj/item/device/radio/headset/headset_cargo
/datum/job/mining
title = "Shaft Miner"
flag = MINER
department = "Cargo"
department_flag = CIVILIAN
faction = "Station"
total_positions = 4
spawn_positions = 4
supervisors = "the quartermaster and the head of personnel"
selection_color = "#dddddd"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_mining, access_mining_station, access_mailsorting)
outfit = /datum/outfit/job/mining
/datum/outfit/job/mining
name = "Shaft Miner"
jobtype = /datum/job/mining
uniform = /obj/item/clothing/under/rank/miner
pda = /obj/item/device/pda/shaftminer
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_cargo
backpack_contents = list(
/obj/item/weapon/crowbar = 1,
/obj/item/weapon/storage/bag/ore = 1
)
backpack = /obj/item/weapon/storage/backpack/industrial
satchel = /obj/item/weapon/storage/backpack/satchel_eng
dufflebag = /obj/item/weapon/storage/backpack/duffel/eng
messengerbag = /obj/item/weapon/storage/backpack/messenger/engi
//Not engineers, just the mop boys
/datum/job/janitor
title = "Janitor"
flag = JANITOR
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_janitor, access_maint_tunnels, access_engine, access_research, access_sec_doors, access_medical)
minimal_access = list(access_janitor, access_maint_tunnels, access_engine, access_research, access_sec_doors, access_medical)
outfit = /datum/outfit/job/janitor
/datum/outfit/job/janitor
name = "Janitor"
jobtype = /datum/job/janitor
uniform = /obj/item/clothing/under/rank/janitor
pda = /obj/item/device/pda/janitor
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
/datum/job/journalist
title = "Corporate Reporter"
flag = JOURNALIST
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_journalist, access_maint_tunnels)
minimal_access = list(access_journalist, access_maint_tunnels)
alt_titles = list("Freelance Journalist")
alt_outfits = list("Freelance Journalist" = /datum/outfit/job/journalistf)
title_accesses = list("Corporate Reporter" = list(access_medical, access_sec_doors, access_research, access_engine))
outfit = /datum/outfit/job/journalist
/datum/outfit/job/journalist
name = "Corporate Reporter"
jobtype = /datum/job/journalist
uniform = /obj/item/clothing/under/suit_jacket/red
pda = /obj/item/device/pda/librarian
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
backpack_contents = list(
/obj/item/clothing/accessory/badge/press = 1
)
/datum/outfit/job/journalistf
name = "Freelance Journalist"
jobtype = /datum/job/journalist
uniform = /obj/item/clothing/under/suit_jacket/red
pda = /obj/item/device/pda/librarian
shoes = /obj/item/clothing/shoes/black
backpack_contents = list(
/obj/item/clothing/accessory/badge/press/independent = 1
)
/datum/job/librarian
title = "Librarian"
flag = LIBRARIAN
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list(access_library, access_maint_tunnels)
minimal_access = list(access_library)
outfit = /datum/outfit/job/librarian
/datum/outfit/job/librarian
name = "Librarian"
jobtype = /datum/job/librarian
uniform = /obj/item/clothing/under/suit_jacket/red
pda = /obj/item/device/pda/librarian
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/headset_service
r_pocket = /obj/item/weapon/barcodescanner
l_hand = /obj/item/weapon/storage/bag/books
@@ -0,0 +1,179 @@
/datum/job/representative
title = "Corporate Liaison"
flag = LAWYER
department = "Civilian"
department_flag = CIVILIAN
faction = "Station"
total_positions = 1
spawn_positions = 1
supervisors = "company officials"
selection_color = "#dddddd"
economic_modifier = 7
latejoin_at_spawnpoints = TRUE
access = list(access_lawyer, access_maint_tunnels, access_heads)
minimal_access = list(access_lawyer, access_heads)
outfit = /datum/outfit/job/representative
alt_titles = list("Tau Ceti Representative","Sol Consular Officer", "PRA Consular Officer")
outfit = /datum/outfit/job/representative
alt_outfits = list(
"Tau Ceti Representative"=/datum/outfit/job/representative/ceti,
"Sol Consular Officer"=/datum/outfit/job/representative/sol,
"PRA Consular Officer"= /datum/outfit/job/representative/pra
)
/datum/outfit/job/representative
name = "Corporate Liaison"
jobtype = /datum/job/representative
head = /obj/item/clothing/head/beret/liaison
uniform = /obj/item/clothing/under/rank/liaison
suit = /obj/item/clothing/suit/storage/toggle/liaison
pda = /obj/item/device/pda/lawyer
shoes = /obj/item/clothing/shoes/laceup
glasses = /obj/item/clothing/glasses/sunglasses/big
l_ear = /obj/item/device/radio/headset/representative
l_hand = /obj/item/weapon/storage/briefcase
backpack_contents = list(
/obj/item/device/camera = 1,
/obj/item/weapon/gun/energy/pistol = 1
)
implants = list(
/obj/item/weapon/implant/loyalty
)
/datum/outfit/job/representative/post_equip(mob/living/carbon/human/H, visualsOnly)
. = ..()
if(H && !visualsOnly)
addtimer(CALLBACK(src, .proc/send_representative_mission, H), 5 MINUTES)
return TRUE
/datum/outfit/job/representative/proc/send_representative_mission(var/mob/living/carbon/human/H)
var/faxtext = "<center><br><h2><br><b>Directives Report</h2></b></FONT size><HR></center>"
faxtext += "<b><font face='Courier New'>Attention [name], the following directives are to be fulfilled during your stay in the station:</font></b><br><ul>"
faxtext += "<li>[get_objectives(H, "low")].</li>"
if(prob(50))
faxtext += "<li>[get_objectives(H, "medium")].</li>"
if(prob(25))
faxtext += "<li>[get_objectives(H, "high")].</li>"
for (var/obj/machinery/photocopier/faxmachine/F in allfaxes)
if (F.department == "Representative's Office")
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(get_turf(F))
P.name = "[name] - Directives"
P.info = faxtext
P.update_icon()
return
/datum/outfit/job/representative/proc/get_objectives(var/mob/living/carbon/human/H, var/mission_level)
var/rep_objectives
for (var/datum/faction/faction in SSjobs.factions)
if (faction.name == H.employer_faction)
var/datum/faction/selected_faction = faction
rep_objectives = selected_faction.get_corporate_objectives(mission_level)
return rep_objectives
/datum/outfit/job/representative/ceti
name = "Tau Ceti Representative"
uniform = /obj/item/clothing/under/lawyer/blue
head = null
suit = null
backpack_contents = list(
/obj/item/clothing/accessory/tc_pin = 1,
/obj/item/weapon/storage/box/ceti_visa = 1,
/obj/item/weapon/gun/energy/pistol = 1
)
implants = null
/datum/outfit/job/representative/ceti/get_objectives(mob/living/carbon/human/H, mission_level)
var/rep_objectives
switch(mission_level)
if("high")
rep_objectives = pick("Compile and report and audit [rand(1,3)] suspicious indivduals who might be spies or otherwise act hostile against the Republic",
"Have [rand(2,6)] crewmembers sign a pledge of loyalty to the Republic")
if("medium")
rep_objectives = pick("Sell [rand(2,5)] Tau Ceti residence visas to foreign employees, 2000 credits each.",
"Convince [rand(3,6)] crewmembers of Tau Ceti superiority over the Sol Alliance")
else
rep_objectives = pick("Run a questionnaire on Tau Ceti citizens' views on synthetic citizenship",
"Run a questionnaire on Tau Ceti citizens' views on vaurca citizenship")
return rep_objectives
/datum/outfit/job/representative/sol
name = "Sol Consular Officer"
uniform = /obj/item/clothing/under/suit_jacket/navy
head = null
suit = null
backpack_contents = list(
/obj/item/clothing/accessory/sol_pin = 1,
/obj/item/weapon/storage/box/sol_visa = 1,
/obj/item/device/camera = 1,
/obj/item/weapon/gun/projectile/pistol/sol = 1
)
implants = null
/datum/outfit/job/representative/sol/get_objectives(mob/living/carbon/human/H, mission_level)
var/rep_objectives
switch(mission_level)
if("high")
rep_objectives = pick("Collect evidence of NanoTrasen being unfair or oppressive against Solarian employees, to be used as leverage in future diplomatic talks",
"Convince [rand(1,3)] solarian employees to apply for the solarian armed forces")
if("medium")
rep_objectives = pick("Have [rand(2,5)] amount of Sol citizens write down their grievances with the company, and present the report to station command",
"Convince [rand(3,6)] human crewmembers to apply for solarian citizenship")
else
rep_objectives = pick("Collect [rand(3,7)] pictures of secure station areas",
"Convince station command to turn a solarian crewmember's sentence into a fine.")
return rep_objectives
/datum/outfit/job/representative/pra
name = "PRA Consular Officer"
uniform = /obj/item/clothing/under/suit_jacket/checkered
head = /obj/item/clothing/head/fedora
suit = null
backpack_contents = list(
/obj/item/clothing/accessory/hadii_pin = 1,
/obj/item/weapon/storage/box/hadii_card = 1,
/obj/item/weapon/storage/box/hadii_manifesto = 1,
/obj/item/weapon/gun/projectile/pistol = 1
)
implants = null
/datum/outfit/job/representative/pra/get_objectives(mob/living/carbon/human/H, mission_level)
var/rep_objectives
switch(mission_level)
if("high")
rep_objectives = pick("Collect evidence of NanoTrasen being unfair or oppressive against Tajaran employees, to be used as leverage in future diplomatic talks",
"Compile a report on suspicious PRA citizens to be forwarded to authorities")
if("medium")
rep_objectives = pick("Sell [rand(3,6)] Party Membership Cards, 1000 credits each",
"Have [rand(2,5)] PRA citizens to write down their grievances with the company, and present the report to station command",
"Sell [rand(3,6)] copies of Hadiist manifesto, 30 credits each")
else
rep_objectives = pick("Ensure party loyalty for Tajara in prestigious positions",
"Ensure [rand(2,5)] PRA citizens are secure and follow party lines.")
return rep_objectives
+2 -2
View File
@@ -99,7 +99,7 @@ var/list/cargo_positions = list(
var/list/civilian_positions = list(
"Head of Personnel",
"Internal Affairs Agent",
"Corporate Liaison",
"Bartender",
"Gardener",
"Chef",
@@ -128,7 +128,7 @@ var/list/nonhuman_positions = list(
)
/proc/guest_jobbans(var/job)
return ((job in command_positions) || job == "Internal Affairs Agent")
return ((job in command_positions) || job == "Corporate Liaison")
/proc/get_job_datums()
var/list/occupations = list()
@@ -225,12 +225,12 @@
item_state = "headset"
ks2type = /obj/item/device/encryptionkey/onlyert
/obj/item/device/radio/headset/ia
name = "internal affairs headset"
/obj/item/device/radio/headset/representative
name = "representative headset"
desc = "The headset of your worst enemy."
icon_state = "com_headset"
item_state = "headset"
ks2type = /obj/item/device/encryptionkey/heads/hos
ks2type = /obj/item/device/encryptionkey/headset_com
/obj/item/device/radio/headset/attackby(obj/item/weapon/W as obj, mob/user as mob)
// ..()
@@ -1149,4 +1149,64 @@
/obj/item/weapon/storage/box/toothpaste/red/fill()
new /obj/item/weapon/reagent_containers/toothpaste(src)
new /obj/item/weapon/reagent_containers/toothbrush/red(src)
make_exact_fit()
make_exact_fit()
/obj/item/weapon/storage/box/holobadge
name = "holobadge box"
desc = "A box claiming to contain holobadges."
/obj/item/weapon/storage/box/holobadge/fill()
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo/cord(src)
new /obj/item/clothing/accessory/badge/holo/cord(src)
/obj/item/weapon/storage/box/sol_visa
name = "Sol Alliance visa box"
desc = "A box full of Sol Aliance temporary visas."
/obj/item/weapon/storage/box/sol_visa/fill()
new /obj/item/clothing/accessory/badge/sol_visa(src)
new /obj/item/clothing/accessory/badge/sol_visa(src)
new /obj/item/clothing/accessory/badge/sol_visa(src)
new /obj/item/clothing/accessory/badge/sol_visa(src)
new /obj/item/clothing/accessory/badge/sol_visa(src)
new /obj/item/clothing/accessory/badge/sol_visa(src)
/obj/item/weapon/storage/box/ceti_visa
name = "Republic of Biesel visa box"
desc = "A box full of Tau Cetian visas."
/obj/item/weapon/storage/box/ceti_visa/fill()
new /obj/item/clothing/accessory/badge/ceti_visa(src)
new /obj/item/clothing/accessory/badge/ceti_visa(src)
new /obj/item/clothing/accessory/badge/ceti_visa(src)
new /obj/item/clothing/accessory/badge/ceti_visa(src)
new /obj/item/clothing/accessory/badge/ceti_visa(src)
new /obj/item/clothing/accessory/badge/ceti_visa(src)
/obj/item/weapon/storage/box/hadii_card
name = "party member card box"
desc = "A box full of Hadiist party member cards."
/obj/item/weapon/storage/box/hadii_card/fill()
new /obj/item/clothing/accessory/badge/hadii_card(src)
new /obj/item/clothing/accessory/badge/hadii_card(src)
new /obj/item/clothing/accessory/badge/hadii_card(src)
new /obj/item/clothing/accessory/badge/hadii_card(src)
new /obj/item/clothing/accessory/badge/hadii_card(src)
new /obj/item/clothing/accessory/badge/hadii_card(src)
/obj/item/weapon/storage/box/hadii_manifesto
name = "hadiist manifesto card box"
desc = "A box full of hadiist manifesto books."
/obj/item/weapon/storage/box/hadii_manifesto/fill()
new /obj/item/pra_manifesto(src)
new /obj/item/pra_manifesto(src)
new /obj/item/pra_manifesto(src)
new /obj/item/pra_manifesto(src)
new /obj/item/pra_manifesto(src)
new /obj/item/pra_manifesto(src)
+1 -1
View File
@@ -84,7 +84,7 @@
M.equip_to_slot_or_del(new /obj/item/weapon/reagent_containers/spray/pepper(M), slot_l_store)
M.equip_to_slot_or_del(new /obj/item/device/taperecorder/cciaa(M), slot_r_store)
var/obj/item/clothing/suit/storage/toggle/internalaffairs/suit = new(M)
var/obj/item/clothing/suit/storage/toggle/liaison/suit = new(M)
suit.name = "central command internal affairs jacket"
M.equip_to_slot_or_del(suit, slot_wear_suit)
@@ -43,7 +43,7 @@
/datum/gear/accessory/holster
display_name = "holster selection"
path = /obj/item/clothing/accessory/holster/armpit
allowed_roles = list("Captain", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective", "Forensic Technician", "Security Cadet")
allowed_roles = list("Captain", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective", "Forensic Technician", "Security Cadet", "Corporate Liaison")
/datum/gear/accessory/holster/New()
..()
+5
View File
@@ -87,6 +87,11 @@
desc = "A stylish, if purple, beret."
icon_state = "purpleberet"
/obj/item/clothing/head/beret/liaison
name = "corporate liaison beret"
desc = "A stylish beret worn by corporate liaisons."
icon_state = "centcomofficerberet"
/obj/item/clothing/head/beret/centcom/officer
name = "officers beret"
desc = "A black beret adorned with the shield - a silver kite shield with an engraved sword - of the NanoTrasen security forces."
+2 -2
View File
@@ -247,8 +247,8 @@ obj/item/clothing/suit/apron/overalls/blue
//Internal Affairs
/obj/item/clothing/suit/storage/toggle/internalaffairs
name = "internal affairs jacket"
/obj/item/clothing/suit/storage/toggle/liaison
name = "liaison jacket"
desc = "A smooth black jacket."
icon_state = "ia_jacket_open"
item_state = "ia_jacket"
@@ -564,3 +564,27 @@
desc = "A lightweight polymer frame meant to brace and hold someone's neck upright comfortably."
icon_state = "neckbrace"
item_state = "neckbrace"
/obj/item/clothing/accessory/offworlder/bracer/neckbrace
name = "neckbrace"
desc = "A lightweight polymer frame meant to brace and hold someone's neck upright comfortably."
icon_state = "neckbrace"
item_state = "neckbrace"
/obj/item/clothing/accessory/tc_pin
name = "Tau Ceti pin"
desc = "A small, Tau Ceti flag pin of the Republic of Tau Ceti."
icon_state = "tc-pin"
item_state = "tc-pin"
/obj/item/clothing/accessory/sol_pin
name = "Sol Alliance pin"
desc = "A small pin of the Sol Alliance, shaped like a golden sun."
icon_state = "sol-pin"
item_state = "sol-pin"
/obj/item/clothing/accessory/hadii_pin
name = "hadiist party pin"
desc = "A small, red flag pin of the People's Republic."
icon_state = "hadii-pin"
item_state = "hadii-pin"
+135 -127
View File
@@ -1,127 +1,135 @@
/*
Badges are worn on the belt or neck, and can be used to show that the holder is an authorized
Security agent - the user details can be imprinted on holobadges with a Security-access ID card,
or they can be emagged to accept any ID for use in disguises.
*/
/obj/item/clothing/accessory/badge
name = "detective's badge"
desc = "A corporate security badge, made from gold and set on false leather."
icon_state = "badge"
item_state = "marshalbadge"
slot_flags = SLOT_BELT | SLOT_TIE
var/stored_name
var/badge_string = "Corporate Security"
/obj/item/clothing/accessory/badge/press
name = "corporate press pass"
desc = "A corporate reporter's pass, emblazoned with the NanoTrasen logo."
icon_state = "pressbadge"
item_state = "pbadge"
badge_string = "Corporate Reporter"
/obj/item/clothing/accessory/badge/press/independent
name = "press pass"
desc = "A freelance journalist's pass."
icon_state = "pressbadge-i"
badge_string = "Freelance Journalist"
/obj/item/clothing/accessory/badge/old
name = "faded badge"
desc = "A faded security badge, backed with leather."
icon_state = "badge_round"
/obj/item/clothing/accessory/badge/proc/set_name(var/new_name)
stored_name = new_name
name = "[initial(name)] ([stored_name])"
/obj/item/clothing/accessory/badge/attack_self(mob/user as mob)
if(!stored_name)
to_chat(user, "You inspect your [src.name]. Everything seems to be in order and you give it a quick cleaning with your hand.")
set_name(user.real_name)
return
if(isliving(user))
if(stored_name)
user.visible_message("<span class='notice'>[user] displays their [src.name].\nIt reads: [stored_name], [badge_string].</span>","<span class='notice'>You display your [src.name].\nIt reads: [stored_name], [badge_string].</span>")
else
user.visible_message("<span class='notice'>[user] displays their [src.name].\nIt reads: [badge_string].</span>","<span class='notice'>You display your [src.name]. It reads: [badge_string].</span>")
/obj/item/clothing/accessory/badge/attack(mob/living/carbon/human/M, mob/living/user)
if(isliving(user))
user.visible_message("<span class='danger'>[user] invades [M]'s personal space, thrusting [src] into their face insistently.</span>","<span class='danger'>You invade [M]'s personal space, thrusting [src] into their face insistently.</span>")
//.Holobadges.
/obj/item/clothing/accessory/badge/holo
name = "holobadge"
desc = "This glowing blue badge marks the holder as a member of corporate security."
icon_state = "holobadge"
item_state = "holobadge"
var/emagged //Emagging removes Sec check.
/obj/item/clothing/accessory/badge/holo/cord
icon_state = "holobadge-cord"
slot_flags = SLOT_MASK | SLOT_TIE
/obj/item/clothing/accessory/badge/holo/attack_self(mob/user as mob)
if(!stored_name)
to_chat(user, "Waving around a holobadge before swiping an ID would be pretty pointless.")
return
return ..()
/obj/item/clothing/accessory/badge/holo/emag_act(var/remaining_charges, var/mob/user)
if (emagged)
to_chat(user, "<span class='danger'>\The [src] is already cracked.</span>")
return
else
emagged = 1
to_chat(user, "<span class='danger'>You crack the holobadge security checks.</span>")
return 1
/obj/item/clothing/accessory/badge/holo/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(istype(O, /obj/item/weapon/card/id) || istype(O, /obj/item/device/pda))
var/obj/item/weapon/card/id/id_card = null
if(istype(O, /obj/item/weapon/card/id))
id_card = O
else
var/obj/item/device/pda/pda = O
id_card = pda.id
if(access_security in id_card.access || emagged)
to_chat(user, "You imprint your ID details onto the badge.")
set_name(user.real_name)
else
to_chat(user, "[src] rejects your insufficient access rights.")
return
..()
/obj/item/weapon/storage/box/holobadge
name = "holobadge box"
desc = "A box claiming to contain holobadges."
New()
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo(src)
new /obj/item/clothing/accessory/badge/holo/cord(src)
new /obj/item/clothing/accessory/badge/holo/cord(src)
..()
return
/obj/item/clothing/accessory/badge/warden
name = "warden's badge"
desc = "A silver corporate security badge. Stamped with the words 'Brig Officer.'"
icon_state = "silverbadge"
slot_flags = SLOT_TIE
/obj/item/clothing/accessory/badge/hos
name = "commander's badge"
desc = "An immaculately polished gold security badge. Labeled 'Commander.'"
icon_state = "goldbadge"
slot_flags = SLOT_TIE
/*
Badges are worn on the belt or neck, and can be used to show that the holder is an authorized
Security agent - the user details can be imprinted on holobadges with a Security-access ID card,
or they can be emagged to accept any ID for use in disguises.
*/
/obj/item/clothing/accessory/badge
name = "detective's badge"
desc = "A corporate security badge, made from gold and set on false leather."
icon_state = "badge"
item_state = "marshalbadge"
slot_flags = SLOT_BELT | SLOT_TIE
var/stored_name
var/badge_string = "Corporate Security"
/obj/item/clothing/accessory/badge/press
name = "corporate press pass"
desc = "A corporate reporter's pass, emblazoned with the NanoTrasen logo."
icon_state = "pressbadge"
item_state = "pbadge"
badge_string = "Corporate Reporter"
/obj/item/clothing/accessory/badge/press/independent
name = "press pass"
desc = "A freelance journalist's pass."
icon_state = "pressbadge-i"
badge_string = "Freelance Journalist"
/obj/item/clothing/accessory/badge/old
name = "faded badge"
desc = "A faded security badge, backed with leather."
icon_state = "badge_round"
/obj/item/clothing/accessory/badge/proc/set_name(var/new_name)
stored_name = new_name
name = "[initial(name)] ([stored_name])"
/obj/item/clothing/accessory/badge/attack_self(mob/user as mob)
if(!stored_name)
to_chat(user, "You inspect your [src.name]. Everything seems to be in order and you give it a quick cleaning with your hand.")
set_name(user.real_name)
return
if(isliving(user))
if(stored_name)
user.visible_message("<span class='notice'>[user] displays their [src.name].\nIt reads: [stored_name], [badge_string].</span>","<span class='notice'>You display your [src.name].\nIt reads: [stored_name], [badge_string].</span>")
else
user.visible_message("<span class='notice'>[user] displays their [src.name].\nIt reads: [badge_string].</span>","<span class='notice'>You display your [src.name]. It reads: [badge_string].</span>")
/obj/item/clothing/accessory/badge/attack(mob/living/carbon/human/M, mob/living/user)
if(isliving(user))
user.visible_message("<span class='danger'>[user] invades [M]'s personal space, thrusting [src] into their face insistently.</span>","<span class='danger'>You invade [M]'s personal space, thrusting [src] into their face insistently.</span>")
//.Holobadges.
/obj/item/clothing/accessory/badge/holo
name = "holobadge"
desc = "This glowing blue badge marks the holder as a member of corporate security."
icon_state = "holobadge"
item_state = "holobadge"
var/emagged //Emagging removes Sec check.
/obj/item/clothing/accessory/badge/holo/cord
icon_state = "holobadge-cord"
slot_flags = SLOT_MASK | SLOT_TIE
/obj/item/clothing/accessory/badge/holo/attack_self(mob/user as mob)
if(!stored_name)
to_chat(user, "Waving around a holobadge before swiping an ID would be pretty pointless.")
return
return ..()
/obj/item/clothing/accessory/badge/holo/emag_act(var/remaining_charges, var/mob/user)
if (emagged)
to_chat(user, "<span class='danger'>\The [src] is already cracked.</span>")
return
else
emagged = 1
to_chat(user, "<span class='danger'>You crack the holobadge security checks.</span>")
return 1
/obj/item/clothing/accessory/badge/holo/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(istype(O, /obj/item/weapon/card/id) || istype(O, /obj/item/device/pda))
var/obj/item/weapon/card/id/id_card = null
if(istype(O, /obj/item/weapon/card/id))
id_card = O
else
var/obj/item/device/pda/pda = O
id_card = pda.id
if(access_security in id_card.access || emagged)
to_chat(user, "You imprint your ID details onto the badge.")
set_name(user.real_name)
else
to_chat(user, "[src] rejects your insufficient access rights.")
return
..()
/obj/item/clothing/accessory/badge/warden
name = "warden's badge"
desc = "A silver corporate security badge. Stamped with the words 'Brig Officer.'"
icon_state = "silverbadge"
slot_flags = SLOT_TIE
/obj/item/clothing/accessory/badge/hos
name = "commander's badge"
desc = "An immaculately polished gold security badge. Labeled 'Commander.'"
icon_state = "goldbadge"
slot_flags = SLOT_TIE
/obj/item/clothing/accessory/badge/sol_visa
name = "alliance visa"
desc = "A compact piece of legal paperwork, permitting temporary entrance in the Sol Alliance."
icon_state = "sol-visa"
slot_flags = SLOT_TIE
badge_string = "Temporary Sol Alliance Visa"
/obj/item/clothing/accessory/badge/ceti_visa
name = "\improper Tau Ceti residence visa"
desc = "A compact piece of legal paperwork, permitting temporary residence in the Republic of Biesel."
icon_state = "tc-visa"
slot_flags = SLOT_TIE
badge_string = "Tau Ceti Temporary Residence"
/obj/item/clothing/accessory/badge/hadii_card
name = "party member card"
desc = "A card denoting a member of the Hadiist party."
icon_state = "hadii-id"
slot_flags = SLOT_TIE
badge_string = "Member of Party of the Free Tajara under the Leadership of Hadii"
+3 -3
View File
@@ -81,9 +81,9 @@
permeability_coefficient = 0.50
/obj/item/clothing/under/rank/internalaffairs
desc = "The plain, professional attire of an Internal Affairs Agent. The collar is <i>immaculately</i> starched."
name = "internal affairs uniform"
/obj/item/clothing/under/rank/liaison
desc = "The plain, professional attire of a corporate liaison. The collar is <i>immaculately</i> starched."
name = "corporate liaison uniform"
icon_state = "internalaffairs"
item_state = "ba_suit"
worn_state = "internalaffairs"
+7
View File
@@ -351,3 +351,10 @@
else
to_chat(user, "<font color=red>No associated computer found. Only local scans will function properly.</font>")
to_chat(user, "\n")
/obj/item/pra_manifesto
name = "hadiist manifesto"
desc = "A compact red book with the ideas and guidance of Hadii for the Tajaran society."
icon = 'icons/obj/library.dmi'
icon_state ="hadii-manifesto"
w_class = 2.0
+3 -3
View File
@@ -9,7 +9,7 @@ var/list/admin_departments
icon = 'icons/obj/library.dmi'
icon_state = "fax"
insert_anim = "faxsend"
req_one_access = list(access_lawyer, access_heads, access_armory) //Warden needs to be able to Fax tau ceti gov too.
req_one_access = list(access_lawyer, access_heads)
density = 0//It's a small machine that sits on a table, this allows small things to walk under that table
use_power = 1
idle_power_usage = 30
@@ -270,8 +270,8 @@ var/list/admin_departments
//message badmins that a fax has arrived
if (destination == current_map.boss_name)
message_admins(sender, "[uppertext(current_map.boss_short)] FAX", rcvdcopy, "CentcommFaxReply", "#006100")
else if (destination == "[current_map.system_name] Government")
message_admins(sender, "[uppertext(current_map.system_name)] GOVERNMENT FAX", rcvdcopy, "CentcommFaxReply", "#1F66A0")
else if (destination == "External Routing")
message_admins(sender, "EXTERNAL ROUTING FAX", rcvdcopy, "CentcommFaxReply", "#1F66A0")
set_cooldown(adminfax_cooldown)
spawn(50)
+6
View File
@@ -0,0 +1,6 @@
author: Alberyk
delete-after: True
changes:
- rscadd: "Replaced the IAA job with the Representative job."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

+1 -1
View File
@@ -149,7 +149,7 @@
icon_state = "chapeloffice"
/area/lawoffice
name = "\improper Internal Affairs"
name = "\improper Representative Office"
icon_state = "law"
station_area = 1
+186 -80
View File
@@ -13250,35 +13250,13 @@
/area/centcom/ferry)
"aDW" = (
/obj/machinery/computer/shuttle_control{
req_access = list(101);
req_access = list(38);
shuttle_tag = "Centcom"
},
/turf/unsimulated/floor{
name = "plating"
},
/area/centcom/ferry)
"aDX" = (
/obj/structure/sign/securearea{
desc = "A warning sign which reads 'EXTERNAL AIRLOCK'";
icon_state = "space";
layer = 4;
name = "EXTERNAL AIRLOCK";
pixel_x = 0
},
/obj/structure/window/reinforced{
dir = 4
},
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
dir = 1
},
/obj/structure/window/reinforced{
dir = 8
},
/turf/unsimulated/floor{
name = "plating"
},
/area/centcom/ferry)
"aDY" = (
/turf/unsimulated/floor{
icon_state = "vault";
@@ -13431,7 +13409,7 @@
/area/template_noop)
"aEv" = (
/obj/machinery/computer/shuttle_control{
req_access = list(101);
req_access = list(38);
shuttle_tag = "Centcom"
},
/obj/machinery/light{
@@ -13481,8 +13459,9 @@
/turf/unsimulated/wall/riveted,
/area/centcom/ferry)
"aEC" = (
/obj/machinery/door/airlock/external{
name = "Arrivals Bar Airlock"
/obj/machinery/door/airlock/centcom{
name = "Bar Airlock";
req_access = list(101)
},
/obj/machinery/door/blast/regular{
dir = 1;
@@ -24257,6 +24236,29 @@
icon_state = "carpetside"
},
/area/centcom/living)
"bwi" = (
/obj/machinery/door/airlock/centcom{
name = "Representative Office";
req_access = list(38)
},
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"bwn" = (
/obj/structure/bed/chair/office/dark{
dir = 4
},
/obj/effect/landmark/start{
name = "Corporate Liaison"
},
/obj/effect/landmark{
name = "LateJoinCorporate Liaison"
},
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"djI" = (
/obj/machinery/light{
dir = 2;
@@ -24323,6 +24325,15 @@
icon_state = "floor"
},
/area/centcom/checkpoint/aft)
"egt" = (
/obj/machinery/computer/cryopod{
pixel_y = 32
},
/obj/machinery/light{
dir = 1
},
/turf/simulated/floor/tiled,
/area/centcom/ferry)
"eiE" = (
/turf/simulated/floor/carpet/blue,
/area/centcom/legion)
@@ -24332,6 +24343,12 @@
},
/turf/simulated/floor/carpet/blue,
/area/centcom/legion)
"elZ" = (
/obj/structure/bed/chair/comfy/black,
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"epB" = (
/obj/machinery/light/small{
dir = 4;
@@ -24351,6 +24368,12 @@
dir = 4
},
/area/centcom/living)
"eJf" = (
/obj/structure/filingcabinet/chestdrawer,
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"eSC" = (
/obj/machinery/atm{
pixel_x = -26
@@ -24409,6 +24432,15 @@
/obj/machinery/chem_master,
/turf/simulated/floor/tiled/dark,
/area/centcom/legion)
"hfV" = (
/obj/machinery/light/spot{
icon_state = "tube1";
dir = 1
},
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"hDK" = (
/obj/structure/bed/chair/office/dark{
dir = 1
@@ -24510,6 +24542,12 @@
"ifh" = (
/turf/unsimulated/wall/riveted,
/area/centcom/evac)
"ikd" = (
/obj/machinery/cryopod{
dir = 4
},
/turf/simulated/floor/tiled,
/area/centcom/ferry)
"ioS" = (
/obj/structure/table/reinforced,
/obj/machinery/door/window/southright,
@@ -24652,6 +24690,15 @@
dir = 4
},
/area/centcom/living)
"kBw" = (
/obj/structure/table/wood,
/obj/item/weapon/material/ashtray/glass,
/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,
/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle,
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"kHc" = (
/obj/machinery/door/blast/regular{
density = 0;
@@ -24689,6 +24736,18 @@
icon_state = "floor"
},
/area/centcom/checkpoint/fore)
"lil" = (
/obj/machinery/light/spot{
icon_state = "tube1";
dir = 4
},
/obj/structure/bed/chair/comfy/black{
dir = 8
},
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"lkF" = (
/obj/effect/wingrille_spawn/reinforced/crescent,
/turf/unsimulated/wall/riveted,
@@ -24849,6 +24908,11 @@
dir = 8
},
/area/centcom/living)
"oQj" = (
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"oQu" = (
/obj/effect/wingrille_spawn/reinforced/crescent,
/turf/unsimulated/wall/riveted,
@@ -25109,6 +25173,13 @@
icon_state = "wood"
},
/area/centcom/living)
"vzi" = (
/obj/structure/table/wood,
/obj/machinery/computer/skills,
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"vUd" = (
/obj/structure/window/reinforced/crescent,
/obj/structure/window/reinforced/crescent{
@@ -25200,6 +25271,10 @@
dir = 1
},
/area/centcom/living)
"wyZ" = (
/obj/structure/cryofeed,
/turf/simulated/floor/tiled,
/area/centcom/ferry)
"wEJ" = (
/obj/structure/window/reinforced/crescent,
/obj/structure/window/reinforced/crescent{
@@ -25229,6 +25304,14 @@
icon_state = "green"
},
/area/centcom/living)
"wLU" = (
/obj/structure/table/wood,
/obj/item/weapon/paper_bin,
/obj/item/weapon/pen,
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"xjq" = (
/obj/machinery/light,
/obj/structure/curtain,
@@ -25237,6 +25320,20 @@
dir = 2
},
/area/centcom/spawning)
"xpI" = (
/obj/effect/wingrille_spawn/reinforced/crescent,
/turf/unsimulated/floor{
name = "plating"
},
/area/centcom/ferry)
"xKn" = (
/obj/structure/bed/chair/office/dark{
dir = 8
},
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
"xLe" = (
/obj/machinery/door/airlock/centcom{
name = "Cmdt Office";
@@ -25248,6 +25345,15 @@
},
/turf/simulated/floor/tiled/dark,
/area/centcom/legion)
"yjD" = (
/obj/machinery/door/airlock/centcom{
name = "Cryo Storage";
req_access = list(38)
},
/turf/unsimulated/floor{
icon_state = "floor"
},
/area/centcom/ferry)
(1,1,1) = {"
aaa
@@ -51899,9 +52005,9 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
aDM
aDM
aaM
aaM
aaM
@@ -52156,9 +52262,9 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
wyZ
aDM
aaM
aaM
aaM
@@ -52413,9 +52519,9 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
ikd
aDM
aaM
aaM
aaM
@@ -52670,9 +52776,9 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
egt
aDM
aaM
aaM
aaM
@@ -52925,11 +53031,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
aDM
aDM
yjD
aDM
aaM
aaM
aaM
@@ -53182,11 +53288,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
xpI
eJf
bwn
oQj
xpI
aaM
aaM
aaM
@@ -53439,11 +53545,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
xpI
vzi
wLU
oQj
xpI
aaM
aaM
aaM
@@ -53696,11 +53802,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
hfV
xKn
oQj
aDM
aaM
aaM
aaM
@@ -53953,11 +54059,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aDM
oQj
oQj
oQj
aDM
aaM
aaM
aaM
@@ -54210,11 +54316,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
xpI
elZ
oQj
oQj
xpI
aaM
aaM
aaM
@@ -54467,11 +54573,11 @@ aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
aaM
xpI
kBw
lil
oQj
xpI
aaM
aaM
aaM
@@ -54727,8 +54833,8 @@ aCb
ave
ave
ave
aaM
aaM
oQj
aDM
aaM
aaM
aaM
@@ -54984,8 +55090,8 @@ aCc
aCc
aCc
ave
aaM
aaM
oQj
aDM
aaM
aaM
aaM
@@ -55241,7 +55347,7 @@ aCT
aCc
aDB
aDM
aDM
bwi
aDM
aEj
aEj
@@ -59867,9 +59973,9 @@ aCj
aCj
aCj
aDM
aDX
aEB
aEg
aDX
aEB
aDM
aDM
aDM
+222 -232
View File
@@ -11438,13 +11438,10 @@
pixel_x = 0;
pixel_y = 32
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"ava" = (
/obj/machinery/light{
dir = 1
},
/turf/simulated/floor/wood,
/turf/simulated/floor/carpet,
/area/lawoffice)
"avb" = (
/obj/machinery/light_switch{
@@ -11459,14 +11456,12 @@
pixel_x = 3;
pixel_y = 2
},
/obj/item/weapon/storage/briefcase,
/obj/machinery/button/windowtint{
id = "iaa";
pixel_x = 24;
pixel_y = 0
},
/obj/item/device/flash,
/obj/item/device/flash,
/turf/simulated/floor/wood,
/area/lawoffice)
"avd" = (
@@ -12353,17 +12348,13 @@
/turf/simulated/floor/tiled,
/area/security/brig)
"awB" = (
/obj/structure/bed/chair/office/dark{
dir = 4
},
/obj/machinery/button/windowtint{
id = "iaa";
pixel_x = -24;
pixel_y = 0
},
/obj/effect/landmark/start{
name = "Internal Affairs Agent"
/obj/structure/filingcabinet/chestdrawer,
/obj/machinery/requests_console{
department = "Representative's Office";
departmentType = 5;
pixel_x = -32
},
/obj/structure/window/reinforced,
/turf/simulated/floor/carpet,
/area/lawoffice)
"awC" = (
@@ -13508,16 +13499,11 @@
/turf/simulated/floor/plating,
/area/security/brig)
"ayo" = (
/obj/structure/filingcabinet/chestdrawer,
/obj/machinery/light/small{
dir = 8
/obj/machinery/light{
dir = 8;
icon_state = "tube1";
pixel_x = 0
},
/obj/machinery/requests_console{
department = "Internal Affairs";
departmentType = 5;
pixel_x = -32
},
/obj/structure/window/reinforced,
/turf/simulated/floor/carpet,
/area/lawoffice)
"ayp" = (
@@ -13526,17 +13512,6 @@
/obj/structure/window/reinforced,
/turf/simulated/floor/carpet,
/area/lawoffice)
"ayq" = (
/obj/structure/bed/chair/comfy/brown{
dir = 1
},
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
icon_state = "rwindow";
dir = 4
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"ayr" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 6
@@ -14350,37 +14325,24 @@
/turf/simulated/floor/plating,
/area/security/brig)
"azQ" = (
/obj/structure/filingcabinet/chestdrawer,
/obj/machinery/light/small{
dir = 8
/obj/structure/bed/chair/office/dark{
dir = 4
},
/obj/machinery/requests_console{
department = "Internal Affairs";
departmentType = 5;
pixel_x = -32
},
/obj/structure/window/reinforced{
dir = 1
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"azR" = (
/obj/structure/table/wood,
/obj/machinery/computer/skills,
/obj/structure/window/reinforced{
dir = 1
/obj/machinery/button/windowtint{
id = "iaa";
pixel_x = -24;
pixel_y = 0
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"azS" = (
/obj/structure/bed/chair/comfy/brown,
/obj/structure/window/reinforced{
dir = 1
},
/obj/structure/window/reinforced{
icon_state = "rwindow";
dir = 4
},
/obj/structure/bed/chair/comfy/brown{
dir = 8
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"azT" = (
@@ -14394,7 +14356,6 @@
pixel_x = 3;
pixel_y = 3
},
/obj/item/device/taperecorder,
/obj/machinery/camera/network/security{
c_tag = "Security - Internal Affairs";
dir = 8
@@ -15271,14 +15232,14 @@
/area/security/brig)
"aBp" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 6
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aBq" = (
/obj/structure/table/wood,
/obj/machinery/photocopier/faxmachine{
anchored = 0;
department = "Internal Affairs' Office"
},
/obj/machinery/recharger,
/turf/simulated/floor/wood,
/area/lawoffice)
"aBr" = (
@@ -16241,35 +16202,15 @@
},
/turf/simulated/floor/tiled,
/area/security/brig)
"aCQ" = (
/obj/structure/sign/nosmoking_2{
pixel_x = -32
},
/obj/structure/window/reinforced,
/turf/simulated/floor/carpet,
/area/lawoffice)
"aCR" = (
/obj/structure/window/reinforced,
/turf/simulated/floor/carpet,
/area/lawoffice)
"aCS" = (
/obj/machinery/atmospherics/unary/vent_scrubber/on{
"aCT" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/structure/window/reinforced,
/turf/simulated/floor/carpet,
/area/lawoffice)
"aCT" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 10
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 5
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/turf/simulated/floor/wood,
/area/lawoffice)
"aCU" = (
/obj/structure/disposalpipe/segment{
dir = 4;
icon_state = "pipe-c"
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 5
},
/turf/simulated/floor/wood,
/area/lawoffice)
@@ -16282,13 +16223,24 @@
"aCW" = (
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock{
desc = "It opens and closes. Bring your relationship affairs here.";
name = "Internal Affairs";
desc = "It opens and closes.";
name = "Representative Office";
req_access = list(38)
},
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aCX" = (
@@ -16298,6 +16250,17 @@
/obj/effect/floor_decal/plaque{
desc = "Mikail Ivanovich Memorial<br>The 3rd Victim of the Odin Killer. Mikail Ivanovich had an unparalleled work ethic and an unbreakable drive to end corruption. Struck down too soon. <br>May 2419 - June 2460"
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/turf/simulated/floor/tiled,
/area/hallway/primary/starboard)
"aCY" = (
@@ -16307,12 +16270,21 @@
icon_state = "1-2";
pixel_y = 0
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/disposalpipe/junction{
dir = 1;
icon_state = "pipe-j2"
},
/obj/machinery/atmospherics/pipe/manifold/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/turf/simulated/floor/tiled,
/area/hallway/primary/starboard)
"aCZ" = (
@@ -17342,35 +17314,6 @@
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aEK" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/structure/banner,
/turf/simulated/floor/wood,
/area/lawoffice)
"aEL" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/machinery/papershredder,
/turf/simulated/floor/wood,
/area/lawoffice)
"aEM" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/turf/simulated/floor/wood,
/area/lawoffice)
"aEN" = (
/obj/structure/disposalpipe/segment{
dir = 8;
icon_state = "pipe-c"
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aEO" = (
/obj/structure/table/wood,
/obj/item/weapon/folder{
@@ -17392,12 +17335,14 @@
pixel_x = -3;
pixel_y = 4
},
/obj/item/weapon/stamp/internalaffairs,
/obj/machinery/light{
dir = 4;
icon_state = "tube1";
pixel_x = 0
},
/obj/item/weapon/stamp{
name = "representative stamp"
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aEP" = (
@@ -18634,11 +18579,6 @@
d2 = 2;
icon_state = "1-2"
},
/obj/structure/cable/green{
d1 = 1;
d2 = 4;
icon_state = "1-4"
},
/obj/structure/cable/green{
d1 = 1;
d2 = 8;
@@ -18647,112 +18587,40 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 8
},
/obj/machinery/atmospherics/pipe/manifold/hidden/supply{
dir = 8
},
/obj/effect/floor_decal/corner/blue{
icon_state = "corner_white";
dir = 9
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/turf/simulated/floor/tiled,
/area/security/brig)
"aGF" = (
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 9
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,
/turf/simulated/floor/tiled,
/area/security/brig)
"aGG" = (
/obj/machinery/door/firedoor,
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/door/blast/regular{
density = 0;
dir = 1;
icon_state = "pdoor0";
id = "Security Lockdown";
name = "Security Blast Door";
opacity = 0
},
/obj/machinery/door/airlock{
desc = "It opens and closes. Bring your relationship affairs here.";
name = "Internal Affairs";
req_access = list(38)
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aGH" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/obj/structure/flora/pottedplant/random,
/turf/simulated/floor/wood,
/area/lawoffice)
"aGI" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/obj/machinery/firealarm/south,
/turf/simulated/floor/wood,
/area/lawoffice)
"aGJ" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 9
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
icon_state = "intact-supply";
dir = 9
},
/obj/machinery/newscaster{
pixel_y = -27
},
/turf/simulated/floor/wood,
/area/lawoffice)
"aGK" = (
/obj/structure/cable/green{
d2 = 8;
icon_state = "0-8"
},
/obj/machinery/power/apc{
dir = 2;
name = "south bump";
pixel_y = -24
},
/obj/structure/cable/green,
/turf/simulated/floor/wood,
/area/lawoffice)
"aGL" = (
@@ -18774,7 +18642,7 @@
/obj/item/weapon/paper_bin,
/obj/item/weapon/pen,
/obj/machinery/door/window/westleft{
name = "Internal Affairs Desk";
name = "Representative Desk";
req_access = list(38)
},
/obj/machinery/door/firedoor,
@@ -18783,7 +18651,7 @@
dir = 2;
icon_state = "shutter0";
id = "iaa_desk";
name = "IAA Privacy Shutters";
name = "Privacy Shutters";
opacity = 0
},
/turf/simulated/floor/wood,
@@ -64392,6 +64260,23 @@
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/tiled,
/area/maintenance/atmos_control)
"cng" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/turf/simulated/floor/wood,
/area/lawoffice)
"cnM" = (
/obj/structure/closet{
name = "Patient's Closet"
@@ -64871,6 +64756,11 @@
},
/turf/simulated/floor/plating,
/area/maintenance/civ)
"evJ" = (
/obj/structure/table/wood,
/obj/item/device/flashlight/lamp,
/turf/simulated/floor/carpet,
/area/lawoffice)
"eye" = (
/obj/structure/window/reinforced{
dir = 8
@@ -65064,6 +64954,14 @@
/obj/random/junk,
/turf/simulated/floor/plating,
/area/maintenance/bar)
"fDm" = (
/obj/structure/cable/green{
d1 = 1;
d2 = 2;
icon_state = "1-2"
},
/turf/simulated/floor/wood,
/area/lawoffice)
"fFb" = (
/obj/item/ammo_casing/c45/rubber,
/turf/simulated/floor/plating,
@@ -65170,6 +65068,23 @@
/obj/machinery/atmospherics/pipe/manifold4w/visible/black,
/turf/simulated/floor/plating,
/area/engineering/engine_waste)
"fWV" = (
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
d1 = 2;
d2 = 4;
icon_state = "2-4"
},
/turf/simulated/floor/wood,
/area/lawoffice)
"fXR" = (
/obj/structure/table/standard,
/obj/item/clothing/head/beret/sec{
@@ -65184,6 +65099,14 @@
/obj/item/weapon/storage/toolbox/mechanical,
/turf/simulated/floor/plating,
/area/maintenance/maintcentral)
"gaq" = (
/obj/structure/cable/green{
d1 = 2;
d2 = 8;
icon_state = "2-8"
},
/turf/simulated/floor/tiled,
/area/hallway/primary/starboard)
"gcr" = (
/obj/structure/table/standard,
/obj/structure/cable/green{
@@ -65299,6 +65222,10 @@
/obj/machinery/door/firedoor,
/turf/simulated/floor/tiled/white,
/area/medical/medbay2)
"gMu" = (
/obj/structure/banner,
/turf/simulated/floor/wood,
/area/lawoffice)
"gNU" = (
/obj/structure/table/wood,
/obj/item/weapon/flame/candle{
@@ -65570,6 +65497,7 @@
/obj/machinery/alarm{
pixel_y = 23
},
/obj/machinery/papershredder,
/turf/simulated/floor/carpet,
/area/lawoffice)
"hLN" = (
@@ -66224,6 +66152,12 @@
},
/turf/simulated/floor/tiled/dark,
/area/crew_quarters/medbreak)
"kKm" = (
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 8
},
/turf/simulated/floor/wood,
/area/lawoffice)
"kMO" = (
/obj/structure/grille,
/obj/machinery/door/firedoor,
@@ -66333,6 +66267,14 @@
},
/turf/simulated/floor/plating,
/area/engineering/engine_waste)
"lmc" = (
/obj/structure/table/wood,
/obj/machinery/photocopier/faxmachine{
anchored = 0;
department = "Representative's Office"
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"lmd" = (
/obj/machinery/atmospherics/portables_connector,
/obj/machinery/portable_atmospherics/canister/air/airlock,
@@ -66718,6 +66660,14 @@
roof_type = null
},
/area/maintenance/maintcentral)
"mGX" = (
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
icon_state = "rwindow";
dir = 4
},
/turf/simulated/floor/carpet,
/area/lawoffice)
"mIZ" = (
/obj/machinery/atmospherics/pipe/manifold/hidden,
/turf/simulated/floor/plating,
@@ -67363,6 +67313,28 @@
},
/turf/simulated/floor/plating,
/area/maintenance/medbay)
"qto" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/structure/cable/green{
d1 = 4;
d2 = 8;
icon_state = "4-8"
},
/obj/structure/cable/green{
d1 = 1;
d2 = 4;
icon_state = "1-4"
},
/turf/simulated/floor/tiled,
/area/hallway/primary/starboard)
"qtu" = (
/obj/structure/cable{
d1 = 4;
@@ -67405,6 +67377,17 @@
/obj/structure/grille,
/turf/simulated/floor/plating,
/area/rnd/misc_lab)
"qzi" = (
/obj/machinery/door/firedoor{
enable_smart_generation = 0
},
/obj/structure/cable/green{
d1 = 1;
d2 = 2;
icon_state = "1-2"
},
/turf/simulated/floor/tiled,
/area/hallway/primary/starboard)
"qzz" = (
/obj/item/weapon/clipboard,
/obj/item/stack/packageWrap,
@@ -68617,6 +68600,13 @@
},
/turf/simulated/floor/plating,
/area/maintenance/medbay)
"wfO" = (
/obj/machinery/door/airlock/maintenance{
name = "Maintenance Access";
req_access = list(38)
},
/turf/simulated/floor/wood,
/area/lawoffice)
"whu" = (
/obj/structure/disposalpipe/trunk{
dir = 4
@@ -105419,7 +105409,7 @@ atr
atr
atr
atr
aGG
atr
atr
aKa
aLM
@@ -105669,14 +105659,14 @@ agy
agy
arY
atr
lmc
auY
awB
ayo
azQ
awB
aCQ
aEJ
aGH
gMu
awE
atr
aKb
aLN
@@ -105927,12 +105917,12 @@ acU
arZ
atr
hGy
auY
evJ
awC
ayp
azR
awC
aCR
aEK
aCV
awE
aGH
atr
aKc
@@ -106185,11 +106175,11 @@ arZ
atr
auZ
awD
ayq
azS
awD
aCS
aEL
azS
mGX
aCV
awE
aGI
atr
awK
@@ -106439,14 +106429,14 @@ acV
apy
acU
arZ
atr
ava
wfO
awE
awE
ayr
azT
aBp
aCT
aEM
awE
aGJ
atr
awK
@@ -106701,9 +106691,9 @@ avb
awF
ays
awE
awE
aCU
aEN
kKm
fWV
fDm
aGK
atr
aKd
@@ -106959,7 +106949,7 @@ awG
ayt
azU
aBq
aCV
cng
aEO
aGL
atr
@@ -107987,12 +107977,12 @@ awK
awK
awK
aBu
awK
awK
awK
aIH
awK
aLT
gaq
aNS
aNS
qzi
aNS
qto
awK
aPy
aRe