just fuck my shit up

This commit is contained in:
D3athrow
2015-07-18 02:30:26 -05:00
parent 322dae29d1
commit 41d7df01fd
1128 changed files with 7642 additions and 582 deletions

View File

@@ -57,22 +57,26 @@ Pipelines + Other Objects -> Pipe network
// Find a connecting /obj/machinery/atmospherics in specified direction.
/obj/machinery/atmospherics/proc/findConnecting(var/direction)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/findConnecting() called tick#: [world.time]")
for(var/obj/machinery/atmospherics/target in get_step(src,direction))
if(target.initialize_directions & get_dir(target,src))
return target
// Ditto, but for heat-exchanging pipes.
/obj/machinery/atmospherics/proc/findConnectingHE(var/direction)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/findConnectingHE() called tick#: [world.time]")
for(var/obj/machinery/atmospherics/pipe/simple/heat_exchanging/target in get_step(src,direction))
if(target.initialize_directions_he & get_dir(target,src))
return target
/obj/machinery/atmospherics/proc/getNodeType(var/node_id)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/getNodeType() called tick#: [world.time]")
return PIPE_TYPE_STANDARD
// A bit more flexible.
// @param connect_dirs integer Directions at which we should check for connections.
/obj/machinery/atmospherics/proc/findAllConnections(var/connect_dirs)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/findAllConnections() called tick#: [world.time]")
var/node_id=0
for(var/direction in cardinal)
if(connect_dirs & direction)
@@ -103,16 +107,19 @@ Pipelines + Other Objects -> Pipe network
//testing("[src] called parent process to build_network()")
/obj/machinery/atmospherics/proc/network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/network_expand() called tick#: [world.time]")
// Check to see if should be added to network. Add self if so and adjust variables appropriately.
// Note don't forget to have neighbors look as well!
return null
/obj/machinery/atmospherics/proc/build_network()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/build_network() called tick#: [world.time]")
// Called to build a network from this node
return null
/obj/machinery/atmospherics/proc/return_network(obj/machinery/atmospherics/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/return_network() called tick#: [world.time]")
// Returns pipe_network associated with connection to reference
// Notes: should create network if necessary
// Should never return null
@@ -120,21 +127,26 @@ Pipelines + Other Objects -> Pipe network
return null
/obj/machinery/atmospherics/proc/unassign_network(datum/pipe_network/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/unassign_network() called tick#: [world.time]")
/obj/machinery/atmospherics/proc/reassign_network(datum/pipe_network/old_network, datum/pipe_network/new_network)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/reassign_network() called tick#: [world.time]")
// Used when two pipe_networks are combining
/obj/machinery/atmospherics/proc/return_network_air(datum/network/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/return_network_air() called tick#: [world.time]")
// Return a list of gas_mixture(s) in the object
// associated with reference pipe_network for use in rebuilding the networks gases list
// Is permitted to return null
/obj/machinery/atmospherics/proc/disconnect(obj/machinery/atmospherics/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/disconnect() called tick#: [world.time]")
/obj/machinery/atmospherics/update_icon()
return null
/obj/machinery/atmospherics/proc/buildFrom(var/mob/usr,var/obj/item/pipe/pipe)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/buildFrom() called tick#: [world.time]")
error("[src] does not define a buildFrom!")
return FALSE
@@ -218,4 +230,5 @@ Pipelines + Other Objects -> Pipe network
user.canmove = 1
/obj/machinery/atmospherics/proc/can_crawl_through()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/proc/can_crawl_through() called tick#: [world.time]")
return 1

View File

@@ -28,6 +28,7 @@
// Tell nodes to fix their networks.
/obj/machinery/atmospherics/unary/vent/burstpipe/proc/do_connect()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/vent/burstpipe/proc/do_connect() called tick#: [world.time]")
//var/flip = turn(dir, 180)
initialize_directions = dir
var/turf/T = loc

View File

@@ -23,6 +23,7 @@
desc = initial(desc) + " Its outlet port is to the [dir2text(dir)]."
/obj/machinery/atmospherics/binary/circulator/proc/return_transfer_air()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/circulator/proc/return_transfer_air() called tick#: [world.time]")
var/datum/gas_mixture/removed
if(anchored && !(stat&BROKEN) )
var/input_starting_pressure = air1.return_pressure()
@@ -105,6 +106,7 @@
set category = "Object"
set name = "Rotate Circulator (Clockwise)"
set src in view(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/circulator/verb/rotate_clockwise() called tick#: [world.time]")
if (usr.stat || usr.restrained() || anchored || (usr.status_flags & FAKEDEATH))
return
@@ -117,6 +119,7 @@
set category = "Object"
set name = "Rotate Circulator (Counterclockwise)"
set src in view(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/circulator/verb/rotate_anticlockwise() called tick#: [world.time]")
if (usr.stat || usr.restrained() || anchored || (usr.status_flags & FAKEDEATH))
return

View File

@@ -120,12 +120,14 @@
//Radio remote control
/obj/machinery/atmospherics/binary/dp_vent_pump/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/dp_vent_pump/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)
radio_connection = radio_controller.add_object(src, frequency, filter = RADIO_ATMOSIA)
/obj/machinery/atmospherics/binary/dp_vent_pump/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/dp_vent_pump/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -65,12 +65,14 @@
/obj/machinery/atmospherics/binary/passive_gate/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/passive_gate/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)
radio_connection = radio_controller.add_object(src, frequency, filter = RADIO_ATMOSIA)
/obj/machinery/atmospherics/binary/passive_gate/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/passive_gate/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -82,12 +82,14 @@ Thus, the two variables affect pump operation are set in New():
/obj/machinery/atmospherics/binary/pump/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/pump/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)
radio_connection = radio_controller.add_object(src, frequency, filter = RADIO_ATMOSIA)
/obj/machinery/atmospherics/binary/pump/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/pump/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -33,6 +33,8 @@
/obj/machinery/atmospherics/binary/valve/proc/open()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/valve/proc/open() called tick#: [world.time]")
if(open) return 0
open = 1
@@ -51,6 +53,8 @@
/obj/machinery/atmospherics/binary/valve/proc/close()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/valve/proc/close() called tick#: [world.time]")
if(!open)
return 0
@@ -69,6 +73,7 @@
return 1
/obj/machinery/atmospherics/binary/valve/proc/normalize_dir()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/valve/proc/normalize_dir() called tick#: [world.time]")
if(dir==3)
dir = 1
else if(dir==12)
@@ -132,6 +137,7 @@
//Radio remote control
/obj/machinery/atmospherics/binary/valve/digital/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/valve/digital/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)

View File

@@ -72,12 +72,14 @@ Thus, the two variables affect pump operation are set in New():
return 1
/obj/machinery/atmospherics/binary/volume_pump/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/volume_pump/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)
radio_connection = radio_controller.add_object(src, frequency)
/obj/machinery/atmospherics/binary/volume_pump/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/binary/volume_pump/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -26,6 +26,7 @@ Filter types:
var/datum/radio_frequency/radio_connection
obj/machinery/atmospherics/trinary/filter/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/trinary/filter/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)

View File

@@ -68,6 +68,8 @@
/obj/machinery/atmospherics/trinary/tvalve/proc/go_to_side()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/trinary/tvalve/proc/go_to_side() called tick#: [world.time]")
if(state) return 0
state = 1
@@ -92,6 +94,8 @@
/obj/machinery/atmospherics/trinary/tvalve/proc/go_straight()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/trinary/tvalve/proc/go_straight() called tick#: [world.time]")
if(!state)
return 0
@@ -197,6 +201,7 @@
//Radio remote control
/obj/machinery/atmospherics/trinary/tvalve/digital/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/trinary/tvalve/digital/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)

View File

@@ -29,6 +29,7 @@ obj/machinery/atmospherics/trinary/New()
air3.volume = starting_volume
/obj/machinery/atmospherics/trinary/proc/initialize_directions()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/trinary/proc/initialize_directions() called tick#: [world.time]")
switch(dir)
if(NORTH)
initialize_directions = SOUTH|NORTH|EAST

View File

@@ -59,6 +59,7 @@
return 1
/obj/machinery/atmospherics/unary/outlet_injector/proc/inject()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/outlet_injector/proc/inject() called tick#: [world.time]")
if(on || injecting)
return 0
@@ -77,12 +78,14 @@
flick("inject", src)
/obj/machinery/atmospherics/unary/outlet_injector/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/outlet_injector/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)
radio_connection = radio_controller.add_object(src, frequency)
/obj/machinery/atmospherics/unary/outlet_injector/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/outlet_injector/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -72,6 +72,7 @@
return
/obj/machinery/atmospherics/unary/thermal_plate/proc/radiate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/thermal_plate/proc/radiate() called tick#: [world.time]")
if(network && network.radiate) //Since each member of a network has the same gases each tick
air_contents.copy_from(network.radiate) //We can cut down on processing time by only calculating radiate() once and then applying the result
return

View File

