mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-26 05:27:39 +01:00
Merge pull request #3869 from Iamgoofball/boozetaketwo
Added Telescience! Moves Misc. Research to the spot between the Solars and Xenobio.
This commit is contained in:
@@ -1242,6 +1242,9 @@
|
||||
#include "code\modules\surgery\ribcage.dm"
|
||||
#include "code\modules\surgery\robolimbs.dm"
|
||||
#include "code\modules\surgery\surgery.dm"
|
||||
#include "code\modules\telesci\gps.dm"
|
||||
#include "code\modules\telesci\telepad.dm"
|
||||
#include "code\modules\telesci\telesci_computer.dm"
|
||||
#include "code\modules\virus2\analyser.dm"
|
||||
#include "code\modules\virus2\antibodies.dm"
|
||||
#include "code\modules\virus2\centrifuge.dm"
|
||||
|
||||
@@ -1322,6 +1322,10 @@ proc/process_ghost_teleport_locs()
|
||||
name = "\improper Miscellaneous Research"
|
||||
icon_state = "toxmisc"
|
||||
|
||||
/area/toxins/telesci
|
||||
name = "\improper Telescience Lab"
|
||||
icon_state = "toxmisc"
|
||||
|
||||
/area/toxins/server
|
||||
name = "\improper Server Room"
|
||||
icon_state = "server"
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
/obj/item/device/gps
|
||||
name = "Global Positioning System"
|
||||
desc = "Helping lost spacemen find their way through the planets since 2016."
|
||||
icon = 'icons/obj/telescience.dmi'
|
||||
icon_state = "gps-c"
|
||||
w_class = 2.0
|
||||
flags = FPRINT | TABLEPASS
|
||||
slot_flags = SLOT_BELT
|
||||
origin_tech = "programming=2;engineering=2"
|
||||
var/gpstag = "COM0"
|
||||
var/emped = 0
|
||||
|
||||
/obj/item/device/gps/New()
|
||||
name = "Global Positioning System ([gpstag])"
|
||||
overlays += "working"
|
||||
|
||||
/obj/item/device/gps/emp_act(severity)
|
||||
emped = 1
|
||||
overlays -= "working"
|
||||
overlays += "emp"
|
||||
spawn(300)
|
||||
emped = 0
|
||||
overlays -= "emp"
|
||||
overlays += "working"
|
||||
|
||||
/obj/item/device/gps/attack_self(mob/user as mob)
|
||||
var/obj/item/device/gps/t = ""
|
||||
if(emped)
|
||||
t += "ERROR"
|
||||
else
|
||||
t += "<BR><A href='?src=\ref[src];tag=1'>Set Tag</A> "
|
||||
t += "<BR>Tag: [gpstag]"
|
||||
|
||||
for(var/obj/item/device/gps/G in world)
|
||||
var/turf/pos = get_turf(G)
|
||||
var/area/gps_area = get_area(G)
|
||||
var/tracked_gpstag = G.gpstag
|
||||
if(G.emped == 1)
|
||||
t += "<BR>[tracked_gpstag]: ERROR"
|
||||
else
|
||||
t += "<BR>[tracked_gpstag]: [format_text(gps_area.name)] ([pos.x], [pos.y], [pos.z])"
|
||||
|
||||
var/datum/browser/popup = new(user, "GPS", name, 600, 450)
|
||||
popup.set_content(t)
|
||||
popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state))
|
||||
popup.open()
|
||||
|
||||
/obj/item/device/gps/Topic(href, href_list)
|
||||
if(href_list["tag"] )
|
||||
var/a = input("Please enter desired tag.", name, gpstag) as text
|
||||
a = copytext(sanitize(a), 1, 20)
|
||||
if(length(a) != 4)
|
||||
usr << "\blue The tag must be four letters long!"
|
||||
return
|
||||
else
|
||||
gpstag = a
|
||||
name = "Global Positioning System ([gpstag])"
|
||||
return
|
||||
|
||||
/obj/item/device/gps/science
|
||||
icon_state = "gps-s"
|
||||
gpstag = "SCI0"
|
||||
|
||||
/obj/item/device/gps/engineering
|
||||
icon_state = "gps-e"
|
||||
gpstag = "ENG0"
|
||||
@@ -0,0 +1,131 @@
|
||||
///SCI TELEPAD///
|
||||
/obj/machinery/telepad
|
||||
name = "telepad"
|
||||
desc = "A bluespace telepad used for teleporting objects to and from a location."
|
||||
icon = 'icons/obj/telescience.dmi'
|
||||
icon_state = "pad-idle"
|
||||
anchored = 1
|
||||
use_power = 1
|
||||
idle_power_usage = 200
|
||||
active_power_usage = 5000
|
||||
/obj/machinery/telepad/New()
|
||||
..()
|
||||
/obj/machinery/telepad/Del()
|
||||
..()
|
||||
//CARGO TELEPAD//
|
||||
/obj/machinery/telepad_cargo
|
||||
name = "cargo telepad"
|
||||
desc = "A telepad used by the Rapid Crate Sender."
|
||||
icon = 'icons/obj/telescience.dmi'
|
||||
icon_state = "pad-idle"
|
||||
anchored = 1
|
||||
use_power = 1
|
||||
idle_power_usage = 20
|
||||
active_power_usage = 500
|
||||
var/stage = 0
|
||||
/obj/machinery/telepad_cargo/New()
|
||||
..()
|
||||
/obj/machinery/telepad_cargo/Del()
|
||||
..()
|
||||
/obj/machinery/telepad_cargo/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(istype(W, /obj/item/weapon/wrench))
|
||||
anchored = 0
|
||||
playsound(src, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
if(anchored)
|
||||
anchored = 0
|
||||
user << "\blue The [src] can now be moved."
|
||||
else if(!anchored)
|
||||
anchored = 1
|
||||
user << "\blue The [src] is now secured."
|
||||
if(istype(W, /obj/item/weapon/screwdriver))
|
||||
if(stage == 0)
|
||||
playsound(src, 'sound/items/Screwdriver.ogg', 50, 1)
|
||||
user << "\blue You unscrew the telepad's tracking beacon."
|
||||
stage = 1
|
||||
else if(stage == 1)
|
||||
playsound(src, 'sound/items/Screwdriver.ogg', 50, 1)
|
||||
user << "\blue You screw in the telepad's tracking beacon."
|
||||
stage = 0
|
||||
if(istype(W, /obj/item/weapon/weldingtool) && stage == 1)
|
||||
playsound(src, 'sound/items/Welder.ogg', 50, 1)
|
||||
user << "\blue You disassemble the telepad."
|
||||
new /obj/item/stack/sheet/metal(get_turf(src))
|
||||
new /obj/item/stack/sheet/glass(get_turf(src))
|
||||
del(src)
|
||||
|
||||
///TELEPAD CALLER///
|
||||
/obj/item/device/telepad_beacon
|
||||
name = "Telepad Beacon"
|
||||
desc = "Use to warp in a cargo telepad."
|
||||
icon = 'icons/obj/radio.dmi'
|
||||
icon_state = "beacon"
|
||||
item_state = "signaler"
|
||||
origin_tech = "bluespace=3"
|
||||
|
||||
/obj/item/device/telepad_beacon/attack_self(mob/user as mob)
|
||||
if(user)
|
||||
user << "\blue Locked In"
|
||||
new /obj/machinery/telepad_cargo(user.loc)
|
||||
playsound(src, 'sound/effects/pop.ogg', 100, 1, 1)
|
||||
del(src)
|
||||
return
|
||||
|
||||
///HANDHELD TELEPAD USER///
|
||||
/obj/item/weapon/rcs
|
||||
name = "rapid-crate-sender (RCS)"
|
||||
desc = "Use this to send crates and closets to cargo telepads."
|
||||
icon = 'icons/obj/telescience.dmi'
|
||||
icon_state = "rcs"
|
||||
opacity = 0
|
||||
density = 0
|
||||
anchored = 0.0
|
||||
flags = FPRINT | TABLEPASS| CONDUCT
|
||||
force = 10.0
|
||||
throwforce = 10.0
|
||||
throw_speed = 1
|
||||
throw_range = 5
|
||||
var/rcharges = 10
|
||||
var/obj/machinery/pad = null
|
||||
var/last_charge = 30
|
||||
var/mode = 0
|
||||
var/rand_x = 0
|
||||
var/rand_y = 0
|
||||
var/emagged = 0
|
||||
var/teleporting = 0
|
||||
|
||||
/obj/item/weapon/rcs/New()
|
||||
processing_objects.Add(src)
|
||||
desc = "Use this to send crates and closets to cargo telepads. There are [rcharges] charges left."
|
||||
|
||||
/obj/item/weapon/rcs/Del()
|
||||
processing_objects.Remove(src)
|
||||
|
||||
/obj/item/weapon/rcs/process()
|
||||
if(rcharges > 10)
|
||||
rcharges = 10
|
||||
if(last_charge == 0)
|
||||
rcharges++
|
||||
desc = "Use this to send crates and closets to cargo telepads. There are [rcharges] charges left."
|
||||
last_charge = 30
|
||||
else
|
||||
last_charge--
|
||||
|
||||
/obj/item/weapon/rcs/attack_self(mob/user)
|
||||
if(emagged)
|
||||
if(mode == 0)
|
||||
mode = 1
|
||||
playsound(src.loc, 'sound/effects/pop.ogg', 50, 0)
|
||||
user << "\red The telepad locator has become uncalibrated."
|
||||
else
|
||||
mode = 0
|
||||
playsound(src.loc, 'sound/effects/pop.ogg', 50, 0)
|
||||
user << "\blue You calibrate the telepad locator."
|
||||
|
||||
/obj/item/weapon/rcs/attackby(obj/item/W, mob/user)
|
||||
if(istype(W, /obj/item/weapon/card/emag) && emagged == 0)
|
||||
emagged = 1
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
s.set_up(5, 1, src)
|
||||
s.start()
|
||||
user << "\red You emag the RCS. Click on it to toggle between modes."
|
||||
return
|
||||
@@ -0,0 +1,310 @@
|
||||
/obj/machinery/computer/telescience
|
||||
name = "Telepad Control Console"
|
||||
desc = "Used to teleport objects to and from the telescience telepad."
|
||||
icon_state = "teleport"
|
||||
|
||||
// VARIABLES //
|
||||
var/teles_left // How many teleports left until it becomes uncalibrated
|
||||
var/x_off // X offset
|
||||
var/y_off // Y offset
|
||||
var/x_co // X coordinate
|
||||
var/y_co // Y coordinate
|
||||
var/z_co // Z coordinate
|
||||
|
||||
/obj/machinery/computer/telescience/New()
|
||||
teles_left = rand(8,12)
|
||||
x_off = rand(-10,10)
|
||||
y_off = rand(-10,10)
|
||||
|
||||
/obj/machinery/computer/telescience/update_icon()
|
||||
if(stat & BROKEN)
|
||||
icon_state = "telescib"
|
||||
else
|
||||
if(stat & NOPOWER)
|
||||
src.icon_state = "teleport0"
|
||||
stat |= NOPOWER
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
stat &= ~NOPOWER
|
||||
|
||||
/obj/machinery/computer/telescience/attack_paw(mob/user)
|
||||
usr << "You are too primitive to use this computer."
|
||||
return
|
||||
|
||||
/obj/machinery/computer/telescience/attack_ai(mob/user)
|
||||
src.attack_hand()
|
||||
|
||||
/obj/machinery/computer/telescience/attack_hand(mob/user)
|
||||
if(..())
|
||||
return
|
||||
if(stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
var/t = ""
|
||||
t += "<A href='?src=\ref[src];setx=1'>Set X</A>"
|
||||
t += "<A href='?src=\ref[src];sety=1'>Set Y</A>"
|
||||
t += "<A href='?src=\ref[src];setz=1'>Set Z</A>"
|
||||
t += "<BR><BR>Current set coordinates:"
|
||||
t += "([x_co], [y_co], [z_co])"
|
||||
t += "<BR><BR><A href='?src=\ref[src];send=1'>Send</A>"
|
||||
t += " <A href='?src=\ref[src];receive=1'>Receive</A>"
|
||||
t += "<BR><BR><A href='?src=\ref[src];recal=1'>Recalibrate</A>"
|
||||
var/datum/browser/popup = new(user, "telesci", name, 640, 480)
|
||||
popup.set_content(t)
|
||||
popup.open()
|
||||
return
|
||||
/obj/machinery/computer/telescience/proc/sparks()
|
||||
for(var/obj/machinery/telepad/E in machines)
|
||||
var/L = get_turf(E)
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
s.set_up(5, 1, L)
|
||||
s.start()
|
||||
/obj/machinery/computer/telescience/proc/telefail()
|
||||
if(prob(75))
|
||||
sparks()
|
||||
for(var/mob/O in hearers(src, null))
|
||||
O.show_message("\red The telepad weakly fizzles.", 2)
|
||||
return
|
||||
if(prob(10))
|
||||
// Irradiate everyone in telescience!
|
||||
for(var/obj/machinery/telepad/E in machines)
|
||||
var/L = get_turf(E)
|
||||
sparks()
|
||||
for(var/mob/living/carbon/human/M in viewers(L, null))
|
||||
M.apply_effect((rand(25, 50)), IRRADIATE, 0)
|
||||
M << "\red You feel strange."
|
||||
return
|
||||
if(prob(1))
|
||||
// AI CALL SHUTTLE I SAW RUNE, SUPER LOW CHANCE, CAN HARDLY HAPPEN
|
||||
for(var/mob/living/carbon/O in viewers(src, null))
|
||||
var/datum/game_mode/cult/temp = new
|
||||
O.show_message("\red The telepad flashes with a strange light, and you have a sudden surge of allegiance toward the true dark one!", 2)
|
||||
O.mind.make_Cultist()
|
||||
temp.grant_runeword(O)
|
||||
sparks()
|
||||
return
|
||||
if(prob(1))
|
||||
// VIVA LA FUCKING REVOLUTION BITCHES, SUPER LOW CHANCE, CAN HARDLY HAPPEN
|
||||
for(var/mob/living/carbon/O in viewers(src, null))
|
||||
O.show_message("\red The telepad flashes with a strange light, and you see all kind of images flash through your mind, of murderous things Nanotrasen has done, and you decide to rebel!", 2)
|
||||
O.mind.make_Rev()
|
||||
sparks()
|
||||
return
|
||||
if(prob(5))
|
||||
// damn it a meteor
|
||||
for(var/mob/living/carbon/O in viewers(src, null))
|
||||
O.show_message("\red You get a ominous feeling as the teleporter fizzles out.", 2)
|
||||
spawn_meteors(number = 1)
|
||||
sparks()
|
||||
return
|
||||
if(prob(5))
|
||||
// The OH SHIT FUCK GOD DAMN IT LYNCH THE SCIENTISTS event.
|
||||
for(var/mob/living/carbon/O in viewers(src, null))
|
||||
O.show_message("\red The telepad changes colors rapidly, and opens a portal, and you see what your mind seems to think is the very threads that hold the pattern of the universe together, and a eerie sense of paranoia creeps into you.", 2)
|
||||
switch(rand(1,3))
|
||||
if(1)
|
||||
mini_blob_event()
|
||||
if(2)
|
||||
immovablerod()
|
||||
immovablerod()
|
||||
immovablerod()
|
||||
if(3)
|
||||
spacevine_infestation()
|
||||
spacevine_infestation()
|
||||
sparks()
|
||||
return
|
||||
if(prob(10))
|
||||
// HOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONK
|
||||
for(var/mob/living/carbon/M in hearers(src, null))
|
||||
M << sound('sound/items/AirHorn.ogg')
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(istype(H.l_ear, /obj/item/clothing/ears/earmuffs) || istype(H.r_ear, /obj/item/clothing/ears/earmuffs))
|
||||
continue
|
||||
M << "<font color='red' size='7'>HONK</font>"
|
||||
M.sleeping = 0
|
||||
M.stuttering += 20
|
||||
M.ear_deaf += 30
|
||||
M.Weaken(3)
|
||||
if(prob(30))
|
||||
M.Stun(10)
|
||||
M.Paralyse(4)
|
||||
else
|
||||
M.make_jittery(500)
|
||||
sparks()
|
||||
return
|
||||
if(prob(5))
|
||||
// They did the mash! (They did the monster mash!) The monster mash! (It was a graveyard smash!)
|
||||
sparks()
|
||||
for(var/obj/machinery/telepad/E in machines)
|
||||
var/L = get_turf(E)
|
||||
var/blocked = list(/mob/living/simple_animal/hostile,
|
||||
/mob/living/simple_animal/hostile/alien/queen/large,
|
||||
/mob/living/simple_animal/hostile/retaliate,
|
||||
/mob/living/simple_animal/hostile/retaliate/clown,
|
||||
/mob/living/simple_animal/hostile/giant_spider/nurse)
|
||||
var/list/hostiles = typesof(/mob/living/simple_animal/hostile) - blocked
|
||||
playsound(L, 'sound/effects/phasein.ogg', 100, 1)
|
||||
for(var/mob/living/carbon/human/M in viewers(L, null))
|
||||
flick("e_flash", M.flash)
|
||||
var/chosen = pick(hostiles)
|
||||
var/mob/living/simple_animal/hostile/H = new chosen
|
||||
H.loc = L
|
||||
return
|
||||
return
|
||||
return
|
||||
|
||||
/obj/machinery/computer/telescience/proc/dosend()
|
||||
var/trueX = (x_co + x_off)
|
||||
var/trueY = (y_co + y_off)
|
||||
for(var/obj/machinery/telepad/E in machines)
|
||||
var/L = get_turf(E)
|
||||
var/target = locate(trueX, trueY, z_co)
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
s.set_up(5, 1, L)
|
||||
s.start()
|
||||
flick("pad-beam", E)
|
||||
usr << "\blue Teleport successful."
|
||||
var/sparks = get_turf(target)
|
||||
var/datum/effect/effect/system/spark_spread/y = new /datum/effect/effect/system/spark_spread
|
||||
y.set_up(5, 1, sparks)
|
||||
y.start()
|
||||
for(var/obj/item/OI in L)
|
||||
do_teleport(OI, target, 0)
|
||||
for(var/obj/structure/closet/OC in L)
|
||||
do_teleport(OC, target, 0)
|
||||
for(var/mob/living/carbon/MO in L)
|
||||
do_teleport(MO, target, 0)
|
||||
for(var/mob/living/simple_animal/SA in L)
|
||||
do_teleport(SA, target, 0)
|
||||
return
|
||||
return
|
||||
|
||||
/obj/machinery/computer/telescience/proc/doreceive()
|
||||
var/trueX = (x_co + x_off)
|
||||
var/trueY = (y_co + y_off)
|
||||
for(var/obj/machinery/telepad/E in machines)
|
||||
var/L = get_turf(E)
|
||||
var/T = locate(trueX, trueY, z_co)
|
||||
var/G = get_turf(T)
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
s.set_up(5, 1, L)
|
||||
s.start()
|
||||
flick("pad-beam", E)
|
||||
usr << "\blue Teleport successful."
|
||||
var/sparks = get_turf(T)
|
||||
var/datum/effect/effect/system/spark_spread/y = new /datum/effect/effect/system/spark_spread
|
||||
y.set_up(5, 1, sparks)
|
||||
y.start()
|
||||
for(var/obj/item/ROI in G)
|
||||
do_teleport(ROI, E, 0)
|
||||
for(var/obj/structure/closet/ROC in G)
|
||||
do_teleport(ROC, E, 0)
|
||||
for(var/mob/living/carbon/RMO in G)
|
||||
do_teleport(RMO, E, 0)
|
||||
for(var/mob/living/simple_animal/RSA in G)
|
||||
do_teleport(RSA, E, 0)
|
||||
return
|
||||
return
|
||||
|
||||
/obj/machinery/computer/telescience/proc/telesend()
|
||||
if(x_co == "")
|
||||
usr << "\red Error: set coordinates."
|
||||
return
|
||||
if(y_co == "")
|
||||
usr << "\red Error: set coordinates."
|
||||
return
|
||||
if(z_co == "")
|
||||
usr << "\red Error: set coordinates."
|
||||
return
|
||||
if(x_co < 1 || x_co > 255)
|
||||
telefail()
|
||||
usr << "\red Error: X is less than 11 or greater than 245."
|
||||
return
|
||||
if(y_co < 1 || y_co > 255)
|
||||
telefail()
|
||||
usr << "\red Error: Y is less than 11 or greater than 245."
|
||||
return
|
||||
if(z_co == 2 || z_co < 1 || z_co > 6)
|
||||
telefail()
|
||||
usr << "\red Error: Z is less than 1, greater than 6, or equal to 2."
|
||||
return
|
||||
if(teles_left > 0)
|
||||
teles_left -= 1
|
||||
dosend()
|
||||
else
|
||||
dosend()
|
||||
return
|
||||
return
|
||||
|
||||
/obj/machinery/computer/telescience/proc/telereceive()
|
||||
// basically the same thing
|
||||
if(x_co == "")
|
||||
usr << "\red Error: set coordinates."
|
||||
return
|
||||
if(y_co == "")
|
||||
usr << "\red Error: set coordinates."
|
||||
return
|
||||
if(z_co == "")
|
||||
usr << "\red Error: set coordinates."
|
||||
return
|
||||
if(x_co < 1 || x_co > 255)
|
||||
telefail()
|
||||
usr << "\red Error: X is less than 11 or greater than 200."
|
||||
return
|
||||
if(y_co < 1 || y_co > 255)
|
||||
telefail()
|
||||
usr << "\red Error: Y is less than 11 or greater than 200."
|
||||
return
|
||||
if(z_co == 2 || z_co < 1 || z_co > 6)
|
||||
telefail()
|
||||
usr << "\red Error: Z is less than 1, greater than 6, or equal to 2."
|
||||
return
|
||||
if(teles_left > 0)
|
||||
teles_left -= 1
|
||||
doreceive()
|
||||
else
|
||||
if(prob(35))
|
||||
doreceive()
|
||||
else
|
||||
telefail()
|
||||
return
|
||||
return
|
||||
|
||||
/obj/machinery/computer/telescience/Topic(href, href_list)
|
||||
if(..())
|
||||
return
|
||||
if(href_list["setx"])
|
||||
var/a = input("Please input desired X coordinate.", name, x_co) as num
|
||||
a = copytext(sanitize(a), 1, 20)
|
||||
x_co = a
|
||||
x_co = text2num(x_co)
|
||||
return
|
||||
if(href_list["sety"])
|
||||
var/b = input("Please input desired Y coordinate.", name, y_co) as num
|
||||
b = copytext(sanitize(b), 1, 20)
|
||||
y_co = b
|
||||
y_co = text2num(y_co)
|
||||
return
|
||||
if(href_list["setz"])
|
||||
var/c = input("Please input desired Z coordinate.", name, z_co) as num
|
||||
c = copytext(sanitize(c), 1, 20)
|
||||
z_co = c
|
||||
z_co = text2num(z_co)
|
||||
return
|
||||
if(href_list["send"])
|
||||
telesend()
|
||||
return
|
||||
if(href_list["receive"])
|
||||
telereceive()
|
||||
return
|
||||
if(href_list["recal"])
|
||||
teles_left = rand(9,12)
|
||||
x_off = rand(-10,10)
|
||||
y_off = rand(-10,10)
|
||||
for(var/obj/machinery/telepad/E in machines)
|
||||
var/L = get_turf(E)
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
s.set_up(5, 1, L)
|
||||
s.start()
|
||||
usr << "\blue Calibration successful."
|
||||
return
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
+11195
-11152
File diff suppressed because it is too large
Load Diff
@@ -1,190 +1,21 @@
|
||||
Note: The proc name, source file, src and usr are all from the FIRST of the identical runtimes. Everything else is cropped.
|
||||
|
||||
Total unique runtimes: 25
|
||||
Total runtimes: 767
|
||||
Total unique runtimes: 2
|
||||
Total runtimes: 2
|
||||
|
||||
** Runtimes **
|
||||
|
||||
The following runtime has occured 269 time(s).
|
||||
runtime error: Cannot read null.viruses
|
||||
proc name: cure (/datum/disease/proc/cure)
|
||||
source file: disease.dm,156
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: type mismatch: the plating (107,70,1) (/turf/simulated/floor/plating) += the plating (108,70,1) (/turf/simulated/floor/plating)
|
||||
proc name: IsolateContents (/zone/proc/IsolateContents)
|
||||
source file: ZAS_Zones.dm,747
|
||||
usr: null
|
||||
src: Space Retrovirus (/datum/disease/dnaspread)
|
||||
src: /zone (/zone)
|
||||
|
||||
|
||||
The following runtime has occured 199 time(s).
|
||||
runtime error: Cannot read null.has_gravity
|
||||
proc name: throw at (/atom/movable/proc/throw_at)
|
||||
source file: throwing.dm,194
|
||||
usr: Reese Marcotte (/mob/living/carbon/human)
|
||||
src: Reese Marcotte (/mob/living/carbon/human)
|
||||
|
||||
|
||||
The following runtime has occured 165 time(s).
|
||||
runtime error: Cannot read null.slot_flags
|
||||
proc name: db click (/mob/living/carbon/human/db_click)
|
||||
source file: inventory.dm,1083
|
||||
usr: Puke Chunks (/mob/living/carbon/human)
|
||||
src: Puke Chunks (/mob/living/carbon/human)
|
||||
|
||||
|
||||
The following runtime has occured 25 time(s).
|
||||
runtime error: Cannot read null.flags
|
||||
proc name: relaymove (/obj/effect/dummy/spell_jaunt/relaymove)
|
||||
|
||||
|
||||
The following runtime has occured 24 time(s).
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: Cannot read null.len
|
||||
proc name: mergeRecordLists (/proc/mergeRecordLists)
|
||||
source file: helpers.dm,260
|
||||
usr: Wintermute (/mob/living/silicon/ai)
|
||||
src: null
|
||||
|
||||
|
||||
The following runtime has occured 20 time(s).
|
||||
runtime error: Cannot read null.total_volume
|
||||
proc name: attackby (/obj/machinery/reagentgrinder/attackby)
|
||||
source file: Chemistry-Machinery.dm,751
|
||||
usr: Reese Marcotte (/mob/living/carbon/human)
|
||||
src: All-In-One Grinder (/obj/machinery/reagentgrinder)
|
||||
|
||||
|
||||
The following runtime has occured 16 time(s).
|
||||
runtime error: Cannot read null.broadcasting
|
||||
proc name: radio menu (/mob/living/silicon/robot/proc/radio_menu)
|
||||
source file: robot.dm,857
|
||||
usr: Engineering Cyborg -432 (/mob/living/silicon/robot)
|
||||
src: Engineering Cyborg -432 (/mob/living/silicon/robot)
|
||||
|
||||
|
||||
The following runtime has occured 7 time(s).
|
||||
runtime error: unexpected stat
|
||||
proc name: Stat (/mob/living/silicon/robot/Stat)
|
||||
source file: robot.dm,227
|
||||
usr: Michigan Slim (/mob/living/carbon/human)
|
||||
src: Engineering Cyborg -133 (/mob/living/silicon/robot)
|
||||
|
||||
|
||||
The following runtime has occured 7 time(s).
|
||||
runtime error: Cannot read null.current
|
||||
proc name: check completion (/datum/objective/download/check_completion)
|
||||
source file: objective.dm,411
|
||||
proc name: Rebuild (/zone/proc/Rebuild)
|
||||
source file: ZAS_Zones.dm,669
|
||||
usr: null
|
||||
src: /datum/objective/download (/datum/objective/download)
|
||||
|
||||
|
||||
The following runtime has occured 6 time(s).
|
||||
runtime error: Cannot create objects of type null.
|
||||
proc name: Topic (/obj/machinery/computer/rdconsole/Topic)
|
||||
source file: rdconsole.dm,381
|
||||
usr: Matthew Hoff (/mob/living/carbon/human)
|
||||
src: Core R&D Console (/obj/machinery/computer/rdconsole/core)
|
||||
|
||||
|
||||
The following runtime has occured 6 time(s).
|
||||
runtime error: Cannot read null.fields
|
||||
proc name: mergeRecordLists (/proc/mergeRecordLists)
|
||||
source file: helpers.dm,263
|
||||
usr: Wintermute (/mob/living/silicon/ai)
|
||||
src: null
|
||||
|
||||
|
||||
The following runtime has occured 3 time(s).
|
||||
runtime error: undefined variable /client/var/loc
|
||||
proc name: get turf (/proc/get_turf)
|
||||
source file: helper_procs.dm,38
|
||||
usr: the ghost (/mob/dead/observer)
|
||||
src: null
|
||||
|
||||
|
||||
The following runtime has occured 3 time(s).
|
||||
runtime error: Cannot read null.nodes
|
||||
proc name: merge powernets (/datum/powernet/proc/merge_powernets)
|
||||
source file: power.dm,401
|
||||
usr: Darin Keppel (/mob/living/carbon/human)
|
||||
src: /datum/powernet (/datum/powernet)
|
||||
|
||||
|
||||
The following runtime has occured 3 time(s).
|
||||
runtime error: Cannot read null.reagents
|
||||
proc name: fire syringe (/obj/item/weapon/gun/syringe/proc/fire_syringe)
|
||||
|
||||
|
||||
The following runtime has occured 2 time(s).
|
||||
runtime error: undefined proc or verb /obj/machinery/space_heater/attack().
|
||||
|
||||
|
||||
|
||||
The following runtime has occured 2 time(s).
|
||||
runtime error: list index out of bounds
|
||||
proc name: mergeConnectedNetworksOnTurf (/obj/structure/cable/proc/mergeConnectedNetworksOnTurf)
|
||||
source file: cable.dm,520
|
||||
usr: Josue Sandford (/mob/living/carbon/human)
|
||||
src: the power cable (/obj/structure/cable)
|
||||
|
||||
|
||||
The following runtime has occured 2 time(s).
|
||||
runtime error: Cannot read null.loc
|
||||
proc name: Life (/mob/living/simple_animal/corgi/Ian/Life)
|
||||
source file: corgi.dm,304
|
||||
usr: null
|
||||
src: Captain Ian (/mob/living/simple_animal/corgi/Ian)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: undefined proc or verb /obj/machinery/portable_atmospherics/canister/toxins/attack().
|
||||
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: undefined variable /datum/preferences/var/fields
|
||||
proc name: Topic (/obj/machinery/computer/cloning/Topic)
|
||||
source file: cloning.dm,370
|
||||
usr: Logan Graves (/mob/living/carbon/human)
|
||||
src: Cloning console (/obj/machinery/computer/cloning)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: undefined variable /turf/simulated/floor/plating/var/mineral
|
||||
proc name: attackby (/turf/simulated/wall/attackby)
|
||||
source file: turf.dm,600
|
||||
usr: Monte Smail (/mob/living/carbon/human)
|
||||
src: the plating (176,172,5) (/turf/simulated/floor/plating)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: Cannot read null.blood_DNA
|
||||
proc name: update inv w uniform (/mob/living/carbon/human/update_inv_w_uniform)
|
||||
source file: update_icons.dm,372
|
||||
usr: null
|
||||
src: Chip Harshman (/mob/living/carbon/human)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: Cannot execute null.dropped().
|
||||
proc name: drop l hand (/mob/proc/drop_l_hand)
|
||||
source file: inventory.dm,104
|
||||
usr: Jeb Stone (/mob/living/carbon/human)
|
||||
src: Jeb Stone (/mob/living/carbon/human)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: Cannot read null.w_class
|
||||
proc name: attackby (/obj/item/weapon/storage/attackby)
|
||||
source file: storage.dm,187
|
||||
usr: Samuel York (/mob/living/carbon/human)
|
||||
src: the backpack (/obj/item/weapon/storage/backpack)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: Cannot read null.amount
|
||||
proc name: attackby (/obj/machinery/constructable_frame/machine_frame/attackby)
|
||||
source file: constructable_frame.dm,27
|
||||
usr: Quinton Bould (/mob/living/carbon/human)
|
||||
src: the machine frame (/obj/machinery/constructable_frame/machine_frame)
|
||||
|
||||
|
||||
The following runtime has occured 1 time(s).
|
||||
runtime error: Cannot modify null.status.
|
||||
proc name: death (/mob/living/silicon/robot/death)
|
||||
src: /zone (/zone)
|
||||
|
||||
Reference in New Issue
Block a user