diff --git a/code/game/jobs/faction/hephaestus.dm b/code/game/jobs/faction/hephaestus.dm index 547f56579fd..66965a3ab5a 100644 --- a/code/game/jobs/faction/hephaestus.dm +++ b/code/game/jobs/faction/hephaestus.dm @@ -61,6 +61,23 @@ "Operations Personnel" = /obj/outfit/job/hangar_tech/event/hephaestus ) +/datum/faction/hephaestus_industries/get_corporate_objectives(var/mission_level) + switch(mission_level) + if(REPRESENTATIVE_MISSION_HIGH) + return pick("Recruit a crew member to disperse physical or radio material besmirching the image of Zavodskoi Interstellar", + "Support Hephaestus employees involved in disputes with Zavodskoi Interstellar contractors", + "Identify and document Zavodskoi Interstellar employees with disfavourable views towards Zavodskoi") + if(REPRESENTATIVE_MISSION_MEDIUM) + return pick("Identify the seeds of unionisation among Hephaestus employees. Report union representatives", + "Have a Hephaestus employee sign a contract extension", + "Emphasise how relatable Titanius Aeson is to the common worker") + else + return pick("Conduct a survey on Hephaestus Industries employee morale", + "Evaluate crew opinions on Hephaestus industrial synthetics", + "Survey unathi crew members on their views of Hephaestus Industries", + "Identify and resolve a complaint of a Hephaestus Industries employee") + + /obj/outfit/job/hangar_tech/hephaestus name = "Hangar Technician - Hephaestus" diff --git a/code/game/jobs/faction/idris.dm b/code/game/jobs/faction/idris.dm index b0e4c9f5d10..f026483d7fb 100644 --- a/code/game/jobs/faction/idris.dm +++ b/code/game/jobs/faction/idris.dm @@ -71,6 +71,22 @@ "Service Personnel" = /obj/outfit/job/bartender/idris ) +/datum/faction/idris_incorporated/get_corporate_objectives(var/mission_level) + switch(mission_level) + if(REPRESENTATIVE_MISSION_HIGH) + return pick("Recruit economically disadvantaged crew to inform on inter-megacorporate conflict aboard the [station_name()]", + "Identify crew members with severe financial difficulties and refer them to Idris Incorporated's financial aide services") + if(REPRESENTATIVE_MISSION_MEDIUM) + return pick("Renew an Idris Incorporated employee's Non-Disclosure Agreement concerning all internal Idris operations", + "Have an Idris Incorporated sign a contract extension in exchange for discounted Le Soleil Royal purchases", + "Ensure owned Idris Incorporated synthetics are maintaining brand standards") + else + return pick("Conduct a survey on Idris Incorporated employee morale", + "Evaluate the cost of Idris Incorporated operations aboard the [station_name()] against the completion of SCC and/or Idris agenda goals", + "Evaluate crew opinions on Le Soleil Royal products", + "Identify and resolve a complaint of an Idris Incorporated employee") + + /obj/outfit/job/officer/idris name = "Security Officer - Idris" diff --git a/code/game/jobs/faction/nanotrasen.dm b/code/game/jobs/faction/nanotrasen.dm index 92eda15db9f..0de16360ab0 100644 --- a/code/game/jobs/faction/nanotrasen.dm +++ b/code/game/jobs/faction/nanotrasen.dm @@ -38,22 +38,21 @@ allowed_role_types = NT_ROLES /datum/faction/nano_trasen/get_corporate_objectives(var/mission_level) - var/objective switch(mission_level) if(REPRESENTATIVE_MISSION_HIGH) - objective = pick("Have [rand(1,4)] crewmember sign NT apprenticeship contracts", - "Make sure that the [station_name()] fullfils [rand(4,12)] cargo bounties", - "Make sure that the [station_name()] raises [rand(5000,12000)] credits by the end of the shift") + return pick("Obtain 2000 moles of gaseous Phoron or 20x Phoron Crystals for shipping to NanoTrasen Corporation.", + "Identify and report SCC command staff who are overtly favouring their origin state or company (IE. displaying origin state/corporation iconography) in breach of Conglomerate ideals", + "Identify and report any acts of inter-SCC conflict or espionage") if(REPRESENTATIVE_MISSION_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") + return pick("Have any crew member enroll onto a paid NanoTrasen Academy online learning course", + "Have a NanoTrasen employee sign a contract extension", + "Evaluate crew opinions on GetMore Corporation products available on the [station_name()]", + "Ensure Hazel! Limited positronics are compliant with brand standards", + "Evaluate crew opinions on Ingi Usang Entertainment Company products and brands") 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_name()]", - "Have [rand(3,10)] crewmembers buy Getmore products from the vendors") - - return objective + return pick("Conduct a survey on NanoTrasen Corporation employee morale", + "Identify and resolve a complaint of a NanoTrasen Corporation employee", + "Emphasise the importance of phoronic technologies aboard the [station_name()] and around the Orion Spur") /obj/outfit/job/visitor/nanotrasen name = "Off-Duty Crew Member - NanoTrasen" diff --git a/code/game/jobs/faction/orion_express.dm b/code/game/jobs/faction/orion_express.dm index 722c9f6d907..e5c6e2f206d 100644 --- a/code/game/jobs/faction/orion_express.dm +++ b/code/game/jobs/faction/orion_express.dm @@ -60,6 +60,20 @@ "Service Personnel" = /obj/outfit/job/bartender/orion ) +/datum/faction/orion_express/get_corporate_objectives(var/mission_level) + switch(mission_level) + if(REPRESENTATIVE_MISSION_HIGH) + return pick("Identify and document Orion Express employees slowing or impeding company operations (IE. inadequate mining yields; slow order deliveries; slow service catering)") + if(REPRESENTATIVE_MISSION_MEDIUM) + return pick("Promote competitiveness and the setting personal of goals among Orion Express employees", + "Ensure all outbound Orion Express packages aboard the [station_name()] are delivered", + "Evaluate crew opinions on Quick-E-Burger catering aboard the [station_name()]") + else + return pick("Conduct a survey on Orion Express employee morale", + "Survey crew members on their typical package delivery times", + "Identify and resolve a complaint of an Orion Express employee") + + /obj/outfit/job/hangar_tech/orion name = "Hangar Technician - Orion Express" diff --git a/code/game/jobs/faction/pmc.dm b/code/game/jobs/faction/pmc.dm index 53fdaad3986..a07420c9f54 100644 --- a/code/game/jobs/faction/pmc.dm +++ b/code/game/jobs/faction/pmc.dm @@ -59,6 +59,18 @@ "Medical Personnel" = /obj/outfit/job/med_tech/event/pmc ) +/datum/faction/pmc/get_corporate_objectives(var/mission_level) + switch(mission_level) + if(REPRESENTATIVE_MISSION_HIGH) + return pick("Ensure PMCG contractors are integrating properly into the [station_name()]'s corporate environment") + if(REPRESENTATIVE_MISSION_MEDIUM) + return pick("Encourage team-building exercises between PMCG subcontractors", + "Have a PMCG employee sign a contract extension") + else + return pick("Conduct a survey on Private Military Contracting Group employee morale", + "Identify and resolve a complaint of a Private Military Contracting Group employee [station_name()]") + + /obj/outfit/job/officer/pmc name = "Security Officer - PMC" diff --git a/code/game/jobs/faction/zavodskoi.dm b/code/game/jobs/faction/zavodskoi.dm index 36f6be140f2..dba8010de4d 100644 --- a/code/game/jobs/faction/zavodskoi.dm +++ b/code/game/jobs/faction/zavodskoi.dm @@ -82,6 +82,22 @@ "Science Personnel" = /obj/outfit/job/scientist/event/zavodskoi ) +/datum/faction/zavodskoi_interstellar/get_corporate_objectives(var/mission_level) + switch(mission_level) + if(REPRESENTATIVE_MISSION_HIGH) + return pick("Recruit a crew member to inform Hephaestus Industries contractors of their poor benefits, unsupportive company, and need to unionise.", + "Support Zavodskoi employees involved in disputes with Hephaestus Industries contractors", + "Identify and document Hephaestus Industries employees with disfavourable views towards Hephaestus") + if(REPRESENTATIVE_MISSION_MEDIUM) + return pick("Identify and rectify Zavodskoi Interstellar employees not compliant with company image standards or otherwise damaging company optics", + "Identify and rectify aberrant behaviour in Zavodskoi Interstellar synthetics.", + "Have a Zavodskoi employee sign a contract extension in exchange for a nearly-all-paid, 3-day holiday to a destination of choice on Moroz") + else + return pick("Conduct a survey on Zavodskoi Interstellar employee morale", + "Evaluate crew opinions on Zavodskoi Interstellar's company image", + "Identify and resolve a complaint of a Zavodskoi Interstellar employee") + + /obj/outfit/job/officer/zavodskoi name = "Security Officer - Zavodskoi Interstellar" diff --git a/code/game/jobs/faction/zeng_hu.dm b/code/game/jobs/faction/zeng_hu.dm index e99896a950b..7a9b9c11e8f 100644 --- a/code/game/jobs/faction/zeng_hu.dm +++ b/code/game/jobs/faction/zeng_hu.dm @@ -66,6 +66,22 @@ "Medical Personnel" = /obj/outfit/job/med_tech/event/zeng_hu ) +/datum/faction/zeng_hu/get_corporate_objectives(var/mission_level) + switch(mission_level) + if(REPRESENTATIVE_MISSION_HIGH) + return pick("Obtain copies of research documentation from the [station_name()] Science Department", + "Identify veteran NanoTrasen Corporation employees willing to seek employment with Zeng-Hu Pharmaceuticals in exchange for transhuman benefits", + "Obtain research prototypes or pharmaceutical products produced by NanoTrasen Corporation employees for analysis") + if(REPRESENTATIVE_MISSION_MEDIUM) + return pick("Have a Zeng-Hu Pharmaceuticals employee sign a contract extension in exchange for company-covered cyber- or bio-augmentation", + "Award a seniority or veterancy plate to Zeng-Hu—loaned command personnel. If refused, identify and report why", + "Evaluate crew opinions on keiretsu member products and brands") + else + return pick("Conduct a survey on Zeng-Hu Pharmaceuticals employee morale", + "Evaluate crew views towards transhumanity, and preferences towards bioaugmentation or cyberaugmentation", + "Identify and resolve a complaint of a Zeng-Hu Pharmaceuticals employee") + + /obj/outfit/job/doctor/zeng_hu name = "Physician - Zeng-Hu" diff --git a/code/game/jobs/job/outsider/representative.dm b/code/game/jobs/job/outsider/representative.dm index f628f137978..bab7f16e8a0 100644 --- a/code/game/jobs/job/outsider/representative.dm +++ b/code/game/jobs/job/outsider/representative.dm @@ -157,27 +157,42 @@ /obj/outfit/job/representative/post_equip(mob/living/carbon/human/H, visualsOnly) . = ..() if(H && !visualsOnly) - addtimer(CALLBACK(src, PROC_REF(send_representative_mission), H), 5 MINUTES) + send_representative_mission(H) return TRUE /obj/outfit/job/representative/proc/send_representative_mission(var/mob/living/carbon/human/H) - var/faxtext = "


Directives Report


" - faxtext += "Attention [name], the following directives are to be fulfilled during your stay on the [station_name()]: