Revert "12/21 modernizations from TG live"

This commit is contained in:
LetterJay
2016-12-22 22:35:44 -06:00
committed by GitHub
parent cf59ac1c3d
commit ae40d4134e
2215 changed files with 86928 additions and 707332 deletions
+45 -54
View File
@@ -9,10 +9,10 @@
var/power_type
/datum/AI_Module/large
/datum/AI_Module/large/
uses = 1
/datum/AI_Module/small
/datum/AI_Module/small/
uses = 5
/datum/AI_Module/large/nuke_station
@@ -35,13 +35,15 @@
src << "<span class='notice'>Nuclear device armed.</span>"
priority_announce("Hostile runtimes detected in all station systems, please deactivate your AI to prevent possible damage to its morality core.", "Anomaly Alert", 'sound/AI/aimalf.ogg')
set_security_level("delta")
SSshuttle.emergencyNoEscape = 1
nuking = 1
var/obj/machinery/doomsday_device/DOOM = new /obj/machinery/doomsday_device(src)
doomsday_device = DOOM
doomsday_device.start()
verbs -= /mob/living/silicon/ai/proc/nuke_station
for(var/obj/item/weapon/pinpointer/P in pinpointer_list)
P.switch_mode_to(TRACK_MALF_AI) //Pinpointers start tracking the AI wherever it goes
for(var/obj/item/weapon/pinpointer/point in pinpointer_list)
for(var/mob/living/silicon/ai/A in ai_list)
if((A.stat != DEAD) && A.nuking)
point.the_disk = A //The pinpointer now tracks the AI core
/obj/machinery/doomsday_device
icon = 'icons/obj/machines/nuke_terminal.dmi'
@@ -51,57 +53,29 @@
anchored = 1
density = 1
verb_exclaim = "blares"
var/timing = FALSE
var/default_timer = 4500
var/obj/effect/countdown/doomsday/countdown
var/detonation_timer
var/list/milestones = list()
/obj/machinery/doomsday_device/New()
..()
countdown = new(src)
/obj/machinery/doomsday_device/Destroy()
if(countdown)
qdel(countdown)
countdown = null
STOP_PROCESSING(SSfastprocess, src)
SSshuttle.clearHostileEnvironment(src)
for(var/A in ai_list)
var/mob/living/silicon/ai/Mlf = A
if(Mlf.doomsday_device == src)
Mlf.doomsday_device = null
. = ..()
/obj/machinery/doomsday_device/proc/start()
detonation_timer = world.time + default_timer
timing = TRUE
countdown.start()
START_PROCESSING(SSfastprocess, src)
SSshuttle.registerHostileEnvironment(src)
/obj/machinery/doomsday_device/proc/seconds_remaining()
. = max(0, (round((detonation_timer - world.time) / 10)))
var/timing = 1
var/timer = 450
/obj/machinery/doomsday_device/process()
var/turf/T = get_turf(src)
if(!T || T.z != ZLEVEL_STATION)
minor_announce("DOOMSDAY DEVICE OUT OF STATION RANGE, ABORTING", "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", 1)
SSshuttle.clearHostileEnvironment(src)
SSshuttle.emergencyNoEscape = 0
if(SSshuttle.emergency.mode == SHUTTLE_STRANDED)
SSshuttle.emergency.mode = SHUTTLE_DOCKED
SSshuttle.emergency.timer = world.time
priority_announce("Hostile environment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority")
qdel(src)
if(!timing)
STOP_PROCESSING(SSfastprocess, src)
return
var/sec_left = seconds_remaining()
if(sec_left <= 0)
timing = FALSE
if(timer <= 0)
timing = 0
detonate(T.z)
qdel(src)
else
var/key = num2text(sec_left)
if(!(sec_left % 60) && !(key in milestones))
milestones[key] = TRUE
var/message = "[key] SECONDS UNTIL DOOMSDAY DEVICE ACTIVATION!"
timer--
if(!(timer%60))
var/message = "[timer] SECONDS UNTIL DOOMSDAY DEVICE ACTIVATION!"
minor_announce(message, "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", 1)
/obj/machinery/doomsday_device/proc/detonate(z_level = 1)
@@ -110,7 +84,7 @@
sleep(100)
for(var/mob/living/L in mob_list)
var/turf/T = get_turf(L)
if(!T || T.z != z_level)
if(T.z != z_level)
continue
if(issilicon(L))
continue
@@ -119,6 +93,23 @@
world << "<B>The AI cleansed the station of life with the doomsday device!</B>"
ticker.force_ending = 1
/datum/AI_Module/large/fireproof_core
module_name = "Core Upgrade"
mod_pick_name = "coreup"
description = "An upgrade to improve core resistance, making it immune to fire and heat. This effect is permanent."
cost = 50
one_time = 1
power_type = /mob/living/silicon/ai/proc/fireproof_core
/mob/living/silicon/ai/proc/fireproof_core()
set category = "Malfunction"
set name = "Fireproof Core"
for(var/mob/living/silicon/ai/ai in player_list)
ai.fire_res_on_core = 1
src.verbs -= /mob/living/silicon/ai/proc/fireproof_core
src << "<span class='notice'>Core fireproofed.</span>"
/datum/AI_Module/large/upgrade_turrets
module_name = "AI Turret Upgrade"
mod_pick_name = "turret"
@@ -138,9 +129,9 @@
src.verbs -= /mob/living/silicon/ai/proc/upgrade_turrets
//Upgrade AI turrets around the world
for(var/obj/machinery/porta_turret/ai/turret in machines)
turret.obj_integrity += 30
turret.lethal_projectile = /obj/item/projectile/beam/laser/heavylaser //Once you see it, you will know what it means to FEAR.
turret.lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg'
turret.health += 30
turret.eprojectile = /obj/item/projectile/beam/laser/heavylaser //Once you see it, you will know what it means to FEAR.
turret.eshot_sound = 'sound/weapons/lasercannonfire.ogg'
src << "<span class='notice'>Turrets upgraded.</span>"
/datum/AI_Module/large/lockdown
@@ -162,7 +153,7 @@
for(var/obj/machinery/door/D in airlocks)
if(D.z != ZLEVEL_STATION)
continue
addtimer(D, "hostile_lockdown", 0, TIMER_NORMAL, src)
addtimer(D, "hostile_lockdown", 0, FALSE, src)
addtimer(D, "disable_lockdown", 900)
var/obj/machinery/computer/communications/C = locate() in machines
@@ -172,7 +163,7 @@
verbs -= /mob/living/silicon/ai/proc/lockdown
minor_announce("Hostile runtime detected in door controllers. Isolation Lockdown protocols are now in effect. Please remain calm.","Network Alert:", 1)
src << "<span class = 'warning'>Lockdown Initiated. Network reset in 90 seconds.</span>"
addtimer(GLOBAL_PROC, "minor_announce", 900, TIMER_NORMAL,
addtimer(GLOBAL_PROC, "minor_announce", 900, FALSE,
"Automatic system reboot complete. Have a secure day.",
"Network reset:")
@@ -291,11 +282,11 @@
for(var/datum/AI_Module/small/overload_machine/overload in current_modules)
if(overload.uses > 0)
overload.uses --
audible_message("<span class='userdanger'>You hear a loud electrical buzzing sound coming from [M]!</span>")
audible_message("<span class='italics'>You hear a loud electrical buzzing sound!</span>")
src << "<span class='warning'>Overloading machine circuitry...</span>"
spawn(50)
if(M)
explosion(get_turf(M), 0,2,3,0)
explosion(get_turf(M), 0,1,1,0)
qdel(M)
else src << "<span class='notice'>Out of uses.</span>"
else src << "<span class='notice'>That's not a machine.</span>"
@@ -377,7 +368,7 @@
for(var/n=1;n<4,n++)
var/fail
var/turf/T = turfs[n]
if(!isfloorturf(T))
if(!istype(T, /turf/open/floor))
fail = 1
var/datum/camerachunk/C = cameranet.getCameraChunk(T.x, T.y, T.z)
if(!C.visibleTurfs[T])