From 0d14acd5ec5281b69221d85241b12a1cdb2a3177 Mon Sep 17 00:00:00 2001 From: Lance Date: Sat, 2 Dec 2023 17:51:41 -0500 Subject: [PATCH 1/3] Initial Commit Initial Commit --- .../tegu_items/refinery/refinery.dm | 12 ++- .../tegu_items/refinery/sales.dm | 5 + .../tegu_items/representative/console.dm | 12 ++- .../tegu_items/representative/research.dm | 21 ---- .../representative/research/generic.dm | 60 +++++++++++ .../representative/research/lcorp.dm | 100 ++++++++++++++++-- .../representative/research/ncorp.dm | 12 +-- .../representative/research/pcorp.dm | 14 +-- .../representative/research/wcorp.dm | 20 ++-- code/_globalvars/lists/objects.dm | 7 +- .../subsystem/abnormality_queue.dm | 8 +- code/controllers/subsystem/lobotomy_corp.dm | 14 +-- .../ai/sanity/_sanityloss_controller.dm | 2 +- .../computer/abnormality_auxilary.dm | 67 ++++++++++++ .../machinery/computer/abnormality_queue.dm | 4 +- .../machinery/computer/abnormality_work.dm | 6 +- .../game/machinery/computer/manager_camera.dm | 4 +- code/game/machinery/regenerator.dm | 6 +- code/game/objects/effects/landmarks.dm | 4 +- code/game/objects/structures/ordealmonitor.dm | 4 +- .../job_types/trusted_players/sephirah.dm | 2 +- .../simple_animal/hostile/ordeal/crimson.dm | 2 +- code/modules/suppressions/command.dm | 2 +- code/modules/suppressions/control.dm | 4 +- code/modules/suppressions/records.dm | 2 +- code/modules/suppressions/safety.dm | 4 +- lobotomy-corp13.dme | 1 + 27 files changed, 305 insertions(+), 94 deletions(-) create mode 100644 ModularTegustation/tegu_items/representative/research/generic.dm create mode 100644 code/game/machinery/computer/abnormality_auxilary.dm diff --git a/ModularTegustation/tegu_items/refinery/refinery.dm b/ModularTegustation/tegu_items/refinery/refinery.dm index 3e4f41c6ec74..1e7544249d1d 100644 --- a/ModularTegustation/tegu_items/refinery/refinery.dm +++ b/ModularTegustation/tegu_items/refinery/refinery.dm @@ -21,6 +21,16 @@ //TRUE is for loaded var/loaded = FALSE +/obj/structure/refinery/Initialize() + . = ..() + GLOB.lobotomy_devices += src + +/obj/structure/refinery/Destroy() + GLOB.lobotomy_devices -= src + if(loaded) + new /obj/item/rawpe(get_turf(src)) + return ..() + /obj/structure/refinery/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/rawpe)) if(!loaded) @@ -63,7 +73,7 @@ to_chat(user, "You filtered it too hard! The PE box was destroyed.") loaded = FALSE else if(blackjack == 0) - timeleft -= 20 + timeleft -= round(refine_timer/3) to_chat(user, "You correctly filter the PE, speding up refining.") /obj/structure/refinery/proc/counter() diff --git a/ModularTegustation/tegu_items/refinery/sales.dm b/ModularTegustation/tegu_items/refinery/sales.dm index 6d8a5e897108..f3e24acc9d6f 100644 --- a/ModularTegustation/tegu_items/refinery/sales.dm +++ b/ModularTegustation/tegu_items/refinery/sales.dm @@ -18,6 +18,11 @@ /obj/structure/pe_sales/Initialize() . = ..() crates_per_box = crate_timer/power_timer + GLOB.lobotomy_devices += src + +/obj/structure/pe_sales/Destroy() + GLOB.lobotomy_devices -= src + return ..() /obj/structure/pe_sales/examine(mob/user) . = ..() diff --git a/ModularTegustation/tegu_items/representative/console.dm b/ModularTegustation/tegu_items/representative/console.dm index ad1a39aec18e..cbb70cb35587 100644 --- a/ModularTegustation/tegu_items/representative/console.dm +++ b/ModularTegustation/tegu_items/representative/console.dm @@ -29,6 +29,14 @@ //For things we already researched. var/list/researched_stuff = list() +/obj/structure/representative_console/Initialize() + . = ..() + GLOB.lobotomy_devices += src + +/obj/structure/representative_console/Destroy() + GLOB.lobotomy_devices -= src + return ..() + //Landmarks for placing office stuff /obj/effect/landmark/custom_office/poster name = "custom office landmark" @@ -77,7 +85,7 @@ dat += " ----------------------------
" for(var/datum/data/extraction_cargo/A in order_list) if((A.catagory == our_corporation || A.catagory == ALL_REP_RESEARCH)) - dat += " [A.equipment_name]([A.cost] AHN)
" + dat += " [A.equipment_name] ([A.cost] AHN)
" dat += " ----------------------------
" dat += " :[our_corporation] RESEARCH:
" @@ -85,7 +93,7 @@ dat += " ----------------------------
" for(var/datum/data/lc13research/R in research_list) if(!LAZYFIND(researched_stuff, R) && R.CanResearch(src)) - dat += " [R.research_name]([R.cost] PE)
" + dat += " [R.research_name] ([R.cost] PE)
" dat += " :[R.research_desc]
" dat += " -----
" var/datum/browser/popup = new(user, "RepVendor", "RepVendor", 440, 640) diff --git a/ModularTegustation/tegu_items/representative/research.dm b/ModularTegustation/tegu_items/representative/research.dm index 17c501151cce..985bc8e2b22e 100644 --- a/ModularTegustation/tegu_items/representative/research.dm +++ b/ModularTegustation/tegu_items/representative/research.dm @@ -68,27 +68,6 @@ #define AVERAGE_RESEARCH_PRICE 10 #define HIGH_RESEARCH_PRICE 25 #define MAX_RESEARCH_PRICE 50 -//-----GENERAL----- - -/datum/data/lc13research/ratknife - research_name = "Rat Equipment Stock" - research_desc = "Contribute some energy to request the clerks in charge of stocking our equipment to buy a crate of knives." - cost = LOW_RESEARCH_PRICE - corp = ALL_REP_RESEARCH - -/datum/data/lc13research/ratknife/ResearchEffect(obj/structure/representative_console/caller) - ItemUnlock(caller.order_list, "Rat Knife", /obj/item/ego_weapon/city/rats/knife, 100) - ItemUnlock(caller.order_list, "Rat Hammer", /obj/item/ego_weapon/city/rats, 100) - ItemUnlock(caller.order_list, "Brick", /obj/item/ego_weapon/city/rats/brick, 100) - ItemUnlock(caller.order_list, "Metal Pipe", /obj/item/ego_weapon/city/rats/pipe, 100) - ..() - -/datum/data/lc13research/mobspawner/zwei - research_name = "Zwei Section 6 Team" - research_desc = "For a small slice of funds we can hire the local zwei to assist us." - cost = AVERAGE_RESEARCH_PRICE - corp = ALL_REP_RESEARCH - mobspawner_type = /obj/effect/mob_spawn/human/supplypod/r_corp/zwei_call /* Unfinished /datum/data/lc13research/mobspawner/association diff --git a/ModularTegustation/tegu_items/representative/research/generic.dm b/ModularTegustation/tegu_items/representative/research/generic.dm new file mode 100644 index 000000000000..a81d19c2bfd1 --- /dev/null +++ b/ModularTegustation/tegu_items/representative/research/generic.dm @@ -0,0 +1,60 @@ +//-----GENERAL----- + +/datum/data/lc13research/ratknife + research_name = "Rat Equipment Stock" + research_desc = "Contribute some energy to request the clerks in charge of stocking
our equipment to buy a crate of knives." + cost = LOW_RESEARCH_PRICE + corp = ALL_REP_RESEARCH + +/datum/data/lc13research/ratknife/ResearchEffect(obj/structure/representative_console/caller) + ItemUnlock(caller.order_list, "Rat Knife", /obj/item/ego_weapon/city/rats/knife, 100) + ItemUnlock(caller.order_list, "Rat Hammer", /obj/item/ego_weapon/city/rats, 100) + ItemUnlock(caller.order_list, "Brick", /obj/item/ego_weapon/city/rats/brick, 100) + ItemUnlock(caller.order_list, "Metal Pipe", /obj/item/ego_weapon/city/rats/pipe, 100) + ..() + +/datum/data/lc13research/refineryspeed + research_name = "Refinement Process Efficiency Upgrade I" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = LOW_RESEARCH_PRICE + corp = ALL_REP_RESEARCH + +/datum/data/lc13research/refineryspeed/ResearchEffect(obj/structure/representative_console/caller) + . = ..() + for(var/obj/structure/refinery/ref in GLOB.lobotomy_devices) + ref.refine_timer -= initial(ref.refine_timer)/10 + +/datum/data/lc13research/refineryspeed/lvl2 + research_name = "Refinement Process Efficiency Upgrade II" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = LOW_RESEARCH_PRICE + corp = ALL_REP_RESEARCH + required_research = /datum/data/lc13research/refineryspeed + +/datum/data/lc13research/salesspeed + research_name = "Sales Process Efficiency Upgrade I" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = LOW_RESEARCH_PRICE + corp = ALL_REP_RESEARCH + +/datum/data/lc13research/salesspeed/ResearchEffect(obj/structure/representative_console/caller) + . = ..() + for(var/obj/structure/pe_sales/sales in GLOB.lobotomy_devices) + sales.power_timer -= initial(sales.power_timer)/10 + sales.crate_timer -= (initial(sales.power_timer)/10)*sales.crates_per_box + +/datum/data/lc13research/salesspeed/lvl2 + research_name = "Sales Process Efficiency Upgrade II" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = LOW_RESEARCH_PRICE + corp = ALL_REP_RESEARCH + required_research = /datum/data/lc13research/salesspeed + +/// MOB SPAWNERS + +/datum/data/lc13research/mobspawner/zwei + research_name = "Zwei Section 6 Team" + research_desc = "For a small slice of funds we can hire the local zwei to assist us." + cost = AVERAGE_RESEARCH_PRICE + corp = ALL_REP_RESEARCH + mobspawner_type = /obj/effect/mob_spawn/human/supplypod/r_corp/zwei_call diff --git a/ModularTegustation/tegu_items/representative/research/lcorp.dm b/ModularTegustation/tegu_items/representative/research/lcorp.dm index 98f6a8024310..acee77429084 100644 --- a/ModularTegustation/tegu_items/representative/research/lcorp.dm +++ b/ModularTegustation/tegu_items/representative/research/lcorp.dm @@ -3,7 +3,7 @@ //Roll stuff /datum/data/lc13research/reroll - research_name = "Reroll Abno Choices " + research_name = "Reroll Abno Choices" research_desc = "You can PROBABLY convince HQ Extraction to give you another set of 3 abnos, as you're pretty tight with Big B. " cost = AVERAGE_RESEARCH_PRICE corp = L_CORP_REP @@ -14,7 +14,7 @@ ..() /datum/data/lc13research/redroll - research_name = "Enable Red Roll " + research_name = "Enable Red Roll" research_desc = "HQ Extraction trusts your judgement to let the manager press the big red button.
Everyone involved knows that this is a bad idea " cost = LOW_RESEARCH_PRICE corp = L_CORP_REP @@ -26,7 +26,7 @@ //RAKS overcharge /datum/data/lc13research/regenerator_overcharge - research_name = "Repeatable: RAK the Regenerator System " + research_name = "Repeatable: RAK the Regenerator System" research_desc = "The security department blueprints say that all the regenerators
healing systems are connected at a junction point.
A department clerk offers to take the 10 second trip to the junction
and overcharge the whole system at the cost of some refined PE." cost = AVERAGE_RESEARCH_PRICE corp = L_CORP_REP @@ -34,7 +34,7 @@ /datum/data/lc13research/regenerator_overcharge/ResearchEffect(obj/structure/representative_console/caller) if(repeat_cooldown > world.time) return - for(var/obj/machinery/regenerator/R in GLOB.regenerators) + for(var/obj/machinery/regenerator/R in GLOB.lobotomy_devices) R.burst = TRUE caller.visible_message(span_notice("The [caller] rumbles for a moment soon after your message is delivered.")) repeat_cooldown = world.time + (10 SECONDS) @@ -42,7 +42,7 @@ //PE quota Stuff /datum/data/lc13research/pe_quota1 - research_name = "Alter Facility PE Quota I " + research_name = "Alter Facility PE Quota I" research_desc = "You think you may be able to remove 1000 PE from the PE quota
at the cost of some raw PE.
Hopefully the sephirah overlook your tampering with the L corp delivery systems." cost = AVERAGE_RESEARCH_PRICE corp = L_CORP_REP @@ -54,7 +54,7 @@ ..() /datum/data/lc13research/pe_quota2 - research_name = "Alter Facility PE Quota II " + research_name = "Alter Facility PE Quota II" research_desc = "You think you may be able to remove a further 1000 PE from the PE quota
at the cost of some raw PE.
This will however forfeit your bonus at the end of the shift." cost = AVERAGE_RESEARCH_PRICE+5 corp = L_CORP_REP @@ -67,7 +67,7 @@ ..() /datum/data/lc13research/pe_quota3 - research_name = "Alter Facility PE Quota III " + research_name = "Alter Facility PE Quota III" research_desc = "You think you may be able to remove a further 1000 PE from the PE quota
at the cost of some raw PE.
The manager will be contacted about this, but you think you can weasel them out of
any issues with the district manager." cost = AVERAGE_RESEARCH_PRICE+10 corp = L_CORP_REP @@ -113,3 +113,89 @@ /datum/data/lc13research/understandingmachine/ResearchEffect(obj/structure/representative_console/caller) new /obj/item/understandingbooster(get_turf(caller)) ..() + +//Refinery Upgrades +/datum/data/lc13research/refineryspeed/lvl3 + research_name = "Refinement Process Efficiency Upgrade III" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = LOW_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/refineryspeed/lvl2 + +/datum/data/lc13research/refineryspeed/lvl4 + research_name = "Refinement Process Efficiency Upgrade IV" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = LOW_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/refineryspeed/lvl3 + +/datum/data/lc13research/refineryspeed/lvl5 + research_name = "Refinement Process Efficiency Upgrade V" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/refineryspeed/lvl4 + +/datum/data/lc13research/refineryspeed/lvl6 + research_name = "Refinement Process Efficiency Upgrade VI" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/refineryspeed/lvl5 + +/datum/data/lc13research/refineryspeed/lvl7 + research_name = "Refinement Process Efficiency Upgrade VII" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/refineryspeed/lvl6 + +/datum/data/lc13research/refineryspeed/lvl8 + research_name = "Refinement Process Efficiency Upgrade VIII" + research_desc = "Contribute some energy to improve the Refinery's processing speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/refineryspeed/lvl7 + +//Sales Upgrades +/datum/data/lc13research/salesspeed/lvl3 + research_name = "Sales Process Efficiency Upgrade III" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = LOW_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/salesspeed/lvl2 + +/datum/data/lc13research/salesspeed/lvl4 + research_name = "Sales Process Efficiency Upgrade IV" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = LOW_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/salesspeed/lvl3 + +/datum/data/lc13research/salesspeed/lvl5 + research_name = "Sales Process Efficiency Upgrade V" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/salesspeed/lvl4 + +/datum/data/lc13research/salesspeed/lvl6 + research_name = "Sales Process Efficiency Upgrade VI" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/salesspeed/lvl5 + +/datum/data/lc13research/salesspeed/lvl7 + research_name = "Sales Process Efficiency Upgrade VII" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/salesspeed/lvl6 + +/datum/data/lc13research/salesspeed/lvl8 + research_name = "Sales Process Efficiency Upgrade VIII" + research_desc = "Contribute some energy to improve the sales machines' transfer speed." + cost = AVERAGE_RESEARCH_PRICE + corp = L_CORP_REP + required_research = /datum/data/lc13research/salesspeed/lvl7 diff --git a/ModularTegustation/tegu_items/representative/research/ncorp.dm b/ModularTegustation/tegu_items/representative/research/ncorp.dm index 4d2f6c03bb5d..4558d1a1960d 100644 --- a/ModularTegustation/tegu_items/representative/research/ncorp.dm +++ b/ModularTegustation/tegu_items/representative/research/ncorp.dm @@ -2,7 +2,7 @@ //N Corp sells exp boosters. ///Stat booster line /datum/data/lc13research/nbuff1 - research_name = "N-Corporation Small Experience Ampules (x3) " + research_name = "N-Corporation Small Experience Ampules (x3)" research_desc = "An order of 3 small experience ampules.
We make these dime a dozen so we can ship 3 of them over to Lcorp for cheap." cost = LOW_RESEARCH_PRICE corp = N_CORP_REP @@ -14,7 +14,7 @@ ..() /datum/data/lc13research/nbuff2 - research_name = "N-Corporation Medium Experience Ampules (x3) " + research_name = "N-Corporation Medium Experience Ampules (x3)" research_desc = "An order of 3 medium experience ampules.
These ones are a little pricy, but we're selling them for a lot so it's all good." cost = AVERAGE_RESEARCH_PRICE corp = N_CORP_REP @@ -27,7 +27,7 @@ ..() /datum/data/lc13research/nbuff3 - research_name = "N-Corporation Large Experience Ampules (x3) " + research_name = "N-Corporation Large Experience Ampules (x3)" research_desc = "An order of 3 large experience ampules.
These ones were a pain in the ass to get ahold of, to be honest with you. \
L-Corp is a good partner though, so we can part with these" cost = HIGH_RESEARCH_PRICE @@ -41,7 +41,7 @@ ..() /datum/data/lc13research/nbuff4 - research_name = "N-Corporation Extra Large Experience Ampule " + research_name = "N-Corporation Extra Large Experience Ampule" research_desc = "An order of an extra large experience ampule.
These ones were a pain in the ass to get ahold of, to be honest with you. \
L-Corp is a good partner though, so we can part with these" cost = MAX_RESEARCH_PRICE @@ -55,7 +55,7 @@ //Limit Breaker Line /datum/data/lc13research/nlimit1 - research_name = "N-Corporation Limit Breaker Ampule I " + research_name = "N-Corporation Limit Breaker Ampule I" research_desc = "An order of an ampule to let you increase your maximum stats.
These ones are hot off the presses, and don't come cheap." cost = HIGH_RESEARCH_PRICE corp = N_CORP_REP @@ -65,7 +65,7 @@ ..() /datum/data/lc13research/nlimit2 - research_name = "N-Corporation Limit Breaker Ampule II " + research_name = "N-Corporation Limit Breaker Ampule II" research_desc = "An order of an ampule to let you increase your maximum stats.
These ones are hot off the presses, and don't come cheap." cost = HIGH_RESEARCH_PRICE corp = N_CORP_REP diff --git a/ModularTegustation/tegu_items/representative/research/pcorp.dm b/ModularTegustation/tegu_items/representative/research/pcorp.dm index d9f9aba77f2e..63f5b70056b7 100644 --- a/ModularTegustation/tegu_items/representative/research/pcorp.dm +++ b/ModularTegustation/tegu_items/representative/research/pcorp.dm @@ -2,7 +2,7 @@ //P Corp sells different storage items ///Backpack Items Line /datum/data/lc13research/pcorpbackpack - research_name = "P Corp Large Backpack (x2) " + research_name = "P Corp Large Backpack (x2)" research_desc = "Dear ambassador. We have new items for you!
Brand new backpacks that hold massive items. " cost = AVERAGE_RESEARCH_PRICE corp = P_CORP_REP @@ -13,7 +13,7 @@ ..() /datum/data/lc13research/bigpcorpbackpack - research_name = "P Corp XL Backpack (x2) " + research_name = "P Corp XL Backpack (x2)" research_desc = "Dear ambassador. We have new items for you!
Brand new backpacks that hold massive items.
This one holds 5, but slows you down a little more." cost = AVERAGE_RESEARCH_PRICE+5 corp = P_CORP_REP @@ -26,7 +26,7 @@ //Belt lines /datum/data/lc13research/egobelt - research_name = "P Corp Twin EGO Belt (x2) " + research_name = "P Corp Twin EGO Belt (x2)" research_desc = "Dear ambassador. We have new items for you!
A belt that holds twin EGO for the LCorp agents.
Ship only to their best. " cost = AVERAGE_RESEARCH_PRICE corp = P_CORP_REP @@ -38,7 +38,7 @@ ..() /datum/data/lc13research/armorbelt - research_name = "P Corp EGO Armor Belt (x2) " + research_name = "P Corp EGO Armor Belt (x2)" research_desc = "Dear ambassador. We have new items for you!
A belt that holds three EGO armor for the LCorp agents.
Ship only to their best. " cost = AVERAGE_RESEARCH_PRICE corp = P_CORP_REP @@ -52,7 +52,7 @@ //Pockets line /datum/data/lc13research/pocketpouch - research_name = "Repurchasable: P Corp Pouch (x2) " + research_name = "Repurchasable: P Corp Pouch (x2)" research_desc = "Dear ambassador. We have new items for you!
A pocket extender for the LCorp agents.
Ship only to their best. " cost = LOW_RESEARCH_PRICE corp = P_CORP_REP @@ -63,7 +63,7 @@ new /obj/item/storage/pcorp_pocket(get_turf(caller)) /datum/data/lc13research/pocketpistol - research_name = "Repurchasable: P Corp Weapon Pouch (x2) " + research_name = "Repurchasable: P Corp Weapon Pouch (x2)" research_desc = "Dear ambassador. We have new items for you!
A pocket extender for the LCorp agents that holds one small weapon.
Ship only to their best. " cost = LOW_RESEARCH_PRICE corp = P_CORP_REP @@ -77,7 +77,7 @@ //Funny Crate /datum/data/lc13research/crate - research_name = "P Corp Speed Crate (x2) " + research_name = "P Corp Speed Crate (x2)" research_desc = "Dear ambassador. We have new items for you!
A crate that speeds you up as you drag it!
We're 99% sure it won't explode but you know...
Can't make any better guarantees. " cost = AVERAGE_RESEARCH_PRICE corp = P_CORP_REP diff --git a/ModularTegustation/tegu_items/representative/research/wcorp.dm b/ModularTegustation/tegu_items/representative/research/wcorp.dm index 56d5e1fe4b06..16ff5e885fd6 100644 --- a/ModularTegustation/tegu_items/representative/research/wcorp.dm +++ b/ModularTegustation/tegu_items/representative/research/wcorp.dm @@ -9,12 +9,12 @@ corp = W_CORP_REP /datum/data/lc13research/w_corp_typea/ResearchEffect(obj/structure/representative_console/caller) - ItemUnlock(caller.order_list, "W Corp Type A Fist ", /obj/item/ego_weapon/city/charge/wcorp/fist, 1000) - ItemUnlock(caller.order_list, "W Corp Type A Axe ", /obj/item/ego_weapon/city/charge/wcorp/axe, 1000) - ItemUnlock(caller.order_list, "W Corp Type A Spear ", /obj/item/ego_weapon/city/charge/wcorp/spear, 1000) - ItemUnlock(caller.order_list, "W Corp Type A Dagger ", /obj/item/ego_weapon/city/charge/wcorp/dagger, 1000) - ItemUnlock(caller.order_list, "W Corp Type A Hammer ", /obj/item/ego_weapon/city/charge/wcorp/hammer, 1000) - ItemUnlock(caller.order_list, "W Corp Type A Hatchet ", /obj/item/ego_weapon/city/charge/wcorp/hatchet, 1000) + ItemUnlock(caller.order_list, "W Corp Type A Fist", /obj/item/ego_weapon/city/charge/wcorp/fist, 1000) + ItemUnlock(caller.order_list, "W Corp Type A Axe", /obj/item/ego_weapon/city/charge/wcorp/axe, 1000) + ItemUnlock(caller.order_list, "W Corp Type A Spear", /obj/item/ego_weapon/city/charge/wcorp/spear, 1000) + ItemUnlock(caller.order_list, "W Corp Type A Dagger", /obj/item/ego_weapon/city/charge/wcorp/dagger, 1000) + ItemUnlock(caller.order_list, "W Corp Type A Hammer", /obj/item/ego_weapon/city/charge/wcorp/hammer, 1000) + ItemUnlock(caller.order_list, "W Corp Type A Hatchet", /obj/item/ego_weapon/city/charge/wcorp/hatchet, 1000) ..() /datum/data/lc13research/w_corp_typec @@ -24,10 +24,10 @@ corp = W_CORP_REP /datum/data/lc13research/w_corp_typec/ResearchEffect(obj/structure/representative_console/caller) - ItemUnlock(caller.order_list, "W Corp Type C ShieldBlade ", /obj/item/ego_weapon/city/charge/wcorp/shield, 850) - ItemUnlock(caller.order_list, "W Corp Type C ShieldGlaive ", /obj/item/ego_weapon/city/charge/wcorp/shield/spear, 1000) - ItemUnlock(caller.order_list, "W Corp Type C ShieldClub ", /obj/item/ego_weapon/city/charge/wcorp/shield/club, 850) - ItemUnlock(caller.order_list, "W Corp Type C ShieldAxe ", /obj/item/ego_weapon/city/charge/wcorp/shield/axe, 850) + ItemUnlock(caller.order_list, "W Corp Type C ShieldBlade", /obj/item/ego_weapon/city/charge/wcorp/shield, 850) + ItemUnlock(caller.order_list, "W Corp Type C ShieldGlaive", /obj/item/ego_weapon/city/charge/wcorp/shield/spear, 1000) + ItemUnlock(caller.order_list, "W Corp Type C ShieldClub", /obj/item/ego_weapon/city/charge/wcorp/shield/club, 850) + ItemUnlock(caller.order_list, "W Corp Type C ShieldAxe", /obj/item/ego_weapon/city/charge/wcorp/shield/axe, 850) ..() /datum/data/lc13research/mobspawner/wcorp diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index 540192fb6f4c..8be88748cd8f 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -6,12 +6,7 @@ GLOBAL_LIST_EMPTY(mechas_list) //list of all mechs. Used by hostile m GLOBAL_LIST_EMPTY(shuttle_caller_list) //list of all communication consoles and AIs, for automatic shuttle calls when there are none. GLOBAL_LIST_EMPTY(machines) //NOTE: this is a list of ALL machines now. The processing machines list is SSmachine.processing ! GLOBAL_LIST_EMPTY(navigation_computers) //list of all /obj/machinery/computer/camera_advanced/shuttle_docker -GLOBAL_LIST_EMPTY(abnormality_consoles) //list of all abnormality work consoles -GLOBAL_LIST_EMPTY(abnormality_queue_consoles) //list of all abnormality queue consoles -GLOBAL_LIST_EMPTY(abnormality_auxiliary_consoles) //list of all auxiliary managerial consoles -GLOBAL_LIST_EMPTY(ordeal_monitors) //list of all ordeal monitors -GLOBAL_LIST_EMPTY(manager_consoles) //list of all manager camera consoles -GLOBAL_LIST_EMPTY(regenerators) //list of all regenerator machines +GLOBAL_LIST_EMPTY(lobotomy_devices) //list of all lobotomy corp machines GLOBAL_LIST_EMPTY(sleepers) //list of all sleepers GLOBAL_LIST_EMPTY(syndicate_shuttle_boards) //important to keep track of for managing nukeops war declarations. GLOBAL_LIST_EMPTY(navbeacons) //list of all bot nagivation beacons, used for patrolling. diff --git a/code/controllers/subsystem/abnormality_queue.dm b/code/controllers/subsystem/abnormality_queue.dm index 6529031497e3..2e01fa057894 100644 --- a/code/controllers/subsystem/abnormality_queue.dm +++ b/code/controllers/subsystem/abnormality_queue.dm @@ -79,7 +79,7 @@ SUBSYSTEM_DEF(abnormality_queue) choice.SpawnRoom() if(fucked_it_lets_rolled) - for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.abnormality_queue_consoles) + for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.lobotomy_devices) Q.ChangeLock(FALSE) fucked_it_lets_rolled = FALSE @@ -88,7 +88,7 @@ SUBSYSTEM_DEF(abnormality_queue) if(possible_abnormalities[initial(queued_abnormality.threat_level)][queued_abnormality] <= 0) stack_trace("Queued abnormality had no weight!?") possible_abnormalities[initial(queued_abnormality.threat_level)] -= queued_abnormality - for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.abnormality_queue_consoles) + for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.lobotomy_devices) Q.audible_message("[initial(queued_abnormality.name)] has arrived at the facility!") playsound(get_turf(Q), 'sound/machines/dun_don_alert.ogg', 50, TRUE) Q.updateUsrDialog() @@ -122,13 +122,13 @@ SUBSYSTEM_DEF(abnormality_queue) sleep(15 SECONDS) // Allows manager to select abnormalities if he is fast enough. SpawnAbno() message_admins("[i] round-start abnormalities have been spawned.") - for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.abnormality_queue_consoles) + for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.lobotomy_devices) Q.audible_message("All the initial Abnormalities have arrived. Have a nice day Manager.") return /datum/controller/subsystem/abnormality_queue/proc/AnnounceLock() fucked_it_lets_rolled = TRUE - for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.abnormality_queue_consoles) + for(var/obj/machinery/computer/abnormality_queue/Q in GLOB.lobotomy_devices) Q.ChangeLock(TRUE) return diff --git a/code/controllers/subsystem/lobotomy_corp.dm b/code/controllers/subsystem/lobotomy_corp.dm index afb0a6341706..8b5d0c3e972c 100644 --- a/code/controllers/subsystem/lobotomy_corp.dm +++ b/code/controllers/subsystem/lobotomy_corp.dm @@ -123,7 +123,7 @@ SUBSYSTEM_DEF(lobotomy_corp) /datum/controller/subsystem/lobotomy_corp/proc/PickPotentialSuppressions(announce = FALSE, extra_core = FALSE) if(istype(core_suppression)) return - if(!LAZYLEN(GLOB.abnormality_auxiliary_consoles)) // There's no consoles, for some reason + if(!LAZYLEN(GLOB.lobotomy_devices)) // There's no consoles, for some reason message_admins("Tried to pick potential core suppressions, but there was no auxiliary consoles! Fix it!") return var/list/cores = subtypesof(/datum/suppression) @@ -157,13 +157,13 @@ SUBSYSTEM_DEF(lobotomy_corp) var/announce_title = "[extra_core ? "Extra" : "Sephirah"] Core Suppression" priority_announce(announce_text, \ announce_title, sound = 'sound/machines/dun_don_alert.ogg') - for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.abnormality_auxiliary_consoles) + for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.lobotomy_devices) A.audible_message("[extra_core ? "Extra " : ""]Core Suppressions are now available!") playsound(get_turf(A), 'sound/machines/dun_don_alert.ogg', 50, TRUE) A.updateUsrDialog() /datum/controller/subsystem/lobotomy_corp/proc/WarnBeforeReset() - for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.abnormality_auxiliary_consoles) + for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.lobotomy_devices) A.audible_message("Core Suppression options will be disabled if you don't pick one in a minute!") playsound(get_turf(A), 'sound/machines/dun_don_alert.ogg', 100, TRUE, 14) addtimer(CALLBACK(src, .proc/ResetPotentialSuppressions, TRUE), (1 MINUTES)) @@ -171,7 +171,7 @@ SUBSYSTEM_DEF(lobotomy_corp) /datum/controller/subsystem/lobotomy_corp/proc/ResetPotentialSuppressions(announce = FALSE) if(istype(core_suppression) || !LAZYLEN(available_core_suppressions)) return - for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.abnormality_auxiliary_consoles) + for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.lobotomy_devices) A.audible_message("Core Suppression options have been disabled for this shift!") playsound(get_turf(A), 'sound/machines/dun_don_alert.ogg', 100, TRUE, 14) A.selected_core_type = null @@ -263,7 +263,7 @@ SUBSYSTEM_DEF(lobotomy_corp) if(qliphoth_state >= next_ordeal_time) if(OrdealEvent()) ran_ordeal = TRUE - for(var/obj/structure/sign/ordealmonitor/O in GLOB.ordeal_monitors) + for(var/obj/structure/sign/ordealmonitor/O in GLOB.lobotomy_devices) O.update_icon() SEND_GLOBAL_SIGNAL(COMSIG_GLOB_MELTDOWN_START, ran_ordeal) if(ran_ordeal) @@ -284,7 +284,7 @@ SUBSYSTEM_DEF(lobotomy_corp) max_time = round(max_time * C.meltdown_time_multiplier) var/list/computer_list = list() var/list/meltdown_occured = list() - for(var/obj/machinery/computer/abnormality/cmp in shuffle(GLOB.abnormality_consoles)) + for(var/obj/machinery/computer/abnormality/cmp in shuffle(GLOB.lobotomy_devices)) if(!cmp.can_meltdown) continue if(cmp.meltdown || cmp.datum_reference.working) @@ -330,7 +330,7 @@ SUBSYSTEM_DEF(lobotomy_corp) all_ordeals[next_ordeal_level] -= next_ordeal next_ordeal_time = qliphoth_state + next_ordeal.delay + (next_ordeal.random_delay ? rand(1, 2) : 0) next_ordeal_level += 1 // Increase difficulty! - for(var/obj/structure/sign/ordealmonitor/O in GLOB.ordeal_monitors) + for(var/obj/structure/sign/ordealmonitor/O in GLOB.lobotomy_devices) O.update_icon() message_admins("Next ordeal to occur will be [next_ordeal.name].") return TRUE diff --git a/code/datums/ai/sanity/_sanityloss_controller.dm b/code/datums/ai/sanity/_sanityloss_controller.dm index def59043f723..4d4a4410cb57 100644 --- a/code/datums/ai/sanity/_sanityloss_controller.dm +++ b/code/datums/ai/sanity/_sanityloss_controller.dm @@ -376,7 +376,7 @@ current_behaviors += GET_AI_BEHAVIOR(lines_type) var/list/potential_computers = list() - for(var/obj/machinery/computer/abnormality/AC in GLOB.abnormality_consoles) + for(var/obj/machinery/computer/abnormality/AC in GLOB.lobotomy_devices) if(!AC.can_meltdown) continue if(!AC.datum_reference) diff --git a/code/game/machinery/computer/abnormality_auxilary.dm b/code/game/machinery/computer/abnormality_auxilary.dm new file mode 100644 index 000000000000..2ee7c1bf48c7 --- /dev/null +++ b/code/game/machinery/computer/abnormality_auxilary.dm @@ -0,0 +1,67 @@ +// Console for all the random managerial stuff like calling rabbits or starting core suppressions +/obj/machinery/computer/abnormality_auxiliary + name = "auxiliary managerial console" + desc = "Used for various optional actions available to manager." + resistance_flags = INDESTRUCTIBLE + var/datum/suppression/selected_core_type = null + +/obj/machinery/computer/abnormality_auxiliary/Initialize() + . = ..() + GLOB.lobotomy_devices += src + flags_1 |= NODECONSTRUCT_1 + +/obj/machinery/computer/abnormality_auxiliary/Destroy() + GLOB.lobotomy_devices -= src + ..() + +/obj/machinery/computer/abnormality_auxiliary/ui_interact(mob/user) + . = ..() + var/dat + if(istype(SSlobotomy_corp.core_suppression)) + dat += "[SSlobotomy_corp.core_suppression.name] is currently in the progress!
" + else + if(ispath(selected_core_type)) + dat += "[initial(selected_core_type.name)]
" + dat += "[initial(selected_core_type.desc)]
" + dat += "Goal: [initial(selected_core_type.goal_text)]
" + dat += "Reward: [initial(selected_core_type.reward_text)]
" + dat += "Initiate" + dat += "