@@ -141,6 +141,7 @@
//Radio remote control
/obj/machinery/atmospherics/unary/vent_pump/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/vent_pump/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
if(frequency)
@@ -159,6 +160,7 @@
return 1
/obj/machinery/atmospherics/unary/vent_pump/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/vent_pump/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -60,6 +60,7 @@
return
/obj/machinery/atmospherics/unary/vent_scrubber/proc/set_frequency(new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/vent_scrubber/proc/set_frequency() called tick#: [world.time]")
radio_controller.remove_object(src, frequency)
frequency = new_frequency
radio_connection = radio_controller.add_object(src, frequency, radio_filter_in)
@@ -77,6 +78,7 @@
return 1
/obj/machinery/atmospherics/unary/vent_scrubber/proc/broadcast_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/unary/vent_scrubber/proc/broadcast_status() called tick#: [world.time]")
if(!radio_connection)
return 0

View File

@@ -32,6 +32,7 @@
line_members = list()
/datum/pipe_network/proc/process()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipe_network/proc/process() called tick#: [world.time]")
//Equalize gases amongst pipe if called for
if(update)
update = 0
@@ -45,6 +46,7 @@
#endif
/datum/pipe_network/proc/build_network(obj/machinery/atmospherics/start_normal, obj/machinery/atmospherics/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipe_network/proc/build_network() called tick#: [world.time]")
//Purpose: Generate membership roster
//Notes: Assuming that members will add themselves to appropriate roster in network_expandz()
@@ -64,6 +66,7 @@
return 1
/datum/pipe_network/proc/merge(datum/pipe_network/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipe_network/proc/merge() called tick#: [world.time]")
if(giver==src) return 0
normal_members |= giver.normal_members
@@ -81,6 +84,7 @@
return 1
/datum/pipe_network/proc/update_network_gases()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipe_network/proc/update_network_gases() called tick#: [world.time]")
//Go through membership roster and make sure gases is up to date
gases = list()
@@ -93,6 +97,7 @@
gases += line_member.air
/datum/pipe_network/proc/reconcile_air()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipe_network/proc/reconcile_air() called tick#: [world.time]")
//Perfectly equalize all gases members instantly
//Calculate totals from individual components
@@ -171,6 +176,7 @@
return 1
proc/equalize_gases(datum/gas_mixture/list/gases)
writepanic("[__FILE__].[__LINE__] \\/proc/equalize_gases() called tick#: [world.time]")
//Perfectly equalize all gases members instantly
//Calculate totals from individual components

View File

@@ -27,6 +27,7 @@
edges = list()
/datum/pipeline/proc/process()//This use to be called called from the pipe networks
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/process() called tick#: [world.time]")
if((world.timeofday - last_pressure_check) / 10 >= PRESSURE_CHECK_DELAY)
//Check to see if pressure is within acceptable limits
var/pressure = air.return_pressure()
@@ -42,6 +43,7 @@
//air.react() //Should be handled by pipe_network now
/datum/pipeline/proc/temporarily_store_air()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/temporarily_store_air() called tick#: [world.time]")
//Update individual gas_mixtures by volume ratio
for(var/obj/machinery/atmospherics/pipe/member in members)
@@ -64,6 +66,7 @@
member.air_temporary.update_values()
/datum/pipeline/proc/build_pipeline(obj/machinery/atmospherics/pipe/base)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/build_pipeline() called tick#: [world.time]")
var/list/possible_expansions = list(base)
members = list(base)
edges = list()
@@ -110,6 +113,8 @@
/datum/pipeline/proc/network_expand(datum/pipe_network/new_network, obj/machinery/atmospherics/pipe/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/network_expand() called tick#: [world.time]")
if(new_network.line_members.Find(src))
return 0
@@ -125,6 +130,7 @@
return 1
/datum/pipeline/proc/return_network(obj/machinery/atmospherics/reference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/return_network() called tick#: [world.time]")
if(!network)
network = getFromDPool(/datum/pipe_network)
network.build_network(src, null)
@@ -135,6 +141,7 @@
return network
/datum/pipeline/proc/mingle_with_turf(turf/simulated/target, mingle_volume)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/mingle_with_turf() called tick#: [world.time]")
var/datum/gas_mixture/air_sample = air.remove_ratio(mingle_volume/air.volume)
air_sample.volume = mingle_volume
@@ -169,6 +176,7 @@
network.update = 1
/datum/pipeline/proc/temperature_interact(turf/target, share_volume, thermal_conductivity)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/pipeline/proc/temperature_interact() called tick#: [world.time]")
var/total_heat_capacity = air.heat_capacity()
var/partial_heat_capacity = total_heat_capacity*(share_volume/air.volume)

View File

@@ -108,6 +108,7 @@
return 1
/obj/machinery/atmospherics/pipe/simple/heat_exchanging/proc/radiate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/pipe/simple/heat_exchanging/proc/radiate() called tick#: [world.time]")
var/datum/gas_mixture/internal = return_air()
var/internal_transfer_moles = 0.25 * internal.total_moles()
var/datum/gas_mixture/internal_removed = internal.remove(internal_transfer_moles)

View File

@@ -35,7 +35,7 @@
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\ATMOSPHERICS\chiller.dm:95: dat += "Power Level: [cell ? round(cell.percent(),1) : 0]%<BR><BR>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\ATMOSPHERICS\chiller.dm:95: dat += "Power Level: [cell ? round(cell.percent(),1) : 0]%<BR><BR>"
dat += {"Power Level: [cell ? round(cell.percent(),1) : 0]%<BR><BR>
Set Temperature:
<A href='?src=\ref[src];op=temp;val=-5'>-</A>
@@ -93,6 +93,7 @@
return
/obj/machinery/space_heater/air_conditioner/proc/chill()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/space_heater/air_conditioner/proc/chill() called tick#: [world.time]")
var/turf/simulated/L = loc
if(istype(L))
var/datum/gas_mixture/env = L.return_air()

View File

@@ -101,7 +101,7 @@
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\game\machinery\spaceheater.dm:99: dat += "Power Level: [cell ? round(cell.percent(),1) : 0]%<BR><BR>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\game\\machinery\spaceheater.dm:99: dat += "Power Level: [cell ? round(cell.percent(),1) : 0]%<BR><BR>"
dat += {"Power Level: [cell ? round(cell.percent(),1) : 0]%<BR><BR>
Set Temperature:
<A href='?src=\ref[src];op=temp;val=-5'>-</A>

View File

@@ -1,4 +1,5 @@
client/verb/discon_pipes()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\client/verb/discon_pipes() called tick#: [world.time]")
set name = "Show Disconnected Pipes"
set category = "Debug"

View File

@@ -250,6 +250,8 @@ var/global/list/nlist = list( \
)
/obj/item/pipe/proc/update()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pipe/proc/update() called tick#: [world.time]")
name = nlist[pipe_type+1] + " fitting"
icon = 'icons/obj/pipe-item.dmi'
icon_state = pipeID2State[pipe_type + 1]
@@ -263,6 +265,7 @@ var/global/list/nlist = list( \
set category = "Object"
set name = "Rotate Pipe"
set src in view(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pipe/verb/rotate() called tick#: [world.time]")
if ( usr.stat || usr.restrained() || (usr.status_flags & FAKEDEATH))
return
@@ -288,6 +291,7 @@ var/global/list/nlist = list( \
// returns all pipe's endpoints
/obj/item/pipe/proc/get_pipe_dir()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pipe/proc/get_pipe_dir() called tick#: [world.time]")
if (!dir)
return 0
var/flip = turn(dir, 180)
@@ -323,6 +327,8 @@ var/global/list/nlist = list( \
/obj/item/pipe/proc/get_pdir() //endpoints for regular pipes
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pipe/proc/get_pdir() called tick#: [world.time]")
var/flip = turn(dir, 180)
// var/cw = turn(dir, -90)
// var/acw = turn(dir, 90)
@@ -339,6 +345,7 @@ var/global/list/nlist = list( \
// return the h_dir (heat-exchange pipes) from the type and the dir
/obj/item/pipe/proc/get_hdir() //endpoints for h/e pipes
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pipe/proc/get_hdir() called tick#: [world.time]")
// var/flip = turn(dir, 180)
// var/cw = turn(dir, -90)

View File

@@ -36,10 +36,12 @@
/obj/machinery/atmospherics/pipe/singularity_pull(/obj/machinery/singularity/S, size)
return
/obj/machinery/atmospherics/pipe/proc/pipeline_expansion()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/pipe/proc/pipeline_expansion() called tick#: [world.time]")
return null
/obj/machinery/atmospherics/pipe/proc/check_pressure(pressure)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/pipe/proc/check_pressure() called tick#: [world.time]")
//Return 1 if parent should continue checking other pipes
//Return null if parent should stop checking other pipes. Recall: del(src) will by default return null
return 1
@@ -217,6 +219,7 @@
user << "<span class='info'>This [src.name] is rated up to [format_num(alert_pressure)] kPa.</span>"
/obj/machinery/atmospherics/pipe/simple/proc/groan()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/pipe/simple/proc/groan() called tick#: [world.time]")
src.visible_message("<span class='warning'>\The [src] groans from the pressure!</span>");
// Need SFX for groaning metal.
@@ -224,6 +227,7 @@
/obj/machinery/atmospherics/pipe/simple/proc/burst()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/pipe/simple/proc/burst() called tick#: [world.time]")
src.visible_message("<span class='danger'>\The [src] bursts!</span>");
var/turf/T=get_turf(src)
@@ -273,6 +277,7 @@
/obj/machinery/atmospherics/pipe/simple/proc/normalize_dir()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atmospherics/pipe/simple/proc/normalize_dir() called tick#: [world.time]")
if(dir==3)
dir = 1
else if(dir==12)

View File

@@ -12,6 +12,7 @@
// For straight pipes
/proc/rotate_pipe_straight(var/newdir)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/rotate_pipe_straight() called tick#: [world.time]")
switch(newdir)
if(SOUTH) // 2->1
return NORTH

View File

@@ -111,6 +111,7 @@ turf/simulated/floor
obj/machinery/portable_atmospherics/canister
verb/test_release()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\verb/test_release() called tick#: [world.time]")
set src in world
set category = "Minor"
@@ -425,6 +426,7 @@ turf/simulated
hotspot_expose(temp, volume)
fire_verbose()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\fire_verbose() called tick#: [world.time]")
set src in world
set category = "Minor"
@@ -454,6 +456,7 @@ obj/indicator
icon_state = measurement()
proc/measurement()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/measurement() called tick#: [world.time]")
var/turf/T = loc
if(!isturf(T)) return
var/datum/gas_mixture/GM = T.return_air()

View File

@@ -13,10 +13,14 @@ datum/air_group
var/check_delay = 10 //number of ticks between updates, starts fairly high to get boring groups out of the way
proc/members()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/members() called tick#: [world.time]")
//Returns the members of the group
proc/process_group()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/process_group() called tick#: [world.time]")
var/list/borders //Tiles that connect this group to other groups/individual tiles
var/list/members //All tiles in this group
@@ -25,6 +29,7 @@ datum/air_group
proc/suspend_group_processing()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/suspend_group_processing() called tick#: [world.time]")
group_processing = 0
update_tiles_from_group()
check_delay=0
@@ -34,6 +39,7 @@ datum/air_group
//Copy group air information to individual tile air
//Used right before turning on group processing
proc/update_group_from_tiles()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/update_group_from_tiles() called tick#: [world.time]")
var/sample_member = pick(members)
var/datum/gas_mixture/sample_air = sample_member:air
@@ -45,6 +51,7 @@ datum/air_group
//Copy group air information to individual tile air
//Used right before turning off group processing
proc/update_tiles_from_group()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/update_tiles_from_group() called tick#: [world.time]")
for(var/member in members)
member:air.copy_from(air)
if (istype(member,/turf/simulated))
@@ -53,6 +60,7 @@ datum/air_group
proc/archive()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/archive() called tick#: [world.time]")
air.archive()
archived_cycle = air_master.current_cycle
@@ -60,6 +68,7 @@ datum/air_group
//If individually processing tiles, checks all member tiles to see if they are close enough that the group may resume group processing
//Warning: Do not call, called by air_master.process()
proc/check_regroup()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_regroup() called tick#: [world.time]")
//Purpose: Checks to see if group processing should be turned back on
//Returns: group_processing
if(prevent_airgroup_regroup)

View File

@@ -1,5 +1,6 @@
/atom/proc/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/temperature_expose() called tick#: [world.time]")
return null
@@ -7,6 +8,9 @@
/turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/hotspot_expose() called tick#: [world.time]")
/turf/simulated/hotspot_expose(exposed_temperature, exposed_volume, soh)
var/datum/gas_mixture/air_contents = return_air()
@@ -62,6 +66,7 @@
/obj/effect/hotspot/proc/perform_exposure()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/hotspot/proc/perform_exposure() called tick#: [world.time]")
var/turf/simulated/floor/location = loc
if(!istype(location)) return 0
@@ -142,6 +147,7 @@
// Garbage collect itself by nulling reference to it
/obj/effect/hotspot/proc/Kill()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/hotspot/proc/Kill() called tick#: [world.time]")
DestroyTurf()
if(istype(loc, /turf/simulated))
var/turf/simulated/T = loc
@@ -151,6 +157,8 @@
/obj/effect/hotspot/proc/DestroyTurf()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/hotspot/proc/DestroyTurf() called tick#: [world.time]")
if(istype(loc, /turf/simulated))
var/turf/simulated/T = loc
if(T.to_be_destroyed)

View File

@@ -60,6 +60,7 @@ What are the archived variables for?
//PV=nRT - related procedures
proc/heat_capacity()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/heat_capacity() called tick#: [world.time]")
var/heat_capacity = HEAT_CAPACITY_CALCULATION(oxygen,carbon_dioxide,nitrogen,toxins)
if(trace_gases.len)
@@ -69,6 +70,7 @@ What are the archived variables for?
proc/heat_capacity_archived()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/heat_capacity_archived() called tick#: [world.time]")
var/heat_capacity_archived = HEAT_CAPACITY_CALCULATION(oxygen_archived,carbon_dioxide_archived,nitrogen_archived,toxins_archived)
if(trace_gases.len)
@@ -78,6 +80,7 @@ What are the archived variables for?
proc/total_moles()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/total_moles() called tick#: [world.time]")
var/moles = oxygen + carbon_dioxide + nitrogen + toxins
if(trace_gases.len)
@@ -87,25 +90,30 @@ What are the archived variables for?
proc/return_pressure()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/return_pressure() called tick#: [world.time]")
if(volume>0)
return total_moles()*R_IDEAL_GAS_EQUATION*temperature/volume
return 0
proc/return_temperature()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/return_temperature() called tick#: [world.time]")
return temperature
proc/return_volume()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/return_volume() called tick#: [world.time]")
return max(0, volume)
proc/thermal_energy()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/thermal_energy() called tick#: [world.time]")
return temperature*heat_capacity()
//Procedures used for very specific events
proc/check_tile_graphic()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_tile_graphic() called tick#: [world.time]")
//returns 1 if graphic changed
graphic = null
if(toxins > MOLES_PLASMA_VISIBLE)
@@ -120,6 +128,7 @@ What are the archived variables for?
return graphic != graphic_archived
proc/react(atom/dump_location)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/react() called tick#: [world.time]")
var/reacting = 0 //set to 1 if a notable reaction occured (used by pipe_network)
if(trace_gases.len > 0)
@@ -148,6 +157,7 @@ What are the archived variables for?
return reacting
proc/fire()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/fire() called tick#: [world.time]")
var/energy_released = 0
var/old_heat_capacity = heat_capacity()
@@ -202,49 +212,61 @@ What are the archived variables for?
return fuel_burnt
proc/archive()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/archive() called tick#: [world.time]")
//Update archived versions of variables
//Returns: 1 in all cases
proc/merge(datum/gas_mixture/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/merge() called tick#: [world.time]")
//Merges all air from giver into self. Deletes giver.
//Returns: 1 on success (no failure cases yet)
proc/check_then_merge(datum/gas_mixture/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_then_merge() called tick#: [world.time]")
//Similar to merge(...) but first checks to see if the amount of air assumed is small enough
// that group processing is still accurate for source (aborts if not)
//Returns: 1 on successful merge, 0 if the check failed
proc/remove(amount)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/remove() called tick#: [world.time]")
//Proportionally removes amount of gas from the gas_mixture
//Returns: gas_mixture with the gases removed
proc/remove_ratio(ratio)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/remove_ratio() called tick#: [world.time]")
//Proportionally removes amount of gas from the gas_mixture
//Returns: gas_mixture with the gases removed
proc/subtract(datum/gas_mixture/right_side)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/subtract() called tick#: [world.time]")
//Subtracts right_side from air_mixture. Used to help turfs mingle
proc/check_then_remove(amount)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_then_remove() called tick#: [world.time]")
//Similar to remove(...) but first checks to see if the amount of air removed is small enough
// that group processing is still accurate for source (aborts if not)
//Returns: gas_mixture with the gases removed or null
proc/copy_from(datum/gas_mixture/sample)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/copy_from() called tick#: [world.time]")
//Copies variables from sample
proc/share(datum/gas_mixture/sharer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/share() called tick#: [world.time]")
//Performs air sharing calculations between two gas_mixtures assuming only 1 boundary length
//Return: amount of gas exchanged (+ if sharer received)
proc/mimic(turf/model)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/mimic() called tick#: [world.time]")
//Similar to share(...), except the model is not modified
//Return: amount of gas exchanged
proc/check_gas_mixture(datum/gas_mixture/sharer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_gas_mixture() called tick#: [world.time]")
//Returns: 0 if the self-check failed then -1 if sharer-check failed then 1 if both checks pass
proc/check_turf(turf/model)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_turf() called tick#: [world.time]")
//Returns: 0 if self-check failed or 1 if check passes
// check_me_then_share(datum/gas_mixture/sharer)
@@ -265,19 +287,28 @@ What are the archived variables for?
proc/temperature_mimic(turf/model, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/temperature_mimic() called tick#: [world.time]")
proc/temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
proc/temperature_turf_share(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/temperature_turf_share() called tick#: [world.time]")
proc/check_me_then_temperature_mimic(turf/model, conduction_coefficient)
proc/check_me_then_temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_me_then_temperature_share() called tick#: [world.time]")
proc/check_both_then_temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
proc/check_me_then_temperature_turf_share(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/check_me_then_temperature_turf_share() called tick#: [world.time]")
proc/compare(datum/gas_mixture/sample)
//Compares sample to self to see if within acceptable ranges that group processing may be enabled

View File

@@ -1,4 +1,5 @@
/turf/simulated/proc/find_group()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/simulated/proc/find_group() called tick#: [world.time]")
//Basically, join any nearby valid groups
// If more than one, pick one with most members at my borders
// If can not find any but there was an ungrouped at border with me, call for group assembly

View File

@@ -56,6 +56,7 @@ Important Procedures
var/kill_air = 0
atom/proc/CanPass(atom/movable/mover, turf/target, height=1.5, air_group = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/CanPass() called tick#: [world.time]")
return (!density || !height || air_group)
turf

View File

@@ -4,6 +4,7 @@ atom/movable/var/pressure_resistance = 5
atom/movable/var/last_forced_movement = 0
atom/movable/proc/experience_pressure_difference(pressure_difference, direction)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/movable/proc/experience_pressure_difference() called tick#: [world.time]")
if(last_forced_movement >= air_master.current_cycle)
return 0
else if(!anchored)
@@ -54,6 +55,7 @@ turf
var/check_delay = 0 //number of ticks between updates
proc/high_pressure_movements()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/high_pressure_movements() called tick#: [world.time]")
if(reporting_pressure_difference)
world << "pressure_difference = [pressure_difference]; pressure_direction = [pressure_direction]"
for(var/atom/movable/in_tile in src)
@@ -62,6 +64,7 @@ turf
pressure_difference = 0
proc/consider_pressure_difference(connection_difference, connection_direction)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/consider_pressure_difference() called tick#: [world.time]")
if(connection_difference < 0)
connection_difference = -connection_difference
connection_direction = turn(connection_direction,180)
@@ -73,6 +76,7 @@ turf
pressure_direction = connection_direction
turf/simulated/proc/consider_pressure_difference_space(connection_difference)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/simulated/proc/consider_pressure_difference_space() called tick#: [world.time]")
for(var/direction in cardinal)
if(direction&group_border)
if(istype(get_step(src,direction),/turf/space))
@@ -107,6 +111,7 @@ turf/simulated
var/tmp/being_superconductive = 0
proc/update_visuals(datum/gas_mixture/model)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/update_visuals() called tick#: [world.time]")
overlays.len = 0
var/siding_icon_state = return_siding_icon_state()
@@ -187,6 +192,7 @@ turf/simulated
else return ..()
proc/archive()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/archive() called tick#: [world.time]")
if(air) //For open space like floors
air.archive()
@@ -194,9 +200,11 @@ turf/simulated
archived_cycle = air_master.current_cycle
proc/share_air_with_tile(turf/simulated/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/share_air_with_tile() called tick#: [world.time]")
return air.share(T.air)
proc/mimic_air_with_tile(turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/mimic_air_with_tile() called tick#: [world.time]")
return air.mimic(T)
return_air()
@@ -230,6 +238,7 @@ turf/simulated
return ..()
proc/update_air_properties()//OPTIMIZE
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/update_air_properties() called tick#: [world.time]")
air_check_directions = 0
for(var/direction in cardinal)
@@ -279,6 +288,7 @@ turf/simulated
processing = 0
proc/process_cell()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/process_cell() called tick#: [world.time]")
//this proc does all the heavy lifting for individual tile processing
//it shares with all of its neighbors, spreads fire, calls superconduction
//and doesn't afraid of anything
@@ -385,6 +395,7 @@ turf/simulated
return 1
proc/super_conduct()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/super_conduct() called tick#: [world.time]")
var/conductivity_directions = 0
if(blocks_air)
//Does not participate in air exchange, so will conduct heat across all four borders at this time
@@ -515,6 +526,7 @@ turf/simulated
return 0
proc/mimic_temperature_solid(turf/model, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/mimic_temperature_solid() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - model.temperature)
if((heat_capacity > 0) && (abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER))
@@ -523,6 +535,7 @@ turf/simulated
temperature -= heat/heat_capacity
proc/share_temperature_mutual_solid(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/share_temperature_mutual_solid() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER && heat_capacity && sharer.heat_capacity)
@@ -534,6 +547,8 @@ turf/simulated
proc/consider_superconductivity(starting)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/consider_superconductivity() called tick#: [world.time]")
if(being_superconductive || !thermal_conductivity)
return 0
@@ -551,6 +566,7 @@ turf/simulated
air_master.active_super_conductivity += src
proc/reset_delay()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/reset_delay() called tick#: [world.time]")
//sets this turf to process quickly again
next_check=0
check_delay= -5 //negative numbers mean a mandatory quick-update period

View File

@@ -5,6 +5,7 @@ var/minZ = 2
// (such as mining base => admin station)
// Note that this assumes the ship's top is at z=1 and bottom at z=4
/obj/item/weapon/tank/jetpack/proc/move_z(cardinal, mob/user as mob)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/weapon/tank/jetpack/proc/move_z() called tick#: [world.time]")
if (user.z > 1)
user << "<span class='warning'>There is nothing of interest in that direction.</span>"
return

View File

@@ -76,6 +76,7 @@ atom/movable/Move() //Hackish
return //nothing
proc/set_up() //Update the overlays to make the openspace turf show what's down a level
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/set_up() called tick#: [world.time]")
if(!overlay_references)
overlay_references = list()
if(!floorbelow) return
@@ -86,11 +87,13 @@ atom/movable/Move() //Hackish
overlay_references[o] = o_img
proc/AddImage(var/atom/movable/o)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/AddImage() called tick#: [world.time]")
var/o_img = image(o, dir=o.dir, layer = TURF_LAYER+0.05*o.layer)
overlays += o_img
overlay_references[o] = o_img
proc/RemoveImage(var/atom/movable/o)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/RemoveImage() called tick#: [world.time]")
var/o_img = overlay_references[o]
overlays -= o_img
overlay_references -= o

View File

@@ -47,6 +47,7 @@
return
/obj/effect/landmark/zcontroller/proc/add(var/list/L, var/I, var/transfer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/landmark/zcontroller/proc/add() called tick#: [world.time]")
while (L.len)
var/turf/T = pick(L)
@@ -113,6 +114,7 @@ atom/movable/Move() //Hackish
controller.add(temp,3,1)
/obj/effect/landmark/zcontroller/proc/calc(var/list/L)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/landmark/zcontroller/proc/calc() called tick#: [world.time]")
var/list/slowholder = list()
var/list/normalholder = list()
var/list/fastholder = list()

View File

@@ -60,6 +60,7 @@ var/list/reagent_effects = list("toxin","anti_toxin","stoxin","space_drugs","min
var/jungle_plants_init = 0
/proc/init_jungle_plants()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/proc/init_jungle_plants() called tick#: [world.time]")
jungle_plants_init = 1
fruit_icon_states = shuffle(fruit_icon_states)
reagent_effects = shuffle(reagent_effects)

View File

@@ -158,6 +158,7 @@
//Returns 1 if the machine can be interacted with via this console.
/obj/machinery/computer/rust_core_control/proc/check_core_status(var/obj/machinery/power/rust_core/C)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/computer/rust_core_control/proc/check_core_status() called tick#: [world.time]")
if(isnull(C))
return

View File

@@ -177,7 +177,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//if there is too much plasma in the field, lose some
/*if( held_plasma.toxins > (MOLES_CELLSTANDARD * 7) * (50 / field_strength) )
LosePlasma()*/
Loseplasma()*/
if(held_plasma.toxins > 1)
//lose a random amount of plasma back into the air, increased by the field strength (want to switch this over to frequency eventually)
var/loss_ratio = rand() * (0.05 + (0.05 * 50 / field_strength))
@@ -211,6 +211,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
return 1
/obj/effect/rust_em_field/proc/ChangeFieldStrength(var/new_strength)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/ChangeFieldStrength() called tick#: [world.time]")
var/calc_size = 1
emp_overload = 0
if(new_strength <= 50)
@@ -228,9 +229,11 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
change_size(calc_size)
/obj/effect/rust_em_field/proc/ChangeFieldFrequency(var/new_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/ChangeFieldFrequency() called tick#: [world.time]")
frequency = new_frequency
/obj/effect/rust_em_field/proc/AddEnergy(var/a_energy, var/a_mega_energy, var/a_frequency)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/AddEnergy() called tick#: [world.time]")
var/energy_loss_ratio = 0
if(a_frequency != src.frequency)
energy_loss_ratio = 1 / abs(a_frequency - src.frequency)
@@ -242,6 +245,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
mega_energy += 0.1
/obj/effect/rust_em_field/proc/AddParticles(var/name, var/quantity = 1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/AddParticles() called tick#: [world.time]")
if(name in dormant_reactant_quantities)
dormant_reactant_quantities[name] += quantity
else if(name != "proton" && name != "electron" && name != "neutron")
@@ -249,6 +253,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
dormant_reactant_quantities[name] = quantity
/obj/effect/rust_em_field/proc/RadiateAll(var/ratio_lost = 1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/RadiateAll() called tick#: [world.time]")
for(var/particle in dormant_reactant_quantities)
radiation += dormant_reactant_quantities[particle]
dormant_reactant_quantities.Remove(particle)
@@ -260,6 +265,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
environment.merge(held_plasma)
/obj/effect/rust_em_field/proc/change_size(var/newsize = 1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/change_size() called tick#: [world.time]")
//
var/changed = 0
switch(newsize)
@@ -302,6 +308,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//the !!fun!! part
/obj/effect/rust_em_field/proc/React()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_em_field/proc/React() called tick#: [world.time]")
//loop through the reactants in random order
var/list/reactants_reacting_pool = dormant_reactant_quantities.Copy()
/*

View File

@@ -112,6 +112,7 @@ max volume of plasma storeable by the field = the total volume of a number of ti
owned_field.ChangeFieldFrequency(field_frequency)
/obj/machinery/power/rust_core/proc/Startup()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_core/proc/Startup() called tick#: [world.time]")
if(owned_field)
return
@@ -124,6 +125,7 @@ max volume of plasma storeable by the field = the total volume of a number of ti
. = 1
/obj/machinery/power/rust_core/proc/Shutdown()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_core/proc/Shutdown() called tick#: [world.time]")
//todo: safety checks for field status
if(owned_field)
icon_state = "core0"
@@ -132,6 +134,7 @@ max volume of plasma storeable by the field = the total volume of a number of ti
set_light(0)
/obj/machinery/power/rust_core/proc/AddParticles(var/name, var/quantity = 1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_core/proc/AddParticles() called tick#: [world.time]")
if(owned_field)
owned_field.AddParticles(name, quantity)
. = 1
@@ -148,6 +151,7 @@ max volume of plasma storeable by the field = the total volume of a number of ti
"}
/obj/machinery/power/rust_core/proc/set_strength(var/value)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_core/proc/set_strength() called tick#: [world.time]")
value = Clamp(value, MIN_FIELD_STR, MAX_FIELD_STR)
field_strength = value
active_power_usage = RUST_CORE_STR_COST * value
@@ -155,6 +159,7 @@ max volume of plasma storeable by the field = the total volume of a number of ti
owned_field.ChangeFieldStrength(value)
/obj/machinery/power/rust_core/proc/set_frequency(var/value)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_core/proc/set_frequency() called tick#: [world.time]")
value = Clamp(value, MIN_FIELD_FREQ, MAX_FIELD_FREQ)
field_frequency = value
if(owned_field)

View File

@@ -68,6 +68,7 @@
//Returns 1 if the linked core is accesible.
/obj/machinery/computer/rust_core_monitor/proc/check_core_status()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/computer/rust_core_monitor/proc/check_core_status() called tick#: [world.time]")
if(!istype(linked_core))
return

View File

@@ -41,6 +41,7 @@
user << "<span class='warning'>\icon[src] [src] was unable to draw a fuel rod assembly from an injector.</span>"
/obj/machinery/rust_fuel_assembly_port/proc/try_insert_assembly()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust_fuel_assembly_port/proc/try_insert_assembly() called tick#: [world.time]")
var/success = 0
if(cur_assembly)
var/turf/check_turf = get_step(get_turf(src), src.dir)
@@ -62,6 +63,7 @@
return success
/obj/machinery/rust_fuel_assembly_port/proc/eject_assembly()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust_fuel_assembly_port/proc/eject_assembly() called tick#: [world.time]")
if(cur_assembly)
cur_assembly.loc = src.loc//get_step(get_turf(src), src.dir)
cur_assembly = null
@@ -69,6 +71,7 @@
return 1
/obj/machinery/rust_fuel_assembly_port/proc/try_draw_assembly()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust_fuel_assembly_port/proc/try_draw_assembly() called tick#: [world.time]")
var/success = 0
if(!cur_assembly)
var/turf/check_turf = get_step(get_turf(src), src.dir)
@@ -96,6 +99,7 @@
set name = "Eject assembly from port"
set category = "Object"
set src in oview(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust_fuel_assembly_port/verb/eject_assembly_verb() called tick#: [world.time]")
eject_assembly()

View File

@@ -38,7 +38,7 @@ var/const/max_assembly_amount = 300
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor.dm:39: var/t = "<B>Reactor Fuel Rod Compressor / Assembler</B><BR>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor.dm:39: var/t = "<B>Reactor Fuel Rod Compressor / Assembler</B><BR>"
var/t = {"<B>Reactor Fuel Rod Compressor / Assembler</B><BR>
<A href='?src=\ref[src];close=1'>Close</A><BR>"}
// END AUTOFIX
@@ -47,7 +47,7 @@ var/const/max_assembly_amount = 300
else
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor.dm:44: t += "Compressed matter in storage: [compressed_matter] <A href='?src=\ref[src];eject_matter=1'>\[Eject all\]</a><br>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor.dm:44: t += "Compressed matter in storage: [compressed_matter] <A href='?src=\ref[src];eject_matter=1'>\[Eject all\]</a><br>"
t += {"Compressed matter in storage: [compressed_matter] <A href='?src=\ref[src];eject_matter=1'>\[Eject all\]</a><br>
<A href='?src=\ref[src];activate=1'><b>Activate Fuel Synthesis</b></A><BR> (fuel assemblies require no more than [max_assembly_amount] rods).<br>
<hr>
@@ -57,7 +57,7 @@ var/const/max_assembly_amount = 300
t += " [reagent] rods: [new_assembly_quantities[reagent]] \[<A href='?src=\ref[src];change_reagent=[reagent]'>Modify</A>\]<br>"
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor.dm:50: t += "<hr>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor.dm:50: t += "<hr>"
t += {"<hr>
<A href='?src=\ref[src];close=1'>Close</A><BR>"}
// END AUTOFIX

View File

@@ -65,7 +65,7 @@
/*dat += "<b>Fuel depletion announcement:</b> "
// NOT-AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:66: dat += "[announce_fueldepletion == 0 ? "Disabled" : "<a href='?src=\ref[src];announce_fueldepletion=0'>\[Disable\]</a>"] "
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:66: dat += "[announce_fueldepletion == 0 ? "Disabled" : "<a href='?src=\ref[src];announce_fueldepletion=0'>\[Disable\]</a>"] "
dat += {"[announce_fueldepletion == 0 ? "Disabled" : "<a href='?src=\ref[src];announce_fueldepletion=0'>\[Disable\]</a>"]
[announce_fueldepletion == 1 ? "Announcing" : "<a href='?src=\ref[src];announce_fueldepletion=1'>\[Announce\]</a>"]
[announce_fueldepletion == 2 ? "Broadcasting" : "<a href='?src=\ref[src];announce_fueldepletion=2'>\[Broadcast\]</a>"]<br>
@@ -91,7 +91,7 @@
for(var/obj/machinery/power/rust_fuel_injector/I in connected_injectors)
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:89: dat += "<tr>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:89: dat += "<tr>"
dat += {"<tr>
<td>[I.id_tag]</td>"}
// END AUTOFIX
@@ -114,13 +114,13 @@
dat += "<td>None <a href='?src=\ref[src];set_next_stage=[I.id_tag]'>\[modify\]</a></td>"
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:108: dat += "<td><a href='?src=\ref[src];toggle_stage=[I.id_tag]'>\[[active_stages.Find(I.id_tag) ? "Deactivate stage" : "Activate stage "] \]</a></td>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:108: dat += "<td><a href='?src=\ref[src];toggle_stage=[I.id_tag]'>\[[active_stages.Find(I.id_tag) ? "Deactivate stage" : "Activate stage "] \]</a></td>"
dat += {"<td><a href='?src=\ref[src];toggle_stage=[I.id_tag]'>\[[active_stages.Find(I.id_tag) ? "Deactivate stage" : "Activate stage "] \]</a></td>
</tr>"}
// END AUTOFIX
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:110: dat += "</table>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm:110: dat += "</table>"
dat += {"</table>
<hr>
<A href='?src=\ref[src];refresh=1'>Refresh</A>
@@ -195,6 +195,7 @@
updateDialog()
/obj/machinery/computer/rust_fuel_control/proc/check_injector_status(var/obj/machinery/power/rust_fuel_injector/I)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/computer/rust_fuel_control/proc/check_injector_status() called tick#: [world.time]")
if(!I)
return 0

View File

@@ -105,7 +105,7 @@
else
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_injector.dm:149: dat += "<B>Reactor Core Fuel Injector</B><hr>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_injector.dm:149: dat += "<B>Reactor Core Fuel Injector</B><hr>"
dat += {"<B>Reactor Core Fuel Injector</B><hr>
<b>Device ID tag:</b> [id_tag] <a href='?src=\ref[src];modify_tag=1'>\[Modify\]</a><br>
<b>Status:</b> [injecting ? "<font color=green>Active</font> <a href='?src=\ref[src];toggle_injecting=1'>\[Disable\]</a>" : "<font color=blue>Standby</font> <a href='?src=\ref[src];toggle_injecting=1'>\[Enable\]</a>"]<br>
@@ -124,7 +124,7 @@
font_colour = "orange"
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_injector.dm:164: dat += "<b>Power status:</b> <font color=[font_colour]>[active_power_usage]/[cached_power_avail] W</font><br>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Rust\fuel_injector.dm:164: dat += "<b>Power status:</b> <font color=[font_colour]>[active_power_usage]/[cached_power_avail] W</font><br>"
dat += {"<b>Power status:</b> <font color=[font_colour]>[active_power_usage]/[cached_power_avail] W</font><br>
<a href='?src=\ref[src];toggle_remote=1'>\[[remote_access_enabled ? "Disable remote access" : "Enable remote access"]\]</a><br>
<hr>
@@ -183,18 +183,21 @@
updateDialog()
/obj/machinery/power/rust_fuel_injector/proc/BeginInjecting()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_fuel_injector/proc/BeginInjecting() called tick#: [world.time]")
if(!injecting && cur_assembly)
icon_state = "injector1"
injecting = 1
use_power = 1
/obj/machinery/power/rust_fuel_injector/proc/StopInjecting()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_fuel_injector/proc/StopInjecting() called tick#: [world.time]")
if(injecting)
injecting = 0
icon_state = "injector0"
use_power = 0
/obj/machinery/power/rust_fuel_injector/proc/Inject()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_fuel_injector/proc/Inject() called tick#: [world.time]")
if(!injecting)
return
if(cur_assembly)
@@ -225,6 +228,7 @@
StopInjecting()
/obj/machinery/power/rust_fuel_injector/proc/attempt_fuel_swap()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_fuel_injector/proc/attempt_fuel_swap() called tick#: [world.time]")
var/rev_dir = reverse_direction(dir)
var/turf/mid = get_step(src, rev_dir)
var/success = 0
@@ -255,6 +259,7 @@
set category = "Object"
set name = "Rotate Generator (Clockwise)"
set src in view(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_fuel_injector/verb/rotate_clock() called tick#: [world.time]")
if (usr.stat || usr.restrained() || anchored || (usr.status_flags & FAKEDEATH))
return
@@ -265,6 +270,7 @@
set category = "Object"
set name = "Rotate Generator (Counter-clockwise)"
set src in view(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/power/rust_fuel_injector/verb/rotate_anticlock() called tick#: [world.time]")
if (usr.stat || usr.restrained() || anchored || (usr.status_flags & FAKEDEATH))
return

View File

@@ -9,6 +9,7 @@ datum/fusion_reaction
/datum/controller/game_controller/var/list/fusion_reactions
proc/get_fusion_reaction(var/primary_reactant, var/secondary_reactant)
writepanic("[__FILE__].[__LINE__] \\/proc/get_fusion_reaction() called tick#: [world.time]")
if(!master_controller.fusion_reactions)
populate_fusion_reactions()
if(master_controller.fusion_reactions.Find(primary_reactant))
@@ -17,6 +18,7 @@ proc/get_fusion_reaction(var/primary_reactant, var/secondary_reactant)
return master_controller.fusion_reactions[primary_reactant][secondary_reactant]
proc/populate_fusion_reactions()
writepanic("[__FILE__].[__LINE__] \\/proc/populate_fusion_reactions() called tick#: [world.time]")
if(!master_controller.fusion_reactions)
master_controller.fusion_reactions = list()
for(var/cur_reaction_type in typesof(/datum/fusion_reaction) - /datum/fusion_reaction)

View File

@@ -34,11 +34,13 @@
initialize()
/obj/machinery/rust/gyrotron/proc/stop_emitting()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust/gyrotron/proc/stop_emitting() called tick#: [world.time]")
emitting = 0
use_power = 1
update_icon()
/obj/machinery/rust/gyrotron/proc/start_emitting()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust/gyrotron/proc/start_emitting() called tick#: [world.time]")
if(stat & (NOPOWER | BROKEN) || emitting && state == 2) //Sanity.
return
@@ -53,6 +55,7 @@
sleep(rate)
/obj/machinery/rust/gyrotron/proc/emit()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust/gyrotron/proc/emit() called tick#: [world.time]")
var/obj/item/projectile/beam/emitter/A = getFromPool(/obj/item/projectile/beam/emitter, loc)
A.frequency = frequency
A.damage = mega_energy * 1500
@@ -95,6 +98,7 @@
set name = "Rotate (Clockwise)"
set src in oview(1)
set category = "Object"
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust/gyrotron/verb/rotate_cw() called tick#: [world.time]")
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting || !Adjacent(usr))
return
@@ -109,6 +113,7 @@
set name = "Rotate (Counter-Clockwise)"
set src in oview(1)
set category = "Object"
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/rust/gyrotron/verb/rotate_ccw() called tick#: [world.time]")
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting || !Adjacent(usr))
return

View File

@@ -21,6 +21,7 @@
/*
/obj/machinery/rust
proc/RadiateParticle(var/energy, var/ionizing, var/dir = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/RadiateParticle() called tick#: [world.time]")
if(!dir)
RadiateParticleRand(energy, ionizing)
var/obj/effect/accelerated_particle/particle = getFromPool(/obj/effect/accelerated_particle/particle, get_turf(src))
@@ -35,6 +36,7 @@
return particle
proc/RadiateParticleRand(var/energy, var/ionizing)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/RadiateParticleRand() called tick#: [world.time]")
var/turf/target
var/particle_range = 3 * round(energy) + rand(3,20)
if(energy > 1)

View File

@@ -16,17 +16,20 @@
parent = null
/obj/effect/rust_particle_catcher/proc/SetSize(var/newsize)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_particle_catcher/proc/SetSize() called tick#: [world.time]")
name = "collector [newsize]"
mysize = newsize
UpdateSize()
/obj/effect/rust_particle_catcher/proc/AddParticles(var/name, var/quantity = 1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_particle_catcher/proc/AddParticles() called tick#: [world.time]")
if(parent && parent.size >= mysize)
parent.AddParticles(name, quantity)
return 1
return 0
/obj/effect/rust_particle_catcher/proc/UpdateSize()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/rust_particle_catcher/proc/UpdateSize() called tick#: [world.time]")
if(parent.size >= mysize)
density = 1
//invisibility = 0

View File

@@ -19,6 +19,7 @@
Stress(Proj.damage / 10)
/obj/effect/energy_field/proc/Stress(var/severity)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/energy_field/proc/Stress() called tick#: [world.time]")
strength -= severity
//if we take too much damage, drop out - the generator will bring us back up if we have enough power
@@ -30,6 +31,7 @@
density = 1
/obj/effect/energy_field/proc/Strengthen(var/severity)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/effect/energy_field/proc/Strengthen() called tick#: [world.time]")
strength += severity
//if we take too much damage, drop out - the generator will bring us back up if we have enough power

View File

@@ -98,7 +98,7 @@
t += "<i>Swipe your ID card to begin.</i>"
else
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_capacitor.dm:94: t += "This capacitor is: [active ? "<font color=green>Online</font>" : "<font color=red>Offline</font>" ] <a href='?src=\ref[src];toggle=1'>[active ? "\[Deactivate\]" : "\[Activate\]"]</a><br>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_capacitor.dm:94: t += "This capacitor is: [active ? "<font color=green>Online</font>" : "<font color=red>Offline</font>" ] <a href='?src=\ref[src];toggle=1'>[active ? "\[Deactivate\]" : "\[Activate\]"]</a><br>"
t += {"This capacitor is: [active ? "<font color=green>Online</font>" : "<font color=red>Offline</font>" ] <a href='?src=\ref[src];toggle=1'>[active ? "\[Deactivate\]" : "\[Activate\]"]</a><br>
[time_since_fail > 2 ? "<font color=green>Charging stable.</font>" : "<font color=red>Warning, low charge!</font>"]<br>
Charge: [stored_charge] Watts ([100 * stored_charge/max_charge]%)<br>
@@ -111,7 +111,7 @@
<a href='?src=\ref[src];charge_rate=[max_charge_rate]'>\[max\]</a><br>"}
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_capacitor.dm:104: t += "<hr>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_capacitor.dm:104: t += "<hr>"
t += {"<hr>
<A href='?src=\ref[src]'>Refresh</A>
<A href='?src=\ref[src];close=1'>Close</A><BR>"}
@@ -176,6 +176,7 @@
set name = "Rotate capacitor clockwise"
set category = "Object"
set src in oview(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/shield_capacitor/verb/rotate() called tick#: [world.time]")
if (src.anchored)
usr << "It is fastened to the floor!"

View File

@@ -112,7 +112,7 @@
else
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_gen.dm:102: t += "[owned_capacitor ? "<font color=green>Charge capacitor connected.</font>" : "<font color=red>Unable to locate charge capacitor!</font>"]<br>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_gen.dm:102: t += "[owned_capacitor ? "<font color=green>Charge capacitor connected.</font>" : "<font color=red>Unable to locate charge capacitor!</font>"]<br>"
t += {"[owned_capacitor ? "<font color=green>Charge capacitor connected.</font>" : "<font color=red>Unable to locate charge capacitor!</font>"]<br>
This generator is: [active ? "<font color=green>Online</font>" : "<font color=red>Offline</font>" ] <a href='?src=\ref[src];toggle=1'>[active ? "\[Deactivate\]" : "\[Activate\]"]</a><br>
[time_since_fail > 2 ? "<font color=green>Field is stable.</font>" : "<font color=red>Warning, field is unstable!</font>"]<br>
@@ -141,7 +141,7 @@
// END NOT-AUTOFIX
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_gen.dm:127: t += "<hr>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\WorkInProgress\Cael_Aislinn\ShieldGen\shield_gen.dm:127: t += "<hr>"
t += {"<hr>
<A href='?src=\ref[src]'>Refresh</A>
<A href='?src=\ref[src];close=1'>Close</A><BR>"}
@@ -242,6 +242,7 @@
/*
/obj/machinery/shield_gen/proc/check_powered()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/shield_gen/proc/check_powered() called tick#: [world.time]")
check_powered = 1
if(!anchored)
powered = 0
@@ -273,6 +274,7 @@
*/
/obj/machinery/shield_gen/proc/toggle()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/shield_gen/proc/toggle() called tick#: [world.time]")
active = !active
power_change()
if(active)
@@ -297,6 +299,7 @@
//grab the border tiles in a circle around this machine
/obj/machinery/shield_gen/proc/get_shielded_turfs()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/shield_gen/proc/get_shielded_turfs() called tick#: [world.time]")
var/list/out = list()
for(var/turf/T in range(field_radius, src))
if(get_dist(src,T) == field_radius)

View File

@@ -37,6 +37,7 @@
del first*/
/obj/machinery/computer/laser/proc/setpower(var/powera)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/computer/laser/proc/setpower() called tick#: [world.time]")
/*src.power = powera
if(first)
first.setpower(src.power)*/
@@ -58,6 +59,7 @@
sd_SetLuminosity(1, 1, 4)
/obj/beam/e_beam/proc/updatebeam()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/beam/e_beam/proc/updatebeam() called tick#: [world.time]")
if(!next)
if(get_step(src.loc,src.dir))
var/obj/beam/e_beam/e = new /obj/beam/e_beam(src.loc)
@@ -86,6 +88,7 @@
next.updatebeam()
/atom/proc/laser_act(var/obj/beam/e_beam/b)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/laser_act() called tick#: [world.time]")
return
/mob/living/carbon/laser_act(var/obj/beam/e_beam/b)
@@ -103,6 +106,7 @@
/obj/beam/e_beam/proc/setpower(var/powera)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/beam/e_beam/proc/setpower() called tick#: [world.time]")
src.power = powera
if(src.next)
src.next.setpower(powera)
@@ -127,6 +131,7 @@
return
/obj/beam/e_beam/proc/hit()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/beam/e_beam/proc/hit() called tick#: [world.time]")
del src
return
*/

View File

@@ -38,6 +38,8 @@
/*
/obj/machinery/computer/lasercon/proc/interact(mob/user)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/computer/lasercon/proc/interact() called tick#: [world.time]")
if ( (get_dist(src, user) > 1 ) || (stat & (BROKEN|NOPOWER)) )
if (!istype(user, /mob/living/silicon))
user.machine = null

View File

@@ -31,6 +31,7 @@
set name = "Rotate"
set category = "Object"
set src in oview(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/zero_point_emitter/verb/rotate() called tick#: [world.time]")
if (src.anchored || usr:stat)
usr << "It is fastened to the floor!"

View File

@@ -24,6 +24,7 @@
return
/obj/item/projectile/missile/proc/explode()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/projectile/missile/proc/explode() called tick#: [world.time]")
explosion(src.loc, 1, 1, 2, 7, 0)
playsound(src.loc, "explosion", 50, 1)
del(src)
@@ -74,6 +75,7 @@
return
/obj/machinery/meteor_battery/proc/isPopping()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/isPopping() called tick#: [world.time]")
return (popping!=0)
/obj/machinery/meteor_battery/power_change()
@@ -92,10 +94,12 @@
stat |= NOPOWER
/obj/machinery/meteor_battery/proc/setState(var/enabled)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/setState() called tick#: [world.time]")
src.enabled = enabled
src.power_change()
/obj/machinery/meteor_battery/proc/get_new_target()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/get_new_target() called tick#: [world.time]")
var/list/new_targets = new
var/new_target
for(var/obj/effect/meteor/M in view(protect_range, get_turf(src)))
@@ -163,6 +167,7 @@
return
/obj/machinery/meteor_battery/proc/target()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/target() called tick#: [world.time]")
while(src && enabled && !stat)
src.dir = get_dir(src, cur_target)
shootAt(cur_target)
@@ -170,6 +175,7 @@
return
/obj/machinery/meteor_battery/proc/shootAt(var/atom/movable/target)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/shootAt() called tick#: [world.time]")
var/turf/T = get_turf(src)
var/turf/U = get_turf(target)
if (!T || !U)
@@ -184,9 +190,11 @@
/obj/machinery/meteor_battery/proc/isDown()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/isDown() called tick#: [world.time]")
return (invisibility!=0)
/obj/machinery/meteor_battery/proc/popUp()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/popUp() called tick#: [world.time]")
if ((!isPopping()) || src.popping==-1)
invisibility = 0
popping = 1
@@ -197,6 +205,7 @@
if (popping==1) popping = 0
/obj/machinery/meteor_battery/proc/popDown()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/popDown() called tick#: [world.time]")
if ((!isPopping()) || src.popping==1)
popping = -1
if (src.cover!=null)
@@ -236,6 +245,7 @@
src.die()
/obj/machinery/meteor_battery/proc/die()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/meteor_battery/proc/die() called tick#: [world.time]")
src.health = 0
src.density = 0
src.stat |= BROKEN

View File

@@ -23,6 +23,7 @@
var/obj/machinery/atmospherics/unary/vent_pump/entry_vent //Graciously stolen from spider code
/mob/living/simple_animal/sculpture/proc/GrabMob(var/mob/living/target)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/simple_animal/sculpture/proc/GrabMob() called tick#: [world.time]")
if(target && target != src && ishuman(target) && !observed)
G = getFromPool(/obj/item/weapon/grab,src,target)
target.Stun(1)

View File

@@ -62,6 +62,7 @@
return ..()
/obj/item/ashtray/proc/die()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/ashtray/proc/die() called tick#: [world.time]")
src.visible_message("<span class='warning'>[src] shatters spilling its contents!</span>")
for (var/obj/item/clothing/mask/cigarette/O in contents)
contents -= O

View File

@@ -3,13 +3,17 @@
/datum/medical_effect/var/name = "None"
/datum/medical_effect/var/strength = 0
/datum/medical_effect/proc/on_life(mob/living/carbon/human/H, strength)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/medical_effect/proc/on_life() called tick#: [world.time]")
/datum/medical_effect/proc/cure(mob/living/carbon/human/H)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datum/medical_effect/proc/cure() called tick#: [world.time]")
// MOB HELPERS
// ===========
/mob/living/carbon/human/var/list/datum/medical_effect/side_effects = list()
/mob/proc/add_side_effect(name, strength = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/proc/add_side_effect() called tick#: [world.time]")
/mob/living/carbon/human/add_side_effect(name, strength = 0)
for(var/datum/medical_effect/M in src.side_effects) if(M.name == name)
M.strength = max(M.strength, 10)
@@ -24,6 +28,7 @@
side_effects += M
/mob/living/carbon/human/proc/handle_medical_side_effects()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/carbon/human/proc/handle_medical_side_effects() called tick#: [world.time]")
if(src.reagents.has_reagent("cryoxadone") || src.reagents.get_reagent_amount("bicaridine") >= 15 || src.reagents.get_reagent_amount("tricordrazine") >= 15)
src.add_side_effect("Headache")

View File

@@ -378,10 +378,12 @@ log transactions
//create the most effective combination of notes to make up the requested amount
/obj/machinery/atm/proc/withdraw_arbitrary_sum(var/arbitrary_sum)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atm/proc/withdraw_arbitrary_sum() called tick#: [world.time]")
dispense_cash(arbitrary_sum,get_step(get_turf(src),turn(dir,180))) // Spawn on the ATM.
//stolen wholesale and then edited a bit from newscasters, which are awesome and by Agouri
/obj/machinery/atm/proc/scan_user(mob/living/carbon/human/human_user as mob)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/atm/proc/scan_user() called tick#: [world.time]")
if(!authenticated_account && linked_db)
if(human_user.wear_id)
var/obj/item/weapon/card/id/I

View File

@@ -139,6 +139,7 @@ var/global/list/atmos_controllers = list()
/obj/machinery/computer/atmoscontrol/proc/is_in_filter(var/typepath)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/machinery/computer/atmoscontrol/proc/is_in_filter() called tick#: [world.time]")
if(!filter) return 1 // YEP. TOTALLY.
return typepath in filter

View File

@@ -173,6 +173,7 @@
breaktape(/obj/item/weapon/wirecutters,user)
/obj/item/tape/proc/breaktape(obj/item/weapon/W as obj, mob/user as mob)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/tape/proc/breaktape() called tick#: [world.time]")
if(user.a_intent == I_HELP && (!W || !W.is_sharp()) && !src.allowed(user))
user << "<span class='notice'>You can't break [src] [W ? "with \the [W] " : ""]unless you use force.</span>"
return

View File

@@ -40,6 +40,7 @@ var/list/ul_IconCache = list()
proc/ul_UnblankLocal(var/list/ReApply = view(ul_TopLuminosity, src))
writepanic("[__FILE__].[__LINE__] \\/proc/ul_UnblankLocal() called tick#: [world.time]")
for(var/atom/Light in ReApply)
if(ul_IsLuminous(Light))
Light.ul_Illuminate()
@@ -54,6 +55,8 @@ atom/var/ul_Extinguished = UL_I_ONZERO
atom/proc/ul_SetLuminosity(var/Red = 0, var/Green = Red, var/Blue = Red)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_SetLuminosity() called tick#: [world.time]")
if(ul_Extinguished == UL_I_CHANGING) //Changing state, just supress any changes, to prevent glitches.
return
@@ -82,6 +85,7 @@ atom/proc/ul_SetLuminosity(var/Red = 0, var/Green = Red, var/Blue = Red)
return
atom/proc/ul_Illuminate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_Illuminate() called tick#: [world.time]")
if (ul_Extinguished == UL_I_LIT)
return
@@ -130,6 +134,8 @@ atom/proc/ul_Illuminate()
atom/proc/ul_Extinguish()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_Extinguish() called tick#: [world.time]")
if (ul_Extinguished != UL_I_LIT)
return
@@ -194,6 +200,7 @@ atom/proc/ul_Extinguish()
to avoid the cost of the square root function.
*/
atom/proc/ul_FalloffAmount(var/atom/ref)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_FalloffAmount() called tick#: [world.time]")
if (ul_FalloffStyle == UL_I_FALLOFF_ROUND)
var/delta_x = (ref.x - src.x)
var/delta_y = (ref.y - src.y)
@@ -218,6 +225,7 @@ atom/proc/ul_FalloffAmount(var/atom/ref)
return 0
atom/proc/ul_SetOpacity(var/NewOpacity)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_SetOpacity() called tick#: [world.time]")
if(opacity != NewOpacity)
var/list/Blanked = ul_BlankLocal()
@@ -229,6 +237,7 @@ atom/proc/ul_SetOpacity(var/NewOpacity)
return
atom/proc/ul_BlankLocal()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_BlankLocal() called tick#: [world.time]")
var/list/Blanked = list( )
var/TurfAdjust = isturf(src) ? 1 : 0
@@ -240,6 +249,7 @@ atom/proc/ul_BlankLocal()
return Blanked
atom/proc/ul_LightLevelChanged()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_LightLevelChanged() called tick#: [world.time]")
//Designed for client projects to use. Called on items when the turf they are in has its light level changed
return
@@ -268,19 +278,23 @@ turf/var/list/MaxGreen
turf/var/list/MaxBlue
turf/proc/ul_GetRed()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/proc/ul_GetRed() called tick#: [world.time]")
if(MaxRed)
return ul_Clamp(max(MaxRed))
return 0
turf/proc/ul_GetGreen()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/proc/ul_GetGreen() called tick#: [world.time]")
if(MaxGreen)
return ul_Clamp(max(MaxGreen))
return 0
turf/proc/ul_GetBlue()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/proc/ul_GetBlue() called tick#: [world.time]")
if(MaxBlue)
return ul_Clamp(max(MaxBlue))
return 0
turf/proc/ul_UpdateLight()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/proc/ul_UpdateLight() called tick#: [world.time]")
var/area/CurrentArea = loc
if(!isarea(CurrentArea) || !CurrentArea.ul_Lighting)
@@ -310,6 +324,8 @@ turf/proc/ul_UpdateLight()
turf/proc/ul_Recalculate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/proc/ul_Recalculate() called tick#: [world.time]")
ul_SuppressLightLevelChanges++
var/list/Lights = ul_BlankLocal()
@@ -330,6 +346,8 @@ area/var/list/LightLevels
area/proc/ul_Light(var/Red = LightLevelRed, var/Green = LightLevelGreen, var/Blue = LightLevelBlue)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\darea/proc/ul_Light() called tick#: [world.time]")
if(!src || !src.ul_Lighting)
return
@@ -361,6 +379,8 @@ area/proc/ul_Light(var/Red = LightLevelRed, var/Green = LightLevelGreen, var/Blu
area/proc/ul_Prep()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\darea/proc/ul_Prep() called tick#: [world.time]")
if(!tag)
tag = "[type]"
if(ul_Lighting)

View File

@@ -8,6 +8,7 @@ var/list/ul_FastRoot = list(0, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4
7, 7)
atom/proc/ul_FalloffAmount(var/atom/ref)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/ul_FalloffAmount() called tick#: [world.time]")
if (ul_FalloffStyle == UL_I_FALLOFF_ROUND)
var/delta_x = (ref.x - src.x)
var/delta_y = (ref.y - src.y)

View File

@@ -30,6 +30,7 @@
var/time_inflicted = 0
proc/copy()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/copy() called tick#: [world.time]")
var/datum/autopsy_data/W = new()
W.weapon = weapon
W.pretend_weapon = pretend_weapon
@@ -39,6 +40,7 @@
return W
/obj/item/weapon/autopsy_scanner/proc/add_data(var/datum/organ/external/O)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/weapon/autopsy_scanner/proc/add_data() called tick#: [world.time]")
if(!O.autopsy_data.len && !O.trace_chemicals.len) return
for(var/V in O.autopsy_data)
@@ -80,6 +82,7 @@
set category = "Object"
set src in view(usr, 1)
set name = "Print Data"
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/weapon/autopsy_scanner/verb/print_data() called tick#: [world.time]")
if(usr.stat || !(istype(usr,/mob/living/carbon/human)) || (usr.status_flags & FAKEDEATH))
usr << "No."
return

View File

@@ -5,6 +5,8 @@
/proc/togglebuildmode(mob/M as mob in player_list)
set name = "Toggle Build Mode"
set category = "Special Verbs"
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/togglebuildmode() called tick#: [world.time]")
if(M.client)
if(M.client.buildmode)
log_admin("[key_name(usr)] has left build mode.")
@@ -221,6 +223,7 @@ obj/effect/bmode/buildholder/New()
src.mouse_pointer_icon = initial(src.mouse_pointer_icon)
/proc/build_click(var/mob/user, buildmode, params, var/obj/object)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/build_click() called tick#: [world.time]")
var/obj/effect/bmode/buildholder/holder = null
for(var/obj/effect/bmode/buildholder/H in buildmodeholders)
if(H.cl == user.client)
@@ -482,6 +485,7 @@ obj/effect/bmode/buildholder/New()
log_admin("[key_name(usr)] is throwing a [holder.throw_atom] at [object] - [formatJumpTo(RT)]")
/proc/easyTypeSelector()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/easyTypeSelector() called tick#: [world.time]")
var/chosen = null
var/list/matches = new()

View File

@@ -22,11 +22,13 @@
var/total_particles = 0
/datum/effect/system/expl_particles/proc/set_up(n = 10, loca)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/effect/system/expl_particles/proc/set_up() called tick#: [world.time]")
number = n
if(istype(loca, /turf/)) location = loca
else location = get_turf(loca)
/datum/effect/system/expl_particles/proc/start()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/effect/system/expl_particles/proc/start() called tick#: [world.time]")
var/i = 0
for(i=0, i<src.number, i++)
spawn(0)
@@ -56,10 +58,12 @@
var/turf/location
/datum/effect/system/explosion/proc/set_up(loca)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/effect/system/explosion/proc/set_up() called tick#: [world.time]")
if(istype(loca, /turf/)) location = loca
else location = get_turf(loca)
/datum/effect/system/explosion/proc/start()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/effect/system/explosion/proc/start() called tick#: [world.time]")
new/obj/effect/explosion( location )
var/datum/effect/system/expl_particles/P = new/datum/effect/system/expl_particles()
P.set_up(10,location)

View File

@@ -88,7 +88,7 @@ var/list/alldepartments = list("Central Command")
dat += "Please insert paper to send via secure connection.<br><br>"
else
dat += "Proper authentication is required to use this device.<br><br>"
dat += "\proper authentication is required to use this device.<br><br>"
if(tofax)
dat += "<a href ='byond://?src=\ref[src];remove=1'>Remove Paper</a><br>"
@@ -190,6 +190,8 @@ var/list/alldepartments = list("Central Command")
/proc/Centcomm_fax(var/obj/item/weapon/paper/sent, var/sentname, var/mob/Sender)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/Centcomm_fax() called tick#: [world.time]")
var/msg = "<span class='notice'><b><font color='orange'>CENTCOMM FAX: </font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<a href='?_src_=holder;CentcommFaxReply=\ref[Sender]'>RPLY</a>)</b>: Receiving '[sentname]' via secure connection ... <a href='?_src_=holder;CentcommFaxView=\ref[sent]'>view message</a></span>"
admins << msg
admins << 'sound/effects/fax.ogg'
@@ -197,6 +199,9 @@ var/list/alldepartments = list("Central Command")
proc/SendFax(var/sent, var/sentname, var/mob/Sender, var/dpt)
writepanic("[__FILE__].[__LINE__] \\/proc/SendFax() called tick#: [world.time]")
for(var/obj/machinery/faxmachine/F in allfaxes)
if( F.department == dpt )

View File

@@ -117,10 +117,12 @@
var/global/list/newscaster_standard_feeds = list(/datum/news_announcement/bluespace_research, /datum/news_announcement/lotus_tree, /datum/news_announcement/random_junk, /datum/news_announcement/food_riots)
proc/process_newscaster()
writepanic("[__FILE__].[__LINE__] \\/proc/process_newscaster() called tick#: [world.time]")
check_for_newscaster_updates(ticker.mode.newscaster_announcements)
var/global/tmp/announced_news_types = list()
proc/check_for_newscaster_updates(type)
writepanic("[__FILE__].[__LINE__] \\/proc/check_for_newscaster_updates() called tick#: [world.time]")
for(var/subtype in typesof(type)-type)
var/datum/news_announcement/news = new subtype()
if(news.round_time * 10 <= world.time && !(subtype in announced_news_types))
@@ -129,6 +131,8 @@ proc/check_for_newscaster_updates(type)
proc/announce_newscaster_news(datum/news_announcement/news)
writepanic("[__FILE__].[__LINE__] \\/proc/announce_newscaster_news() called tick#: [world.time]")
var/datum/feed_message/newMsg = new /datum/feed_message
newMsg.author = news.author
newMsg.is_admin_message = !news.can_be_redacted

View File

@@ -1,5 +1,7 @@
/obj/item/device/spacepod_equipment/weaponry/proc/fire_weapons()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/device/spacepod_equipment/weaponry/proc/fire_weapons() called tick#: [world.time]")
if(my_atom.next_firetime > world.time)
usr << "<span class='warning'>Your weapons are recharging.</span>"
return
@@ -116,4 +118,6 @@
//set name = SPE.verb_name
//set desc = SPE.verb_desc
set src = usr.loc
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/device/spacepod_equipment/weaponry/proc/fire_weapon_system() called tick#: [world.time]")
SPE.fire_weapons()

View File

@@ -20,6 +20,7 @@
var/link_angle = 0
/obj/item/pod_parts/pod_frame/proc/find_square()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pod_parts/pod_frame/proc/find_square() called tick#: [world.time]")
/*
each part, in essence, stores the relative position of another part
you can find where this part should be by looking at the current direction of the current part and applying the link_angle
@@ -85,6 +86,7 @@
set name = "Rotate Frame"
set category = "Object"
set src in oview(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/pod_parts/pod_frame/verb/rotate() called tick#: [world.time]")
if(anchored)
usr << "\The [src] is securely bolted!"
return 0

View File

@@ -48,6 +48,7 @@
equipment_system = new(src)
/obj/spacepod/proc/update_icons()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/update_icons() called tick#: [world.time]")
if(!pod_overlays)
pod_overlays = new/list(2)
pod_overlays[DAMAGE] = image(icon, icon_state="pod_damage")
@@ -67,6 +68,7 @@
deal_damage(P.damage)
/obj/spacepod/proc/deal_damage(var/damage)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/deal_damage() called tick#: [world.time]")
var/oldhealth = health
health = max(0, health - damage)
var/percentage = (health / initial(health)) * 100
@@ -222,6 +224,7 @@
set category = "Spacepod"
set src = usr.loc
set popup_menu = 0
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/verb/toggle_internal_tank() called tick#: [world.time]")
if(usr!=src.occupant)
return
src.use_internal_tank = !src.use_internal_tank
@@ -229,6 +232,7 @@
return
/obj/spacepod/proc/add_cabin()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/add_cabin() called tick#: [world.time]")
cabin_air = new
cabin_air.temperature = T20C
cabin_air.volume = 200
@@ -237,10 +241,12 @@
return cabin_air
/obj/spacepod/proc/add_airtank()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/add_airtank() called tick#: [world.time]")
internal_tank = new /obj/machinery/portable_atmospherics/canister/air(src)
return internal_tank
/obj/spacepod/proc/get_turf_air()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/get_turf_air() called tick#: [world.time]")
var/turf/T = get_turf(src)
if(T)
. = T.return_air()
@@ -261,6 +267,7 @@
return get_turf_air()
/obj/spacepod/proc/return_pressure()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/return_pressure() called tick#: [world.time]")
. = 0
if(use_internal_tank)
. = cabin_air.return_pressure()
@@ -271,6 +278,7 @@
return
/obj/spacepod/proc/return_temperature()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/return_temperature() called tick#: [world.time]")
. = 0
if(use_internal_tank)
. = cabin_air.return_temperature()
@@ -281,6 +289,7 @@
return
/obj/spacepod/proc/moved_inside(var/mob/living/carbon/human/H as mob)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/moved_inside() called tick#: [world.time]")
if(H && H.client && H in range(1))
H.reset_view(src)
/*
@@ -307,6 +316,7 @@
set category = "Object"
set name = "Enter Pod"
set src in oview(1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/verb/move_inside() called tick#: [world.time]")
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting || (usr.status_flags & FAKEDEATH)) //are you cuffed, dying, lying, stunned or other
return
@@ -341,6 +351,7 @@
set name = "Exit pod"
set category = "Spacepod"
set src = usr.loc
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/verb/exit_pod() called tick#: [world.time]")
if(usr != src.occupant)
return
@@ -351,6 +362,7 @@
return
/obj/spacepod/proc/enter_after(delay as num, var/mob/user as mob, var/numticks = 5)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/enter_after() called tick#: [world.time]")
var/delayfraction = delay/numticks
var/turf/T = user.loc
@@ -410,6 +422,7 @@
if(dir && (oldloc != NewLoc))
src.loc.Entered(src, oldloc)
/obj/spacepod/proc/Process_Spacemove(var/check_drift = 0, mob/user)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/spacepod/proc/Process_Spacemove() called tick#: [world.time]")
var/dense_object = 0
if(!user)
for(var/direction in list(NORTH, NORTHEAST, EAST))

View File

@@ -50,6 +50,7 @@ atom/movable/RepelAirflowDest(n)
mob/var/tmp/last_airflow_stun = 0
mob/proc/airflow_stun()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\mob/proc/airflow_stun() called tick#: [world.time]")
if(stat == 2)
return 0
if(last_airflow_stun > world.time - zas_settings.Get(/datum/ZAS_Setting/airflow_stun_cooldown)) return 0
@@ -83,6 +84,7 @@ mob/living/carbon/human/airflow_stun()
return
atom/movable/proc/check_airflow_movable(n)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/movable/proc/check_airflow_movable() called tick#: [world.time]")
if(anchored && !ismob(src))
return 0
if(!istype(src,/obj/item) && n < zas_settings.Get(/datum/ZAS_Setting/airflow_dense_pressure))
@@ -117,6 +119,7 @@ obj/item/check_airflow_movable(n)
//Zones A and B are air zones. n represents the amount of air moved.
proc/Airflow(zone/A, zone/B)
writepanic("[__FILE__].[__LINE__] \\/proc/Airflow() called tick#: [world.time]")
set background = 1
var/n = B.air.return_pressure() - A.air.return_pressure()
@@ -196,6 +199,7 @@ proc/Airflow(zone/A, zone/B)
spawn M.RepelAirflowDest(abs(n)/5)
proc/AirflowSpace(zone/A)
writepanic("[__FILE__].[__LINE__] \\/proc/AirflowSpace() called tick#: [world.time]")
spawn()
//The space version of the Airflow(A,B,n) proc.
@@ -238,6 +242,7 @@ proc/AirflowSpace(zone/A)
// Mainly for bustanuts.
/atom/movable/proc/AirflowCanPush()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/movable/proc/AirflowCanPush() called tick#: [world.time]")
return 1
/mob/AirflowCanPush()
@@ -246,6 +251,7 @@ proc/AirflowSpace(zone/A)
return 1
/atom/movable/proc/GotoAirflowDest(n)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/movable/proc/GotoAirflowDest() called tick#: [world.time]")
last_airflow = world.time
if(airflow_dest == loc)
return
@@ -306,6 +312,7 @@ proc/AirflowSpace(zone/A)
/atom/movable/proc/RepelAirflowDest(n)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/movable/proc/RepelAirflowDest() called tick#: [world.time]")
if(airflow_dest == loc)
step_away(src,loc)
if(ismob(src))
@@ -368,6 +375,7 @@ proc/AirflowSpace(zone/A)
sound_override = 0
atom/movable/proc/airflow_hit(atom/A)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/movable/proc/airflow_hit() called tick#: [world.time]")
airflow_speed = 0
airflow_dest = null
@@ -419,6 +427,7 @@ mob/living/carbon/human/airflow_hit(atom/A)
. = ..()
zone/proc/movables()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/movables() called tick#: [world.time]")
. = list()
for(var/turf/T in contents)
for(var/atom/A in T)

View File

@@ -1,4 +1,5 @@
/atom/proc/CanPass(atom/movable/mover, turf/target, height=1.5, air_group = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/CanPass() called tick#: [world.time]")
//Purpose: Determines if the object (or airflow) can pass this atom.
//Called by: Movement, airflow.
//Inputs: The moving atom (optional), target turf, "height" and air group
@@ -33,6 +34,7 @@
// ZONE_BLOCKED - Not blocked, but zone boundaries will not cross.
// BLOCKED - Blocked, zone boundaries will not cross even if opened.
atom/proc/c_airblock(turf/other)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/c_airblock() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(isturf(other))
#endif

View File

@@ -76,28 +76,35 @@ Class Procs:
edge.add_connection(src)
/connection/proc/mark_direct()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/mark_direct() called tick#: [world.time]")
state |= CONNECTION_DIRECT
//world << "Marked direct."
/connection/proc/mark_indirect()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/mark_indirect() called tick#: [world.time]")
state &= ~CONNECTION_DIRECT
//world << "Marked indirect."
/connection/proc/mark_space()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/mark_space() called tick#: [world.time]")
state |= CONNECTION_SPACE
/connection/proc/direct()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/direct() called tick#: [world.time]")
return (state & CONNECTION_DIRECT)
/connection/proc/valid()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/valid() called tick#: [world.time]")
return !(state & CONNECTION_INVALID)
/connection/proc/erase()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/erase() called tick#: [world.time]")
edge.remove_connection(src)
state |= CONNECTION_INVALID
//world << "Connection Erased: [state]"
/connection/proc/update()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection/proc/update() called tick#: [world.time]")
//world << "Updated, \..."
if(!istype(A,/turf/simulated))
//world << "Invalid A."

View File

@@ -68,24 +68,30 @@ Class Procs:
CRASH("Cannot make connection edge without specifications.")
/connection_edge/proc/add_connection(connection/c)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/proc/add_connection() called tick#: [world.time]")
coefficient++
//world << "Connection added: [type] Coefficient: [coefficient]"
/connection_edge/proc/remove_connection(connection/c)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/proc/remove_connection() called tick#: [world.time]")
//world << "Connection removed: [type] Coefficient: [coefficient-1]"
coefficient--
if(coefficient <= 0)
erase()
/connection_edge/proc/contains_zone(zone/Z)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/proc/contains_zone() called tick#: [world.time]")
/connection_edge/proc/erase()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/proc/erase() called tick#: [world.time]")
air_master.remove_edge(src)
//world << "[type] Erased."
/connection_edge/proc/tick()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/proc/tick() called tick#: [world.time]")
/connection_edge/proc/flow(list/movable, differential, repelled, flipped = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/proc/flow() called tick#: [world.time]")
//Flipped tells us if we are going from A to B or from B to A.
if(!zas_settings.Get(/datum/ZAS_Setting/airflow_push))
return
@@ -201,6 +207,7 @@ Class Procs:
//Helper proc to get connections for a zone.
/connection_edge/zone/proc/get_connected_zone(zone/from)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_edge/zone/proc/get_connected_zone() called tick#: [world.time]")
if(A == from) return B
else return A
@@ -250,6 +257,7 @@ Class Procs:
var/list/sharing_lookup_table = list(0.30, 0.40, 0.48, 0.54, 0.60, 0.66)
proc/ShareRatio(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
writepanic("[__FILE__].[__LINE__] \\/proc/ShareRatio() called tick#: [world.time]")
//Shares a specific ratio of gas between mixtures using simple weighted averages.
var
//WOOT WOOT TOUCH THIS AND YOU ARE A RETARD
@@ -329,6 +337,7 @@ proc/ShareRatio(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
else return 0
proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
writepanic("[__FILE__].[__LINE__] \\/proc/ShareSpace() called tick#: [world.time]")
//A modified version of ShareRatio for spacing gas at the same rate as if it were going into a large airless room.
if(!unsimulated_tiles)
return 0
@@ -438,6 +447,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
proc/ShareHeat(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
writepanic("[__FILE__].[__LINE__] \\/proc/ShareHeat() called tick#: [world.time]")
//This implements a simplistic version of the Stefan-Boltzmann law.
var/energy_delta = ((A.temperature - B.temperature) ** 4) * 5.6704e-8 * connecting_tiles * 2.5
var/maximum_energy_delta = max(0, min(A.temperature * A.heat_capacity() * A.group_multiplier, B.temperature * B.heat_capacity() * B.group_multiplier))

View File

@@ -43,6 +43,7 @@ Class Procs:
#endif
/connection_manager/proc/get(d)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_manager/proc/get() called tick#: [world.time]")
switch(d)
if(NORTH)
if(check(N)) return N
@@ -67,6 +68,7 @@ Class Procs:
#endif
/connection_manager/proc/place(connection/c, d)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_manager/proc/place() called tick#: [world.time]")
switch(d)
if(NORTH) N = c
if(SOUTH) S = c
@@ -79,6 +81,7 @@ Class Procs:
#endif
/connection_manager/proc/update_all()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_manager/proc/update_all() called tick#: [world.time]")
if(check(N)) N.update()
if(check(S)) S.update()
if(check(E)) E.update()
@@ -89,6 +92,7 @@ Class Procs:
#endif
/connection_manager/proc/erase_all()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_manager/proc/erase_all() called tick#: [world.time]")
if(check(N)) N.erase()
if(check(S)) S.erase()
if(check(E)) E.erase()
@@ -99,4 +103,5 @@ Class Procs:
#endif
/connection_manager/proc/check(connection/c)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/connection_manager/proc/check() called tick#: [world.time]")
return c && c.valid()

View File

@@ -21,7 +21,7 @@ Class Vars:
Class Procs:
mark_for_update(turf/T)
Adds the turf to the update list. When updated, update_air_properties() will be called.
Adds the turf to the update list. When updated, update_air_/properties() will be called.
When stuff changes that might affect airflow, call this. It's basically the only thing you need.
add_zone(zone/Z) and remove_zone(zone/Z)
@@ -41,7 +41,7 @@ Class Procs:
Merges the zones to create a single zone.
connect(turf/simulated/A, turf/B)
Called by turf/update_air_properties(). The first argument must be simulated.
Called by turf/update_air_/properties(). The first argument must be simulated.
Creates a connection between A and B.
mark_zone_update(zone/Z)
@@ -95,6 +95,7 @@ Class Procs:
#ifndef ZASDBG
set background = 1
#endif
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/Setup() called tick#: [world.time]")
world << "<span class='danger'>Processing Geometry...</span>"
sleep(-1)
@@ -124,6 +125,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
#ifndef ZASDBG
set background = 1
#endif
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/Start() called tick#: [world.time]")
while(1)
Tick()
@@ -131,6 +133,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
/datum/controller/air_system/proc/Tick()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/Tick() called tick#: [world.time]")
. = 1 //Set the default return value, for runtime detection.
current_cycle++
@@ -199,14 +202,17 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
tick_progress = "success"
/datum/controller/air_system/proc/add_zone(zone/z)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/add_zone() called tick#: [world.time]")
zones.Add(z)
z.name = "Zone [next_id++]"
mark_zone_update(z)
/datum/controller/air_system/proc/remove_zone(zone/z)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/remove_zone() called tick#: [world.time]")
zones.Remove(z)
/datum/controller/air_system/proc/air_blocked(turf/A, turf/B)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/air_blocked() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(isturf(A))
ASSERT(isturf(B))
@@ -216,12 +222,14 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
return ablock | B.c_airblock(A)
/datum/controller/air_system/proc/has_valid_zone(turf/simulated/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/has_valid_zone() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(istype(T))
#endif
return istype(T) && T.zone && !T.zone.invalid
/datum/controller/air_system/proc/merge(zone/A, zone/B)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/merge() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(istype(A))
ASSERT(istype(B))
@@ -237,6 +245,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
mark_zone_update(A)
/datum/controller/air_system/proc/connect(turf/simulated/A, turf/simulated/B)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/connect() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(istype(A))
ASSERT(isturf(B))
@@ -278,6 +287,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
if(direct) c.mark_direct()
/datum/controller/air_system/proc/mark_for_update(turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/mark_for_update() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(isturf(T))
#endif
@@ -289,6 +299,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
T.needs_air_update = 1
/datum/controller/air_system/proc/mark_zone_update(zone/Z)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/mark_zone_update() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(istype(Z))
#endif
@@ -297,10 +308,13 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
Z.needs_update = 1
/datum/controller/air_system/proc/equivalent_pressure(zone/A, zone/B)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/equivalent_pressure() called tick#: [world.time]")
return A.air.compare(B.air)
/datum/controller/air_system/proc/get_edge(zone/A, zone/B)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/get_edge() called tick#: [world.time]")
if(istype(B))
for(var/connection_edge/zone/edge in A.edges)
if(edge.contains_zone(B)) return edge
@@ -315,6 +329,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
return edge
/datum/controller/air_system/proc/has_same_air(turf/A, turf/B)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/has_same_air() called tick#: [world.time]")
if(A.oxygen != B.oxygen) return 0
if(A.nitrogen != B.nitrogen) return 0
if(A.toxins != B.toxins) return 0
@@ -323,4 +338,5 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
return 1
/datum/controller/air_system/proc/remove_edge(connection/c)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/remove_edge() called tick#: [world.time]")
edges.Remove(c)

View File

@@ -11,10 +11,12 @@ var/image/mark = image('icons/Testing/Zone.dmi', icon_state = "mark")
/turf/var/tmp/dbg_img
/turf/proc/dbg(image/img, d = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/dbg() called tick#: [world.time]")
if(d > 0) img.dir = d
overlays -= dbg_img
overlays += img
dbg_img = img
proc/soft_assert(thing,fail)
writepanic("[__FILE__].[__LINE__] \\/proc/soft_assert() called tick#: [world.time]")
if(!thing) message_admins(fail)

View File

@@ -1,6 +1,7 @@
client/proc/ZoneTick()
set category = "Debug"
set name = "Process Atmos"
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\client/proc/ZoneTick() called tick#: [world.time]")
var/result = air_master.Tick()
if(result)
@@ -12,6 +13,7 @@ client/proc/ZoneTick()
client/proc/Zone_Info(turf/T as null|turf)
set category = "Debug"
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\client/proc/Zone_Info() called tick#: [world.time]")
if(T)
if(istype(T,/turf/simulated) && T:zone)
T:zone:dbg_data(src)
@@ -30,6 +32,8 @@ client/var/list/zone_debug_images
client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
set category = "Debug"
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\client/proc/Test_ZAS_Connection() called tick#: [world.time]")
if(!istype(T))
return
@@ -85,6 +89,7 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
/*zone/proc/DebugDisplay(client/client)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/DebugDisplay() called tick#: [world.time]")
if(!istype(client))
return
@@ -151,6 +156,7 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
/*client/proc/TestZASRebuild()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/client/proc/TestZASRebuild() called tick#: [world.time]")
set category = "Debug"
// var/turf/turf = get_turf(mob)
var/zone/current_zone = mob.loc:zone
@@ -232,6 +238,7 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
/* VG - We rolled our own.
client/proc/ZASSettings()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\client/proc/ZASSettings() called tick#: [world.time]")
set category = "Debug"
vsc.SetDefault(mob)

View File

@@ -77,6 +77,7 @@ What are the archived variables for?
//Call it with negative numbers to remove gases.
/datum/gas_mixture/proc/adjust(o2 = 0, co2 = 0, n2 = 0, tx = 0, list/datum/gas/traces = list())
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/adjust() called tick#: [world.time]")
//Purpose: Adjusting the gases within a airmix
//Called by: Nothing, yet!
//Inputs: The values of the gases to adjust
@@ -99,20 +100,24 @@ What are the archived variables for?
/*
/datum/gas_mixture/proc/create_reagents(var/max_vol)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/create_reagents() called tick#: [world.time]")
aerosols = new /datum/reagents(max_vol)
aerosols.my_atom = src
*/
//tg seems to like using these a lot
/datum/gas_mixture/proc/return_temperature()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/return_temperature() called tick#: [world.time]")
return temperature
/datum/gas_mixture/proc/return_volume()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/return_volume() called tick#: [world.time]")
return max(0, volume)
/datum/gas_mixture/proc/thermal_energy()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/thermal_energy() called tick#: [world.time]")
return temperature*heat_capacity()
///////////////////////////////
@@ -120,6 +125,7 @@ What are the archived variables for?
///////////////////////////////
/datum/gas_mixture/proc/heat_capacity()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/heat_capacity() called tick#: [world.time]")
//Purpose: Returning the heat capacity of the gas mix
//Called by: UNKNOWN
//Inputs: None
@@ -134,6 +140,7 @@ What are the archived variables for?
return max(MINIMUM_HEAT_CAPACITY,heat_capacity)
/datum/gas_mixture/proc/heat_capacity_archived()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/heat_capacity_archived() called tick#: [world.time]")
//Purpose: Returning the archived heat capacity of the gas mix
//Called by: UNKNOWN
//Inputs: None
@@ -148,6 +155,7 @@ What are the archived variables for?
return max(MINIMUM_HEAT_CAPACITY,heat_capacity_archived)
/datum/gas_mixture/proc/total_moles()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/total_moles() called tick#: [world.time]")
return total_moles
/*var/moles = oxygen + carbon_dioxide + nitrogen + toxins
@@ -157,6 +165,7 @@ What are the archived variables for?
return moles*/
/datum/gas_mixture/proc/return_pressure()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/return_pressure() called tick#: [world.time]")
//Purpose: Calculating Current Pressure
//Called by:
//Inputs: None
@@ -164,6 +173,7 @@ What are the archived variables for?
return pressure
// proc/return_temperature()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\// proc/return_temperature() called tick#: [world.time]")
//Purpose:
//Inputs:
//Outputs:
@@ -171,6 +181,7 @@ What are the archived variables for?
// return temperature
// proc/return_volume()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\// proc/return_volume() called tick#: [world.time]")
//Purpose:
//Inputs:
//Outputs:
@@ -178,6 +189,7 @@ What are the archived variables for?
// return max(0, volume)
// proc/thermal_energy()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\// proc/thermal_energy() called tick#: [world.time]")
//Purpose:
//Inputs:
//Outputs:
@@ -185,6 +197,7 @@ What are the archived variables for?
// return temperature*heat_capacity()
/datum/gas_mixture/proc/update_values()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/update_values() called tick#: [world.time]")
//Purpose: Calculating and storing values which were normally called CONSTANTLY
//Called by: Anything that changes values within a gas mix.
//Inputs: None
@@ -213,6 +226,7 @@ What are the archived variables for?
////////////////////////////////////////////
/datum/gas_mixture/proc/check_tile_graphic()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_tile_graphic() called tick#: [world.time]")
//Purpose: Calculating the graphic for a tile
//Called by: Turfs updating
//Inputs: None
@@ -243,6 +257,7 @@ What are the archived variables for?
return graphics != graphics_archived
/datum/gas_mixture/proc/react(atom/dump_location)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/react() called tick#: [world.time]")
//Purpose: Calculating if it is possible for a fire to occur in the airmix
//Called by: Air mixes updating?
//Inputs: None
@@ -257,6 +272,7 @@ What are the archived variables for?
return reacting
/datum/gas_mixture/proc/fire()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/fire() called tick#: [world.time]")
//Purpose: Calculating any fire reactions.
//Called by: react() (See above)
//Inputs: None
@@ -323,6 +339,7 @@ What are the archived variables for?
/datum/gas_mixture/proc/archive()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/archive() called tick#: [world.time]")
//Purpose: Archives the current gas values
//Called by: UNKNOWN
//Inputs: None
@@ -344,6 +361,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/check_then_merge(datum/gas_mixture/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_then_merge() called tick#: [world.time]")
//Purpose: Similar to merge(...) but first checks to see if the amount of air assumed is small enough
// that group processing is still accurate for source (aborts if not)
//Called by: airgroups/machinery expelling air, ?
@@ -369,6 +387,7 @@ What are the archived variables for?
return merge(giver)
/datum/gas_mixture/proc/merge(datum/gas_mixture/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/merge() called tick#: [world.time]")
//Purpose: Merges all air from giver into self. Deletes giver.
//Called by: Machinery expelling air, check_then_merge, ?
//Inputs: The gas to merge.
@@ -413,6 +432,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/remove(amount)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/remove() called tick#: [world.time]")
//Purpose: Removes a certain number of moles from the air.
//Called by: ?
//Inputs: How many moles to remove.
@@ -459,6 +479,7 @@ What are the archived variables for?
return removed
/datum/gas_mixture/proc/remove_ratio(ratio)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/remove_ratio() called tick#: [world.time]")
//Purpose: Removes a certain ratio of the air.
//Called by: ?
//Inputs: Percentage to remove.
@@ -496,6 +517,7 @@ What are the archived variables for?
return removed
/datum/gas_mixture/proc/check_then_remove(amount)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_then_remove() called tick#: [world.time]")
//Purpose: Similar to remove(...) but first checks to see if the amount of air removed is small enough
// that group processing is still accurate for source (aborts if not)
//Called by: ?
@@ -510,6 +532,7 @@ What are the archived variables for?
return remove(amount)
/datum/gas_mixture/proc/copy_from(datum/gas_mixture/sample)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/copy_from() called tick#: [world.time]")
//Purpose: Duplicates the sample air mixture.
//Called by: airgroups splitting, ?
//Inputs: Gas to copy
@@ -534,6 +557,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/check_gas_mixture(datum/gas_mixture/sharer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_gas_mixture() called tick#: [world.time]")
//Purpose: Telling if one or both airgroups needs to disable group processing.
//Called by: Airgroups sharing air, checking if group processing needs disabled.
//Inputs: Gas to compare from other airgroup
@@ -594,6 +618,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/check_turf(turf/model)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_turf() called tick#: [world.time]")
//Purpose: Used to compare the gases in an unsimulated turf with the gas in a simulated one.
//Called by: Sharing air (mimicing) with adjacent unsimulated turfs
//Inputs: Unsimulated turf
@@ -622,6 +647,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/share(datum/gas_mixture/sharer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/share() called tick#: [world.time]")
//Purpose: Used to transfer gas from a more pressurised tile to a less presurised tile
// (Two directional, if the other tile is more pressurised, air travels to current tile)
//Called by: Sharing air with adjacent simulated turfs
@@ -773,6 +799,7 @@ What are the archived variables for?
return 0
/datum/gas_mixture/proc/mimic(turf/model, border_multiplier)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/mimic() called tick#: [world.time]")
//Purpose: Used transfer gas from a more pressurised tile to a less presurised unsimulated tile.
//Called by: "sharing" from unsimulated to simulated turfs.
//Inputs: Unsimulated turf, Multiplier for gas transfer (optional)
@@ -856,6 +883,7 @@ What are the archived variables for?
return 0
/datum/gas_mixture/proc/check_both_then_temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_both_then_temperature_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
var/self_heat_capacity = heat_capacity_archived()
@@ -888,6 +916,7 @@ What are the archived variables for?
//Logic integrated from: temperature_share(sharer, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/check_me_then_temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_me_then_temperature_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
var/self_heat_capacity = heat_capacity_archived()
@@ -916,6 +945,7 @@ What are the archived variables for?
//Logic integrated from: temperature_share(sharer, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/check_me_then_temperature_turf_share(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_me_then_temperature_turf_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature)
var/self_temperature_delta = 0
@@ -944,6 +974,7 @@ What are the archived variables for?
//Logic integrated from: temperature_turf_share(sharer, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/check_me_then_temperature_mimic(turf/model, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_me_then_temperature_mimic() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - model.temperature)
var/self_temperature_delta = 0
@@ -966,6 +997,7 @@ What are the archived variables for?
//Logic integrated from: temperature_mimic(model, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/temperature_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)
var/self_heat_capacity = heat_capacity_archived()
@@ -982,6 +1014,7 @@ What are the archived variables for?
sharer.temperature += heat/(sharer_heat_capacity*sharer.group_multiplier)
/datum/gas_mixture/proc/temperature_mimic(turf/model, conduction_coefficient, border_multiplier)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/temperature_mimic() called tick#: [world.time]")
var/delta_temperature = (temperature - model.temperature)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)
var/self_heat_capacity = heat_capacity()//_archived()
@@ -999,6 +1032,7 @@ What are the archived variables for?
temperature -= heat/(self_heat_capacity*group_multiplier)
/datum/gas_mixture/proc/temperature_turf_share(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/temperature_turf_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)
var/self_heat_capacity = heat_capacity()
@@ -1011,6 +1045,7 @@ What are the archived variables for?
sharer.temperature += heat/sharer.heat_capacity
/datum/gas_mixture/proc/compare(datum/gas_mixture/sample)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/compare() called tick#: [world.time]")
//Purpose: Compares sample to self to see if within acceptable ranges that group processing may be enabled
//Called by: Airgroups trying to rebuild
//Inputs: Gas mix to compare
@@ -1060,6 +1095,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/subtract(datum/gas_mixture/right_side)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/subtract() called tick#: [world.time]")
//Purpose: Subtracts right_side from air_mixture. Used to help turfs mingle
//Called by: Pipelines ending in a break (or something)
//Inputs: Gas mix to remove

View File

@@ -57,6 +57,7 @@ var/kill_air = 0
var/tick_multiplier = 2
atom/proc/CanPass(atom/movable/mover, turf/target, height=1.5, air_group = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datom/proc/CanPass() called tick#: [world.time]")
//Purpose: Determines if the object (or airflow) can pass this atom.
//Called by: Movement, airflow.
//Inputs: The moving atom (optional), target turf, "height" and air group
@@ -120,6 +121,7 @@ var/datum/controller/air_system/air_master
/datum/controller/air_system/proc/setup()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/setup() called tick#: [world.time]")
//Purpose: Call this at the start to setup air groups geometry
// (Warning: Very processor intensive but only must be done once per round)
//Called by: Gameticker/Master controller
@@ -153,6 +155,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
spawn start()
/datum/controller/air_system/proc/start()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/start() called tick#: [world.time]")
//Purpose: This is kicked off by the master controller, and controls the processing of all atmosphere.
//Called by: Master controller
//Inputs: None.
@@ -174,6 +177,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
*/
/datum/controller/air_system/proc/tick()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/controller/air_system/proc/tick() called tick#: [world.time]")
. = 1 //Set the default return value, for runtime detection.
tick_progress = "update_air_properties"

View File

@@ -3,7 +3,7 @@
Making Bombs with ZAS:
Make burny fire with lots of burning
Draw off 5000K gas from burny fire
Separate gas into oxygen and plasma components
separate gas into oxygen and plasma components
Obtain plasma and oxygen tanks filled up about 50-75% with normal-temp gas
Fill rest with super hot gas from separated canisters, they should be about 125C now.
Attach to transfer valve and open. BOOM.
@@ -24,26 +24,31 @@ Attach to transfer valve and open. BOOM.
var/volatility = BASE_ZAS_FUEL_REQ //the lower this is, the easier it burns with low fuel in it. Starts at the define value
/atom/proc/getFireFuel()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/getFireFuel() called tick#: [world.time]")
return fire_fuel
/atom/proc/burnFireFuel(var/used_fuel_ratio,var/used_reactants_ratio)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/burnFireFuel() called tick#: [world.time]")
fire_fuel -= (fire_fuel * used_fuel_ratio * used_reactants_ratio) //* 5
if(fire_fuel<=0.1)
//testing("[src] ashifying (BFF)!")
ashify()
/atom/proc/ashify()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/ashify() called tick#: [world.time]")
if(!on_fire)
return
new ashtype(src.loc)
qdel(src)
/atom/proc/extinguish()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/extinguish() called tick#: [world.time]")
on_fire=0
if(fire_overlay)
overlays -= fire_overlay
/atom/proc/ignite(var/temperature)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/ignite() called tick#: [world.time]")
on_fire=1
//visible_message("\The [src] bursts into flame!")
if(fire_dmi && fire_sprite)
@@ -51,12 +56,15 @@ Attach to transfer valve and open. BOOM.
overlays += fire_overlay
/atom/proc/melt()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/melt() called tick#: [world.time]")
return //lolidk
/atom/proc/solidify()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/solidify() called tick#: [world.time]")
return //lolidk
/atom/proc/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/atom/proc/fire_act() called tick#: [world.time]")
if(autoignition_temperature && !on_fire && exposed_temperature > autoignition_temperature)
ignite(exposed_temperature)
return 1
@@ -81,6 +89,7 @@ Attach to transfer valve and open. BOOM.
return 0
/turf/proc/hotspot_expose(var/exposed_temperature, var/exposed_volume, var/soh = 0, var/surfaces=0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/hotspot_expose() called tick#: [world.time]")
/turf/simulated/hotspot_expose(exposed_temperature, exposed_volume, soh, surfaces)
var/obj/effect/effect/foam/fire/W = locate() in contents
@@ -105,6 +114,7 @@ Attach to transfer valve and open. BOOM.
// ignite_temp: 0 = Don't check, just get fuel.
/turf/simulated/proc/getAmtFuel(var/ignite_temp=0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/simulated/proc/getAmtFuel() called tick#: [world.time]")
var/fuel_found=0
if(!ignite_temp || src.autoignition_temperature<ignite_temp)
fuel_found += src.getFireFuel()
@@ -129,6 +139,7 @@ Attach to transfer valve and open. BOOM.
light_color = LIGHT_COLOR_FIRE
/obj/fire/proc/Extinguish()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/fire/proc/Extinguish() called tick#: [world.time]")
var/turf/simulated/S=loc
if(istype(S))
@@ -253,11 +264,13 @@ Attach to transfer valve and open. BOOM.
turf/simulated/var/fire_protection = 0 //Protects newly extinguished tiles from being overrun again.
turf/proc/apply_fire_protection()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \turf/proc/apply_fire_protection() called tick#: [world.time]")
turf/simulated/apply_fire_protection()
fire_protection = world.time
datum/gas_mixture/proc/zburn(var/turf/T, force_burn)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datum/gas_mixture/proc/zburn() called tick#: [world.time]")
// NOTE: zburn is also called from canisters and in tanks/pipes (via react()). Do NOT assume T is always a turf.
// In the aforementioned cases, it's null. - N3X.
var/value = 0
@@ -329,6 +342,7 @@ datum/gas_mixture/proc/zburn(var/turf/T, force_burn)
return value
/datum/gas_mixture/proc/check_recombustability(var/turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_recombustability() called tick#: [world.time]")
//this is a copy proc to continue a fire after its been started.
var/datum/gas/volatile_fuel/fuel = locate() in trace_gases
@@ -366,6 +380,7 @@ datum/gas_mixture/proc/zburn(var/turf/T, force_burn)
return still_burning
datum/gas_mixture/proc/check_combustability(var/turf/T, var/objects)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datum/gas_mixture/proc/check_combustability() called tick#: [world.time]")
//this check comes up very often and is thus centralized here to ease adding stuff
// zburn is used in tank fires, as well. This check, among others, broke tankbombs. - N3X
/*
@@ -391,6 +406,7 @@ datum/gas_mixture/proc/check_combustability(var/turf/T, var/objects)
return 0
datum/gas_mixture/proc/calculate_firelevel(var/turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\datum/gas_mixture/proc/calculate_firelevel() called tick#: [world.time]")
//Calculates the firelevel based on one equation instead of having to do this multiple times in different areas.
var/datum/gas/volatile_fuel/fuel = locate() in trace_gases
@@ -426,6 +442,7 @@ datum/gas_mixture/proc/calculate_firelevel(var/turf/T)
/mob/living/proc/FireBurn(var/firelevel, var/last_temperature, var/pressure)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/proc/FireBurn() called tick#: [world.time]")
var/mx = 5 * firelevel/zas_settings.Get(/datum/ZAS_Setting/fire_firelevel_multiplier) * min(pressure / ONE_ATMOSPHERE, 1)
apply_damage(2.5*mx, BURN)

View File

@@ -4,6 +4,8 @@
//Floods outward from an initial turf to fill everywhere it's zone would reach.
proc/FloodFill(turf/simulated/start)
writepanic("[__FILE__].[__LINE__] \\/proc/FloodFill() called tick#: [world.time]")
if(!istype(start))
return list()
@@ -77,6 +79,8 @@ proc/FloodFill(turf/simulated/start)
//Procedure to merge two zones together.
proc/ZMerge(zone/A,zone/B)
writepanic("[__FILE__].[__LINE__] \\/proc/ZMerge() called tick#: [world.time]")
//Sanity~
if(!istype(A) || !istype(B))
return
@@ -140,6 +144,8 @@ proc/ZMerge(zone/A,zone/B)
//Connects two zones by forming a connection object representing turfs A and B.
proc/ZConnect(turf/simulated/A,turf/simulated/B)
writepanic("[__FILE__].[__LINE__] \\/proc/ZConnect() called tick#: [world.time]")
//Make sure that if it's space, it gets added to unsimulated_tiles instead.
if(!istype(B) || iscatwalk(B))
if(A.zone)

View File

@@ -247,6 +247,7 @@ var/global/ZAS_Settings/zas_settings = new
Load()
/ZAS_Settings/proc/Save()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/Save() called tick#: [world.time]")
var/F = file("config/ZAS.txt")
fdel(F)
for(var/id in src.settings)
@@ -257,6 +258,7 @@ var/global/ZAS_Settings/zas_settings = new
F << ""
/ZAS_Settings/proc/Load()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/Load() called tick#: [world.time]")
for(var/t in file2list("config/ZAS.txt"))
if(!t) continue
@@ -283,10 +285,12 @@ var/global/ZAS_Settings/zas_settings = new
// INTERNAL USE ONLY
/ZAS_Settings/proc/idfrompath(const/path)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/idfrompath() called tick#: [world.time]")
return copytext(path, rfindtext(path, "/") + 1)
// INTERNAL USE ONLY
/ZAS_Settings/proc/ChangeSetting(var/user,var/id)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/ChangeSetting() called tick#: [world.time]")
var/datum/ZAS_Setting/setting = src.settings["[id]"]
var/displayedValue=""
switch(setting.valtype)
@@ -326,11 +330,13 @@ var/global/ZAS_Settings/zas_settings = new
* @param value The value that the setting should be set to.
*/
/ZAS_Settings/proc/Set(var/id, var/value)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/Set() called tick#: [world.time]")
var/datum/ZAS_Setting/setting = src.settings["[id]"]
setting.value=value
// INTERNAL USE ONLY
/ZAS_Settings/proc/SetFromConfig(var/id, var/value)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/SetFromConfig() called tick#: [world.time]")
var/datum/ZAS_Setting/setting = src.settings["[id]"]
switch(setting.valtype)
if(ZAS_TYPE_NUMERIC)
@@ -361,6 +367,7 @@ var/global/ZAS_Settings/zas_settings = new
* @returns Value of the desired setting
*/
/ZAS_Settings/proc/Get(var/id)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/Get() called tick#: [world.time]")
if(ispath(id))
id="[id]"
var/datum/ZAS_Setting/setting = src.settings[id]
@@ -369,6 +376,7 @@ var/global/ZAS_Settings/zas_settings = new
return setting.value
/ZAS_Settings/proc/ChangeSettingsDialog(mob/user)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/ChangeSettingsDialog() called tick#: [world.time]")
var/dat = {"
<html>
<head>
@@ -392,7 +400,7 @@ a { color: white; }
var/datum/ZAS_Setting/s = src.settings[id]
// AUTOFIXED BY fix_string_idiocy.py
// C:\Users\Rob\Documents\Projects\vgstation13\code\ZAS\NewSettings.dm:393: dat += "<dt><b>[s.name]</b> = <i>[s.value]</i> <A href='?src=\ref[src];changevar=[id]'>\[Change\]</A></dt>"
// C:\Users\Rob\\documents\\\projects\vgstation13\code\ZAS\NewSettings.dm:393: dat += "<dt><b>[s.name]</b> = <i>[s.value]</i> <A href='?src=\ref[src];changevar=[id]'>\[Change\]</A></dt>"
dat += {"<dt><b>[s.name]</b> = <i>[s.value]</i> <A href='?src=\ref[src];changevar=[id]'>\[Change\]</A></dt>
<dd>[s.desc]</i></dd>"}
// END AUTOFIX
@@ -414,6 +422,7 @@ a { color: white; }
message_admins("[key_name(usr)] reloaded ZAS settings from disk.")
/ZAS_Settings/proc/SetDefault(var/mob/user)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/ZAS_Settings/proc/SetDefault() called tick#: [world.time]")
var/list/setting_choices = list("Plasma - Standard", "Plasma - Low Hazard", "Plasma - High Hazard", "Plasma - Oh Shit!", "ZAS - Normal", "ZAS - Forgiving", "ZAS - Dangerous", "ZAS - Hellish")
var/def = input(user, "Which of these presets should be used?") as null|anything in setting_choices
if(!def)

View File

@@ -4,6 +4,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
var/contaminated = 0
/obj/item/proc/can_contaminate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/proc/can_contaminate() called tick#: [world.time]")
// clothing and backpacks can be contaminated.
if(flags & PLASMAGUARD)
return 0
@@ -13,6 +14,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
return 1
/obj/item/proc/contaminate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/proc/contaminate() called tick#: [world.time]")
// do a contamination overlay?
// temporary measure to keep contamination less deadly than it was.
if(!contaminated)
@@ -20,10 +22,12 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
overlays.Add(contamination_overlay)
/obj/item/proc/decontaminate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/obj/item/proc/decontaminate() called tick#: [world.time]")
contaminated = 0
overlays.Remove(contamination_overlay)
/mob/proc/contaminate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/proc/contaminate() called tick#: [world.time]")
/mob/living/carbon/human/contaminate()
//See if anything can be contaminated.
@@ -39,6 +43,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
// back.contaminate()
/mob/proc/pl_effects()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/proc/pl_effects() called tick#: [world.time]")
/mob/living/carbon/human/pl_effects()
//Handles all the bad things plasma can do.
@@ -77,6 +82,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
/mob/living/carbon/human/proc/burn_eyes()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/carbon/human/proc/burn_eyes() called tick#: [world.time]")
//The proc that handles eye burning.
if(!species.has_organ["eyes"])
return
@@ -90,6 +96,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
eye_blind += 20
/mob/living/carbon/human/proc/pl_head_protected()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/carbon/human/proc/pl_head_protected() called tick#: [world.time]")
//Checks if the head is adequately sealed.
if(head)
if(zas_settings.Get(/datum/ZAS_Setting/PLASMAGUARD_ONLY))
@@ -100,6 +107,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
return 0
/mob/living/carbon/human/proc/pl_suit_protected()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/carbon/human/proc/pl_suit_protected() called tick#: [world.time]")
//Checks if the suit is adequately sealed.
if(wear_suit)
if(zas_settings.Get(/datum/ZAS_Setting/PLASMAGUARD_ONLY))
@@ -109,6 +117,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
return 0
/mob/living/carbon/human/proc/suit_contamination()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/mob/living/carbon/human/proc/suit_contamination() called tick#: [world.time]")
//Runs over the things that can be contaminated and does so.
if(w_uniform) w_uniform.contaminate()
if(shoes) shoes.contaminate()

View File

@@ -6,6 +6,7 @@
/turf/var/datum/gas_mixture/air
/turf/simulated/proc/set_graphic(const/newGraphics)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/simulated/proc/set_graphic() called tick#: [world.time]")
if (!isnum(newGraphics))
return
@@ -33,6 +34,7 @@
gasGraphics = overlayGraphics.Copy()
/turf/proc/update_air_properties()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/update_air_properties() called tick#: [world.time]")
var/block = c_airblock(src)
if(block & AIR_BLOCKED)
//dbg(blocked)
@@ -197,6 +199,7 @@
air_master.connect(src, T)
/turf/proc/post_update_air_properties()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/post_update_air_properties() called tick#: [world.time]")
if(connections) connections.update_all()
/turf/assume_air(datum/gas_mixture/giver) //use this for machines to adjust air
@@ -255,6 +258,7 @@
return air
/turf/proc/make_air()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/make_air() called tick#: [world.time]")
air = new/datum/gas_mixture
air.temperature = temperature
air.adjust(oxygen, carbon_dioxide, nitrogen, toxins)
@@ -262,6 +266,7 @@
air.volume = CELL_VOLUME
/turf/simulated/proc/c_copy_air()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/simulated/proc/c_copy_air() called tick#: [world.time]")
if(!air) air = new/datum/gas_mixture
air.copy_from(zone.air)
air.group_multiplier = 1

View File

@@ -100,6 +100,7 @@ vs_control
settings -= "plc"
proc/ChangeSettingsDialog(mob/user,list/L)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/ChangeSettingsDialog() called tick#: [world.time]")
//var/which = input(user,"Choose a setting:") in L
var/dat = ""
for(var/ch in L)
@@ -122,6 +123,7 @@ vs_control
if("changevar" in href_list)
ChangeSetting(usr,href_list["changevar"])
proc/ChangeSetting(mob/user,ch)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/ChangeSetting() called tick#: [world.time]")
var/vw
var/how = "Text"
var/display_description = ch
@@ -177,6 +179,7 @@ vs_control
else
ChangeSettingsDialog(user,settings)
proc/RandomizeWithProbability()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/RandomizeWithProbability() called tick#: [world.time]")
for(var/V in settings)
var/newvalue
if("[V]_RANDOM" in vars)
@@ -189,10 +192,12 @@ vs_control
V = newvalue
proc/ChangePlasma()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/ChangePlasma() called tick#: [world.time]")
for(var/V in plc.settings)
plc.Randomize(V)
proc/SetDefault(var/mob/user)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/SetDefault() called tick#: [world.time]")
var/list/setting_choices = list("Plasma - Standard", "Plasma - Low Hazard", "Plasma - High Hazard", "Plasma - Oh Shit!",\
"ZAS - Normal", "ZAS - Forgiving", "ZAS - Dangerous", "ZAS - Hellish")
var/def = input(user, "Which of these presets should be used?") as null|anything in setting_choices
@@ -314,6 +319,7 @@ pl_control
settings -= "settings"
proc/Randomize(V)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\proc/Randomize() called tick#: [world.time]")
var/newvalue
if("[V]_RANDOM" in vars)
if(isnum(vars["[V]_RANDOM"]))

View File

@@ -22,6 +22,7 @@
// For new turfs
/turf/proc/copy_air_from(var/turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/copy_air_from() called tick#: [world.time]")
oxygen = T.oxygen
carbon_dioxide = T.carbon_dioxide
nitrogen = T.nitrogen
@@ -52,6 +53,7 @@
/turf/simulated/var/tmp/was_icy=0
/turf/simulated/proc/update_visuals()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/simulated/proc/update_visuals() called tick#: [world.time]")
overlays = 0
if(decals.len)
@@ -187,6 +189,7 @@
return ..()
/turf/simulated/proc/update_air_properties()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/simulated/proc/update_air_properties() called tick#: [world.time]")
if(iscatwalk(src))
return ..()
var/air_directions_archived = air_check_directions
@@ -328,6 +331,7 @@
return 1
/turf/proc/HasDoor(turf/O)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/HasDoor() called tick#: [world.time]")
//Checks for the presence of doors, used for zone spreading and connection.
//A positive numerical argument checks only for closed doors.
//Another turf as an argument checks for windoors between here and there.
@@ -343,6 +347,7 @@
return 1
/turf/proc/ZCanPass(turf/simulated/T, var/include_space = 0)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/ZCanPass() called tick#: [world.time]")
//Fairly standard pass checks for turfs, objects and directional windows. Also stops at the edge of space.
if(!istype(T))
return 0
@@ -368,6 +373,7 @@
return 1
/turf/proc/ZAirPass(turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/ZAirPass() called tick#: [world.time]")
//Fairly standard pass checks for turfs, objects and directional windows.
if(!istype(T))
return 0
@@ -391,6 +397,7 @@
/*UNUSED
/turf/proc/check_connections()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/check_connections() called tick#: [world.time]")
//Checks for new connections that can be made.
for(var/d in cardinal)
var/turf/simulated/T = get_step(src,d)
@@ -400,6 +407,7 @@
ZConnect(src,T)
/turf/proc/check_for_space()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/turf/proc/check_for_space() called tick#: [world.time]")
//Checks for space around the turf.
for(var/d in cardinal)
var/turf/T = get_step(src,d)

View File

@@ -67,6 +67,7 @@ var/list/CounterDoorDirections = list(SOUTH,EAST) //Which directions doors turfs
//Handles deletion via garbage collection.
/zone/proc/SoftDelete()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/SoftDelete() called tick#: [world.time]")
zones.Remove(src)
air = null
@@ -90,6 +91,7 @@ var/list/CounterDoorDirections = list(SOUTH,EAST) //Which directions doors turfs
//ZONE MANAGEMENT FUNCTIONS
/zone/proc/AddTurf(turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/AddTurf() called tick#: [world.time]")
//Adds the turf to contents, increases the size of the zone, and sets the zone var.
if(istype(T, /turf/simulated) && !iscatwalk(T))
if(T in contents)
@@ -109,6 +111,7 @@ var/list/CounterDoorDirections = list(SOUTH,EAST) //Which directions doors turfs
contents -= T
/zone/proc/RemoveTurf(turf/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/RemoveTurf() called tick#: [world.time]")
//Same, but in reverse.
if(istype(T, /turf/simulated))
if(!(T in contents))
@@ -130,6 +133,7 @@ var/list/CounterDoorDirections = list(SOUTH,EAST) //Which directions doors turfs
#define QUANTIZE(variable) (round(variable,0.0001))
/zone/proc/process()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/process() called tick#: [world.time]")
. = 1
progress = "problem with: SoftDelete()"
@@ -285,6 +289,7 @@ var/list/CounterDoorDirections = list(SOUTH,EAST) //Which directions doors turfs
var/list/sharing_lookup_table = list(0.30, 0.40, 0.48, 0.54, 0.60, 0.66)
proc/ShareRatio(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
writepanic("[__FILE__].[__LINE__] \\/proc/ShareRatio() called tick#: [world.time]")
//Shares a specific ratio of gas between mixtures using simple weighted averages.
var
//WOOT WOOT TOUCH THIS AND YOU ARE A RETARD
@@ -354,6 +359,7 @@ proc/ShareRatio(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
else return 0
proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
writepanic("[__FILE__].[__LINE__] \\/proc/ShareSpace() called tick#: [world.time]")
//A modified version of ShareRatio for spacing gas at the same rate as if it were going into a large airless room.
if(!unsimulated_tiles || !unsimulated_tiles.len)
return 0
@@ -433,6 +439,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
proc/ShareHeat(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
writepanic("[__FILE__].[__LINE__] \\/proc/ShareHeat() called tick#: [world.time]")
//Shares a specific ratio of gas between mixtures using simple weighted averages.
var
//WOOT WOOT TOUCH THIS AND YOU ARE A RETARD
@@ -462,6 +469,7 @@ proc/ShareHeat(datum/gas_mixture/A, datum/gas_mixture/B, connecting_tiles)
///////////////////
zone/proc/Rebuild()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/Rebuild() called tick#: [world.time]")
//Choose a random turf and regenerate the zone from it.
var
turf/simulated/sample = locate() in contents
@@ -540,6 +548,7 @@ zone/proc/Rebuild()
//UNUSED
/*
zone/proc/connected_zones()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/connected_zones() called tick#: [world.time]")
//A legacy proc for getting connected zones.
. = list()
for(var/connection/C in connections)

View File

@@ -55,6 +55,7 @@ Class Procs:
air.volume = CELL_VOLUME
/zone/proc/add(turf/simulated/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/add() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(!invalid)
ASSERT(istype(T))
@@ -68,6 +69,7 @@ Class Procs:
T.set_graphic(air.graphics)
/zone/proc/remove(turf/simulated/T)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/remove() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(!invalid)
ASSERT(istype(T))
@@ -83,6 +85,7 @@ Class Procs:
c_invalidate()
/zone/proc/c_merge(zone/into)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/c_merge() called tick#: [world.time]")
#ifdef ZASDBG
ASSERT(!invalid)
ASSERT(istype(into))
@@ -97,6 +100,7 @@ Class Procs:
#endif
/zone/proc/c_invalidate()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/c_invalidate() called tick#: [world.time]")
invalid = 1
air_master.remove_zone(src)
#ifdef ZASDBG
@@ -105,6 +109,7 @@ Class Procs:
#endif
/zone/proc/rebuild()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/rebuild() called tick#: [world.time]")
if(invalid) return //Short circuit for explosions where rebuild is called many times over.
c_invalidate()
for(var/turf/simulated/T in contents)
@@ -113,6 +118,7 @@ Class Procs:
air_master.mark_for_update(T)
/zone/proc/add_tile_air(datum/gas_mixture/tile_air)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/add_tile_air() called tick#: [world.time]")
//air.volume += CELL_VOLUME
air.group_multiplier = 1
air.multiply(contents.len)
@@ -121,12 +127,14 @@ Class Procs:
air.group_multiplier = contents.len+1
/zone/proc/tick()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/tick() called tick#: [world.time]")
air.archive()
if(air.check_tile_graphic())
for(var/turf/simulated/T in contents)
T.set_graphic(air.graphics)
/zone/proc/dbg_data(mob/M)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/zone/proc/dbg_data() called tick#: [world.time]")
M << name
M << "O2: [air.oxygen] N2: [air.nitrogen] CO2: [air.carbon_dioxide] P: [air.toxins]"
M << "P: [air.return_pressure()] kPa V: [air.volume]L T: [air.temperature]<5D>K ([air.temperature - T0C]<5D>C)"

View File

@@ -25,6 +25,7 @@ What are the archived variables for?
// END VGSHIT
/hook/startup/proc/createGasOverlays()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/hook/startup/proc/createGasOverlays() called tick#: [world.time]")
plmaster = new /obj/effect/overlay()
plmaster.icon = 'icons/effects/tile_effects.dmi'
plmaster.icon_state = "plasma"
@@ -93,6 +94,7 @@ What are the archived variables for?
//Call it with negative numbers to remove gases.
/datum/gas_mixture/proc/adjust(o2 = 0, co2 = 0, n2 = 0, tx = 0, list/datum/gas/traces = list())
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/adjust() called tick#: [world.time]")
//Purpose: Adjusting the gases within a airmix
//Called by: Nothing, yet!
//Inputs: The values of the gases to adjust
@@ -115,6 +117,7 @@ What are the archived variables for?
//Takes a gas string, and the amount of moles to adjust by. Calls update_values() if update isn't 0.
/datum/gas_mixture/proc/adjust_gas(gasid, moles, update = 1)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/adjust_gas() called tick#: [world.time]")
if(moles == 0)
return
switch(gasid)
@@ -145,20 +148,24 @@ What are the archived variables for?
/*
/datum/gas_mixture/proc/create_reagents(var/max_vol)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/create_reagents() called tick#: [world.time]")
aerosols = new /datum/reagents(max_vol)
aerosols.my_atom = src
*/
//tg seems to like using these a lot
/datum/gas_mixture/proc/return_temperature()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/return_temperature() called tick#: [world.time]")
return temperature
/datum/gas_mixture/proc/return_volume()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/return_volume() called tick#: [world.time]")
return max(0, volume)
/datum/gas_mixture/proc/thermal_energy()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/thermal_energy() called tick#: [world.time]")
return temperature*heat_capacity()
///////////////////////////////
@@ -166,6 +173,7 @@ What are the archived variables for?
///////////////////////////////
/datum/gas_mixture/proc/heat_capacity()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/heat_capacity() called tick#: [world.time]")
//Purpose: Returning the heat capacity of the gas mix
//Called by: UNKNOWN
//Inputs: None
@@ -180,6 +188,7 @@ What are the archived variables for?
return max(MINIMUM_HEAT_CAPACITY,heat_capacity)
/datum/gas_mixture/proc/heat_capacity_archived()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/heat_capacity_archived() called tick#: [world.time]")
//Purpose: Returning the archived heat capacity of the gas mix
//Called by: UNKNOWN
//Inputs: None
@@ -194,6 +203,7 @@ What are the archived variables for?
return max(MINIMUM_HEAT_CAPACITY,heat_capacity_archived)
/datum/gas_mixture/proc/total_moles()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/total_moles() called tick#: [world.time]")
return total_moles
/*var/moles = oxygen + carbon_dioxide + nitrogen + toxins
@@ -203,6 +213,7 @@ What are the archived variables for?
return moles*/
/datum/gas_mixture/proc/return_pressure()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/return_pressure() called tick#: [world.time]")
//Purpose: Calculating Current Pressure
//Called by:
//Inputs: None
@@ -210,6 +221,7 @@ What are the archived variables for?
return pressure
// proc/return_temperature()
//writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\// proc/return_temperature() called tick#: [world.time]")
//Purpose:
//Inputs:
//Outputs:
@@ -217,6 +229,7 @@ What are the archived variables for?
// return temperature
// proc/return_volume()
//writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\// proc/return_volume() called tick#: [world.time]")
//Purpose:
//Inputs:
//Outputs:
@@ -224,6 +237,7 @@ What are the archived variables for?
// return max(0, volume)
// proc/thermal_energy()
//writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\// proc/thermal_energy() called tick#: [world.time]")
//Purpose:
//Inputs:
//Outputs:
@@ -231,6 +245,7 @@ What are the archived variables for?
// return temperature*heat_capacity()
/datum/gas_mixture/proc/update_values()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/update_values() called tick#: [world.time]")
//Purpose: Calculating and storing values which were normally called CONSTANTLY
//Called by: Anything that changes values within a gas mix.
//Inputs: None
@@ -259,6 +274,7 @@ What are the archived variables for?
////////////////////////////////////////////
/datum/gas_mixture/proc/check_tile_graphic()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_tile_graphic() called tick#: [world.time]")
//Purpose: Calculating the graphic for a tile
//Called by: Turfs updating
//Inputs: None
@@ -289,6 +305,7 @@ What are the archived variables for?
return graphics != graphics_archived
/datum/gas_mixture/proc/react(atom/dump_location)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/react() called tick#: [world.time]")
//Purpose: Calculating if it is possible for a fire to occur in the airmix
//Called by: Air mixes updating?
//Inputs: None
@@ -299,6 +316,7 @@ What are the archived variables for?
return zburn(null) // ? (was: return reacting)
/datum/gas_mixture/proc/fire()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/fire() called tick#: [world.time]")
//Purpose: Calculating any fire reactions.
//Called by: react() (See above)
//Inputs: None
@@ -365,6 +383,7 @@ What are the archived variables for?
/datum/gas_mixture/proc/archive()
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/archive() called tick#: [world.time]")
//Purpose: Archives the current gas values
//Called by: UNKNOWN
//Inputs: None
@@ -386,6 +405,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/check_then_merge(datum/gas_mixture/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_then_merge() called tick#: [world.time]")
//Purpose: Similar to merge(...) but first checks to see if the amount of air assumed is small enough
// that group processing is still accurate for source (aborts if not)
//Called by: airgroups/machinery expelling air, ?
@@ -411,6 +431,7 @@ What are the archived variables for?
return merge(giver)
/datum/gas_mixture/proc/merge(datum/gas_mixture/giver)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/merge() called tick#: [world.time]")
//Purpose: Merges all air from giver into self. Deletes giver.
//Called by: Machinery expelling air, check_then_merge, ?
//Inputs: The gas to merge.
@@ -455,6 +476,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/remove(amount)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/remove() called tick#: [world.time]")
//Purpose: Removes a certain number of moles from the air.
//Called by: ?
//Inputs: How many moles to remove.
@@ -501,6 +523,7 @@ What are the archived variables for?
return removed
/datum/gas_mixture/proc/remove_ratio(ratio)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/remove_ratio() called tick#: [world.time]")
//Purpose: Removes a certain ratio of the air.
//Called by: ?
//Inputs: Percentage to remove.
@@ -538,6 +561,7 @@ What are the archived variables for?
return removed
/datum/gas_mixture/proc/check_then_remove(amount)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_then_remove() called tick#: [world.time]")
//Purpose: Similar to remove(...) but first checks to see if the amount of air removed is small enough
// that group processing is still accurate for source (aborts if not)
//Called by: ?
@@ -552,6 +576,7 @@ What are the archived variables for?
return remove(amount)
/datum/gas_mixture/proc/copy_from(datum/gas_mixture/sample)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/copy_from() called tick#: [world.time]")
//Purpose: Duplicates the sample air mixture.
//Called by: airgroups splitting, ?
//Inputs: Gas to copy
@@ -576,6 +601,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/check_gas_mixture(datum/gas_mixture/sharer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_gas_mixture() called tick#: [world.time]")
//Purpose: Telling if one or both airgroups needs to disable group processing.
//Called by: Airgroups sharing air, checking if group processing needs disabled.
//Inputs: Gas to compare from other airgroup
@@ -636,6 +662,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/check_turf(turf/model)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_turf() called tick#: [world.time]")
//Purpose: Used to compare the gases in an unsimulated turf with the gas in a simulated one.
//Called by: Sharing air (mimicing) with adjacent unsimulated turfs
//Inputs: Unsimulated turf
@@ -664,6 +691,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/share(datum/gas_mixture/sharer)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/share() called tick#: [world.time]")
//Purpose: Used to transfer gas from a more pressurised tile to a less presurised tile
// (Two directional, if the other tile is more pressurised, air travels to current tile)
//Called by: Sharing air with adjacent simulated turfs
@@ -815,6 +843,7 @@ What are the archived variables for?
return 0
/datum/gas_mixture/proc/mimic(turf/model, border_multiplier)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/mimic() called tick#: [world.time]")
//Purpose: Used transfer gas from a more pressurised tile to a less presurised unsimulated tile.
//Called by: "sharing" from unsimulated to simulated turfs.
//Inputs: Unsimulated turf, Multiplier for gas transfer (optional)
@@ -898,6 +927,7 @@ What are the archived variables for?
return 0
/datum/gas_mixture/proc/check_both_then_temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_both_then_temperature_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
var/self_heat_capacity = heat_capacity_archived()
@@ -930,6 +960,7 @@ What are the archived variables for?
//Logic integrated from: temperature_share(sharer, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/check_me_then_temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_me_then_temperature_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
var/self_heat_capacity = heat_capacity_archived()
@@ -958,6 +989,7 @@ What are the archived variables for?
//Logic integrated from: temperature_share(sharer, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/check_me_then_temperature_turf_share(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_me_then_temperature_turf_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature)
var/self_temperature_delta = 0
@@ -986,6 +1018,7 @@ What are the archived variables for?
//Logic integrated from: temperature_turf_share(sharer, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/check_me_then_temperature_mimic(turf/model, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/check_me_then_temperature_mimic() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - model.temperature)
var/self_temperature_delta = 0
@@ -1008,6 +1041,7 @@ What are the archived variables for?
//Logic integrated from: temperature_mimic(model, conduction_coefficient) for efficiency
/datum/gas_mixture/proc/temperature_share(datum/gas_mixture/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/temperature_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature_archived)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)
var/self_heat_capacity = heat_capacity_archived()
@@ -1024,6 +1058,7 @@ What are the archived variables for?
sharer.temperature += heat/(sharer_heat_capacity*sharer.group_multiplier)
/datum/gas_mixture/proc/temperature_mimic(turf/model, conduction_coefficient, border_multiplier)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/temperature_mimic() called tick#: [world.time]")
var/delta_temperature = (temperature - model.temperature)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)
var/self_heat_capacity = heat_capacity()//_archived()
@@ -1041,6 +1076,7 @@ What are the archived variables for?
temperature -= heat/(self_heat_capacity*group_multiplier)
/datum/gas_mixture/proc/temperature_turf_share(turf/simulated/sharer, conduction_coefficient)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/temperature_turf_share() called tick#: [world.time]")
var/delta_temperature = (temperature_archived - sharer.temperature)
if(abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)
var/self_heat_capacity = heat_capacity()
@@ -1053,6 +1089,7 @@ What are the archived variables for?
sharer.temperature += heat/sharer.heat_capacity
/datum/gas_mixture/proc/compare(datum/gas_mixture/sample)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/compare() called tick#: [world.time]")
//Purpose: Compares sample to self to see if within acceptable ranges that group processing may be enabled
//Called by: Airgroups trying to rebuild
//Inputs: Gas mix to compare
@@ -1105,6 +1142,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/add(datum/gas_mixture/right_side)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/add() called tick#: [world.time]")
if(!right_side)
return 0
oxygen += right_side.oxygen
@@ -1124,6 +1162,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/subtract(datum/gas_mixture/right_side)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/subtract() called tick#: [world.time]")
//Purpose: Subtracts right_side from air_mixture. Used to help turfs mingle
//Called by: Pipelines ending in a break (or something)
//Inputs: Gas mix to remove
@@ -1144,6 +1183,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/multiply(factor)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/multiply() called tick#: [world.time]")
oxygen *= factor
carbon_dioxide *= factor
nitrogen *= factor
@@ -1157,6 +1197,7 @@ What are the archived variables for?
return 1
/datum/gas_mixture/proc/divide(factor)
writepanic("[__FILE__].[__LINE__] ([src.type])([usr ? usr.ckey : ""]) \\/datum/gas_mixture/proc/divide() called tick#: [world.time]")
oxygen /= factor
carbon_dioxide /= factor
nitrogen /= factor

View File

@@ -1,30 +1,40 @@
/proc/cmp_numeric_dsc(a,b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_numeric_dsc() called tick#: [world.time]")
return b - a
/proc/cmp_numeric_asc(a,b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_numeric_asc() called tick#: [world.time]")
return a - b
/proc/cmp_text_asc(a,b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_text_asc() called tick#: [world.time]")
return sorttext(b,a)
/proc/cmp_text_dsc(a,b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_text_dsc() called tick#: [world.time]")
return sorttext(a,b)
/proc/cmp_name_asc(atom/a, atom/b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_name_asc() called tick#: [world.time]")
return sorttext(b.name, a.name)
/proc/cmp_name_dsc(atom/a, atom/b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_name_dsc() called tick#: [world.time]")
return sorttext(a.name, b.name)
var/cmp_field = "name"
/proc/cmp_records_asc(datum/data/record/a, datum/data/record/b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_records_asc() called tick#: [world.time]")
return sorttext((b ? b.fields[cmp_field] : ""), (a ? a.fields[cmp_field] : a))
/proc/cmp_records_dsc(datum/data/record/a, datum/data/record/b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_records_dsc() called tick#: [world.time]")
return sorttext(a.fields[cmp_field], b.fields[cmp_field])
/proc/cmp_ckey_asc(client/a, client/b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_ckey_asc() called tick#: [world.time]")
return sorttext(b.ckey, a.ckey)
/proc/cmp_ckey_dsc(client/a, client/b)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/cmp_ckey_dsc() called tick#: [world.time]")
return sorttext(a.ckey, b.ckey)

View File

@@ -13,6 +13,7 @@ var/global/list/pooledvariables = new
* Example call: getFromPool(/datum/pipeline, args)
*/
/proc/getFromDPool()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/getFromDPool() called tick#: [world.time]")
var/A = args[1]
var/list/B = list()
B += (args - A)
@@ -55,6 +56,7 @@ var/global/list/pooledvariables = new
* Example call: returnToDPool(src)
*/
/proc/returnToDPool(const/datum/D)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/returnToDPool() called tick#: [world.time]")
if(!D)
return
if(length(masterdatumPool["[D.type]"]) > MAINTAINING_DATUM_POOL_COUNT)
@@ -86,6 +88,7 @@ var/global/list/pooledvariables = new
#endif
/datum/proc/createVariables()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/datum/proc/createVariables() called tick#: [world.time]")
pooledvariables[type] = new/list()
var/list/exclude = global.exclude + args
@@ -99,6 +102,7 @@ var/global/list/pooledvariables = new
//SEE http://www.byond.com/forum/?post=76850 AS A REFERENCE ON THIS
/datum/proc/resetVariables()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/datum/proc/resetVariables() called tick#: [world.time]")
if(!pooledvariables[type])
createVariables(args)
@@ -106,6 +110,7 @@ var/global/list/pooledvariables = new
vars[key] = pooledvariables[type][key]
/proc/isInTypes(atom/Object, types)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/isInTypes() called tick#: [world.time]")
if(!Object)
return 0
var/prototype = Object.type

View File

@@ -29,6 +29,7 @@ var/list/exclude = list("inhand_states", "loc", "locs", "parent_type", "vars", "
* Example call: getFromPool(/obj/item/weapon/shard, loc)
*/
/proc/getFromPool()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/getFromPool() called tick#: [world.time]")
var/A = args[1]
var/list/B = list()
B += (args - A)
@@ -69,6 +70,7 @@ var/list/exclude = list("inhand_states", "loc", "locs", "parent_type", "vars", "
* Example call: returnToPool(src)
*/
/proc/returnToPool(const/atom/movable/AM)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/returnToPool() called tick#: [world.time]")
ASSERT(AM)
if(istype(AM.loc,/mob/living))
var/mob/living/L = AM.loc

View File

@@ -1,6 +1,7 @@
//checks if a file exists and contains text
//returns text as a string if these conditions are met
/proc/return_file_text(filename)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/return_file_text() called tick#: [world.time]")
if(fexists(filename) == 0)
error("File not found ([filename])")
return
@@ -13,6 +14,7 @@
return text
/proc/get_maps(root="maps/voting/")
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_maps() called tick#: [world.time]")
var/list/maps = list()
var/recursion_limit = 20 //lots of maps waiting to be played, feels like TF2
//Get our potential maps
@@ -40,10 +42,12 @@
//Sends resource files to client cache
/client/proc/getFiles()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/client/proc/getFiles() called tick#: [world.time]")
for(var/file in args)
src << browse_rsc(file)
/client/proc/browse_files(root="data/logs/", max_iterations=10, list/valid_extensions=list(".txt",".log",".htm", ".csv"))
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/client/proc/browse_files() called tick#: [world.time]")
var/path = root
for(var/i=0, i<max_iterations, i++)
@@ -77,6 +81,7 @@
PLEASE USE RESPONSIBLY, Some log files canr each sizes of 4MB! */
/client/proc/file_spam_check()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/client/proc/file_spam_check() called tick#: [world.time]")
var/time_to_wait = fileaccess_timer - world.time
if(time_to_wait > 0)
src << "<font color='red'>Error: file_spam_check(): Spam. Please wait [round(time_to_wait/10)] seconds.</font>"

View File

@@ -1,4 +1,5 @@
/proc/dopage(src,target)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/dopage() called tick#: [world.time]")
var/href_list
var/href
href_list = params2list("src=\ref[src]&[target]=1")
@@ -8,6 +9,7 @@
return null
/proc/get_area(const/atom/O)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_area() called tick#: [world.time]")
if (isnull(O))
return
@@ -23,18 +25,21 @@
return
/proc/get_area_master(const/O)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_area_master() called tick#: [world.time]")
var/area/A = get_area(O)
if(isarea(A))
return A
/proc/get_area_name(N) //get area by its name
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_area_name() called tick#: [world.time]")
for(var/area/A in areas)
if(A.name == N)
return A
return 0
/proc/in_range(source, user)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/in_range() called tick#: [world.time]")
if(get_dist(source, user) <= 1)
return 1
@@ -43,6 +48,8 @@
// Like view but bypasses luminosity check
/proc/get_hear(var/range, var/atom/source)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_hear() called tick#: [world.time]")
var/lum = source.luminosity
source.luminosity = 6
@@ -53,6 +60,7 @@
/proc/alone_in_area(var/area/the_area, var/mob/must_be_alone, var/check_type = /mob/living/carbon)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/alone_in_area() called tick#: [world.time]")
var/area/our_area = get_area_master(the_area)
for(var/C in living_mob_list)
if(!istype(C, check_type))
@@ -65,6 +73,8 @@
/proc/circlerange(center=usr,radius=3)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/circlerange() called tick#: [world.time]")
var/turf/centerturf = get_turf(center)
var/list/turfs = new/list()
var/rsq = radius * (radius+0.5)
@@ -80,6 +90,8 @@
/proc/circleview(center=usr,radius=3)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/circleview() called tick#: [world.time]")
var/turf/centerturf = get_turf(center)
var/list/atoms = new/list()
var/rsq = radius * (radius+0.5)
@@ -94,6 +106,7 @@
return atoms
/proc/get_dist_euclidian(atom/Loc1 as turf|mob|obj,atom/Loc2 as turf|mob|obj)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_dist_euclidian() called tick#: [world.time]")
var/dx = Loc1.x - Loc2.x
var/dy = Loc1.y - Loc2.y
@@ -103,6 +116,8 @@
/proc/circlerangeturfs(center=usr,radius=3)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/circlerangeturfs() called tick#: [world.time]")
var/turf/centerturf = get_turf(center)
var/list/turfs = new/list()
var/rsq = radius * (radius+0.5)
@@ -116,6 +131,8 @@
/proc/circleviewturfs(center=usr,radius=3) //Is there even a diffrence between this proc and circlerangeturfs()?
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/circleviewturfs() called tick#: [world.time]")
var/turf/centerturf = get_turf(center)
var/list/turfs = new/list()
var/rsq = radius * (radius+0.5)
@@ -128,6 +145,7 @@
return turfs
/proc/recursive_type_check(atom/O, type = /atom)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/recursive_type_check() called tick#: [world.time]")
var/list/processing_list = list(O)
var/list/processed_list = new/list()
var/found_atoms = new/list()
@@ -150,6 +168,7 @@
//var/debug_mob = 0
/proc/get_contents_in_object(atom/O, type_path = /atom/movable)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_contents_in_object() called tick#: [world.time]")
if (O)
return recursive_type_check(O, type_path) - O
else
@@ -190,6 +209,7 @@ proc
#undef SIGN
proc/isInSight(var/atom/A, var/atom/B)
writepanic("[__FILE__].[__LINE__] \\/proc/isInSight() called tick#: [world.time]")
var/turf/Aturf = get_turf(A)
var/turf/Bturf = get_turf(B)
@@ -203,6 +223,7 @@ proc/isInSight(var/atom/A, var/atom/B)
return 0
/proc/get_cardinal_step_away(atom/start, atom/finish) //returns the position of a step from start away from finish, in one of the cardinal directions
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_cardinal_step_away() called tick#: [world.time]")
//returns only NORTH, SOUTH, EAST, or WEST
var/dx = finish.x - start.x
var/dy = finish.y - start.y
@@ -218,12 +239,14 @@ proc/isInSight(var/atom/A, var/atom/B)
return get_step(start, EAST)
/proc/try_move_adjacent(atom/movable/AM)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/try_move_adjacent() called tick#: [world.time]")
var/turf/T = get_turf(AM)
for(var/direction in cardinal)
if(AM.Move(get_step(T, direction)))
break
/proc/get_mob_by_key(var/key)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_mob_by_key() called tick#: [world.time]")
for(var/mob/M in mob_list)
if(M.ckey == lowertext(key))
return M
@@ -231,6 +254,7 @@ proc/isInSight(var/atom/A, var/atom/B)
//i think this is used soley by verb/give(), cael
proc/check_can_reach(atom/user, atom/target)
writepanic("[__FILE__].[__LINE__] \\/proc/check_can_reach() called tick#: [world.time]")
if(!in_range(user,target))
return 0
return CanReachThrough(get_turf(user), get_turf(target), target)
@@ -240,6 +264,8 @@ var/list/DummyCache = list()
/proc/CanReachThrough(turf/srcturf, turf/targetturf, atom/target, var/pass_flags=0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/CanReachThrough() called tick#: [world.time]")
var/obj/item/weapon/dummy/D = locate() in DummyCache
if(!D)
D = new /obj/item/weapon/dummy( srcturf )
@@ -287,6 +313,7 @@ var/list/DummyCache = list()
// Will return a list of active candidates. It increases the buffer 5 times until it finds a candidate which is active within the buffer.
/proc/get_active_candidates(var/role_id=null, var/buffer=ROLE_SELECT_AFK_BUFFER, var/poll=0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_active_candidates() called tick#: [world.time]")
var/list/candidates = list() //List of candidate mobs to assume control of the new larva ~fuck you
var/i = 0
while(candidates.len <= 0 && i < 5)
@@ -310,6 +337,7 @@ var/list/DummyCache = list()
return candidates
/proc/get_candidates(var/role_id=null)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_candidates() called tick#: [world.time]")
. = list()
for(var/mob/dead/observer/G in player_list)
if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD))
@@ -317,6 +345,7 @@ var/list/DummyCache = list()
. += G.client
/proc/ScreenText(obj/O, maptext="", screen_loc="CENTER-7,CENTER-7", maptext_height=480, maptext_width=480)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/ScreenText() called tick#: [world.time]")
if(!isobj(O)) O = new /obj/screen/text()
O.maptext = maptext
O.maptext_height = maptext_height
@@ -325,6 +354,7 @@ var/list/DummyCache = list()
return O
/proc/Show2Group4Delay(obj/O, list/group, delay=0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/Show2Group4Delay() called tick#: [world.time]")
if(!isobj(O)) return
if(!group) group = clients
for(var/client/C in group)
@@ -335,6 +365,7 @@ var/list/DummyCache = list()
C.screen -= O
/proc/flick_overlay(image/I, list/show_to, duration)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/flick_overlay() called tick#: [world.time]")
for(var/client/C in show_to)
C.images += I
sleep(duration)
@@ -342,6 +373,7 @@ var/list/DummyCache = list()
C.images -= I
/proc/get_active_player_count()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_active_player_count() called tick#: [world.time]")
// Get active players who are playing in the round
var/active_players = 0
for(var/i = 1; i <= player_list.len; i++)
@@ -379,6 +411,8 @@ var/list/DummyCache = list()
/proc/projectile_trajectory(var/src_x, var/src_y, var/rotation, var/angle, var/power)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/projectile_trajectory() called tick#: [world.time]")
// returns the destination (Vx,y) that a projectile shot at [src_x], [src_y], with an angle of [angle],
// rotated at [rotation] and with the power of [power]
// Thanks to VistaPOWA for this function
@@ -396,6 +430,7 @@ var/list/DummyCache = list()
/proc/mobs_in_area(var/area/the_area, var/client_needed=0, var/moblist=mob_list)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/mobs_in_area() called tick#: [world.time]")
var/list/mobs_found[0]
var/area/our_area = get_area_master(the_area)
for(var/mob/M in moblist)
@@ -407,15 +442,19 @@ var/list/DummyCache = list()
return mobs_found
/proc/GetRedPart(const/hexa)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/GetRedPart() called tick#: [world.time]")
return hex2num(copytext(hexa, 2, 4))
/proc/GetGreenPart(const/hexa)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/GetGreenPart() called tick#: [world.time]")
return hex2num(copytext(hexa, 4, 6))
/proc/GetBluePart(const/hexa)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/GetBluePart() called tick#: [world.time]")
return hex2num(copytext(hexa, 6, 8))
/proc/GetHexColors(const/hexa)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/GetHexColors() called tick#: [world.time]")
return list(\
GetRedPart(hexa),\
GetGreenPart(hexa),\
@@ -423,6 +462,7 @@ var/list/DummyCache = list()
)
/proc/MixColors(const/list/colors)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/MixColors() called tick#: [world.time]")
var/list/reds = new
var/list/blues = new
var/list/greens = new
@@ -440,6 +480,7 @@ var/list/DummyCache = list()
return rgb(r,g,b)
/proc/mixOneColor(var/list/weight, var/list/color)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/mixOneColor() called tick#: [world.time]")
if(!weight || !color || length(weight) != length(color))
return 0

View File

@@ -58,30 +58,35 @@ var/global/list/genders=list(
_complex=complex
/gender/proc/getHim()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/gender/proc/getHim() called tick#: [world.time]")
if(_complex)
warning("getHim() unsupported for gender [name]}")
return ""
return objective
/gender/proc/getHis()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/gender/proc/getHis() called tick#: [world.time]")
if(_complex)
warning("getHis() unsupported for gender [name]}")
return ""
return possessive
/gender/proc/getHimself()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/gender/proc/getHimself() called tick#: [world.time]")
if(_complex)
warning("getHimself() unsupported for gender [name]}")
return ""
return reflexive
/gender/proc/getHers()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/gender/proc/getHers() called tick#: [world.time]")
if(_complex)
warning("getHers() unsupported for gender [name]}")
return ""
return possessivePronoun
/gender/proc/getHe()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/gender/proc/getHe() called tick#: [world.time]")
if(_complex)
warning("getHe() unsupported for gender [name]}")
return ""
@@ -103,6 +108,7 @@ var/global/list/genders=list(
* SO HERE'S WHAT YOU GET:
*/
/gender/proc/replace(var/s)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/gender/proc/replace() called tick#: [world.time]")
// I
if(findtext(s,"$sub"))
s=replacetextEx(s,"$sub",subject)
@@ -174,6 +180,7 @@ var/global/list/genders=list(
return s
/proc/gender_replace(var/gender,var/text)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/gender_replace() called tick#: [world.time]")
var/gender/G = genders[gender]
if(!G)
warning("Invalid gender \"[gender]\" given to gender_replace().")

View File

@@ -42,6 +42,7 @@ var/global/list/sec_hud_users = list() //list of all entities using a security H
//////////////////////////
/proc/make_datum_references_lists()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/make_datum_references_lists() called tick#: [world.time]")
var/list/paths
//Surgery Steps - Initialize all /datum/surgery_step into a list
paths = typesof(/datum/surgery_step)-/datum/surgery_step
@@ -54,6 +55,8 @@ var/global/list/sec_hud_users = list() //list of all entities using a security H
/* // Uncomment to debug chemical reaction list.
/client/verb/debug_chemical_list()
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/client/verb/debug_chemical_list() called tick#: [world.time]")
for (var/reaction in chemical_reactions_list)
. += "chemical_reactions_list\[\"[reaction]\"\] = \"[chemical_reactions_list[reaction]]\"\n"
if(islist(chemical_reactions_list[reaction]))

View File

@@ -9,6 +9,7 @@ proc
return alpha_mask//And now return the mask.
/mob/proc/AddCamoOverlay(atom/A)//A is the atom which we are using as the overlay.
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/mob/proc/AddCamoOverlay() called tick#: [world.time]")
var/icon/opacity_icon = new(A.icon, A.icon_state)//Don't really care for overlays/underlays.
//Now we need to culculate overlays+underlays and add them together to form an image for a mask.
//var/icon/alpha_mask = getFlatIcon(src)//Accurate but SLOW. Not designed for running each tick. Could have other uses I guess.
@@ -25,6 +26,7 @@ proc
overlays += I//And finally add the overlay.
/proc/getHologramIcon(icon/A, safety=1)//If safety is on, a new icon is not created.
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/getHologramIcon() called tick#: [world.time]")
var/icon/flat_icon = safety ? A : new(A)//Has to be a new icon to not constantly change the same icon.
flat_icon.ColorTone(rgb(125,180,225))//Let's make it bluish.
flat_icon.ChangeOpacity(0.5)//Make it half transparent.
@@ -33,6 +35,7 @@ proc
return flat_icon
/proc/getStaticIcon(icon/A, safety=1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/getStaticIcon() called tick#: [world.time]")
var/icon/flat_icon = safety ? A : new(A)
flat_icon.Blend(rgb(255, 255, 255))
flat_icon.BecomeAlphaMask()
@@ -41,6 +44,7 @@ proc
return static_icon
/proc/getBlankIcon(icon/A, safety=1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/getBlankIcon() called tick#: [world.time]")
var/icon/flat_icon = safety ? A : new(A)
flat_icon.Blend(rgb(255, 255, 255))
flat_icon.BecomeAlphaMask()
@@ -49,6 +53,7 @@ proc
return blank_icon
/proc/getLetterImage(atom/A, letter = "", uppercase = 0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/getLetterImage() called tick#: [world.time]")
if(!A)
return
@@ -71,6 +76,7 @@ proc
//For photo camera.
/proc/build_composite_icon(atom/A)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/build_composite_icon() called tick#: [world.time]")
var/icon/composite = icon(A.icon, A.icon_state, A.dir, 1)
for(var/O in A.overlays)
var/image/I = O
@@ -80,6 +86,7 @@ proc
return composite
proc/adjust_brightness(var/color, var/value)
writepanic("[__FILE__].[__LINE__] \\/proc/adjust_brightness() called tick#: [world.time]")
if (!color) return "#FFFFFF"
if (!value) return color
@@ -90,6 +97,7 @@ proc/adjust_brightness(var/color, var/value)
return rgb(RGB[1],RGB[2],RGB[3])
/proc/ListColors(var/icon/I, var/ignoreGreyscale = 0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/ListColors() called tick#: [world.time]")
var/list/colors = list()
for(var/x_pixel = 1 to I.Width())
for(var/y_pixel = 1 to I.Height())
@@ -101,6 +109,7 @@ proc/adjust_brightness(var/color, var/value)
return colors
/proc/AverageColor(var/icon/I, var/accurate = 0, var/ignoreGreyscale = 0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/AverageColor() called tick#: [world.time]")
//Accurate: Use more accurate color averaging, usually has better results and prevents muddied or overly dark colors. Mad thanks to wwjnc.
//ignoreGreyscale: Excempts greyscale colors from the color list, useful for filtering outlines or plate overlays.
var/list/colors = ListColors(I, ignoreGreyscale)
@@ -129,6 +138,7 @@ proc/adjust_brightness(var/color, var/value)
return final_average
/proc/empty_Y_space(var/icon/I) //Returns the amount of lines containing only transparent pixels in an icon, starting from the bottom
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/empty_Y_space() called tick#: [world.time]")
for(var/y_pixel = 1 to I.Height())
for(var/x_pixel = 1 to I.Width())
if (I.GetPixel(x_pixel, y_pixel))

View File

@@ -11,6 +11,7 @@
//Returns a list in plain english as a string
/proc/english_list(var/list/input, nothing_text = "nothing", and_text = " and ", comma_text = ", ", final_comma_text = "" )
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/english_list() called tick#: [world.time]")
var/total = input.len
if (!total)
return "[nothing_text]"
@@ -32,6 +33,7 @@
//Returns list element or null. Should prevent "index out of bounds" error.
/proc/listgetindex(list/L, index)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/listgetindex() called tick#: [world.time]")
if(istype(L))
if(isnum(index))
if(IsInRange(index,1,L.len))
@@ -41,23 +43,27 @@
return
/proc/islist(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/islist() called tick#: [world.time]")
if(istype(L))
return 1
return 0
//Return either pick(list) or null if list is not of type /list or is empty
/proc/safepick(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/safepick() called tick#: [world.time]")
if(istype(L) && L.len)
return pick(L)
//Checks if the list is empty
/proc/isemptylist(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/isemptylist() called tick#: [world.time]")
if(!L.len)
return 1
return 0
//Checks for specific types in a list
/proc/is_type_in_list(var/atom/A, var/list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/is_type_in_list() called tick#: [world.time]")
for(var/type in L)
if(istype(A, type))
return 1
@@ -65,12 +71,14 @@
//Empties the list by setting the length to 0. Hopefully the elements get garbage collected
/proc/clearlist(list/list)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/clearlist() called tick#: [world.time]")
if(istype(list))
list.len = 0
return
//Removes any null entries from the list
/proc/listclearnulls(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/listclearnulls() called tick#: [world.time]")
if(istype(L))
var/i=1
for(var/thing in L)
@@ -85,6 +93,7 @@
* If either of arguments is not a list, returns null
*/
/proc/difflist(var/list/first, var/list/second, var/skiprep=0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/difflist() called tick#: [world.time]")
if(!islist(first) || !islist(second))
return
var/list/result = new
@@ -102,6 +111,7 @@
* If either of arguments is not a list, returns null
*/
/proc/uniquemergelist(var/list/first, var/list/second, var/skiprep=0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/uniquemergelist() called tick#: [world.time]")
if(!islist(first) || !islist(second))
return
var/list/result = new
@@ -113,6 +123,7 @@
//Pretends to pick an element based on its weight but really just seems to pick a random element.
/proc/pickweight(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/pickweight() called tick#: [world.time]")
var/total = 0
var/item
for (item in L)
@@ -130,6 +141,7 @@
//Pick a random element from the list and remove it from the list.
/proc/pick_n_take(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/pick_n_take() called tick#: [world.time]")
if(L.len)
var/picked = rand(1,L.len)
. = L[picked]
@@ -137,11 +149,13 @@
//Returns the top(last) element from the list and removes it from the list (typical stack function)
/proc/pop(list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/pop() called tick#: [world.time]")
if(L.len)
. = L[L.len]
L.len--
/proc/sorted_insert(list/L, thing, comparator)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/sorted_insert() called tick#: [world.time]")
var/pos = L.len
while(pos > 0 && call(comparator)(thing, L[pos]) > 0)
pos--
@@ -149,6 +163,7 @@
// Returns the next item in a list
/proc/next_list_item(var/item, var/list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/next_list_item() called tick#: [world.time]")
var/i
i = L.Find(item)
if(i == L.len)
@@ -159,6 +174,7 @@
// Returns the previous item in a list
/proc/previous_list_item(var/item, var/list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/previous_list_item() called tick#: [world.time]")
var/i
i = L.Find(item)
if(i == 1)
@@ -176,6 +192,7 @@
/*
//Reverses the order of items in the list
/proc/reverselist(var/list/input)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/reverselist() called tick#: [world.time]")
var/list/output = list()
for(var/i = input.len; i >= 1; i--)
output += input[i]
@@ -184,6 +201,7 @@
//Randomize: Return the list in a random order
/proc/shuffle(var/list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/shuffle() called tick#: [world.time]")
if(!L)
return
L = L.Copy()
@@ -195,6 +213,7 @@
//Return a list with no duplicate entries
/proc/uniquelist(var/list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/uniquelist() called tick#: [world.time]")
var/list/K = list()
for(var/item in L)
if(!(item in K))
@@ -203,24 +222,29 @@
//for sorting clients or mobs by ckey
/proc/sortKey(list/L, order=1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/sortKey() called tick#: [world.time]")
return sortTim(L, order >= 0 ? /proc/cmp_ckey_asc : /proc/cmp_ckey_dsc)
//Specifically for record datums in a list.
/proc/sortRecord(list/L, field = "name", order = 1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/sortRecord() called tick#: [world.time]")
cmp_field = field
return sortTim(L, order >= 0 ? /proc/cmp_records_asc : /proc/cmp_records_dsc)
//any value in a list
/proc/sortList(var/list/L, cmp=/proc/cmp_text_asc)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/sortList() called tick#: [world.time]")
return sortTim(L.Copy(), cmp)
//uses sortList() but uses the var's name specifically. This should probably be using mergeAtom() instead
/proc/sortNames(var/list/L, order=1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/sortNames() called tick#: [world.time]")
return sortTim(L, order >= 0 ? /proc/cmp_name_asc : /proc/cmp_name_dsc)
//Converts a bitfield to a list of numbers (or words if a wordlist is provided)
/proc/bitfield2list(bitfield = 0, list/wordlist)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/bitfield2list() called tick#: [world.time]")
var/list/r = list()
if(istype(wordlist,/list))
var/max = min(wordlist.len,16)
@@ -238,6 +262,7 @@
// Returns the key based on the index
/proc/get_key_by_index(var/list/L, var/index)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/get_key_by_index() called tick#: [world.time]")
var/i = 1
for(var/key in L)
if(index == i)
@@ -246,6 +271,7 @@
return null
/proc/count_by_type(var/list/L, type)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/count_by_type() called tick#: [world.time]")
var/i = 0
for(var/T in L)
if(istype(T, type))
@@ -253,6 +279,7 @@
return i
/proc/find_record(field, value, list/L)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/find_record() called tick#: [world.time]")
for(var/datum/data/record/R in L)
if(R.fields[field] == value)
return R
@@ -265,6 +292,7 @@
//fromIndex and toIndex must be in the range [1,L.len+1]
//This will preserve associations ~Carnie
/proc/moveElement(list/L, fromIndex, toIndex)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/moveElement() called tick#: [world.time]")
if(fromIndex == toIndex || fromIndex+1 == toIndex) //no need to move
return
if(fromIndex > toIndex)
@@ -279,6 +307,7 @@
//Same as moveElement but for ranges of elements
//This will preserve associations ~Carnie
/proc/moveRange(list/L, fromIndex, toIndex, len=1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/moveRange() called tick#: [world.time]")
var/distance = abs(toIndex - fromIndex)
if(len >= distance) //there are more elements to be moved than the distance to be moved. Therefore the same result can be achieved (with fewer operations) by moving elements between where we are and where we are going. The result being, our range we are moving is shifted left or right by dist elements
if(fromIndex <= toIndex)
@@ -302,6 +331,7 @@
//Move any elements being overwritten by the move to the now-empty elements, preserving order
//Note: if the two ranges overlap, only the destination order will be preserved fully, since some elements will be within both ranges ~Carnie
/proc/swapRange(list/L, fromIndex, toIndex, len=1)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/swapRange() called tick#: [world.time]")
var/distance = abs(toIndex - fromIndex)
if(len > distance) //there is an overlap, therefore swapping each element will require more swaps than inserting new elements
if(fromIndex < toIndex)
@@ -324,6 +354,7 @@
//replaces reverseList ~Carnie
/proc/reverseRange(list/L, start=1, end=0)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/reverseRange() called tick#: [world.time]")
if(L.len)
start = start % L.len
end = end % (L.len+1)

View File

@@ -1,5 +1,6 @@
//print an error message to world.log
/proc/error(msg)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/error() called tick#: [world.time]")
world.log << "## ERROR: [msg]"
/*
@@ -7,13 +8,16 @@
*/
#define WARNING(MSG) warning("[MSG] in [__FILE__] at line [__LINE__] src: [src] usr: [usr].")
/proc/warning(msg)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/warning() called tick#: [world.time]")
world.log << html_decode("## WARNING: [msg]")
//print a testing-mode debug message to world.log
/proc/testing(msg)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/testing() called tick#: [world.time]")
world.log << html_decode("## TESTING: [msg]")
/proc/log_admin(raw_text)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_admin() called tick#: [world.time]")
var/text_to_log = "\[[time_stamp()]]ADMIN: [raw_text]"
admin_log.Add(text_to_log)
@@ -25,6 +29,7 @@
admin_diary << html_decode(text_to_log)
/proc/log_debug(text)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_debug() called tick#: [world.time]")
if (config.log_debug)
diary << html_decode("\[[time_stamp()]]DEBUG: [text]")
@@ -34,56 +39,69 @@
/proc/log_game(text)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_game() called tick#: [world.time]")
if (config.log_game)
diary << html_decode("\[[time_stamp()]]GAME: [text]")
/proc/log_vote(text)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_vote() called tick#: [world.time]")
if (config.log_vote)
diary << html_decode("\[[time_stamp()]]VOTE: [text]")
/proc/log_access(text)
writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_access() called tick#: [world.time]")
if (config.log_access)
diary << html_decode("\[[time_stamp()]]ACCESS: [text]")
/proc/log_say(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_say() called tick#: [world.time]")
if (config.log_say)
diary << html_decode("\[[time_stamp()]]SAY: [text]")
/proc/log_ooc(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_ooc() called tick#: [world.time]")
if (config.log_ooc)
diary << html_decode("\[[time_stamp()]]OOC: [text]")
/proc/log_whisper(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_whisper() called tick#: [world.time]")
if (config.log_whisper)
diary << html_decode("\[[time_stamp()]]WHISPER: [text]")
/proc/log_emote(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_emote() called tick#: [world.time]")
if (config.log_emote)
diary << html_decode("\[[time_stamp()]]EMOTE: [text]")
/proc/log_attack(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_attack() called tick#: [world.time]")
if (config.log_attack)
diaryofmeanpeople << html_decode("\[[time_stamp()]]ATTACK: [text]")
/proc/log_adminsay(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_adminsay() called tick#: [world.time]")
if (config.log_adminchat)
diary << html_decode("\[[time_stamp()]]ADMINSAY: [text]")
/proc/log_adminwarn(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_adminwarn() called tick#: [world.time]")
if (config.log_adminwarn)
diary << html_decode("\[[time_stamp()]]ADMINWARN: [text]")
/proc/log_adminghost(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_adminghost() called tick#: [world.time]")
if (config.log_adminghost)
diary << html_decode("\[[time_stamp()]]ADMINGHOST: [text]")
message_admins("\[ADMINGHOST\] [text]")
/proc/log_ghost(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_ghost() called tick#: [world.time]")
if (config.log_adminghost)
diary << html_decode("\[[time_stamp()]]GHOST: [text]")
message_admins("\[GHOST\] [text]")
/proc/log_pda(text)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_pda() called tick#: [world.time]")
if (config.log_pda)
diary << html_decode("\[[time_stamp()]]PDA: [text]")
@@ -91,6 +109,7 @@
* Helper proc to log attacks or similar events between two mobs.
*/
/proc/add_attacklogs(var/mob/user, var/mob/target, var/what_done, var/object = null, var/addition = null, var/admin_warn = TRUE)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/add_attacklogs() called tick#: [world.time]")
var/user_txt = (user ? "[user][user.ckey ? " ([user.ckey])" : ""]" : "\<NULL USER\>")
var/target_txt = (target ? "[target][target.ckey ? " ([target.ckey])" : ""]" : "\<NULL TARGET\>")
var/object_txt = (object ? " with \the [object]" : "")
@@ -120,6 +139,7 @@
* @param span_class What CSS class to use for the message.
*/
/proc/add_gamelogs(var/mob/user, var/what_done, var/admin = 1, var/tp_link = FALSE, var/tp_link_short = TRUE, var/span_class = "notice")
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/add_gamelogs() called tick#: [world.time]")
var/user_text = (ismob(user) ? "[user] ([user.ckey])" : "<NULL USER>")
var/link = (tp_link ? " ([formatJumpTo(user, (tp_link_short ? "JMP" : ""))])" : "")
@@ -138,6 +158,7 @@
* @param reagent_names List of reagent names to log
*/
/proc/log_reagents(var/mob/user, var/source, var/target, var/amount, var/list/reagent_names)
// writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_reagents() called tick#: [world.time]")
if (amount == 0)
return

Some files were not shown because too many files have changed in this diff Show More