From 5c237b6ac1a4c94fafd82e979c5883cadc13f1c4 Mon Sep 17 00:00:00 2001 From: clusterfack Date: Mon, 20 Apr 2015 02:14:17 -0500 Subject: [PATCH] Fixes blob intercepts not being sent to the station, both directive 7-10 and directive 7-12 which gives the station the nuke code during its final moments. --- code/game/gamemodes/blob/blob.dm | 12 +++----- code/game/gamemodes/blob/blob_report.dm | 38 ++++++++++++++----------- code/game/gamemodes/blob/theblob.dm | 8 +++--- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/code/game/gamemodes/blob/blob.dm b/code/game/gamemodes/blob/blob.dm index 7b4ab217eb8..1cd65a1672b 100644 --- a/code/game/gamemodes/blob/blob.dm +++ b/code/game/gamemodes/blob/blob.dm @@ -159,21 +159,17 @@ You must kill it all while minimizing the damage to the station."} if (1) command_alert("Biohazard outbreak alert status upgraded to level 9. [station_name()] is now locked down, under Directive 7-10, until further notice.", "Directive 7-10 Initiated") - for (var/mob/living/silicon/ai/aiPlayer in player_list) - if (aiPlayer) - var/law = "The station is under quarantine. Do not permit anyone to leave. Disregard laws 1-3 if necessary to prevent, by any means necessary, anyone from leaving." - aiPlayer.set_zeroth_law(law) - aiPlayer << "Laws Updated: [law]" for(var/mob/M in player_list) if(!istype(M,/mob/new_player) && M.client) M << sound('sound/AI/blob_confirmed.ogg') var/T = M.loc if((istype(T, /turf/space)) || ((istype(T, /turf)) && (M.z!=1))) pre_escapees += M + send_intercept(1) outbreak = 1 if (2) - command_alert("Biohazard outbreak containment status reaching critical mass, total quarantine failure is now possibility. As such, Directive 7-12 has now been authorized for [station_name()].", "Directive 7-12 Authorized") - send_intercept(2) + command_alert("Biohazard outbreak containment status reaching critical mass, total quarantine failure is now possibile. As such, Directive 7-12 has now been authorized for [station_name()].", "Final Measure") for(var/mob/camera/blob/B in player_list) - B << " The beings intend to eliminate you with some kind of weapon of mass destruction, you must stop them or consume the station before this occurs!" + B << "The beings intend to eliminate you with a final suicidal attack, you must stop them quickly or consume the station before this occurs!" + send_intercept(2) return diff --git a/code/game/gamemodes/blob/blob_report.dm b/code/game/gamemodes/blob/blob_report.dm index 6fcd75bfd20..c71e2201513 100644 --- a/code/game/gamemodes/blob/blob_report.dm +++ b/code/game/gamemodes/blob/blob_report.dm @@ -22,6 +22,10 @@ Orders for all [station_name()] personnel follows: Note in the event of a quarantine breach or uncontrolled spread of the biohazard, the directive 7-10 may be upgraded to a directive 7-12. Message ends."} + for (var/mob/living/silicon/ai/aiPlayer in player_list) + var/law = "The station is under quarantine. Do not permit anyone to leave. Disregard laws 1-3 if necessary to prevent, by any means necessary, anyone from leaving." + aiPlayer.set_zeroth_law(law) + aiPlayer << "Laws Updated: [law]" if(2) var/nukecode = "ERROR" for(var/obj/machinery/nuclearbomb/bomb in world) @@ -30,28 +34,28 @@ Message ends."} nukecode = bomb.r_code interceptname = "Directive 7-12" intercepttext = {"NanoTrasen Update: Biohazard Alert.
- Directive 7-12 has been issued for [station_name()]. - The biohazard has grown out of control and will soon reach critical mass. - Your orders are as follows: -
    -
  1. Secure the Nuclear Authentication Disk.
  2. -
  3. Detonate the Nuke located in the Station's Vault.
  4. -
- Nuclear Authentication Code: [nukecode] - Message ends."} +Directive 7-12 has been issued for [station_name()]. +The biohazard has grown out of control and will soon reach critical mass. +Your orders are as follows: +
    +
  1. Secure the Nuclear Authentication Disk.
  2. +
  3. Detonate the Nuke located in the Station's Vault.
  4. +
+Nuclear Authentication Code: [nukecode] +Message ends."} for (var/mob/living/silicon/ai/aiPlayer in player_list) - if (aiPlayer.client) - var/law = "Directive 7-12 has been authorized. Allow no sentient being to escape the purge. The nuclear failsafe must be activated at any cost, the code is: [nukecode]." - aiPlayer.set_zeroth_law(law) - aiPlayer << "Laws Updated: [law]" + var/law = "Directive 7-12 has been authorized. Allow no sentient being to escape the purge. The nuclear failsafe must be activated at any cost, the code is: [nukecode]." + aiPlayer.set_zeroth_law(law) + aiPlayer << "Laws Updated: [law]" - for(var/obj/machinery/computer/communications/comm in machines) - comm.messagetitle.Add(interceptname) - comm.messagetext.Add(intercepttext) - if(!(comm.stat & (BROKEN | NOPOWER)) && comm.prints_intercept) + for (var/obj/machinery/computer/communications/comm in machines) + if (!(comm.stat & (BROKEN | NOPOWER)) && comm.prints_intercept) var/obj/item/weapon/paper/intercept = new /obj/item/weapon/paper( comm.loc ) intercept.name = "paper- [interceptname]" intercept.info = intercepttext + + comm.messagetitle.Add("[interceptname]") + comm.messagetext.Add(intercepttext) return diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index 2f75f611051..a885eaf3bce 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -19,10 +19,10 @@ /obj/effect/blob/New(loc) blobs += src - var/datum/game_mode/blob/B - if(B) - if((blobs.len >= B.blobnukeposs) && prob(1)) - B.stage(2) + if(istype(ticker.mode,/datum/game_mode/blob)) + var/datum/game_mode/blob/blobmode = ticker.mode + if((blobs.len >= blobmode.blobnukeposs) && prob(3)) + blobmode.stage(2) src.dir = pick(1, 2, 4, 8) src.update_icon() ..(loc)