" + for(var/core_type in SSlobotomy_corp.available_core_suppressions) + var/datum/suppression/S = core_type + dat += "[initial(S.name)]: Select
" + var/datum/browser/popup = new(user, "abno_logs", "Auxiliary Managerial Console", 400, 400) + popup.set_content(dat) + popup.open() + return + +/obj/machinery/computer/abnormality_auxiliary/Topic(href, href_list) + . = ..() + if(.) + return . + if(ishuman(usr)) + usr.set_machine(src) + add_fingerprint(usr) + if(href_list["choose_suppression"]) + var/datum/suppression/core_type = text2path(href_list["choose_suppression"]) + if(!ispath(core_type) || !(core_type in SSlobotomy_corp.available_core_suppressions)) + return FALSE + selected_core_type = core_type + to_chat(usr, span_notice("[initial(selected_core_type.name)] has been selected!")) + playsound(get_turf(src), 'sound/machines/terminal_prompt_confirm.ogg', 50, TRUE) + updateUsrDialog() + return TRUE + if(href_list["init_suppression"]) + if(!ispath(selected_core_type) || !(selected_core_type in SSlobotomy_corp.available_core_suppressions)) + return FALSE + if(istype(SSlobotomy_corp.core_suppression)) + to_chat(usr, span_warning("A core suppression is already in the progress!")) + selected_core_type = null + return FALSE + SSlobotomy_corp.core_suppression = new selected_core_type + SSlobotomy_corp.available_core_suppressions = list() + to_chat(usr, span_userdanger("Good luck, Manager.")) + playsound(get_turf(src), 'sound/machines/terminal_prompt_confirm.ogg', 50, TRUE) + updateUsrDialog() + addtimer(CALLBACK(SSlobotomy_corp.core_suppression, /datum/suppression/proc/Run), 2 SECONDS) + return TRUE diff --git a/code/game/machinery/computer/abnormality_queue.dm b/code/game/machinery/computer/abnormality_queue.dm index 5d2e6f1f4986..6350fb3940e8 100644 --- a/code/game/machinery/computer/abnormality_queue.dm +++ b/code/game/machinery/computer/abnormality_queue.dm @@ -6,11 +6,11 @@ /obj/machinery/computer/abnormality_queue/Initialize() . = ..() - GLOB.abnormality_queue_consoles += src + GLOB.lobotomy_devices += src flags_1 |= NODECONSTRUCT_1 /obj/machinery/computer/abnormality_queue/Destroy() - GLOB.abnormality_queue_consoles -= src + GLOB.lobotomy_devices -= src ..() /obj/machinery/computer/abnormality_queue/ui_interact(mob/user, datum/tgui/ui) diff --git a/code/game/machinery/computer/abnormality_work.dm b/code/game/machinery/computer/abnormality_work.dm index 0b0ec310c8d1..b914d5cbd1e4 100644 --- a/code/game/machinery/computer/abnormality_work.dm +++ b/code/game/machinery/computer/abnormality_work.dm @@ -24,11 +24,11 @@ /obj/machinery/computer/abnormality/Initialize() . = ..() - GLOB.abnormality_consoles += src + GLOB.lobotomy_devices += src flags_1 |= NODECONSTRUCT_1 /obj/machinery/computer/abnormality/Destroy() - GLOB.abnormality_consoles -= src + GLOB.lobotomy_devices -= src ..() /obj/machinery/computer/abnormality/update_overlays() @@ -320,7 +320,7 @@ //Don't add tutorial consoles to global list, prevents them from being affected by Control suppression or other effects /obj/machinery/computer/abnormality/tutorial/Initialize() . = ..() - GLOB.abnormality_consoles -= src + GLOB.lobotomy_devices -= src //don't scramble our poor interns /obj/machinery/computer/abnormality/tutorial/Scramble() diff --git a/code/game/machinery/computer/manager_camera.dm b/code/game/machinery/computer/manager_camera.dm index 39c0ee07819b..a09adfc6c002 100644 --- a/code/game/machinery/computer/manager_camera.dm +++ b/code/game/machinery/computer/manager_camera.dm @@ -55,7 +55,7 @@ /obj/machinery/computer/camera_advanced/manager/Initialize(mapload) . = ..() - GLOB.manager_consoles += src + GLOB.lobotomy_devices += src cycle = new fire = new @@ -67,7 +67,7 @@ RegisterSignal(SSdcs, COMSIG_GLOB_MELTDOWN_START, .proc/RechargeMeltdown) /obj/machinery/computer/camera_advanced/manager/Destroy() - GLOB.manager_consoles -= src + GLOB.lobotomy_devices -= src return ..() /obj/machinery/computer/camera_advanced/manager/examine(mob/user) diff --git a/code/game/machinery/regenerator.dm b/code/game/machinery/regenerator.dm index 107d3ee7d120..3c088d73c47e 100644 --- a/code/game/machinery/regenerator.dm +++ b/code/game/machinery/regenerator.dm @@ -28,11 +28,11 @@ /obj/machinery/regenerator/Initialize() . = ..() - GLOB.regenerators += src + GLOB.lobotomy_devices += src flags_1 |= NODECONSTRUCT_1 /obj/machinery/regenerator/Destroy() - GLOB.regenerators -= src + GLOB.lobotomy_devices -= src ..() /obj/machinery/regenerator/process() @@ -150,4 +150,4 @@ /obj/machinery/regenerator/tutorial/Initialize() . = ..() - GLOB.regenerators -= src + GLOB.lobotomy_devices -= src diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm index 2d00ff88f125..459e2dc76b38 100644 --- a/code/game/objects/effects/landmarks.dm +++ b/code/game/objects/effects/landmarks.dm @@ -469,7 +469,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark/start/new_player) /obj/effect/landmark/abnormality_spawn/training_rabbit/LateInitialize() ..() datum_reference = new(src, /mob/living/simple_animal/hostile/abnormality/training_rabbit) - var/obj/machinery/computer/abnormality/training_rabbit/AR = get_closest_atom(/obj/machinery/computer/abnormality/training_rabbit, GLOB.abnormality_consoles, src) + var/obj/machinery/computer/abnormality/training_rabbit/AR = get_closest_atom(/obj/machinery/computer/abnormality/training_rabbit, GLOB.lobotomy_devices, src) if(istype(AR)) AR.datum_reference = datum_reference datum_reference.console = AR @@ -487,7 +487,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark/start/new_player) /obj/effect/landmark/abnormality_spawn/tutorial/LateInitialize() ..() datum_reference = new(src, chosen) - //Since tutorial concoles aren't in GLOB.abnormality_consoles, we can just use oview + //Since tutorial concoles aren't in GLOB.lobotomy_devices, we can just use oview var/obj/machinery/computer/abnormality/tutorial/AR = get_closest_atom(/obj/machinery/computer/abnormality/tutorial, oview(3, src), src) if(istype(AR)) AR.datum_reference = datum_reference diff --git a/code/game/objects/structures/ordealmonitor.dm b/code/game/objects/structures/ordealmonitor.dm index 5a5af700058d..655ea603817a 100644 --- a/code/game/objects/structures/ordealmonitor.dm +++ b/code/game/objects/structures/ordealmonitor.dm @@ -8,10 +8,10 @@ /obj/structure/sign/ordealmonitor/Initialize() . = ..() - GLOB.ordeal_monitors += src + GLOB.lobotomy_devices += src /obj/structure/sign/ordealmonitor/Destroy() - GLOB.ordeal_monitors -= src + GLOB.lobotomy_devices -= src return ..() /obj/structure/sign/ordealmonitor/examine(mob/user) diff --git a/code/modules/jobs/job_types/trusted_players/sephirah.dm b/code/modules/jobs/job_types/trusted_players/sephirah.dm index 80a05bbce71e..9ff35b8733e5 100644 --- a/code/modules/jobs/job_types/trusted_players/sephirah.dm +++ b/code/modules/jobs/job_types/trusted_players/sephirah.dm @@ -68,7 +68,7 @@ GLOBAL_LIST_INIT(sephirah_names, list( /client/proc/randomabno() set name = "Randomize Current Abnormality" set category = "OOC" - var/obj/machinery/computer/abnormality_queue/Q = pick(GLOB.abnormality_queue_consoles) + var/obj/machinery/computer/abnormality_queue/Q = pick(GLOB.lobotomy_devices) var/mob/living/simple_animal/hostile/abnormality/target_type = SSabnormality_queue.GetRandomPossibleAbnormality() if(Q.locked) to_chat(src, "The abnormality was already randomized. ") diff --git a/code/modules/mob/living/simple_animal/hostile/ordeal/crimson.dm b/code/modules/mob/living/simple_animal/hostile/ordeal/crimson.dm index aec178a451db..0cb8dd92a520 100644 --- a/code/modules/mob/living/simple_animal/hostile/ordeal/crimson.dm +++ b/code/modules/mob/living/simple_animal/hostile/ordeal/crimson.dm @@ -63,7 +63,7 @@ return teleporting = TRUE var/list/potential_computers = list() - for(var/obj/machinery/computer/abnormality/CA in GLOB.abnormality_consoles) + for(var/obj/machinery/computer/abnormality/CA in GLOB.lobotomy_devices) if(!CanTeleportTo(CA)) continue potential_computers += CA diff --git a/code/modules/suppressions/command.dm b/code/modules/suppressions/command.dm index 1a0db032adcb..7b4673816fab 100644 --- a/code/modules/suppressions/command.dm +++ b/code/modules/suppressions/command.dm @@ -44,7 +44,7 @@ if(melt_removed) return var/list/potential_consoles = list() - for(var/obj/machinery/computer/abnormality/A in GLOB.abnormality_consoles) + for(var/obj/machinery/computer/abnormality/A in GLOB.lobotomy_devices) if(A == console) continue if(!A.can_meltdown) diff --git a/code/modules/suppressions/control.dm b/code/modules/suppressions/control.dm index db9cf85b8577..d918863ee15b 100644 --- a/code/modules/suppressions/control.dm +++ b/code/modules/suppressions/control.dm @@ -11,7 +11,7 @@ /datum/suppression/control/End(silent = FALSE) UnregisterSignal(SSdcs, COMSIG_GLOB_MELTDOWN_START) - for(var/obj/machinery/computer/abnormality/C in GLOB.abnormality_consoles) + for(var/obj/machinery/computer/abnormality/C in GLOB.lobotomy_devices) C.scramble_list = list() // Reward! for(var/mob/living/carbon/human/H in GLOB.human_list) @@ -31,7 +31,7 @@ for(var/work in normal_works) application_scramble_list[work] = pick(choose_from - work) choose_from -= application_scramble_list[work] - for(var/obj/machinery/computer/abnormality/C in GLOB.abnormality_consoles) + for(var/obj/machinery/computer/abnormality/C in GLOB.lobotomy_devices) C.scramble_list = application_scramble_list // Created when control suppression ends; Used to track new spawns to apply the reward diff --git a/code/modules/suppressions/records.dm b/code/modules/suppressions/records.dm index 87439d7af7e8..3424a00e9805 100644 --- a/code/modules/suppressions/records.dm +++ b/code/modules/suppressions/records.dm @@ -38,7 +38,7 @@ continue H.adjust_attribute_limit(70) to_chat(H, span_notice("You feel new potential unlock within you!")) - for(var/obj/machinery/computer/camera_advanced/manager/C in GLOB.manager_consoles) + for(var/obj/machinery/computer/camera_advanced/manager/C in GLOB.lobotomy_devices) C.swap = new C.visible_message(span_notice("[C] has received a new ability!")) playsound(get_turf(C), 'sound/machines/ping.ogg', 25, TRUE) diff --git a/code/modules/suppressions/safety.dm b/code/modules/suppressions/safety.dm index c2fced479ba0..f431bb9a4d33 100644 --- a/code/modules/suppressions/safety.dm +++ b/code/modules/suppressions/safety.dm @@ -9,7 +9,7 @@ /datum/suppression/safety/Run(run_white = FALSE, silent = FALSE) . = ..() RegisterSignal(SSdcs, COMSIG_GLOB_MELTDOWN_START, .proc/OnMeltdown) - for(var/obj/machinery/regenerator/R in GLOB.regenerators) + for(var/obj/machinery/regenerator/R in GLOB.lobotomy_devices) R.reset_timer = INFINITY R.burst_cooldown = TRUE R.modified = TRUE @@ -18,7 +18,7 @@ /datum/suppression/safety/End(silent = FALSE) UnregisterSignal(SSdcs, COMSIG_GLOB_MELTDOWN_START) - for(var/obj/machinery/regenerator/R in GLOB.regenerators) // All regenerators gain permanent buff + for(var/obj/machinery/regenerator/R in GLOB.lobotomy_devices) // All regenerators gain permanent buff R.reset_timer = 0 R.regeneration_amount += 3 for(var/obj/machinery/sleeper/S in GLOB.sleepers) diff --git a/lobotomy-corp13.dme b/lobotomy-corp13.dme index 139e6285aec5..6c02bcfc6dea 100644 --- a/lobotomy-corp13.dme +++ b/lobotomy-corp13.dme @@ -3995,6 +3995,7 @@ #include "ModularTegustation\tegu_items\representative\items\lcorp.dm" #include "ModularTegustation\tegu_items\representative\items\ncorp.dm" #include "ModularTegustation\tegu_items\representative\items\pcorp.dm" +#include "ModularTegustation\tegu_items\representative\research\generic.dm" #include "ModularTegustation\tegu_items\representative\research\kcorp.dm" #include "ModularTegustation\tegu_items\representative\research\lcorp.dm" #include "ModularTegustation\tegu_items\representative\research\ncorp.dm" From 028dc040ab3fc09a2e575f9fe2c8ce7cc89a50fa Mon Sep 17 00:00:00 2001 From: Lance Date: Thu, 7 Dec 2023 16:02:17 -0500 Subject: [PATCH 2/3] Removes duplicate file --- .../computer/abnormality_auxilary.dm | 67 ------------------- .../computer/abnormality_auxiliary.dm | 4 +- 2 files changed, 2 insertions(+), 69 deletions(-) delete mode 100644 code/game/machinery/computer/abnormality_auxilary.dm diff --git a/code/game/machinery/computer/abnormality_auxilary.dm b/code/game/machinery/computer/abnormality_auxilary.dm deleted file mode 100644 index 2ee7c1bf48c7..000000000000 --- a/code/game/machinery/computer/abnormality_auxilary.dm +++ /dev/null @@ -1,67 +0,0 @@ -// Console for all the random managerial stuff like calling rabbits or starting core suppressions -/obj/machinery/computer/abnormality_auxiliary - name = "auxiliary managerial console" - desc = "Used for various optional actions available to manager." - resistance_flags = INDESTRUCTIBLE - var/datum/suppression/selected_core_type = null - -/obj/machinery/computer/abnormality_auxiliary/Initialize() - . = ..() - GLOB.lobotomy_devices += src - flags_1 |= NODECONSTRUCT_1 - -/obj/machinery/computer/abnormality_auxiliary/Destroy() - GLOB.lobotomy_devices -= src - ..() - -/obj/machinery/computer/abnormality_auxiliary/ui_interact(mob/user) - . = ..() - var/dat - if(istype(SSlobotomy_corp.core_suppression)) - dat += "[SSlobotomy_corp.core_suppression.name] is currently in the progress!
" - else - if(ispath(selected_core_type)) - dat += "[initial(selected_core_type.name)]
" - dat += "[initial(selected_core_type.desc)]
" - dat += "Goal: [initial(selected_core_type.goal_text)]
" - dat += "Reward: [initial(selected_core_type.reward_text)]
" - dat += "Initiate" - dat += "


