From 9e035424da33b7bb8826299903e9a4485c40cbe0 Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 5 Jan 2012 19:36:26 -0800 Subject: [PATCH 1/2] Nerfed the medbot and bruise packs. --- code/game/machinery/bots/medbot.dm | 24 +--------------------- code/game/objects/items/weapons/medical.dm | 9 ++++++++ code/modules/admin/admin.dm | 4 ++++ 3 files changed, 14 insertions(+), 23 deletions(-) diff --git a/code/game/machinery/bots/medbot.dm b/code/game/machinery/bots/medbot.dm index 12911896d7d..24fdc2fff7a 100644 --- a/code/game/machinery/bots/medbot.dm +++ b/code/game/machinery/bots/medbot.dm @@ -383,29 +383,7 @@ if(src.emagged) //Emagged! Time to poison everybody. reagent_id = "toxin" - var/virus = 0 - for(var/datum/disease/D in C.viruses) - virus = 1 - - if (!reagent_id && (virus)) - if(!C.reagents.has_reagent(src.treatment_virus)) - reagent_id = src.treatment_virus - - if (!reagent_id && (C.getBruteLoss() >= heal_threshold)) - if(!C.reagents.has_reagent(src.treatment_brute)) - reagent_id = src.treatment_brute - - if (!reagent_id && (C.getOxyLoss() >= (15 + heal_threshold))) - if(!C.reagents.has_reagent(src.treatment_oxy)) - reagent_id = src.treatment_oxy - - if (!reagent_id && (C.getFireLoss() >= heal_threshold)) - if(!C.reagents.has_reagent(src.treatment_fire)) - reagent_id = src.treatment_fire - - if (!reagent_id && (C.getToxLoss() >= heal_threshold)) - if(!C.reagents.has_reagent(src.treatment_tox)) - reagent_id = src.treatment_tox + if (!reagent_id) reagent_id = "inaprovaline" if(!reagent_id) //If they don't need any of that they're probably cured! src.oldpatient = src.patient diff --git a/code/game/objects/items/weapons/medical.dm b/code/game/objects/items/weapons/medical.dm index cbf794b33a4..1d5b7452068 100644 --- a/code/game/objects/items/weapons/medical.dm +++ b/code/game/objects/items/weapons/medical.dm @@ -15,6 +15,15 @@ MEDICAL t_him = "her" user << "\red \The [M] is dead, you cannot help [t_him]!" return + if (M.health < 50) + var/t_him = "it" + if (M.gender == MALE) + t_him = "him" + else if (M.gender == FEMALE) + t_him = "her" + user << "\red \The [M] is wounded badly, this item cannot help [t_him]!" + return + if (!istype(M)) user << "\red \The [src] cannot be applied to [M]!" diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index d0a70b61229..71917f6f60e 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -1894,6 +1894,10 @@ else id = H.wear_id + if(!id) + usr << "Player has wear_id, but no id exists." + dat += "ERROR" + if(isnull(id.assignment)) usr << "ERROR: Inform the coders that an [id.name] was checked for its assignment variable." dat += "ERROR" From bf62258c0a5e697d031e06253b5dabdc33e40ac0 Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 5 Jan 2012 20:25:20 -0800 Subject: [PATCH 2/2] Fixes to AI malfunction and electrical storms. - AI malfunction will now be announced, even before it starts the takeover. After 5 minutes by default, after 25 minutes if it buys the interhack module. - Reduced blackout uses to 1. --- code/game/events/Events/ElectricalStorm.dm | 12 ++++++------ code/game/gamemodes/malfunction/Malf_Modules.dm | 4 ++-- code/game/gamemodes/malfunction/malfunction.dm | 7 +++++++ code/modules/admin/admin.dm | 5 ++--- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/code/game/events/Events/ElectricalStorm.dm b/code/game/events/Events/ElectricalStorm.dm index 1e7ec6f2966..a9174a1f9d7 100644 --- a/code/game/events/Events/ElectricalStorm.dm +++ b/code/game/events/Events/ElectricalStorm.dm @@ -84,11 +84,11 @@ proc BlowLight() //Blow out a light fixture var/obj/machinery/light/Light = null - var/insanity = 0 + var/failed_attempts = 0 while (Light == null || Light.status != 0) Light = pick(Lights) - insanity++ - if (insanity >= Lights.len) + failed_attempts++ + if (failed_attempts >= 10) return spawn(0) //Overload the light, spectacularly. @@ -98,12 +98,12 @@ Light.broken() DisruptAPC() - var/insanity = 0 + var/failed_attempts = 0 var/obj/machinery/power/apc/APC while (!APC || !APC.operating) APC = pick(APCs) - insanity++ - if (insanity >= APCs.len) + failed_attempts++ + if (failed_attempts >= 10) return if (prob(40)) diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm index 5bda8305e71..1fe28172088 100644 --- a/code/game/gamemodes/malfunction/Malf_Modules.dm +++ b/code/game/gamemodes/malfunction/Malf_Modules.dm @@ -93,7 +93,7 @@ rcd light flash thingy on matter drain /datum/AI_Module/small/blackout module_name = "Blackout" mod_pick_name = "blackout" - uses = 3 + uses = 1 /client/proc/blackout() set category = "Malfunction" @@ -246,7 +246,7 @@ rcd light flash thingy on matter drain already = 1 if (!already) usr.verbs += /client/proc/interhack - src.temp = "Hacks the status upgrade from Cent. Com, removing any information about malfunctioning electrical systems." + src.temp = "Tricks the station's automated diagnosis suite for a while, giving you more time until you are revealed." usr:current_modules += new /datum/AI_Module/small/interhack src.processing_time -= 15 else src.temp = "This module is only needed once." diff --git a/code/game/gamemodes/malfunction/malfunction.dm b/code/game/gamemodes/malfunction/malfunction.dm index a933ea28480..deff8194d9d 100644 --- a/code/game/gamemodes/malfunction/malfunction.dm +++ b/code/game/gamemodes/malfunction/malfunction.dm @@ -62,6 +62,13 @@ */ spawn (rand(waittime_l, waittime_h)) send_intercept() + sleep(10*60*5) // 5 minutes + if(intercept_hacked) + sleep(10 * 60 * 20) // 30 minutes + command_alert("Diagnosis suite failure detected. Running backup diagnosis tool.", "Anomaly Alert") + sleep(100) + command_alert("AI unit diagnosis failed. Unable to detect morality cores. Disabling of unit recommended.", "Anomaly Alert") + ..() diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 71917f6f60e..2443b1d6fee 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -1895,10 +1895,9 @@ id = H.wear_id if(!id) - usr << "Player has wear_id, but no id exists." + usr << "ERROR: Inform the coders that an [H.name] had wear_id but no ID on their ID slot." dat += "ERROR" - - if(isnull(id.assignment)) + else if(isnull(id.assignment)) usr << "ERROR: Inform the coders that an [id.name] was checked for its assignment variable." dat += "ERROR" else