From d1fafffacca29d19853e242a05c829d220962f08 Mon Sep 17 00:00:00 2001 From: Jeff Watchson Date: Thu, 1 Feb 2024 19:18:40 +0200 Subject: [PATCH 1/6] New CL items in the backpack --- code/datums/emergency_calls/goons.dm | 39 +++++++++++++++++++ code/datums/emergency_calls/inspection.dm | 36 +++++++++++++++++ .../objects/items/devices/portable_vendor.dm | 4 ++ .../objects/items/handheld_distress_beacon.dm | 20 ++++++++++ code/modules/gear_presets/wy.dm | 20 +++++++++- 5 files changed, 118 insertions(+), 1 deletion(-) diff --git a/code/datums/emergency_calls/goons.dm b/code/datums/emergency_calls/goons.dm index 8a0b00968807..fb491a2f43c4 100644 --- a/code/datums/emergency_calls/goons.dm +++ b/code/datums/emergency_calls/goons.dm @@ -96,6 +96,45 @@ to_chat(backstory_human, SPAN_BOLD("You heard about the original distress signal ages ago, but you have only just gotten permission from corporate to enter the area.")) to_chat(backstory_human, SPAN_BOLD("Ensure no damage is incurred against Weyland-Yutani. Make sure the researcher is kept safe and follow their instructions.")) +/datum/emergency_call/goon/bodyguard + name = "Weyland-Yutani Goon (Executive Bodyguard Detail)" + mob_max = 1 + mob_min = 1 + +/datum/emergency_call/goon/bodyguard/New() + ..() + dispatch_message = "[MAIN_SHIP_NAME], this is a Weyland-Yutani Corporate Security Protection Detail shuttle inbound to the Liaison's Beacon." + objectives = "Protect the Corporate Liaison and follow his commands, unless it goes against Company policy. Do not damage Wey-Yu property." + +/datum/emergency_call/goon/bodyguard/create_member(datum/mind/M, turf/override_spawn_loc) + var/turf/spawn_loc = override_spawn_loc ? override_spawn_loc : get_spawn_point() + + if(!istype(spawn_loc)) + return //Didn't find a useable spawn point. + + var/mob/living/carbon/human/mob = new(spawn_loc) + M.transfer_to(mob, TRUE) + + if(!leader && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(mob.client, JOB_SQUAD_LEADER, time_required_for_job)) + leader = mob + to_chat(mob, SPAN_ROLE_HEADER("You are a Weyland-Yutani Corporate Security Lead!")) + arm_equipment(mob, /datum/equipment_preset/goon/lead, TRUE, TRUE) + else + to_chat(mob, SPAN_ROLE_HEADER("You are a Weyland-Yutani Corporate Security Officer!")) + arm_equipment(mob, /datum/equipment_preset/goon/standard, TRUE, TRUE) + + print_backstory(mob) + + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), mob, SPAN_BOLD("Objectives: [objectives]")), 1 SECONDS) + +/datum/emergency_call/goon/bodyguard/print_backstory(mob/living/carbon/human/M) + to_chat(M, SPAN_BOLD("You were born [pick(75;"in Europe", 15;"in Asia", 10;"on Mars")] to a poor family.")) + to_chat(M, SPAN_BOLD("Joining the ranks of Weyland-Yutani was all you could do to keep yourself and your loved ones fed.")) + to_chat(M, SPAN_BOLD("You have no idea what a xenomorph is.")) + to_chat(M, SPAN_BOLD("You are a simple security officer employed by Weyland-Yutani to guard their Executives from all Divisions alike.")) + to_chat(M, SPAN_BOLD("You were sent to act as the Executives bodyguard on the [MAIN_SHIP_NAME], you have gotten permission from corporate to enter the area.")) + to_chat(M, SPAN_BOLD("Ensure no damage is incurred against Weyland-Yutani. Make sure the CL is safe.")) + /datum/emergency_call/goon/platoon name = "Weyland-Yutani Corporate Security (Platoon)" mob_min = 8 diff --git a/code/datums/emergency_calls/inspection.dm b/code/datums/emergency_calls/inspection.dm index f0400528ac31..2840ad837c38 100644 --- a/code/datums/emergency_calls/inspection.dm +++ b/code/datums/emergency_calls/inspection.dm @@ -164,6 +164,42 @@ new /obj/item/storage/box/handcuffs(drop_spawn) new /obj/item/storage/box/handcuffs(drop_spawn) +/datum/emergency_call/inspection_wy/lawyer + name = "Lawyers - Corporate" + mob_max = 2 + mob_min = 2 + name_of_spawn = /obj/effect/landmark/ert_spawns/distress_pmc + item_spawn = /obj/effect/landmark/ert_spawns/distress_pmc/item + probability = 0 + +/datum/emergency_call/inspection_wy/lawyer/New() + ..() + objectives = "Make sure the crew of the [MAIN_SHIP_NAME] is aware of your presence. Investigate who the Corporate Liaison reported for breaking their contract and any review other Company assets and make sure they remain loyal to the Company. Make a detailed report back to Corporate." + +/datum/emergency_call/inspection_wy/lawyer/create_member(datum/mind/M, turf/override_spawn_loc) + var/turf/T = override_spawn_loc ? override_spawn_loc : get_spawn_point() + + if(!istype(T)) + return FALSE + + var/mob/living/carbon/human/H = new(T) + M.transfer_to(H, TRUE) + + if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_SQUAD_LEADER), time_required_for_job)) + leader = H + arm_equipment(H, /datum/equipment_preset/wy/exec_supervisor/lawyer, TRUE, TRUE) + to_chat(H, SPAN_ROLE_HEADER("You are a Weyland Yutani PMC Inspector!")) + to_chat(H, SPAN_ROLE_BODY("While officially your outfit does mundane security work for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company personnel. You are being dispatched to the [MAIN_SHIP_NAME] to make sure that the local Liaison has not forgotten their priorities or worse, thought to bite the hand that feeds them.")) + to_chat(H, SPAN_ROLE_BODY("Remember the USCM personnel on the ship may not appreciate your presence there. Should the Liaison be in jail, you are not to act as legal counsel in any way unless instructed to do so by Dispatch. Your basic duty is to make a detailed report of anything involving the Liaison and any other WY personnel on board the ship.")) + to_chat(H, SPAN_WARNING("Unless ordered otherwise by Dispatch, you are to avoid open conflict with the Marines. Retreat and make a report if they are outright hostile. Ahelp if you have any more questions or wish to release this character for other players.")) + else + arm_equipment(H, /datum/equipment_preset/wy/exec_spec/lawyer, TRUE, TRUE) + to_chat(H, SPAN_ROLE_HEADER("You are part of a Weyland-Yutani PMC Investigation Team!")) + to_chat(H, SPAN_ROLE_BODY("While officially your outfit does mundane security work for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company personnel. The Lead Investigator is in charge, your duty is to provide backup, counsel and any other form of assistance you can render to make sure their mission is a success.")) + to_chat(H, SPAN_ROLE_BODY("Remember that the USCM, or at least some parts of it, may be hostile towards your presence on the ship. Unless ordered otherwise by Dispatch, you and your Team Leader are to avoid open conflict with the Marines. Your main priority is making sure that your Lead survives to write the report they are due.")) + to_chat(H, SPAN_WARNING("Unless ordered otherwise by Dispatch, you are to avoid open conflict with the Marines. Your priority is the safety of your team, if the ship gets to hot, your best bet is evacuation. Ahelp if you have any more questions or wish to release this character for other players.")) + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), H, SPAN_BOLD("Objectives: [objectives]")), 1 SECONDS) + // Colonial Marshals - UA Law Enforcement / Investigative Federal Agents which usually watch over Colonies. Also a good option for prisoner transfers, investigating corporate corruption, survivor rescues, or illict trade practices(black market). /datum/emergency_call/inspection_cmb diff --git a/code/game/objects/items/devices/portable_vendor.dm b/code/game/objects/items/devices/portable_vendor.dm index da399192b713..290345da0cc9 100644 --- a/code/game/objects/items/devices/portable_vendor.dm +++ b/code/game/objects/items/devices/portable_vendor.dm @@ -267,8 +267,11 @@ req_role = JOB_CORPORATE_LIAISON listed_products = list( list("INCENTIVES", 0, null, null, null), + list("Corporate Security Bodyguard", 50, /obj/item/handheld_distress_beacon/bodyguard, "white", "A beacon which sends the PMC Dispatch Division an encoded message informing them of your request to a Corporate Security Bodyguard."), + list("Corporate Lawyer Team", 50, /obj/item/handheld_distress_beacon/lawyer, "white", "A beacon which sends the Corporate Affairs Division an encoded message informing them of your request to a Corporate Lawyer for when a contract signee breaks their contract."), list("Neurostimulator Implant", 30, /obj/item/implanter/neurostim, "white", "Implant which regulates nociception and sensory function. Benefits include pain reduction, improved balance, and improved resistance to overstimulation and disorientation. To encourage compliance, negative stimulus is applied if the implant hears a (non-radio) spoken codephrase. Implant will be degraded by the body's immune system over time, and thus malfunction with gradually increasing frequency. Personal use not recommended."), list("Ultrazine Injector", 25, /obj/item/reagent_container/hypospray/autoinjector/ultrazine/liaison, "white", "Highly-addictive stimulant. Enhances short-term physical performance, particularly running speed. Effects last approximately 10 minutes per injection. More than two injections at a time will result in overdose. Withdrawal causes extreme discomfort and hallucinations. Long-term use results in halluciations and organ failure. Conditional distribution secures subject compliance. Not for personal use."), + list("Cyanide Pill", 20, /obj/item/reagent_container/pill/cyanide, "white", "A cyanide pill, also known as a suicide pill. For the easy way out."), list("Ceramic Plate", 10, /obj/item/trash/ceramic_plate, "white", "A ceramic plate, useful in a variety of situations."), list("Cash", 5, /obj/item/spacecash/c1000/counterfeit, "white", "$1000 USD, unmarked bills"), list("WY Encryption Key", 5, /obj/item/device/encryptionkey/WY, "white", "WY private comms encryption key, for conducting private business."), @@ -282,6 +285,7 @@ list("Sake", 5, /obj/item/reagent_container/food/drinks/bottle/sake, "white", "Weyland-Yutani Sake, for a proper business dinner."), list("Beer", 5, /obj/item/reagent_container/food/drinks/cans/aspen, "white", "Weyland-Yutani Aspen Beer, for a more casual night."), list("Drinking Glass", 1, /obj/item/reagent_container/food/drinks/drinkingglass, "white", "A Drinking Glass, because you have class."), + list("Weyland-Yutani Coffee Mug", 1, /obj/item/reagent_container/food/drinks/coffeecup/wy, "white", "A Weyland-Yutani coffee mug, for any Marines who want a Company souvenir."), list("STATIONARY", 0, null, null, null), list("WY pen, black", 1, /obj/item/tool/pen/clicky, "white", "A WY pen, for writing formally on the go."), diff --git a/code/game/objects/items/handheld_distress_beacon.dm b/code/game/objects/items/handheld_distress_beacon.dm index c11a7a57c350..e75782a87058 100644 --- a/code/game/objects/items/handheld_distress_beacon.dm +++ b/code/game/objects/items/handheld_distress_beacon.dm @@ -64,3 +64,23 @@ recipient = "Anchorpoint Station" ert_full_name = list("CMB - Patrol Team - Marshals in Distress (Friendly)", "CMB - Anchorpoint Station Colonial Marine QRF (Friendly)") ert_short_name = list("SEND CMB", "SEND QRF") + +// Corporate Lawyer beacon available for 50 points at the CLs briefcase +/obj/item/handheld_distress_beacon/lawyer + name = "\improper Corporate Affairs Division handheld beacon" + desc = "An encoded beacon. This one is branded with the Weyland-Yutani slogan, 'Building Better Worlds since 2099'. Etched in stencil on the side is 'FOR CONTRACT BREAKERS ONLY'. This one is branded with the Corporate Affairs Division symbol and provided to most Executives situated in UA or TWE space." + + beacon_type = "Lawyer beacon" + recipient = "the Corporate Affairs Division" + ert_full_name = list("Inspection - Corporate") + ert_short_name = list("SEND LAWYERS") + +// Corporate Security Bodyguard beacon available for 50 points at the CLs briefcase +/obj/item/handheld_distress_beacon/bodyguard + name = "\improper PMC Dispatch Division handheld beacon" + desc = "An standard Corporate Security beacon. This one is branded with the Weyland-Yutani slogan, 'Building Better Worlds since 2099'. This one is branded with the PMC Dispatch Division symbol and provided to Executives stationed in very dangerous sites across the entire Galaxy." + + beacon_type = "Bodyguard beacon" + recipient = "the PMC Dispatch Division" + ert_full_name = list("Weyland-Yutani Goon (Executive Bodyguard Detail)") + ert_short_name = list("SEND BODYGUARD") diff --git a/code/modules/gear_presets/wy.dm b/code/modules/gear_presets/wy.dm index ac8aefb6238d..62915e99d7ae 100644 --- a/code/modules/gear_presets/wy.dm +++ b/code/modules/gear_presets/wy.dm @@ -20,7 +20,7 @@ /datum/equipment_preset/wy/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new headset_type(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/ivy(new_human), WEAR_BODY) - new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/centcom(new_human), WEAR_FEET) + new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(new_human), WEAR_FEET) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK) . = ..() @@ -63,6 +63,15 @@ rank = JOB_EXECUTIVE_SPECIALIST paygrade = PAY_SHORT_WYC5 +/datum/equipment_preset/wy/exec_spec/lawyer + name = "Corporate - E - Lawyer" + +/datum/equipment_preset/wy/exec_spec/lawyer/load_gear(mob/living/carbon/human/new_human) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) + new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/blue(new_human), WEAR_BODY) + new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/blue(new_human), WEAR_JACKET) + ..() + /datum/equipment_preset/wy/exec_supervisor name = "Corporate - F - Executive Supervisor" flags = EQUIPMENT_PRESET_EXTRA @@ -70,6 +79,15 @@ rank = JOB_EXECUTIVE_SUPERVISOR paygrade = PAY_SHORT_WYC6 +/datum/equipment_preset/wy/exec_supervisor/lawyer + name = "Corporate - F - Lawyer" + +/datum/equipment_preset/wy/exec_supervisor/lawyer/load_gear(mob/living/carbon/human/new_human) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) + new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/black(new_human), WEAR_BODY) + new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/black(new_human), WEAR_JACKET) + + /datum/equipment_preset/wy/manager skills = /datum/skills/civilian/manager idtype = /obj/item/card/id/silver/clearance_badge/manager From 4e82408f18fade3f11d33a10d84ae7e48021ea8d Mon Sep 17 00:00:00 2001 From: Jeff Watchson Date: Thu, 1 Feb 2024 19:38:41 +0200 Subject: [PATCH 2/6] Minor fixes --- code/datums/emergency_calls/inspection.dm | 16 ++++++++-------- .../objects/items/devices/portable_vendor.dm | 4 ++-- .../objects/items/handheld_distress_beacon.dm | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/code/datums/emergency_calls/inspection.dm b/code/datums/emergency_calls/inspection.dm index 2840ad837c38..06c5b9937638 100644 --- a/code/datums/emergency_calls/inspection.dm +++ b/code/datums/emergency_calls/inspection.dm @@ -188,16 +188,16 @@ if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_SQUAD_LEADER), time_required_for_job)) leader = H arm_equipment(H, /datum/equipment_preset/wy/exec_supervisor/lawyer, TRUE, TRUE) - to_chat(H, SPAN_ROLE_HEADER("You are a Weyland Yutani PMC Inspector!")) - to_chat(H, SPAN_ROLE_BODY("While officially your outfit does mundane security work for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company personnel. You are being dispatched to the [MAIN_SHIP_NAME] to make sure that the local Liaison has not forgotten their priorities or worse, thought to bite the hand that feeds them.")) - to_chat(H, SPAN_ROLE_BODY("Remember the USCM personnel on the ship may not appreciate your presence there. Should the Liaison be in jail, you are not to act as legal counsel in any way unless instructed to do so by Dispatch. Your basic duty is to make a detailed report of anything involving the Liaison and any other WY personnel on board the ship.")) - to_chat(H, SPAN_WARNING("Unless ordered otherwise by Dispatch, you are to avoid open conflict with the Marines. Retreat and make a report if they are outright hostile. Ahelp if you have any more questions or wish to release this character for other players.")) + to_chat(H, SPAN_ROLE_HEADER("You are a Weyland-Yutani Chief Attorney!")) + to_chat(H, SPAN_ROLE_BODY("While officially the Corporate Affairs Division does mundane paperwork for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company and non-Company personnel. You are being dispatched to the [MAIN_SHIP_NAME] to make sure that the USCM abides by it's signed contracts provided by the local Liaison and that they have not forgotten the real hand that feeds them.")) + to_chat(H, SPAN_ROLE_BODY("Remember the USCM personnel on the ship may not appreciate your presence there. Should the Liaison be in jail, you are to act as legal counsel in any way. Your basic duty is to make a detailed report of anything involving the Liaison, any other WY personnel and of course any contract violations on board the ship.")) + to_chat(H, SPAN_WARNING("You are to avoid open conflict with the Marines. Retreat and make a report if they are outright hostile. Ahelp if you have any more questions or wish to release this character for other players.")) else arm_equipment(H, /datum/equipment_preset/wy/exec_spec/lawyer, TRUE, TRUE) - to_chat(H, SPAN_ROLE_HEADER("You are part of a Weyland-Yutani PMC Investigation Team!")) - to_chat(H, SPAN_ROLE_BODY("While officially your outfit does mundane security work for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company personnel. The Lead Investigator is in charge, your duty is to provide backup, counsel and any other form of assistance you can render to make sure their mission is a success.")) - to_chat(H, SPAN_ROLE_BODY("Remember that the USCM, or at least some parts of it, may be hostile towards your presence on the ship. Unless ordered otherwise by Dispatch, you and your Team Leader are to avoid open conflict with the Marines. Your main priority is making sure that your Lead survives to write the report they are due.")) - to_chat(H, SPAN_WARNING("Unless ordered otherwise by Dispatch, you are to avoid open conflict with the Marines. Your priority is the safety of your team, if the ship gets to hot, your best bet is evacuation. Ahelp if you have any more questions or wish to release this character for other players.")) + to_chat(H, SPAN_ROLE_HEADER("You are part of a Weyland-Yutani Lawyer Team!")) + to_chat(H, SPAN_ROLE_BODY("While officially the Corporate Affairs Division does mundane paperwork for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company and non-Company personnel. The Chief Attorney is in charge, your duty is to provide counsel and any other form of assistance you can render to make sure your mission is a success.")) + to_chat(H, SPAN_ROLE_BODY("Remember that the USCM, or at least some parts of it, may be hostile towards your presence on the ship. You and your fellow lawyer are to avoid open conflict with the Marines. Your main priority is making sure that you both survive to write the report the Company is due.")) + to_chat(H, SPAN_WARNING("You are to avoid open conflict with the Marines. Retreat and make a report if they are outright hostile. Ahelp if you have any more questions or wish to release this character for other players.")) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), H, SPAN_BOLD("Objectives: [objectives]")), 1 SECONDS) diff --git a/code/game/objects/items/devices/portable_vendor.dm b/code/game/objects/items/devices/portable_vendor.dm index 290345da0cc9..3ceaaca4b146 100644 --- a/code/game/objects/items/devices/portable_vendor.dm +++ b/code/game/objects/items/devices/portable_vendor.dm @@ -267,8 +267,8 @@ req_role = JOB_CORPORATE_LIAISON listed_products = list( list("INCENTIVES", 0, null, null, null), - list("Corporate Security Bodyguard", 50, /obj/item/handheld_distress_beacon/bodyguard, "white", "A beacon which sends the PMC Dispatch Division an encoded message informing them of your request to a Corporate Security Bodyguard."), - list("Corporate Lawyer Team", 50, /obj/item/handheld_distress_beacon/lawyer, "white", "A beacon which sends the Corporate Affairs Division an encoded message informing them of your request to a Corporate Lawyer for when a contract signee breaks their contract."), + list("Corporate Security Bodyguard", 50, /obj/item/handheld_distress_beacon/bodyguard, "white", "A beacon which sends the PMC Dispatch Division an encoded message informing them of your request for a Corporate Security Bodyguard."), + list("Corporate Lawyer Team", 50, /obj/item/handheld_distress_beacon/lawyer, "white", "A beacon which sends the Corporate Affairs Division an encoded message informing them of your request for a Corporate Lawyer for when a contract signee breaks their contract."), list("Neurostimulator Implant", 30, /obj/item/implanter/neurostim, "white", "Implant which regulates nociception and sensory function. Benefits include pain reduction, improved balance, and improved resistance to overstimulation and disorientation. To encourage compliance, negative stimulus is applied if the implant hears a (non-radio) spoken codephrase. Implant will be degraded by the body's immune system over time, and thus malfunction with gradually increasing frequency. Personal use not recommended."), list("Ultrazine Injector", 25, /obj/item/reagent_container/hypospray/autoinjector/ultrazine/liaison, "white", "Highly-addictive stimulant. Enhances short-term physical performance, particularly running speed. Effects last approximately 10 minutes per injection. More than two injections at a time will result in overdose. Withdrawal causes extreme discomfort and hallucinations. Long-term use results in halluciations and organ failure. Conditional distribution secures subject compliance. Not for personal use."), list("Cyanide Pill", 20, /obj/item/reagent_container/pill/cyanide, "white", "A cyanide pill, also known as a suicide pill. For the easy way out."), diff --git a/code/game/objects/items/handheld_distress_beacon.dm b/code/game/objects/items/handheld_distress_beacon.dm index e75782a87058..b95599ae6d3a 100644 --- a/code/game/objects/items/handheld_distress_beacon.dm +++ b/code/game/objects/items/handheld_distress_beacon.dm @@ -72,7 +72,7 @@ beacon_type = "Lawyer beacon" recipient = "the Corporate Affairs Division" - ert_full_name = list("Inspection - Corporate") + ert_full_name = list("Lawyers - Corporate") ert_short_name = list("SEND LAWYERS") // Corporate Security Bodyguard beacon available for 50 points at the CLs briefcase From 6698a1f4c2342007cb779f9d24b924bf482d765f Mon Sep 17 00:00:00 2001 From: Jeff Watchson Date: Thu, 1 Feb 2024 20:19:00 +0200 Subject: [PATCH 3/6] Final fixes --- code/datums/emergency_calls/inspection.dm | 2 +- code/game/objects/items/devices/portable_vendor.dm | 2 +- code/modules/gear_presets/wy.dm | 13 ++++++++++++- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/code/datums/emergency_calls/inspection.dm b/code/datums/emergency_calls/inspection.dm index 06c5b9937638..16e51d519239 100644 --- a/code/datums/emergency_calls/inspection.dm +++ b/code/datums/emergency_calls/inspection.dm @@ -167,7 +167,7 @@ /datum/emergency_call/inspection_wy/lawyer name = "Lawyers - Corporate" mob_max = 2 - mob_min = 2 + mob_min = 1 name_of_spawn = /obj/effect/landmark/ert_spawns/distress_pmc item_spawn = /obj/effect/landmark/ert_spawns/distress_pmc/item probability = 0 diff --git a/code/game/objects/items/devices/portable_vendor.dm b/code/game/objects/items/devices/portable_vendor.dm index 3ceaaca4b146..a40faf9f92ba 100644 --- a/code/game/objects/items/devices/portable_vendor.dm +++ b/code/game/objects/items/devices/portable_vendor.dm @@ -268,7 +268,7 @@ listed_products = list( list("INCENTIVES", 0, null, null, null), list("Corporate Security Bodyguard", 50, /obj/item/handheld_distress_beacon/bodyguard, "white", "A beacon which sends the PMC Dispatch Division an encoded message informing them of your request for a Corporate Security Bodyguard."), - list("Corporate Lawyer Team", 50, /obj/item/handheld_distress_beacon/lawyer, "white", "A beacon which sends the Corporate Affairs Division an encoded message informing them of your request for a Corporate Lawyer for when a contract signee breaks their contract."), + list("Corporate Lawyer Team", 50, /obj/item/handheld_distress_beacon/lawyer, "white", "A beacon which sends the Corporate Affairs Division an encoded message informing them of your request for a Corporate Lawyer, required when a contract signee breaks one of their clauses."), list("Neurostimulator Implant", 30, /obj/item/implanter/neurostim, "white", "Implant which regulates nociception and sensory function. Benefits include pain reduction, improved balance, and improved resistance to overstimulation and disorientation. To encourage compliance, negative stimulus is applied if the implant hears a (non-radio) spoken codephrase. Implant will be degraded by the body's immune system over time, and thus malfunction with gradually increasing frequency. Personal use not recommended."), list("Ultrazine Injector", 25, /obj/item/reagent_container/hypospray/autoinjector/ultrazine/liaison, "white", "Highly-addictive stimulant. Enhances short-term physical performance, particularly running speed. Effects last approximately 10 minutes per injection. More than two injections at a time will result in overdose. Withdrawal causes extreme discomfort and hallucinations. Long-term use results in halluciations and organ failure. Conditional distribution secures subject compliance. Not for personal use."), list("Cyanide Pill", 20, /obj/item/reagent_container/pill/cyanide, "white", "A cyanide pill, also known as a suicide pill. For the easy way out."), diff --git a/code/modules/gear_presets/wy.dm b/code/modules/gear_presets/wy.dm index 62915e99d7ae..7017dd6f6f3b 100644 --- a/code/modules/gear_presets/wy.dm +++ b/code/modules/gear_presets/wy.dm @@ -70,6 +70,11 @@ new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/blue(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/blue(new_human), WEAR_JACKET) + new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/clipboard(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/notepad/blue(new_human), WEAR_R_STORE) + new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_L_STORE) + ..() /datum/equipment_preset/wy/exec_supervisor @@ -84,9 +89,15 @@ /datum/equipment_preset/wy/exec_supervisor/lawyer/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) + new_human.equip_to_slot_or_del(new /obj/item/storage/secure/briefcase(new_human), WEAR_R_HAND) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/black(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/black(new_human), WEAR_JACKET) - + new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/clipboard(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/spacecash/c1000/counterfeit(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/notepad/black(new_human), WEAR_R_STORE) + new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_L_STORE) + ..() /datum/equipment_preset/wy/manager skills = /datum/skills/civilian/manager From afe8fe6b104bc35cbb0b9854a9a7ec3b19b3b22c Mon Sep 17 00:00:00 2001 From: Jeff Watchson Date: Thu, 1 Feb 2024 20:31:28 +0200 Subject: [PATCH 4/6] Final fix --- code/modules/gear_presets/wy.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/gear_presets/wy.dm b/code/modules/gear_presets/wy.dm index 7017dd6f6f3b..e844e34dbcc2 100644 --- a/code/modules/gear_presets/wy.dm +++ b/code/modules/gear_presets/wy.dm @@ -70,8 +70,8 @@ new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/blue(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/blue(new_human), WEAR_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_BACK) - new_human.equip_to_slot_or_del(new /obj/item/clipboard(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/clipboard(new_human), WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/notepad/blue(new_human), WEAR_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_L_STORE) @@ -92,9 +92,9 @@ new_human.equip_to_slot_or_del(new /obj/item/storage/secure/briefcase(new_human), WEAR_R_HAND) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/black(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/black(new_human), WEAR_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_BACK) - new_human.equip_to_slot_or_del(new /obj/item/clipboard(new_human), WEAR_BACK) - new_human.equip_to_slot_or_del(new /obj/item/spacecash/c1000/counterfeit(new_human), WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/clipboard(new_human), WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/spacecash/c1000/counterfeit(new_human), WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/notepad/black(new_human), WEAR_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_L_STORE) ..() From 09c38b5bb7c1a483b5503ad0309643735af3c5f3 Mon Sep 17 00:00:00 2001 From: Jeff Watchson Date: Sat, 3 Feb 2024 18:35:23 +0200 Subject: [PATCH 5/6] Updated the Headset and spawn-in Text --- code/datums/emergency_calls/inspection.dm | 8 ++++---- code/modules/gear_presets/wy.dm | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/datums/emergency_calls/inspection.dm b/code/datums/emergency_calls/inspection.dm index 16e51d519239..d2efcf5fe275 100644 --- a/code/datums/emergency_calls/inspection.dm +++ b/code/datums/emergency_calls/inspection.dm @@ -188,15 +188,15 @@ if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, list(JOB_SQUAD_LEADER), time_required_for_job)) leader = H arm_equipment(H, /datum/equipment_preset/wy/exec_supervisor/lawyer, TRUE, TRUE) - to_chat(H, SPAN_ROLE_HEADER("You are a Weyland-Yutani Chief Attorney!")) + to_chat(H, SPAN_ROLE_HEADER("You are a Weyland-Yutani Lead Corporate Attorney!")) to_chat(H, SPAN_ROLE_BODY("While officially the Corporate Affairs Division does mundane paperwork for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company and non-Company personnel. You are being dispatched to the [MAIN_SHIP_NAME] to make sure that the USCM abides by it's signed contracts provided by the local Liaison and that they have not forgotten the real hand that feeds them.")) to_chat(H, SPAN_ROLE_BODY("Remember the USCM personnel on the ship may not appreciate your presence there. Should the Liaison be in jail, you are to act as legal counsel in any way. Your basic duty is to make a detailed report of anything involving the Liaison, any other WY personnel and of course any contract violations on board the ship.")) to_chat(H, SPAN_WARNING("You are to avoid open conflict with the Marines. Retreat and make a report if they are outright hostile. Ahelp if you have any more questions or wish to release this character for other players.")) else arm_equipment(H, /datum/equipment_preset/wy/exec_spec/lawyer, TRUE, TRUE) - to_chat(H, SPAN_ROLE_HEADER("You are part of a Weyland-Yutani Lawyer Team!")) - to_chat(H, SPAN_ROLE_BODY("While officially the Corporate Affairs Division does mundane paperwork for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company and non-Company personnel. The Chief Attorney is in charge, your duty is to provide counsel and any other form of assistance you can render to make sure your mission is a success.")) - to_chat(H, SPAN_ROLE_BODY("Remember that the USCM, or at least some parts of it, may be hostile towards your presence on the ship. You and your fellow lawyer are to avoid open conflict with the Marines. Your main priority is making sure that you both survive to write the report the Company is due.")) + to_chat(H, SPAN_ROLE_HEADER("You are a Weyland-Yutani Corporate Attorney!")) + to_chat(H, SPAN_ROLE_BODY("While officially the Corporate Affairs Division does mundane paperwork for Weyland-Yutani, in practice you serve as both official and unofficial investigators into conduct of Company and non-Company personnel. The Lead Attorney is in charge, your duty is to provide counsel and any other form of assistance you can render to make sure your mission is a success.")) + to_chat(H, SPAN_ROLE_BODY("Remember that the USCM, or at least some parts of it, may be hostile towards your presence on the ship. You and the Lead Attorney are to avoid open conflict with the Marines. Your main priority is making sure that you both survive to write the report the Company is due.")) to_chat(H, SPAN_WARNING("You are to avoid open conflict with the Marines. Retreat and make a report if they are outright hostile. Ahelp if you have any more questions or wish to release this character for other players.")) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), H, SPAN_BOLD("Objectives: [objectives]")), 1 SECONDS) diff --git a/code/modules/gear_presets/wy.dm b/code/modules/gear_presets/wy.dm index e844e34dbcc2..d492f9573b57 100644 --- a/code/modules/gear_presets/wy.dm +++ b/code/modules/gear_presets/wy.dm @@ -67,7 +67,7 @@ name = "Corporate - E - Lawyer" /datum/equipment_preset/wy/exec_spec/lawyer/load_gear(mob/living/carbon/human/new_human) - new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/blue(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/blue(new_human), WEAR_JACKET) new_human.equip_to_slot_or_del(new /obj/item/tool/pen/clicky(new_human), WEAR_IN_BACK) @@ -88,7 +88,7 @@ name = "Corporate - F - Lawyer" /datum/equipment_preset/wy/exec_supervisor/lawyer/load_gear(mob/living/carbon/human/new_human) - new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc(new_human), WEAR_L_EAR) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/storage/secure/briefcase(new_human), WEAR_R_HAND) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/black(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/corporate/black(new_human), WEAR_JACKET) From e6d89a933decaec79bafe1c4abf9711b04bfc9f9 Mon Sep 17 00:00:00 2001 From: Jeff Watchson Date: Sat, 3 Feb 2024 18:44:43 +0200 Subject: [PATCH 6/6] Corporate Security Division --- code/game/objects/items/devices/portable_vendor.dm | 2 +- code/game/objects/items/handheld_distress_beacon.dm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/devices/portable_vendor.dm b/code/game/objects/items/devices/portable_vendor.dm index a40faf9f92ba..8e7c8df1d9a7 100644 --- a/code/game/objects/items/devices/portable_vendor.dm +++ b/code/game/objects/items/devices/portable_vendor.dm @@ -267,7 +267,7 @@ req_role = JOB_CORPORATE_LIAISON listed_products = list( list("INCENTIVES", 0, null, null, null), - list("Corporate Security Bodyguard", 50, /obj/item/handheld_distress_beacon/bodyguard, "white", "A beacon which sends the PMC Dispatch Division an encoded message informing them of your request for a Corporate Security Bodyguard."), + list("Corporate Security Bodyguard", 50, /obj/item/handheld_distress_beacon/bodyguard, "white", "A beacon which sends the Corporate Security Division an encoded message informing them of your request for a Corporate Security Bodyguard."), list("Corporate Lawyer Team", 50, /obj/item/handheld_distress_beacon/lawyer, "white", "A beacon which sends the Corporate Affairs Division an encoded message informing them of your request for a Corporate Lawyer, required when a contract signee breaks one of their clauses."), list("Neurostimulator Implant", 30, /obj/item/implanter/neurostim, "white", "Implant which regulates nociception and sensory function. Benefits include pain reduction, improved balance, and improved resistance to overstimulation and disorientation. To encourage compliance, negative stimulus is applied if the implant hears a (non-radio) spoken codephrase. Implant will be degraded by the body's immune system over time, and thus malfunction with gradually increasing frequency. Personal use not recommended."), list("Ultrazine Injector", 25, /obj/item/reagent_container/hypospray/autoinjector/ultrazine/liaison, "white", "Highly-addictive stimulant. Enhances short-term physical performance, particularly running speed. Effects last approximately 10 minutes per injection. More than two injections at a time will result in overdose. Withdrawal causes extreme discomfort and hallucinations. Long-term use results in halluciations and organ failure. Conditional distribution secures subject compliance. Not for personal use."), diff --git a/code/game/objects/items/handheld_distress_beacon.dm b/code/game/objects/items/handheld_distress_beacon.dm index b95599ae6d3a..91d6a6aa945f 100644 --- a/code/game/objects/items/handheld_distress_beacon.dm +++ b/code/game/objects/items/handheld_distress_beacon.dm @@ -77,10 +77,10 @@ // Corporate Security Bodyguard beacon available for 50 points at the CLs briefcase /obj/item/handheld_distress_beacon/bodyguard - name = "\improper PMC Dispatch Division handheld beacon" - desc = "An standard Corporate Security beacon. This one is branded with the Weyland-Yutani slogan, 'Building Better Worlds since 2099'. This one is branded with the PMC Dispatch Division symbol and provided to Executives stationed in very dangerous sites across the entire Galaxy." + name = "\improper Corporate Security Division handheld beacon" + desc = "An standard Corporate Security beacon. This one is branded with the Weyland-Yutani slogan, 'Building Better Worlds since 2099'. This one is branded with the Corporate Security Division symbol and provided to Executives stationed in very dangerous sites across the entire Galaxy." beacon_type = "Bodyguard beacon" - recipient = "the PMC Dispatch Division" + recipient = "the Corporate Security Division" ert_full_name = list("Weyland-Yutani Goon (Executive Bodyguard Detail)") ert_short_name = list("SEND BODYGUARD")