" - for(var/core_type in SSlobotomy_corp.available_core_suppressions) - var/datum/suppression/S = core_type - dat += "[initial(S.name)]: Select
" - var/datum/browser/popup = new(user, "abno_logs", "Auxiliary Managerial Console", 400, 400) - popup.set_content(dat) - popup.open() - return - -/obj/machinery/computer/abnormality_auxiliary/Topic(href, href_list) - . = ..() - if(.) - return . - if(ishuman(usr)) - usr.set_machine(src) - add_fingerprint(usr) - if(href_list["choose_suppression"]) - var/datum/suppression/core_type = text2path(href_list["choose_suppression"]) - if(!ispath(core_type) || !(core_type in SSlobotomy_corp.available_core_suppressions)) - return FALSE - selected_core_type = core_type - to_chat(usr, span_notice("[initial(selected_core_type.name)] has been selected!")) - playsound(get_turf(src), 'sound/machines/terminal_prompt_confirm.ogg', 50, TRUE) - updateUsrDialog() - return TRUE - if(href_list["init_suppression"]) - if(!ispath(selected_core_type) || !(selected_core_type in SSlobotomy_corp.available_core_suppressions)) - return FALSE - if(istype(SSlobotomy_corp.core_suppression)) - to_chat(usr, span_warning("A core suppression is already in the progress!")) - selected_core_type = null - return FALSE - SSlobotomy_corp.core_suppression = new selected_core_type - SSlobotomy_corp.available_core_suppressions = list() - to_chat(usr, span_userdanger("Good luck, Manager.")) - playsound(get_turf(src), 'sound/machines/terminal_prompt_confirm.ogg', 50, TRUE) - updateUsrDialog() - addtimer(CALLBACK(SSlobotomy_corp.core_suppression, /datum/suppression/proc/Run), 2 SECONDS) - return TRUE diff --git a/code/game/machinery/computer/abnormality_auxiliary.dm b/code/game/machinery/computer/abnormality_auxiliary.dm index ca4efdc73bd4..96b8d6172017 100644 --- a/code/game/machinery/computer/abnormality_auxiliary.dm +++ b/code/game/machinery/computer/abnormality_auxiliary.dm @@ -18,11 +18,11 @@ /obj/machinery/computer/abnormality_auxiliary/Initialize() . = ..() - GLOB.abnormality_auxiliary_consoles += src + GLOB.lobotomy_devices += src flags_1 |= NODECONSTRUCT_1 /obj/machinery/computer/abnormality_auxiliary/Destroy() - GLOB.abnormality_auxiliary_consoles -= src + GLOB.lobotomy_devices -= src ..() /obj/machinery/computer/abnormality_auxiliary/ui_interact(mob/user) From b1de7f67a8da0638ce02dd9ed407c2de602d55f7 Mon Sep 17 00:00:00 2001 From: Lance Date: Thu, 7 Dec 2023 16:25:45 -0500 Subject: [PATCH 3/3] Update lobotomy_corp.dm --- code/controllers/subsystem/lobotomy_corp.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/controllers/subsystem/lobotomy_corp.dm b/code/controllers/subsystem/lobotomy_corp.dm index 8b5d0c3e972c..a0e22721550a 100644 --- a/code/controllers/subsystem/lobotomy_corp.dm +++ b/code/controllers/subsystem/lobotomy_corp.dm @@ -123,7 +123,8 @@ SUBSYSTEM_DEF(lobotomy_corp) /datum/controller/subsystem/lobotomy_corp/proc/PickPotentialSuppressions(announce = FALSE, extra_core = FALSE) if(istype(core_suppression)) return - if(!LAZYLEN(GLOB.lobotomy_devices)) // There's no consoles, for some reason + var/obj/machinery/computer/abnormality_auxiliary/aux_cons = locate() in GLOB.lobotomy_devices + if(!aux_cons) // There's no consoles, for some reason message_admins("Tried to pick potential core suppressions, but there was no auxiliary consoles! Fix it!") return var/list/cores = subtypesof(/datum/suppression) @@ -348,7 +349,7 @@ SUBSYSTEM_DEF(lobotomy_corp) /// Adds LOB points and notifies players via aux consoles /datum/controller/subsystem/lobotomy_corp/proc/AddLobPoints(amount = 1, message = "UNKNOWN") lob_points += amount - for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.abnormality_auxiliary_consoles) + for(var/obj/machinery/computer/abnormality_auxiliary/A in GLOB.lobotomy_devices) A.audible_message("[round(amount, 0.1)] LOB point[amount > 1 ? "s" : ""] deposited! Reason: [message].") playsound(get_turf(A), 'sound/machines/twobeep_high.ogg', 20, TRUE) A.updateUsrDialog()