TG: Blob ending number of blobs is now a var.

The nuke now properly checks to see if its on the station when it explodes and
most of the derp var has been removed from the bomb code. r2913
This commit is contained in:
Ren Erthilo
2012-04-09 12:54:15 +01:00
parent eee2057453
commit c8fca21dab
4 changed files with 19 additions and 15 deletions
+7 -2
View File
@@ -12,6 +12,8 @@ var
uplink_welcome = "Syndicate Uplink Console:"
uplink_uses = 10
var/const/waittime_l = 1800 //lower bound on time before intercept arrives (in tenths of seconds)
var/const/waittime_h = 3600 //upper bound on time before intercept arrives (in tenths of seconds)
@@ -26,6 +28,9 @@ var
autoexpand = 0
expanding = 0
blobnukecount = 500
blobwincount = 700
announce()
world << "<B>The current game mode is - <font color='green'>Blob</font>!</B>"
@@ -114,11 +119,11 @@ var
return
if (2)
if((blobs.len > 500) && (declared == 1))
if((blobs.len > blobnukecount) && (declared == 1))
command_alert("Uncontrolled spread of the biohazard onboard the station. We have issued directive 7-12 for [station_name()]. Any living Heads of Staff are ordered to enact directive 7-12 at any cost, a print out with detailed instructions has been sent to your communications computers.", "Biohazard Alert")
send_intercept(2)
declared = 2
if(blobs.len > 700)//This needs work
if(blobs.len > blobwincount)//This needs work
stage = 3
return
+4 -4
View File
@@ -17,7 +17,7 @@
var/const/waittime_h = 1800 //upper bound on time before intercept arrives (in tenths of seconds)
var/nukes_left = 1 // Call 3714-PRAY right now and order more nukes! Limited offer!
var/derp = 0 //Used for tracking if the syndies actually haul the nuke to the station
var/nuke_off_station = 0 //Used for tracking if the syndies actually haul the nuke to the station
var/herp = 0 //Used for tracking if the syndies got the shuttle off of the z-level
//It is so hillarious so I wont rename those two variables --rastaf0
@@ -222,6 +222,7 @@
/datum/game_mode/proc/equip_syndicate(mob/living/carbon/human/synd_mob,radio_freq)
var/obj/item/device/radio/R = new /obj/item/device/radio/headset/nuclear(synd_mob)
synd_mob.equip_if_possible(R, synd_mob.slot_ears)
synd_mob.equip_if_possible(new /obj/item/clothing/under/syndicate(synd_mob), synd_mob.slot_w_uniform)
synd_mob.equip_if_possible(new /obj/item/clothing/shoes/black(synd_mob), synd_mob.slot_shoes)
synd_mob.equip_if_possible(new /obj/item/clothing/suit/armor/vest(synd_mob), synd_mob.slot_wear_suit)
@@ -236,7 +237,6 @@
var/obj/item/weapon/implant/dexplosive/E = new/obj/item/weapon/implant/dexplosive(synd_mob)
E.imp_in = synd_mob
E.implanted = 1
return 1
@@ -281,12 +281,12 @@
world << "<FONT size = 3><B>Total Annihilation</B></FONT>"
world << "<B>[syndicate_name()] operatives destroyed [station_name()] but did not leave the area in time and got caught in the explosion.</B> Next time, don't lose the disk!"
else if (!disk_rescued && !station_was_nuked && derp && !herp)
else if (!disk_rescued && !station_was_nuked && nuke_off_station && !herp)
feedback_set_details("round_end_result","halfwin - blew wrong station")
world << "<FONT size = 3><B>Crew Minor Victory</B></FONT>"
world << "<B>[syndicate_name()] operatives secured the authentication disk but blew up something that wasn't [station_name()].</B> Next time, don't lose the disk!"
else if (!disk_rescued && !station_was_nuked && derp && herp)
else if (!disk_rescued && !station_was_nuked && nuke_off_station && herp)
feedback_set_details("round_end_result","halfwin - blew wrong station - did not evacuate in time")
world << "<FONT size = 3><B>[syndicate_name()] operatives have earned Darwin Award!</B></FONT>"
world << "<B>[syndicate_name()] operatives blew up something that wasn't [station_name()] and got caught in the explosion.</B> Next time, don't lose the disk!"
+7 -8
View File
@@ -183,26 +183,25 @@
var/derp = 0
for (var/turf/T in range(1,src))
if (!is_type_in_list(T.loc, the_station_areas))
derp = 1
break
var/off_station = 0
var/area/A = get_area(src.loc)
if(A && (istype(A,/area/syndicate_station) || A.type == "/area"))
off_station = 1
if (ticker && ticker.mode && ticker.mode.name == "nuclear emergency")
ticker.mode:herp = syndicate_station_at_station
ticker.mode:derp = derp
ticker.mode:nuke_off_station = off_station
for(var/mob/M in world)
if(M.client)
spawn(0)
M.client.station_explosion_cinematic(derp)
M.client.station_explosion_cinematic(off_station)
sleep(110)
if (ticker && ticker.mode)
ticker.mode.explosion_in_progress = 0
if(ticker.mode.name == "nuclear emergency")
ticker.mode:nukes_left --
ticker.mode.station_was_nuked = (derp==0)
ticker.mode.station_was_nuked = (off_station==0)
else
world << "<B>The station was destoyed by the nuclear blast!</B>"
+1 -1
View File
@@ -1001,7 +1001,7 @@ note dizziness decrements automatically in the mob's Life() proc.
if(ticker)
switch(ticker.mode.name)
if("nuclear emergency")
if (!derp) boom.icon_state = "loss_nuke"
if(!derp) boom.icon_state = "loss_nuke"
else boom.icon_state = "loss_nuke2"
if("malfunction")
boom.icon_state = "loss_malf"