Adds a to_chat() proc, to pave the way to a non shit chat.

This commit is contained in:
PJB3005
2015-11-25 15:05:25 +01:00
parent 1709a73bdc
commit 99bf59d80e
1110 changed files with 9473 additions and 9348 deletions

View File

@@ -229,14 +229,14 @@ Pipelines + Other Objects -> Pipe network
return ..()
var/turf/T = src.loc
if (level==1 && isturf(T) && T.intact)
user << "<span class='warning'>You must remove the plating first.</span>"
to_chat(user, "<span class='warning'>You must remove the plating first.</span>")
return 1
var/datum/gas_mixture/int_air = return_air()
var/datum/gas_mixture/env_air = loc.return_air()
add_fingerprint(user)
if ((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE)
if(istype(W, /obj/item/weapon/wrench/socket) && istype(src, /obj/machinery/atmospherics/pipe))
user << "<span class='warning'>You begin to open the pressure release valve on the pipe...</span>"
to_chat(user, "<span class='warning'>You begin to open the pressure release valve on the pipe...</span>")
if(do_after(user, src, 50))
if(!loc) return
playsound(get_turf(src), 'sound/machines/hiss.ogg', 50, 1)
@@ -252,10 +252,10 @@ Pipelines + Other Objects -> Pipe network
env_air.add(transit) //put it in the air
del(transit) //remove the carrier
else
user << "<span class='warning'>You cannot unwrench this [src], it too exerted due to internal pressure.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], it too exerted due to internal pressure.</span>")
return 1
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1)
user << "<span class='notice'>You begin to unfasten \the [src]...</span>"
to_chat(user, "<span class='notice'>You begin to unfasten \the [src]...</span>")
if (do_after(user, src, 40))
user.visible_message( \
"[user] unfastens \the [src].", \

View File

@@ -43,7 +43,7 @@
return ..()
var/turf/T = get_turf(src)
playsound(T, 'sound/items/Ratchet.ogg', 50, 1)
user << "<span class='notice'>You begin to remove \the [src]...</span>"
to_chat(user, "<span class='notice'>You begin to remove \the [src]...</span>")
if (do_after(user, src, 40))
user.visible_message( \
"[user] removes \the [src].", \

View File

@@ -40,7 +40,7 @@
/obj/machinery/atmospherics/binary/circulator/examine(var/mob/user)
. = ..()
user << "Its outlet port is to the [dir2text(dir)]."
to_chat(user, "Its outlet port is to the [dir2text(dir)].")
/obj/machinery/atmospherics/binary/circulator/proc/return_transfer_air()
if(!anchored || stat & BROKEN || !network1)

View File

@@ -131,7 +131,7 @@
return
src.add_fingerprint(usr)
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
usr.set_machine(src)
interact(user)

View File

@@ -143,7 +143,7 @@ Thus, the two variables affect pump operation are set in New():
return
src.add_fingerprint(usr)
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
usr.set_machine(src)
interact(user)
@@ -171,6 +171,6 @@ Thus, the two variables affect pump operation are set in New():
if (!istype(W, /obj/item/weapon/wrench))
return ..()
if (!(stat & NOPOWER) && on)
user << "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>")
return 1
return ..()

View File

@@ -85,7 +85,7 @@
/obj/machinery/atmospherics/binary/valve/attack_hand(mob/user as mob)
if(isobserver(user) && !canGhostWrite(user,src,"toggles"))
user << "<span class='warning'>Nope.</span>"
to_chat(user, "<span class='warning'>Nope.</span>")
return
src.add_fingerprint(usr)
update_icon(0,1)
@@ -128,7 +128,7 @@
/obj/machinery/atmospherics/binary/valve/digital/attack_hand(mob/user as mob)
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
..()
@@ -220,6 +220,6 @@
// Just for digital valves.
/obj/machinery/atmospherics/binary/valve/digital/attackby(var/obj/item/W as obj, var/mob/user as mob)
if(src.frequency && istype(W, /obj/item/weapon/wrench))
user << "<span class='warning'>You cannot unwrench this [src], it's digitally connected to another device.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], it's digitally connected to another device.</span>")
return 1
return ..() // Pass to the method below (does stuff ALL valves should do)

View File

@@ -135,7 +135,7 @@ Thus, the two variables affect pump operation are set in New():
return
src.add_fingerprint(usr)
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
usr.set_machine(src)
interact(user)

View File

@@ -138,7 +138,7 @@ obj/machinery/atmospherics/trinary/filter/attack_hand(user as mob) // -- TLE
return
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
var/dat

View File

@@ -94,7 +94,7 @@ obj/machinery/atmospherics/trinary/mixer/attack_hand(user as mob)
return
src.add_fingerprint(usr)
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
usr.set_machine(src)
var/dat = {"<b>Power: </b><a href='?src=\ref[src];power=1'>[on?"On":"Off"]</a><br>

View File

@@ -126,7 +126,7 @@
/obj/machinery/atmospherics/trinary/tvalve/attack_hand(mob/user as mob)
if(isobserver(user) && !canGhostWrite(user,src,"toggles"))
user << "<span class='warning'>Nope.</span>"
to_chat(user, "<span class='warning'>Nope.</span>")
return
investigation_log(I_ATMOS,"was [state ? "opened (straight)" : "closed (side)"] by [key_name(usr)]")
@@ -148,11 +148,11 @@
close()
if(!node1)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if (!node2)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if (nodealert)
nodealert = 0
@@ -194,7 +194,7 @@
/obj/machinery/atmospherics/trinary/tvalve/digital/attack_hand(mob/user as mob)
if(!src.allowed(user))
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
..()

View File

@@ -80,22 +80,22 @@
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/red))
src.color = PIPE_COLOR_RED
user << "<span class='warning'>You paint the pipe red.</span>"
to_chat(user, "<span class='warning'>You paint the pipe red.</span>")
update_icon()
return 1
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/blue))
src.color = PIPE_COLOR_BLUE
user << "<span class='warning'>You paint the pipe blue.</span>"
to_chat(user, "<span class='warning'>You paint the pipe blue.</span>")
update_icon()
return 1
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/green))
src.color = PIPE_COLOR_GREEN
user << "<span class='warning'>You paint the pipe green.</span>"
to_chat(user, "<span class='warning'>You paint the pipe green.</span>")
update_icon()
return 1
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/yellow))
src.color = PIPE_COLOR_ORANGE
user << "<span class='warning'>You paint the pipe yellow.</span>"
to_chat(user, "<span class='warning'>You paint the pipe yellow.</span>")
update_icon()
return 1

View File

@@ -167,7 +167,7 @@
if (!istype(W, /obj/item/weapon/wrench))
return ..()
if (!(stat & NOPOWER) && on)
user << "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>")
return 1
return ..()

View File

@@ -75,7 +75,7 @@
if (!istype(W, /obj/item/weapon/wrench))
return ..()
if (connected_device)
user << "<span class='warning'>You cannot unwrench this [src], dettach [connected_device] first.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], dettach [connected_device] first.</span>")
return 1
if (locate(/obj/machinery/portable_atmospherics, src.loc))
return 1

View File

@@ -16,7 +16,7 @@
/* if(!node1)
parent.mingle_with_turf(loc, 200)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if (nodealert)
nodealert = 0

View File

@@ -284,7 +284,7 @@
/obj/machinery/atmospherics/unary/vent_pump/examine(mob/user)
..()
if(welded)
user << "<span class='info'>It seems welded shut.</span>"
to_chat(user, "<span class='info'>It seems welded shut.</span>")
/obj/machinery/atmospherics/unary/vent_pump/power_change()
if(powered(power_channel))
@@ -311,7 +311,7 @@
if(istype(W, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = W
if (WT.remove_fuel(0,user))
user << "<span class='notice'>Now welding the vent.</span>"
to_chat(user, "<span class='notice'>Now welding the vent.</span>")
if(do_after(user, src, 20))
if(!src || !WT.isOn()) return
playsound(get_turf(src), 'sound/items/Welder2.ogg', 50, 1)
@@ -324,14 +324,14 @@
welded = 0
update_icon()
else
user << "<span class='notice'>The welding tool needs to be on to start this task.</span>"
to_chat(user, "<span class='notice'>The welding tool needs to be on to start this task.</span>")
else
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
to_chat(user, "<span class='notice'>You need more welding fuel to complete this task.</span>")
return 1
if (!istype(W, /obj/item/weapon/wrench))
return ..()
if (!(stat & NOPOWER) && on)
user << "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>")
return 1
return ..()

View File

@@ -308,7 +308,7 @@
if(istype(W, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = W
if (WT.remove_fuel(0,user))
user << "<span class='notice'>Now welding the scrubber.</span>"
to_chat(user, "<span class='notice'>Now welding the scrubber.</span>")
if(do_after(user, src, 20))
if(!src || !WT.isOn()) return
playsound(get_turf(src), 'sound/items/Welder2.ogg', 50, 1)
@@ -321,14 +321,14 @@
welded = 0
update_icon()
else
user << "<span class='notice'>The welding tool needs to be on to start this task.</span>"
to_chat(user, "<span class='notice'>The welding tool needs to be on to start this task.</span>")
else
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
to_chat(user, "<span class='notice'>You need more welding fuel to complete this task.</span>")
return 1
if (!istype(W, /obj/item/weapon/wrench))
return ..()
if (!(stat & NOPOWER) && on)
user << "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>"
to_chat(user, "<span class='warning'>You cannot unwrench this [src], turn it off first.</span>")
return 1
return ..()

View File

@@ -43,7 +43,7 @@
//var/turf/T = loc
//level = T.intact ? 2 : 1
if(!initialize(1))
usr << "Unable to build pipe here; It must be connected to a machine, or another pipe that has a connection."
to_chat(usr, "Unable to build pipe here; It must be connected to a machine, or another pipe that has a connection.")
return 0
build_network()
if (node1)
@@ -176,7 +176,7 @@
initialize_directions = pipe.get_pdir()
initialize_directions_he = pipe.get_hdir()
if (!initialize(1))
usr << "There's nothing to connect this junction to! (with how the pipe code works, at least one end needs to be connected to something, otherwise the game deletes the segment)"
to_chat(usr, "There's nothing to connect this junction to! (with how the pipe code works, at least one end needs to be connected to something, otherwise the game deletes the segment)")
return 0
build_network()
if (node1)

View File

@@ -40,11 +40,11 @@
/obj/machinery/space_heater/examine(mob/user)
..()
user << "<span class='info'>\icon[src]\The [src.name] is [on ? "on" : "off"] and the hatch is [panel_open ? "open" : "closed"].</span>"
to_chat(user, "<span class='info'>\icon[src]\The [src.name] is [on ? "on" : "off"] and the hatch is [panel_open ? "open" : "closed"].</span>")
if(panel_open)
user << "<span class='info'>The power cell is [cell ? "installed" : "missing"].</span>"
to_chat(user, "<span class='info'>The power cell is [cell ? "installed" : "missing"].</span>")
else
user << "<span class='info'>The charge meter reads [cell ? round(cell.percent(),1) : 0]%</span>"
to_chat(user, "<span class='info'>The charge meter reads [cell ? round(cell.percent(),1) : 0]%</span>")
/obj/machinery/space_heater/emp_act(severity)
if(stat & (BROKEN|NOPOWER))
@@ -59,7 +59,7 @@
if(istype(I, /obj/item/weapon/cell))
if(panel_open)
if(cell)
user << "There is already a power cell inside."
to_chat(user, "There is already a power cell inside.")
return
else
// insert cell
@@ -71,7 +71,7 @@
user.visible_message("<span class='notice'>[user] inserts a power cell into [src].</span>", "<span class='notice'>You insert the power cell into [src].</span>")
else
user << "The hatch must be open to insert a power cell."
to_chat(user, "The hatch must be open to insert a power cell.")
return
return
@@ -175,12 +175,12 @@
var/datum/gas_mixture/removed = env.remove(transfer_moles)
//world << "got [transfer_moles] moles at [removed.temperature]"
// to_chat(world, "got [transfer_moles] moles at [removed.temperature]")
if(removed)
var/heat_capacity = removed.heat_capacity()
//world << "heating ([heat_capacity])"
// to_chat(world, "heating ([heat_capacity])")
if(heat_capacity) // Added check to avoid divide by zero (oshi-) runtime errors -- TLE
if(removed.temperature < set_temperature + T0C)
removed.temperature = min(removed.temperature + heating_power/heat_capacity, 1000) // Added min() check to try and avoid wacky superheating issues in low gas scenarios -- TLE
@@ -188,11 +188,11 @@
removed.temperature = max(removed.temperature - heating_power/heat_capacity, TCMB)
cell.use(heating_power/20000)
//world << "now at [removed.temperature]"
// to_chat(world, "now at [removed.temperature]")
env.merge(removed)
//world << "turf now at [env.temperature]"
// to_chat(world, "turf now at [env.temperature]")
else

View File

@@ -4,13 +4,13 @@ client/verb/discon_pipes()
for(var/obj/machinery/atmospherics/pipe/simple/P in atmos_machines)
if(!P.node1 || !P.node2)
usr << "[P], [P.x], [P.y], [P.z], [P.loc.loc]"
to_chat(usr, "[P], [P.x], [P.y], [P.z], [P.loc.loc]")
for(var/obj/machinery/atmospherics/pipe/manifold/P in atmos_machines)
if(!P.node1 || !P.node2 || !P.node3)
usr << "[P], [P.x], [P.y], [P.z], [P.loc.loc]"
to_chat(usr, "[P], [P.x], [P.y], [P.z], [P.loc.loc]")
for(var/obj/machinery/atmospherics/pipe/manifold4w/P in atmos_machines)
if(!P.node1 || !P.node2 || !P.node3 || !P.node4)
usr << "[P], [P.x], [P.y], [P.z], [P.loc.loc]"
to_chat(usr, "[P], [P.x], [P.y], [P.z], [P.loc.loc]")
//With thanks to mini. Check before use, uncheck after. Do Not Use on a live server.

View File

@@ -409,7 +409,7 @@ var/global/list/nlist = list( \
if(M.piping_layer != src.piping_layer && !((M.pipe_flags & ALL_LAYER) || (pipe_type in unstackable_pipes)))
continue
if(M.initialize_directions & pipe_dir) // matches at least one direction on either type of pipe
user << "<span class='warning'>There is already a pipe at that location.</span>"
to_chat(user, "<span class='warning'>There is already a pipe at that location.</span>")
return 1
// no conflicts found
@@ -539,11 +539,11 @@ var/global/list/nlist = list( \
pipe = P
break
if(!pipe)
user << "<span class='warning'>You need to fasten it to a pipe</span>"
to_chat(user, "<span class='warning'>You need to fasten it to a pipe</span>")
return 1
new/obj/machinery/meter(src.loc, pipe)
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1)
user << "<span class='notice'>You have fastened the meter to the pipe</span>"
to_chat(user, "<span class='notice'>You have fastened the meter to the pipe</span>")
del(src)
/obj/item/pipe_meter/dropped()
@@ -571,5 +571,5 @@ var/global/list/nlist = list( \
return ..()
new/obj/machinery/air_sensor( src.loc )
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1)
user << "<span class='notice'>You have fastened the gas sensor</span>"
to_chat(user, "<span class='notice'>You have fastened the gas sensor</span>")
del(src)

View File

@@ -140,7 +140,7 @@
/obj/machinery/pipedispenser/attackby(var/obj/item/W as obj, var/mob/user as mob)
src.add_fingerprint(usr)
if (istype(W, /obj/item/pipe) || istype(W, /obj/item/pipe_meter) || istype(W, /obj/item/pipe_gsensor))
usr << "<span class='notice'>You put [W] back to [src].</span>"
to_chat(usr, "<span class='notice'>You put [W] back to [src].</span>")
user.drop_item(W, src)
if(istype(W, /obj/item/pipe))
returnToPool(W)

View File

@@ -142,7 +142,7 @@
level = T.intact ? 2 : 1
initialize(1)
if(!node1&&!node2)
usr << "<span class='warning'>There's nothing to connect this pipe section to! A pipe segment must be connected to at least one other object!</span>"
to_chat(usr, "<span class='warning'>There's nothing to connect this pipe section to! A pipe segment must be connected to at least one other object!</span>")
return 0
update_icon()
build_network()
@@ -169,13 +169,13 @@
/*if(!node1)
parent.mingle_with_turf(loc, volume)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if(!node2)
parent.mingle_with_turf(loc, volume)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if (nodealert)
nodealert = 0
@@ -225,7 +225,7 @@
/obj/machinery/atmospherics/pipe/simple/examine(mob/user)
..()
user << "<span class='info'>This [src.name] is rated up to [format_num(alert_pressure)] kPa.</span>"
to_chat(user, "<span class='info'>This [src.name] is rated up to [format_num(alert_pressure)] kPa.</span>")
/obj/machinery/atmospherics/pipe/simple/proc/groan()
src.visible_message("<span class='warning'>\The [src] groans from the pressure!</span>");
@@ -454,7 +454,7 @@
level = T.intact ? 2 : 1
initialize(1)
if(!node1&&!node2&&!node3)
usr << "<span class='warning'>There's nothing to connect this manifold to! A pipe segment must be connected to at least one other object!</span>"
to_chat(usr, "<span class='warning'>There's nothing to connect this manifold to! A pipe segment must be connected to at least one other object!</span>")
return 0
update_icon() // Skipped in initialize()!
build_network()
@@ -505,17 +505,17 @@
if(!node1)
parent.mingle_with_turf(loc, 70)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if(!node2)
parent.mingle_with_turf(loc, 70)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if(!node3)
parent.mingle_with_turf(loc, 70)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if (nodealert)
nodealert = 0
@@ -678,7 +678,7 @@
level = T.intact ? 2 : 1
initialize(1)
if(!node1 && !node2 && !node3 && !node4)
usr << "<span class='warning'>There's nothing to connect this manifold to! A pipe segment must be connected to at least one other object!</span>"
to_chat(usr, "<span class='warning'>There's nothing to connect this manifold to! A pipe segment must be connected to at least one other object!</span>")
return 0
update_icon()
build_network()
@@ -721,17 +721,17 @@
if(!node1)
parent.mingle_with_turf(loc, 70)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if(!node2)
parent.mingle_with_turf(loc, 70)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if(!node3)
parent.mingle_with_turf(loc, 70)
if(!nodealert)
//world << "Missing node from [src] at [src.x],[src.y],[src.z]"
// to_chat(world, "Missing node from [src] at [src.x],[src.y],[src.z]")
nodealert = 1
else if (nodealert)
nodealert = 0
@@ -872,22 +872,22 @@
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/red))
src.color = PIPE_COLOR_RED
user << "<span class='notice'>You paint the pipe red.</span>"
to_chat(user, "<span class='notice'>You paint the pipe red.</span>")
update_icon()
return 1
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/blue))
src.color = PIPE_COLOR_BLUE
user << "<span class='notice'>You paint the pipe blue.</span>"
to_chat(user, "<span class='notice'>You paint the pipe blue.</span>")
update_icon()
return 1
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/green))
src.color = PIPE_COLOR_GREEN
user << "<span class='notice'>You paint the pipe green.</span>"
to_chat(user, "<span class='notice'>You paint the pipe green.</span>")
update_icon()
return 1
if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/yellow))
src.color = PIPE_COLOR_ORANGE
user << "<span class='notice'>You paint the pipe yellow.</span>"
to_chat(user, "<span class='notice'>You paint the pipe yellow.</span>")
update_icon()
return 1
@@ -941,7 +941,7 @@
level = T.intact ? 2 : 1
initialize(1)
if(!(locate(/obj/machinery/atmospherics) in layer_nodes) && !other_node)
usr << "<span class='warning'>There's nothing to connect this manifold to! A pipe segment must be connected to at least one other object!</span>"
to_chat(usr, "<span class='warning'>There's nothing to connect this manifold to! A pipe segment must be connected to at least one other object!</span>")
return 0
update_icon()
build_network()
@@ -1086,12 +1086,12 @@
layer_mod = -1
user.ventcrawl_layer = Clamp(user.ventcrawl_layer + layer_mod, PIPING_LAYER_MIN, PIPING_LAYER_MAX)
user << "You align yourself with the [user.ventcrawl_layer]\th output."
to_chat(user, "You align yourself with the [user.ventcrawl_layer]\th output.")
return 1
else
if(direction != dir && user.ventcrawl_layer != PIPING_LAYER_DEFAULT) // The mob is moving to the single pipe outlet, we need to align it if it's on a layer that's not the default layer
user.ventcrawl_layer = PIPING_LAYER_DEFAULT
user << "You are redirected into the [user.ventcrawl_layer]\th piping layer."
to_chat(user, "You are redirected into the [user.ventcrawl_layer]\th piping layer.")
return ..()
@@ -1133,7 +1133,7 @@
level = T.intact ? 2 : 1
initialize(1)
if(!mid_node && !layer_node)
usr << "<span class='warning'>There's nothing to connect this adapter to! A pipe segment must be connected to at least one other object!</span>"
to_chat(usr, "<span class='warning'>There's nothing to connect this adapter to! A pipe segment must be connected to at least one other object!</span>")
return 0
update_icon()
build_network()
@@ -1254,5 +1254,5 @@
// Autoset layer
if(direction & initialize_directions)
user.ventcrawl_layer = (direction == dir) ? PIPING_LAYER_DEFAULT : piping_layer
user << "You are redirected into the [user.ventcrawl_layer]\th piping layer."
to_chat(user, "You are redirected into the [user.ventcrawl_layer]\th piping layer.")
return ..()

View File

@@ -6,7 +6,7 @@ var/minZ = 2
// 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)
if (user.z > 1)
user << "<span class='warning'>There is nothing of interest in that direction.</span>"
to_chat(user, "<span class='warning'>There is nothing of interest in that direction.</span>")
return
if(allow_thrust(0.01, user))
switch(cardinal)
@@ -21,14 +21,15 @@ var/minZ = 2
for(var/atom/A in T.contents)
if(T.density)
blocked = 1
user << "<span class='warning'>You bump into [T.name].</span>"
to_chat(user, "<span class='warning'>You bump into [T.name].</span>")
break
if(!blocked)
user.Move(T)
else
user << "<span class='warning'>You bump into the ship's plating.</span>"
to_chat(user, "<span class='warning'>You bump into the ship's plating.</span>")
else
user << "<span class='warning'>The ship's gravity well keeps you in orbit!</span>" // Assuming the ship starts on z level 1, you don't want to go past it
to_chat(user, "<span class='warning'>The ship's gravity well keeps you in orbit!</span>")// Assuming the ship starts on z level 1, you don't want to go past it
if (DOWN) // Going down!
if (user.z < 1) // If we aren't at the very bottom of the ship, or out in space
@@ -39,11 +40,11 @@ var/minZ = 2
for(var/atom/A in T.contents)
if(T.density)
blocked = 1
user << "<span class='warning'>You bump into [T.name].</span>"
to_chat(user, "<span class='warning'>You bump into [T.name].</span>")
break
if(!blocked)
user.Move(T)
else
user << "<span class='warning'>You bump into the ship's plating.</span>"
to_chat(user, "<span class='warning'>You bump into the ship's plating.</span>")
else
user << "<span class='warning'>The ship's gravity well keeps you in orbit!</span>"
to_chat(user, "<span class='warning'>The ship's gravity well keeps you in orbit!</span>")

View File

@@ -98,7 +98,7 @@
del src
if(active)
M << "That [src] is being used."
to_chat(M, "That [src] is being used.")
return // It is a tiny airlock, only one at a time.
active = 1

View File

@@ -30,12 +30,12 @@
if(istype(I, /obj/item/weapon/hatchet) && !stump)
if(indestructable)
//this bush marks the edge of the map, you can't destroy it
user << "<span class='warning'>You flail away at the undergrowth, but it's too thick here.</span>"
to_chat(user, "<span class='warning'>You flail away at the undergrowth, but it's too thick here.</span>")
else
user.visible_message("<span class='danger'><b>[user] begins clearing away [src].</b>","<span class='warning'>You begin clearing away [src].</span></span>")
spawn(rand(15,30))
if(get_dist(user,src) < 2)
user << "<span class='notice'>You clear away [src].</span>"
to_chat(user, "<span class='notice'>You clear away [src].</span>")
var/obj/item/stack/sheet/wood/W = new(src.loc)
W.amount = rand(3,15)
if(prob(50))
@@ -102,7 +102,7 @@ var/jungle_plants_init = 0
/obj/structure/jungle_plant/attack_hand(var/mob/user as mob)
if(fruits_left > 0)
fruits_left--
user << "<span class='notice'>You pick a fruit off [src].</span>"
to_chat(user, "<span class='notice'>You pick a fruit off [src].</span>")
var/obj/item/weapon/reagent_containers/food/snacks/grown/jungle_fruit/J = new (src.loc)
J.potency = plant_strength
@@ -116,4 +116,4 @@ var/jungle_plants_init = 0
fruit_overlay.Blend(rgb(fruit_r, fruit_g, fruit_b), ICON_ADD)
overlays += fruit_overlay
else
user << "<span class='warning'>There are no fruit left on [src].</span>"
to_chat(user, "<span class='warning'>There are no fruit left on [src].</span>")

View File

@@ -141,13 +141,13 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//have a max of 1000 moles suspended
if(held_plasma.toxins < transfer_ratio * 1000)
var/moles_covered = environment.return_pressure()*volume_covered/(environment.temperature * R_IDEAL_GAS_EQUATION)
//world << "<span class='notice'>moles_covered: [moles_covered]</span>"
// to_chat(world, "<span class='notice'>moles_covered: [moles_covered]</span>")
//
var/datum/gas_mixture/gas_covered = environment.remove(moles_covered)
var/datum/gas_mixture/plasma_captured = new /datum/gas_mixture()
//
plasma_captured.toxins = round(gas_covered.toxins * transfer_ratio)
//world << "<span class='warning'>[plasma_captured.toxins] moles of plasma captured</span>"
// to_chat(world, "<span class='warning'>[plasma_captured.toxins] moles of plasma captured</span>")
plasma_captured.temperature = gas_covered.temperature
plasma_captured.update_values()
//
@@ -181,7 +181,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
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))
//world << "lost [loss_ratio*100]% of held plasma"
// to_chat(world, "lost [loss_ratio*100]% of held plasma")
//
var/datum/gas_mixture/plasma_lost = new
plasma_lost.temperature = held_plasma.temperature
@@ -306,7 +306,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
var/list/reactants_reacting_pool = dormant_reactant_quantities.Copy()
/*
for(var/reagent in dormant_reactant_quantities)
world << " before: [reagent]: [dormant_reactant_quantities[reagent]]"
to_chat(world, " before: [reagent]: [dormant_reactant_quantities[reagent]]")
*/
//cant have any reactions if there aren't any reactants present
@@ -326,7 +326,7 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//pick one of the unprocessed reacting reagents randomly
var/cur_primary_reactant = pick(primary_reactant_pool)
primary_reactant_pool.Remove(cur_primary_reactant)
//world << "<span class='notice'>primary reactant chosen: [cur_primary_reactant]</span>"
// to_chat(world, "<span class='notice'>primary reactant chosen: [cur_primary_reactant]</span>")
//grab all the possible reactants to have a reaction with
var/list/possible_secondary_reactants = reactants_reacting_pool.Copy()
@@ -342,12 +342,12 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
continue
var/datum/fusion_reaction/cur_reaction = get_fusion_reaction(cur_primary_reactant, cur_secondary_reactant)
if(cur_reaction)
//world << "<span class='notice'>secondary reactant: [cur_secondary_reactant], [reaction_products.len]</span>"
// to_chat(world, "<span class='notice'>secondary reactant: [cur_secondary_reactant], [reaction_products.len]</span>")
possible_reactions.Add(cur_reaction)
//if there are no possible reactions here, abandon this primary reactant and move on
if(!possible_reactions.len)
//world << "<span class='notice'>no reactions</span>"
// to_chat(world, "<span class='notice'>no reactions</span>")
continue
//split up the reacting atoms between the possible reactions
@@ -420,12 +420,12 @@ Deuterium-tritium fusion: 4.5 x 10^7 K
//var/list/protonic_radiation = new
for(var/reactant in produced_reactants)
AddParticles(reactant, produced_reactants[reactant])
//world << "produced: [reactant], [dormant_reactant_quantities[reactant]]"
// to_chat(world, "produced: [reactant], [dormant_reactant_quantities[reactant]]")
//check whether there are reactants left, and add them back to the pool
for(var/reactant in reactants_reacting_pool)
AddParticles(reactant, reactants_reacting_pool[reactant])
//world << "retained: [reactant], [reactants_reacting_pool[reactant]]"
// to_chat(world, "retained: [reactant], [reactants_reacting_pool[reactant]]")
/obj/effect/rust_em_field/Destroy()
//radiate everything in one giant burst

View File

@@ -84,7 +84,7 @@ max volume of plasma storeable by the field = the total volume of a number of ti
/obj/machinery/power/rust_core/weldToFloor(var/obj/item/weapon/weldingtool/WT, mob/user)
if(owned_field)
user << user << "<span class='warning'>Turn \the [src] off first!</span>"
to_chat(user, user << "<span class='warning'>Turn \the [src] off first!</span>")
return -1
if(..() == 1)

View File

@@ -15,12 +15,12 @@
/obj/machinery/rust_fuel_assembly_port/attackby(var/obj/item/I, var/mob/user)
if(istype(I,/obj/item/weapon/fuel_assembly) && !opened)
if(cur_assembly)
user << "<span class='warning'>There is already a fuel rod assembly in there!</span>"
to_chat(user, "<span class='warning'>There is already a fuel rod assembly in there!</span>")
else
cur_assembly = I
user.drop_item(I, src)
icon_state = "port1"
user << "<span class='notice'>You insert [I] into [src]. Touch the panel again to insert [I] into the injector.</span>"
to_chat(user, "<span class='notice'>You insert [I] into [src]. Touch the panel again to insert [I] into the injector.</span>")
/obj/machinery/rust_fuel_assembly_port/attack_hand(mob/user)
add_fingerprint(user)
@@ -29,16 +29,16 @@
if(cur_assembly)
if(try_insert_assembly())
user << "<span class='notice'>\icon[src] [src] inserts it's fuel rod assembly into an injector.</span>"
to_chat(user, "<span class='notice'>\icon[src] [src] inserts it's fuel rod assembly into an injector.</span>")
else
if(eject_assembly())
user << "<span class='warning'>\icon[src] [src] ejects it's fuel assembly. Check the fuel injector status.</span>"
to_chat(user, "<span class='warning'>\icon[src] [src] ejects it's fuel assembly. Check the fuel injector status.</span>")
else if(try_draw_assembly())
user << "<span class='notice'>\icon[src] [src] draws a fuel rod assembly from an injector.</span>"
to_chat(user, "<span class='notice'>\icon[src] [src] draws a fuel rod assembly from an injector.</span>")
else if(try_draw_assembly())
user << "<span class='notice'>\icon[src] [src] draws a fuel rod assembly from an injector.</span>"
to_chat(user, "<span class='notice'>\icon[src] [src] draws a fuel rod assembly from an injector.</span>")
else
user << "<span class='warning'>\icon[src] [src] was unable to draw a fuel rod assembly from an injector.</span>"
to_chat(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()
var/success = 0

View File

@@ -46,7 +46,8 @@
if(opened)
if(has_electronics & 1)
playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1)
user << "You begin removing the circuitboard" //lpeters - fixed grammar issues
to_chat(user, "You begin removing the circuitboard")//lpeters - fixed grammar issues
if(do_after(user, src, 50))
user.visible_message(\
"<span class='warning'>[user.name] has removed the circuitboard from [src.name]!</span>",\
@@ -57,22 +58,22 @@
else
opened = 0
icon_state = "port0"
user << "<span class='notice'>You close the maintenance cover.</span>"
to_chat(user, "<span class='notice'>You close the maintenance cover.</span>")
else
if(cur_assembly)
user << "<span class='warning'>You cannot open the cover while there is a fuel assembly inside.</span>"
to_chat(user, "<span class='warning'>You cannot open the cover while there is a fuel assembly inside.</span>")
else
opened = 1
user << "<span class='notice'>You open the maintenance cover.</span>"
to_chat(user, "<span class='notice'>You open the maintenance cover.</span>")
icon_state = "port2"
return
else if (istype(W, /obj/item/stack/cable_coil) && opened && !(has_electronics & 2))
var/obj/item/stack/cable_coil/C = W
if(C.amount < 10)
user << "<span class='warning'>You need more wires.</span>"
to_chat(user, "<span class='warning'>You need more wires.</span>")
return
user << "You start adding cables to the frame..."
to_chat(user, "You start adding cables to the frame...")
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, src, 20) && C.amount >= 10)
C.use(10)
@@ -83,7 +84,7 @@
return
else if (istype(W, /obj/item/weapon/wirecutters) && opened && (has_electronics & 2))
user << "You begin to cut the cables..."
to_chat(user, "You begin to cut the cables...")
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, src, 50))
new /obj/item/stack/cable_coil(loc,10)
@@ -94,20 +95,20 @@
return
else if (istype(W, /obj/item/weapon/module/rust_fuel_port) && opened && !(has_electronics & 1))
user << "You try to insert the port control board into the frame..."
to_chat(user, "You try to insert the port control board into the frame...")
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, src, 10))
has_electronics &= 1
user << "You place the port control board inside the frame."
to_chat(user, "You place the port control board inside the frame.")
del(W)
return
else if (istype(W, /obj/item/weapon/weldingtool) && opened && !has_electronics)
var/obj/item/weapon/weldingtool/WT = W
if (WT.get_fuel() < 3)
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
to_chat(user, "<span class='notice'>You need more welding fuel to complete this task.</span>")
return
user << "You start welding the port frame..."
to_chat(user, "You start welding the port frame...")
playsound(get_turf(src), 'sound/items/Welder.ogg', 50, 1)
if(do_after(user, src, 50))
if(!src || !WT.remove_fuel(3, user)) return

View File

@@ -80,33 +80,35 @@ var/const/max_assembly_amount = 300
compressed_matter -= 10
ejected = 1
if(ejected)
usr << "<span class='notice'>\icon[src] [src] ejects some compressed matter units.</span>"
to_chat(usr, "<span class='notice'>\icon[src] [src] ejects some compressed matter units.</span>")
else
usr << "<span class='warning'>\icon[src] there are no more compressed matter units in [src].</span>"
to_chat(usr, "<span class='warning'>\icon[src] there are no more compressed matter units in [src].</span>")
if( href_list["activate"] )
//world << "<span class='notice'>New fuel rod assembly</span>"
// to_chat(world, "<span class='notice'>New fuel rod assembly</span>")
var/obj/item/weapon/fuel_assembly/F = new(src)
var/fail = 0
var/old_matter = compressed_matter
for(var/reagent in new_assembly_quantities)
var/req_matter = round(new_assembly_quantities[reagent] / 30)
//world << "[reagent] matter: [req_matter]/[compressed_matter]"
// to_chat(world, "[reagent] matter: [req_matter]/[compressed_matter]")
if(req_matter <= compressed_matter)
F.rod_quantities[reagent] = new_assembly_quantities[reagent]
compressed_matter -= req_matter
if(compressed_matter < 1)
compressed_matter = 0
else
/*world << "bad reagent: [reagent], [req_matter > compressed_matter ? "req_matter > compressed_matter"\
: (req_matter < compressed_matter ? "req_matter < compressed_matter" : "req_matter == compressed_matter")]"*/
/*
to_chat(world, "bad reagent: [reagent], [req_matter > compressed_matter ? "req_matter > compressed_matter"\)
: (req_matter < compressed_matter ? "req_matter < compressed_matter" : "req_matter == compressed_matter")]"
*/
fail = 1
break
//world << "<span class='notice'>[reagent]: new_assembly_quantities[reagent]<br></span>"
// to_chat(world, "<span class='notice'>[reagent]: new_assembly_quantities[reagent]<br></span>")
if(fail)
del(F)
compressed_matter = old_matter
usr << "<span class='warning'>\icon[src] [src] flashes red: \'Out of matter.\'</span>"
to_chat(usr, "<span class='warning'>\icon[src] [src] flashes red: \'Out of matter.\'</span>")
else
F.loc = src.loc//get_step(get_turf(src), src.dir)
F.percent_depleted = 0

View File

@@ -47,7 +47,8 @@
if(opened)
if(has_electronics & 1)
playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1)
user << "You begin removing the circuitboard" //lpeters - fixed grammar issues
to_chat(user, "You begin removing the circuitboard")//lpeters - fixed grammar issues
if(do_after(user, src, 50))
user.visible_message(\
"<span class='warning'>[user.name] has removed the circuitboard from [src.name]!</span>",\
@@ -58,48 +59,48 @@
else
opened = 0
icon_state = "fuel_compressor0"
user << "<span class='notice'>You close the maintenance cover.</span>"
to_chat(user, "<span class='notice'>You close the maintenance cover.</span>")
else
if(compressed_matter > 0)
user << "<span class='warning'>You cannot open the cover while there is compressed matter inside.</span>"
to_chat(user, "<span class='warning'>You cannot open the cover while there is compressed matter inside.</span>")
else
opened = 1
user << "<span class='notice'>You open the maintenance cover.</span>"
to_chat(user, "<span class='notice'>You open the maintenance cover.</span>")
icon_state = "fuel_compressor1"
return
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) // trying to unlock the interface with an ID card
if(opened)
user << "You must close the cover to swipe an ID card."
to_chat(user, "You must close the cover to swipe an ID card.")
else
if(src.allowed(usr))
locked = !locked
user << "You [ locked ? "lock" : "unlock"] the compressor interface."
to_chat(user, "You [ locked ? "lock" : "unlock"] the compressor interface.")
update_icon()
else
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
else if (istype(W, /obj/item/weapon/card/emag) && !emagged) // trying to unlock with an emag card
if(opened)
user << "You must close the cover to swipe an ID card."
to_chat(user, "You must close the cover to swipe an ID card.")
else
flick("apc-spark", src)
if (do_after(user, src,6))
if(prob(50))
emagged = 1
locked = 0
user << "You emag the port interface."
to_chat(user, "You emag the port interface.")
else
user << "You fail to [ locked ? "unlock" : "lock"] the compressor interface."
to_chat(user, "You fail to [ locked ? "unlock" : "lock"] the compressor interface.")
return
else if (istype(W, /obj/item/stack/cable_coil) && opened && !(has_electronics & 2))
var/obj/item/stack/cable_coil/C = W
if(C.amount < 10)
user << "<span class='warning'>You need more wires.</span>"
to_chat(user, "<span class='warning'>You need more wires.</span>")
return
user << "You start adding cables to the compressor frame..."
to_chat(user, "You start adding cables to the compressor frame...")
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, src, 20) && C.amount >= 10)
C.use(10)
@@ -110,7 +111,7 @@
return
else if (istype(W, /obj/item/weapon/wirecutters) && opened && (has_electronics & 2))
user << "You begin to cut the cables..."
to_chat(user, "You begin to cut the cables...")
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, src, 50))
new /obj/item/stack/cable_coil(loc,10)
@@ -121,20 +122,20 @@
return
else if (istype(W, /obj/item/weapon/module/rust_fuel_compressor) && opened && !(has_electronics & 1))
user << "You try to insert the circuitboard into the frame..."
to_chat(user, "You try to insert the circuitboard into the frame...")
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, src, 10))
has_electronics &= 1
user << "You place the circuitboard inside the frame."
to_chat(user, "You place the circuitboard inside the frame.")
qdel(W)
return
else if (istype(W, /obj/item/weapon/weldingtool) && opened && !has_electronics)
var/obj/item/weapon/weldingtool/WT = W
if (WT.get_fuel() < 3)
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
to_chat(user, "<span class='notice'>You need more welding fuel to complete this task.</span>")
return
user << "You start welding the compressor frame..."
to_chat(user, "You start welding the compressor frame...")
playsound(get_turf(src), 'sound/items/Welder.ogg', 50, 1)
if(do_after(user, src, 50))
if(!src || !WT.remove_fuel(3, user)) return

View File

@@ -35,7 +35,7 @@
/obj/machinery/power/rust_fuel_injector/wrenchAnchor(mob/user)
if(injecting)
user << "Turn off the [src] first."
to_chat(user, "Turn off the [src] first.")
return -1
return ..()
@@ -62,13 +62,13 @@
if(istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))
if(emagged)
user << "<span class='warning'>The lock seems to be broken</span>"
to_chat(user, "<span class='warning'>The lock seems to be broken</span>")
return
if(src.allowed(user))
src.locked = !src.locked
user << "The controls are now [src.locked ? "locked." : "unlocked."]"
to_chat(user, "The controls are now [src.locked ? "locked." : "unlocked."]")
else
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
if(istype(W, /obj/item/weapon/fuel_assembly) && !cur_assembly)
@@ -164,7 +164,7 @@
if( href_list["fuel_usage"] )
var/new_usage = text2num(input("Enter new fuel usage (0.01% - 100%)", "Modifying fuel usage", fuel_usage * 100))
if(!new_usage)
usr << "<span class='warning'>That's not a valid number.</span>"
to_chat(usr, "<span class='warning'>That's not a valid number.</span>")
return
new_usage = max(new_usage, 0.01)
new_usage = min(new_usage, 100)
@@ -200,15 +200,15 @@
if(cur_assembly)
var/amount_left = 0
for(var/reagent in cur_assembly.rod_quantities)
//world << "checking [reagent]"
// to_chat(world, "checking [reagent]")
if(cur_assembly.rod_quantities[reagent] > 0)
//world << " rods left: [cur_assembly.rod_quantities[reagent]]"
// to_chat(world, " rods left: [cur_assembly.rod_quantities[reagent]]")
var/amount = cur_assembly.rod_quantities[reagent] * fuel_usage
var/numparticles = round(amount * 1000)
if(numparticles < 1)
numparticles = 1
//world << " amount: [amount]"
//world << " numparticles: [numparticles]"
// to_chat(world, " amount: [amount]")
// to_chat(world, " numparticles: [numparticles]")
//
var/obj/effect/accelerated_particle/A = new/obj/effect/accelerated_particle(get_turf(src), dir)

View File

@@ -87,7 +87,7 @@
/obj/machinery/rust/gyrotron/weldToFloor(var/obj/item/weapon/weldingtool/WT, var/mob/user)
if(emitting)
user << "<span class='warning'>Turn \the [src] off first!</span>"
to_chat(user, "<span class='warning'>Turn \the [src] off first!</span>")
return -1
. = ..()
@@ -100,7 +100,7 @@
return
if(anchored)
usr << "<span class='notify'>\the [src] is anchored to the floor!</span>"
to_chat(usr, "<span class='notify'>\the [src] is anchored to the floor!</span>")
return
dir = turn(dir, -90)
@@ -114,7 +114,7 @@
return
if(anchored)
usr << "<span class='notify'>\the [src] is anchored to the floor!</span>"
to_chat(usr, "<span class='notify'>\the [src] is anchored to the floor!</span>")
return
dir = turn(dir, 90)

View File

@@ -95,7 +95,7 @@
if(href_list["modifypower"])
var/new_val = input("Enter new emission power level (0.001 - 0.01)", "Modifying power level (TJ)", gyro.mega_energy) as num
if(!new_val)
usr << "<span class='warning'>That's not a valid number.</span>"
to_chat(usr, "<span class='warning'>That's not a valid number.</span>")
return 1
gyro.mega_energy = Clamp(new_val, 0.001, 0.01)
@@ -107,7 +107,7 @@
if(href_list["modifyrate"])
var/new_val = input("Enter new emission rate (1 - 10)", "Modifying emission rate (1/10th sec)", gyro.rate) as num
if(!new_val)
usr << "<span class='warning'>That's not a valid number.</span>"
to_chat(usr, "<span class='warning'>That's not a valid number.</span>")
return 1
gyro.rate = Clamp(new_val, 10, 100)
@@ -118,7 +118,7 @@
if(href_list["modifyfreq"])
var/new_val = input("Enter new emission frequency (1 - 50000)", "Modifying emission frequency (GHz)", gyro.frequency) as num
if(!new_val)
usr << "<span class='warning'>That's not a valid number.</span>"
to_chat(usr, "<span class='warning'>That's not a valid number.</span>")
return 1
gyro.frequency = Clamp(new_val, 1, 50000)

View File

@@ -44,5 +44,5 @@
/obj/effect/rust_particle_catcher/Bumped(atom/AM)
if(ismob(AM) && density && prob(10))
AM << "<span class='warning'>A powerful force pushes you back.</span>"
to_chat(AM, "<span class='warning'>A powerful force pushes you back.</span>")
..()

View File

@@ -40,7 +40,7 @@
/obj/machinery/shield_capacitor/emag(mob/user)
if(prob(75))
src.locked = !src.locked
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
to_chat(user, "Controls are now [src.locked ? "locked." : "unlocked."]")
updateDialog()
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(5, 1, src)
@@ -70,10 +70,10 @@
var/obj/item/weapon/card/id/C = W
if(access_captain in C.access || access_security in C.access || access_engine in C.access)
src.locked = !src.locked
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
to_chat(user, "Controls are now [src.locked ? "locked." : "unlocked."]")
updateDialog()
else
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
/obj/machinery/shield_capacitor/attack_paw(user as mob)
return src.attack_hand(user)
@@ -178,7 +178,7 @@
set src in oview(1)
if (src.anchored)
usr << "It is fastened to the floor!"
to_chat(usr, "It is fastened to the floor!")
return
src.dir = turn(src.dir, 270)
return

View File

@@ -49,7 +49,7 @@
/obj/machinery/shield_gen/emag(mob/user)
if(prob(75))
src.locked = !src.locked
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
to_chat(user, "Controls are now [src.locked ? "locked." : "unlocked."]")
updateDialog()
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(5, 1, src)
@@ -79,10 +79,10 @@
var/obj/item/weapon/card/id/C = W
if(access_captain in C.access || access_security in C.access || access_engine in C.access)
src.locked = !src.locked
user << "Controls are now [src.locked ? "locked." : "unlocked."]"
to_chat(user, "Controls are now [src.locked ? "locked." : "unlocked."]")
updateDialog()
else
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
/obj/machinery/shield_gen/attack_paw(user as mob)
return src.attack_hand(user)
@@ -286,14 +286,14 @@
del covered_turfs
for(var/mob/M in view(5,src))
M << "\icon[src] You hear heavy droning start up."
to_chat(M, "\icon[src] You hear heavy droning start up.")
else
for(var/obj/effect/energy_field/D in field)
field.Remove(D)
del D
for(var/mob/M in view(5,src))
M << "\icon[src] You hear heavy droning fade out."
to_chat(M, "\icon[src] You hear heavy droning fade out.")
//grab the border tiles in a circle around this machine
/obj/machinery/shield_gen/proc/get_shielded_turfs()

View File

@@ -33,7 +33,7 @@
set src in oview(1)
if (src.anchored || usr:stat)
usr << "It is fastened to the floor!"
to_chat(usr, "It is fastened to the floor!")
return 0
src.dir = turn(src.dir, 90)
return 1
@@ -54,19 +54,19 @@
if(!src.locked)
if(src.active==1)
src.active = 0
user << "You turn off the [src]."
to_chat(user, "You turn off the [src].")
src.use_power = 1
else
src.active = 1
user << "You turn on the [src]."
to_chat(user, "You turn on the [src].")
src.shot_number = 0
src.fire_delay = 100
src.use_power = 2
update_icon()
else
user << "<span class='warning'>The controls are locked!</span>"
to_chat(user, "<span class='warning'>The controls are locked!</span>")
else
user << "<span class='warning'>The [src] needs to be firmly secured to the floor first.</span>"
to_chat(user, "<span class='warning'>The [src] needs to be firmly secured to the floor first.</span>")
return 1
@@ -129,17 +129,17 @@
if(istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))
if(emagged)
user << "<span class='warning'>The lock seems to be broken</span>"
to_chat(user, "<span class='warning'>The lock seems to be broken</span>")
return
if(src.allowed(user))
if(active)
src.locked = !src.locked
user << "The controls are now [src.locked ? "locked." : "unlocked."]"
to_chat(user, "The controls are now [src.locked ? "locked." : "unlocked."]")
else
src.locked = 0 //just in case it somehow gets locked
user << "<span class='warning'>The controls can only be locked when the [src] is online</span>"
to_chat(user, "<span class='warning'>The controls can only be locked when the [src] is online</span>")
else
user << "<span class='warning'>Access denied.</span>"
to_chat(user, "<span class='warning'>Access denied.</span>")
return
return

View File

@@ -264,5 +264,5 @@
if (src.health <= 0)
src.die()
else
M << "<span class='good'>That object is useless to you.</span>"
to_chat(M, "<span class='good'>That object is useless to you.</span>")
return

View File

@@ -37,7 +37,7 @@
playsound(target.loc, pick(snap_sound), 100, 1, -1)
visible_message("<span class='danger'>[src] [response_snap] [target]!</span>")
target << "<span class='alert'><b>[response_snap_target]</b> Your vision fades away...</span>"
to_chat(target, "<span class='alert'><b>[response_snap_target]</b> Your vision fades away...</span>")
target.attack_log += text("\[[time_stamp()]\] <font color='red'>Had his neck snapped by [src]!</font>")
log_admin("[target] ([target.ckey]) had his neck snapped by an active [src].")
message_admins("ALERT: <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[target.x];Y=[target.y];Z=[target.z]'>[target.real_name]</a> had his neck snapped by an active [src].")

View File

@@ -20,17 +20,17 @@
if (istype(W,/obj/item/clothing/mask/cigarette) || istype(W, /obj/item/weapon/match) || istype(W, /obj/item/weapon/cigbutt))
if(user)
if (contents.len >= max_butts)
user << "This ashtray is full."
to_chat(user, "This ashtray is full.")
return
user.drop_item(W, src)
var/obj/item/clothing/mask/cigarette/cig = W
if(istype(cig, /obj/item/weapon/cigbutt))
user << "You drop the [cig] into [src]."
to_chat(user, "You drop the [cig] into [src].")
if (istype(W,/obj/item/clothing/mask/cigarette) || istype(W, /obj/item/weapon/match))
if (cig.lit == 1)
src.visible_message("[user] crushes [cig] in [src], putting it out.")
else if (cig.lit == 0)
user << "You place [cig] in [src] without even lighting it. Why would you do that?"
to_chat(user, "You place [cig] in [src] without even lighting it. Why would you do that?")
else if (cig.lit == -1)
src.visible_message("[user] places [cig] in [src].")
add_fingerprint(user)
@@ -42,7 +42,7 @@
desc = empty_desc + " It's half-filled."
else
health = max(0,health - W.force)
user << "You hit [src] with [W]."
to_chat(user, "You hit [src] with [W].")
if (health < 1)
die()
return

View File

@@ -72,7 +72,8 @@
/datum/medical_effect/headache/cure(mob/living/carbon/human/H)
if(H.reagents.has_reagent("alkysine") || H.reagents.has_reagent("tramadol"))
//H << "<span class='warning'>Your head stops throbbing..</span>" // Halt spam.
// to_chat(H, "<span class='warning'>Your head stops throbbing..</span>")// Halt spam.
return 1
return 0
@@ -94,7 +95,7 @@
/datum/medical_effect/bad_stomach/cure(mob/living/carbon/human/H)
if(H.reagents.has_reagent("anti_toxin"))
H << "<span class='warning'>Your stomach feels a little better now..</span>"
to_chat(H, "<span class='warning'>Your stomach feels a little better now..</span>")
return 1
return 0
@@ -119,7 +120,7 @@
/datum/medical_effect/cramps/cure(mob/living/carbon/human/H)
if(H.reagents.has_reagent("inaprovaline"))
H << "<span class='warning'>The cramps let up..</span>"
to_chat(H, "<span class='warning'>The cramps let up..</span>")
return 1
return 0
@@ -144,6 +145,6 @@
/datum/medical_effect/itch/cure(mob/living/carbon/human/H)
if(H.reagents.has_reagent("inaprovaline"))
H << "<span class='warning'>The itching stops..</span>"
to_chat(H, "<span class='warning'>The itching stops..</span>")
return 1
return 0

View File

@@ -34,7 +34,7 @@
/obj/item/demote_chip/attack_self(mob/user as mob)
if(target_name != null) //Used hand-labeler as example
user << "<span class='notice'>The target name cannot be reset!</span>"
to_chat(user, "<span class='notice'>The target name cannot be reset!</span>")
return
else
var/str = copytext(reject_bad_text(input(user,"Enter the properly capitalized name for demotion","Set name","") as text|null),1,MAX_NAME_LEN)
@@ -46,7 +46,7 @@
target_name = str
name = "[target_name]'s demotion microchip"
desc = desc + " Stamped by:"
user << "<span class='notice'>The demotion microchip for [src.target_name] is now ready to be stamped.</span>"
to_chat(user, "<span class='notice'>The demotion microchip for [src.target_name] is now ready to be stamped.</span>")
/obj/item/demote_chip/attackby(obj/item/I as obj, mob/user as mob)
if(istype(I, /obj/item/weapon/stamp))
@@ -56,39 +56,39 @@
if(cap == 0)
desc = desc + "/Captain"
cap = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
if(istype(S, /obj/item/weapon/stamp/hop))
if(hop == 0)
desc = desc + "/HoP"
hop = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
if(istype(S, /obj/item/weapon/stamp/hos))
if(hos == 0)
desc = desc + "/HoS"
hos = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
if(istype(S, /obj/item/weapon/stamp/ce))
if(ce == 0)
desc = desc + "/CE"
ce = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
if(istype(S, /obj/item/weapon/stamp/rd))
if(rd == 0)
desc = desc + "/RD"
rd = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
if(istype(S, /obj/item/weapon/stamp/cmo))
if(cmo == 0)
desc = desc + "/CMO"
cmo = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
if(istype(S, /obj/item/weapon/stamp/clown))
if(clown == 0)
desc = desc + "/HONK"
clown = 1
user << "<span class='notice'>You stamp the demotion microchip of [target_name].</span>"
to_chat(user, "<span class='notice'>You stamp the demotion microchip of [target_name].</span>")
else
user << "<span class='notice'>The chip has not been initialized.</span>"
to_chat(user, "<span class='notice'>The chip has not been initialized.</span>")
else
return ..()
@@ -97,9 +97,9 @@
if(istype(I, /obj/item/demote_chip/))
var/obj/item/demote_chip/DE = I
if(registered_name != DE.target_name)
user << "<span class='notice'>Failed to apply, names do not match.</span>"
to_chat(user, "<span class='notice'>Failed to apply, names do not match.</span>")
else if(bans != null)
user << "<span class='notice'>This card already has a microchip applied</span>"
to_chat(user, "<span class='notice'>This card already has a microchip applied</span>")
else
icon_state = "centcom_old"
bans = "9" //if get_region_accesses ever uses 9 we're fucked
@@ -112,11 +112,11 @@
if(istype(I, /obj/item/demote_chip))
var/obj/item/demote_chip/D = I
if(registered_name != D.target_name)
user << "<span class='notice'>Failed to apply, names do not match.</span>"
to_chat(user, "<span class='notice'>Failed to apply, names do not match.</span>")
else if(bans != null)
user << "<span class='notice'>This card already has a microchip applied</span>"
to_chat(user, "<span class='notice'>This card already has a microchip applied</span>")
else if(icon_state == "gold")
user << "<span class='notice'>This microchip cannot apply to this card type.</span>"
to_chat(user, "<span class='notice'>This microchip cannot apply to this card type.</span>")
else
if(D.cap == 1)
@@ -139,7 +139,7 @@
access -= get_region_accesses(2)
bans = bans + "2"
if(bans == null)
user << "<span class='notice'>You require at least one stamp.</span>"
to_chat(user, "<span class='notice'>You require at least one stamp.</span>")
return
icon_state = "centcom_old"
del(D)

View File

@@ -114,7 +114,7 @@ log transactions
T.time = worldtime2text()
authenticated_account.transaction_log.Add(T)
user << "<span class='info'>You insert [I] into [src].</span>"
to_chat(user, "<span class='info'>You insert [I] into [src].</span>")
src.attack_hand(user)
qdel(I)
else
@@ -122,10 +122,10 @@ log transactions
/obj/machinery/atm/attack_hand(mob/user as mob,var/fail_safe=0)
if(isobserver(user))
user << "<span class='warning'>Your ghostly limb passes right through \the [src].</span>"
to_chat(user, "<span class='warning'>Your ghostly limb passes right through \the [src].</span>")
return
if(istype(user, /mob/living/silicon))
user << "<span class='warning'>Artificial unit recognized. Artificial units do not currently receive monetary compensation, as per NanoTrasen regulation #1005.</span>"
to_chat(user, "<span class='warning'>Artificial unit recognized. Artificial units do not currently receive monetary compensation, as per NanoTrasen regulation #1005.</span>")
return
if(get_dist(src,user) <= 1)
//check to see if the user has low security enabled
@@ -253,7 +253,7 @@ log transactions
var/target_account_number = text2num(href_list["target_acc_number"])
var/transfer_purpose = href_list["purpose"]
if(linked_db.charge_to_account(target_account_number, authenticated_account.owner_name, transfer_purpose, machine_id, transfer_amount))
usr << "\icon[src]<span class='info'>Funds transfer successful.</span>"
to_chat(usr, "\icon[src]<span class='info'>Funds transfer successful.</span>")
authenticated_account.money -= transfer_amount
//create an entry in the account transaction log
@@ -266,10 +266,10 @@ log transactions
T.amount = "-[transfer_amount]"
authenticated_account.transaction_log.Add(T)
else
usr << "\icon[src]<span class='warning'>Funds transfer failed.</span>"
to_chat(usr, "\icon[src]<span class='warning'>Funds transfer failed.</span>")
else
usr << "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>"
to_chat(usr, "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>")
if("view_screen")
view_screen = text2num(href_list["view_screen"])
if("change_security_level")
@@ -303,11 +303,11 @@ log transactions
T.time = worldtime2text()
failed_account.transaction_log.Add(T)
else
usr << "<span class='warning'>\icon[src] Incorrect pin/account combination entered, [max_pin_attempts - number_incorrect_tries] attempts remaining.</span>"
to_chat(usr, "<span class='warning'>\icon[src] Incorrect pin/account combination entered, [max_pin_attempts - number_incorrect_tries] attempts remaining.</span>")
previous_account_number = tried_account_num
playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 1)
else
usr << "<span class='warning'>\icon[src] incorrect pin/account combination entered.</span>"
to_chat(usr, "<span class='warning'>\icon[src] incorrect pin/account combination entered.</span>")
number_incorrect_tries = 0
else
playsound(src, 'sound/machines/twobeep.ogg', 50, 1)
@@ -323,7 +323,7 @@ log transactions
T.time = worldtime2text()
authenticated_account.transaction_log.Add(T)
usr << "<span class='notice'>\icon[src] Access granted. Welcome user '[authenticated_account.owner_name].'</span>"
to_chat(usr, "<span class='notice'>\icon[src] Access granted. Welcome user '[authenticated_account.owner_name].'</span>")
previous_account_number = tried_account_num
if("withdrawal")
@@ -336,7 +336,7 @@ log transactions
//remove the money
if(amount > 10000) // prevent crashes
usr << "<span class='notice'>The ATM's screen flashes, 'Maximum single withdrawl limit reached, defaulting to 10,000.'</span>"
to_chat(usr, "<span class='notice'>The ATM's screen flashes, 'Maximum single withdrawl limit reached, defaulting to 10,000.'</span>")
amount = 10000
authenticated_account.money -= amount
withdraw_arbitrary_sum(usr,amount)
@@ -351,11 +351,11 @@ log transactions
T.time = worldtime2text()
authenticated_account.transaction_log.Add(T)
else
usr << "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>"
to_chat(usr, "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>")
if("withdraw_to_wallet")
var/amount = max(text2num(href_list["funds_amount"]),0)
if(!held_card)
usr << "<span class='notice'>You must insert your ID card before you can transfer funds to it.</span>"
to_chat(usr, "<span class='notice'>You must insert your ID card before you can transfer funds to it.</span>")
return
if(amount <= 0)
alert("That is not a valid amount.")
@@ -383,11 +383,11 @@ log transactions
T.time = worldtime2text()
held_card.virtual_wallet.transaction_log.Add(T)
else
usr << "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>"
to_chat(usr, "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>")
if("deposit_from_wallet")
var/amount = max(text2num(href_list["funds_amount"]),0)
if(!held_card)
usr << "<span class='notice'>You must insert your ID card before you can transfer funds from its virtual wallet.</span>"
to_chat(usr, "<span class='notice'>You must insert your ID card before you can transfer funds from its virtual wallet.</span>")
return
if(amount <= 0)
alert("That is not a valid amount.")
@@ -415,11 +415,11 @@ log transactions
T.time = worldtime2text()
held_card.virtual_wallet.transaction_log.Add(T)
else
usr << "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>"
to_chat(usr, "\icon[src]<span class='warning'>You don't have enough funds to do that!</span>")
if("balance_statement")
if(authenticated_account)
if(world.timeofday < lastprint + PRINT_DELAY)
usr << "<span class='notice'>The [src.name] flashes an error on its display.</span>"
to_chat(usr, "<span class='notice'>The [src.name] flashes an error on its display.</span>")
return
lastprint = world.timeofday
var/obj/item/weapon/paper/R = new(src.loc)
@@ -471,7 +471,7 @@ log transactions
var/mob/living/carbon/human/H = user
if(istype(H.wear_id,/obj/item/weapon/storage/wallet))
dispense_cash(arbitrary_sum,H.wear_id)
usr << "\icon[src]<span class='notice'>Funds were transferred into your physical wallet!</span>"
to_chat(usr, "\icon[src]<span class='notice'>Funds were transferred into your physical wallet!</span>")
return
dispense_cash(arbitrary_sum,get_step(get_turf(src),turn(dir,180))) // Spawn on the ATM.
@@ -488,7 +488,7 @@ log transactions
if(I)
authenticated_account = linked_db.attempt_account_access(I.associated_account_number)
if(authenticated_account)
human_user << "<span class='notice'>\icon[src] Access granted. Welcome user '[authenticated_account.owner_name].'</span>"
to_chat(human_user, "<span class='notice'>\icon[src] Access granted. Welcome user '[authenticated_account.owner_name].'</span>")
//create a transaction log entry
var/datum/transaction/T = new()

View File

@@ -294,7 +294,7 @@ var/global/list/atmos_controllers = list()
if(input_temperature==null)
return 0
if(input_temperature > max_temperature || input_temperature < min_temperature)
usr << "Temperature must be between [min_temperature]C and [max_temperature]C"
to_chat(usr, "Temperature must be between [min_temperature]C and [max_temperature]C")
else
current.target_temperature = input_temperature + T0C
return 1

View File

@@ -60,18 +60,18 @@
if(icon_state == "[icon_base]_start")
start = get_turf(src)
if(istype(start,/turf/space))
usr << "<span class='warning'>You can't place [src] in space</span>"
to_chat(usr, "<span class='warning'>You can't place [src] in space</span>")
return
usr << "<span class='notice'>You place the first end of [src].</span>"
to_chat(usr, "<span class='notice'>You place the first end of [src].</span>")
icon_state = "[icon_base]_stop"
else
icon_state = "[icon_base]_start"
end = get_turf(src)
if(istype(end,/turf/space))
usr << "<span class='warning'>You can't place [src] in space</span>"
to_chat(usr, "<span class='warning'>You can't place [src] in space</span>")
return
if(start.y != end.y && start.x != end.x || start.z != end.z)
usr << "<span class='notice'>[src] can only be laid in a straight line.</span>"
to_chat(usr, "<span class='notice'>[src] can only be laid in a straight line.</span>")
return
var/turf/cur = start
@@ -98,7 +98,7 @@
break
cur = get_step_towards(cur,end)
if (!can_place)
usr << "<span class='warning'>You can't run [src] through that!</span>"
to_chat(usr, "<span class='warning'>You can't run [src] through that!</span>")
return
cur = start
@@ -112,7 +112,7 @@
P.icon_state = "[P.icon_base]_[dir]"
cur = get_step_towards(cur,end)
//is_blocked_turf(var/turf/T)
usr << "<span class='notice'>You finish placing [src].</span>"
to_chat(usr, "<span class='notice'>You finish placing [src].</span>")
user.visible_message("<span class='warning'>[user] finishes placing [src].</span>") //Now you know who to whack with a stun baton
/obj/item/taperoll/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
@@ -125,7 +125,7 @@
if(locate(tape_type) in turf) //Don't you dare stack tape // can be remove for a new feature
return
user << "<span class='notice'>You start placing [src].</span>"
to_chat(user, "<span class='notice'>You start placing [src].</span>")
if(!do_mob(user, target, 30))
return
@@ -134,7 +134,7 @@
tape.icon_state = "[icon_base]_door"
tape.layer = 3.2
user << "<span class='notice'>You placed [src].</span>"
to_chat(user, "<span class='notice'>You placed [src].</span>")
/obj/item/tape/Bumped(M as mob)
if(src.allowed(M))
@@ -174,7 +174,7 @@
/obj/item/tape/proc/breaktape(obj/item/weapon/W as obj, mob/user as mob)
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>"
to_chat(user, "<span class='notice'>You can't break [src] [W ? "with \the [W] " : ""]unless you use force.</span>")
return
user.visible_message("<span class='warning'>[user] breaks [src]!</span>")

View File

@@ -81,7 +81,7 @@
set src in view(usr, 1)
set name = "Print Data"
if(usr.stat || !(istype(usr,/mob/living/carbon/human)) || (usr.status_flags & FAKEDEATH))
usr << "No."
to_chat(usr, "No.")
return
var/scan_data = ""
@@ -187,16 +187,16 @@
src.wdata = list()
src.chemtraces = list()
src.timeofdeath = null
user << "<span class='warning'>A new patient has been registered.. Purging data for previous patient.</span>"
to_chat(user, "<span class='warning'>A new patient has been registered.. Purging data for previous patient.</span>")
src.timeofdeath = M.timeofdeath
var/datum/organ/external/S = M.get_organ(user.zone_sel.selecting)
if(!S)
usr << "<b>You can't scan this body part.</b>"
to_chat(usr, "<b>You can't scan this body part.</b>")
return
if(!S.open)
usr << "<b>You have to cut the limb open first!</b>"
to_chat(usr, "<b>You have to cut the limb open first!</b>")
return
for(var/mob/O in viewers(M))
O.show_message("<span class='warning'>[user.name] scans the wounds on [M.name]'s [S.display_name] with \the [src.name]</span>", 1)

View File

@@ -78,43 +78,43 @@
Click()
switch(master.cl.buildmode)
if(1)
usr << "<span class='notice'>***********************************************************</span>"
usr << "<span class='notice'>Click and drag to do a fill operation</span>"
usr << "<span class='notice'>Left Mouse Button = Construct / Upgrade</span>"
usr << "<span class='notice'>Right Mouse Button = Deconstruct / Delete / Downgrade</span>"
usr << "<span class='notice'>Left Mouse Button + ctrl = R-Window</span>"
usr << "<span class='notice'>Left Mouse Button + alt = Airlock</span>"
usr << ""
usr << "<span class='notice'>Use the button in the upper left corner to</span>"
usr << "<span class='notice'>change the direction of built objects.</span>"
usr << "<span class='notice'>***********************************************************</span>"
to_chat(usr, "<span class='notice'>***********************************************************</span>")
to_chat(usr, "<span class='notice'>Click and drag to do a fill operation</span>")
to_chat(usr, "<span class='notice'>Left Mouse Button = Construct / Upgrade</span>")
to_chat(usr, "<span class='notice'>Right Mouse Button = Deconstruct / Delete / Downgrade</span>")
to_chat(usr, "<span class='notice'>Left Mouse Button + ctrl = R-Window</span>")
to_chat(usr, "<span class='notice'>Left Mouse Button + alt = Airlock</span>")
to_chat(usr, "")
to_chat(usr, "<span class='notice'>Use the button in the upper left corner to</span>")
to_chat(usr, "<span class='notice'>change the direction of built objects.</span>")
to_chat(usr, "<span class='notice'>***********************************************************</span>")
if(2)
usr << "<span class='notice'>***********************************************************</span>"
usr << "<span class='notice'>Click and drag to do a fill operation</span>"
usr << "<span class='notice'>Right Mouse Button on buildmode button = Set object type</span>"
usr << "<span class='notice'>Left Mouse Button on turf/obj = Place objects</span>"
usr << "<span class='notice'>Right Mouse Button = Delete objects</span>"
usr << "<span class='notice'>Middle Mouse Button = Copy atom</span>"
usr << ""
usr << "<span class='notice'>Ctrl+Shift+Left Mouse Button = Sets bottom left corner for fill mode</span>"
usr << "<span class='notice'>Ctrl+Shift+Right Mouse Button = Sets top right corner for fill mode</span>"
to_chat(usr, "<span class='notice'>***********************************************************</span>")
to_chat(usr, "<span class='notice'>Click and drag to do a fill operation</span>")
to_chat(usr, "<span class='notice'>Right Mouse Button on buildmode button = Set object type</span>")
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj = Place objects</span>")
to_chat(usr, "<span class='notice'>Right Mouse Button = Delete objects</span>")
to_chat(usr, "<span class='notice'>Middle Mouse Button = Copy atom</span>")
to_chat(usr, "")
to_chat(usr, "<span class='notice'>Ctrl+Shift+Left Mouse Button = Sets bottom left corner for fill mode</span>")
to_chat(usr, "<span class='notice'>Ctrl+Shift+Right Mouse Button = Sets top right corner for fill mode</span>")
usr << ""
usr << "<span class='notice'>Use the button in the upper left corner to</span>"
usr << "<span class='notice'>change the direction of built objects.</span>"
usr << "<span class='notice'>***********************************************************</span>"
to_chat(usr, "")
to_chat(usr, "<span class='notice'>Use the button in the upper left corner to</span>")
to_chat(usr, "<span class='notice'>change the direction of built objects.</span>")
to_chat(usr, "<span class='notice'>***********************************************************</span>")
if(3)
usr << "<span class='notice'>***********************************************************</span>"
usr << "<span class='notice'>Click and drag to do a mass edit operation</span>"
usr << "<span class='notice'>Right Mouse Button on buildmode button = Select var(type) & value</span>"
usr << "<span class='notice'>Left Mouse Button on turf/obj/mob = Set var(type) & value</span>"
usr << "<span class='notice'>Right Mouse Button on turf/obj/mob = Reset var's value</span>"
usr << "<span class='notice'>***********************************************************</span>"
to_chat(usr, "<span class='notice'>***********************************************************</span>")
to_chat(usr, "<span class='notice'>Click and drag to do a mass edit operation</span>")
to_chat(usr, "<span class='notice'>Right Mouse Button on buildmode button = Select var(type) & value</span>")
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj/mob = Set var(type) & value</span>")
to_chat(usr, "<span class='notice'>Right Mouse Button on turf/obj/mob = Reset var's value</span>")
to_chat(usr, "<span class='notice'>***********************************************************</span>")
if(4)
usr << "<span class='notice'>***********************************************************</span>"
usr << "<span class='notice'>Left Mouse Button on turf/obj/mob = Select</span>"
usr << "<span class='notice'>Right Mouse Button on turf/obj/mob = Throw</span>"
usr << "<span class='notice'>***********************************************************</span>"
to_chat(usr, "<span class='notice'>***********************************************************</span>")
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj/mob = Select</span>")
to_chat(usr, "<span class='notice'>Right Mouse Button on turf/obj/mob = Throw</span>")
to_chat(usr, "<span class='notice'>***********************************************************</span>")
return 1
DblClick(object,location,control,params)
return Click(object,location,control,params)
@@ -272,7 +272,7 @@ obj/effect/bmode/buildholder/New()
msglog += "at ([formatJumpTo(start)] to [formatJumpTo(end)])</span>"
message_admins(msglog)
log_admin(msglog)
usr << "<span class='notice'>If the server is lagging the operation will periodically sleep so the fill may take longer than typical.</span>"
to_chat(usr, "<span class='notice'>If the server is lagging the operation will periodically sleep so the fill may take longer than typical.</span>")
var/turf_op = ispath(whatfill, /turf)
var/deletions = 0
for(var/turf/T in fillturfs)
@@ -312,7 +312,8 @@ obj/effect/bmode/buildholder/New()
if(istype(A))
A.dir = holder.builddir.dir
tcheck(80,1)
if(deletions) usr << "<span class='info'>Successfully deleted [deletions] [chosen]'\s</span>"
if(deletions)
to_chat(usr, "<span class='info'>Successfully deleted [deletions] [chosen]'\s</span>")
if(3)
var/list/fillturfs = block(start,end)
if(fillturfs.len)
@@ -341,7 +342,7 @@ obj/effect/bmode/buildholder/New()
msglog += "at ([formatJumpTo(start)] to [formatJumpTo(end)])</span>"
message_admins(msglog)
log_admin(msglog)
usr << "<span class='notice'>If the server is lagging the operation will periodically sleep so the mass edit may take longer than typical.</span>"
to_chat(usr, "<span class='notice'>If the server is lagging the operation will periodically sleep so the mass edit may take longer than typical.</span>")
var/edits = 0
for(var/turf/T in fillturfs)
if(ispath(chosen, /turf))
@@ -355,12 +356,10 @@ obj/effect/bmode/buildholder/New()
tcheck(80,1)
edits++
tcheck(80,1)
if(edits) usr << "<span class='info'>Successfully edited [edits] [chosen]'\s</span>"
else return
if(edits)
to_chat(usr, "<span class='info'>Successfully edited [edits] [chosen]'\s</span>")
else
return
/proc/build_click(var/mob/user, buildmode, params, var/obj/object)
var/obj/effect/bmode/buildholder/holder = null
@@ -434,15 +433,15 @@ obj/effect/bmode/buildholder/New()
return
if(pa.Find("left"))
holder.fill_left = RT
usr << "<span class='notice'>Set bottom left fill corner to ([formatJumpTo(RT)])</span>"
to_chat(usr, "<span class='notice'>Set bottom left fill corner to ([formatJumpTo(RT)])</span>")
else if(pa.Find("right"))
holder.fill_right = RT
usr << "<span class='notice'>Set top right fill corner to ([formatJumpTo(RT)])</span>"
to_chat(usr, "<span class='notice'>Set top right fill corner to ([formatJumpTo(RT)])</span>")
if(holder.fill_left && holder.fill_right)
var/turf/start = holder.fill_left
var/turf/end = holder.fill_right
if(start.z != end.z)
usr << "<span class='warning'>You can't do a fill across zlevels you silly person.</span>"
to_chat(usr, "<span class='warning'>You can't do a fill across zlevels you silly person.</span>")
holder.fill_left = null
holder.fill_right = null
return
@@ -453,7 +452,7 @@ obj/effect/bmode/buildholder/New()
if(alert("Are you completely sure about filling [fillturfs.len] tiles?","Panic!!!!","Yes","No") != "Yes")
holder.fill_left = null
holder.fill_right = null
usr << "<span class='notice'>Cleared filling corners.</span>"
to_chat(usr, "<span class='notice'>Cleared filling corners.</span>")
return
var/areaAction = alert("FILL tiles or DELETE them? areaAction will destroy EVERYTHING IN THE SELECTED AREA", "Create or destroy, your chance to be a GOD","FILL","DELETE") == "DELETE"
if(areaAction) areaAction = (alert("Selective(TYPE) Delete or MASS Delete?", "Scorched Earth or selective destruction?", "Selective", "MASS") == "Selective" ? 2 : 1)
@@ -480,7 +479,7 @@ obj/effect/bmode/buildholder/New()
msglog += "at ([formatJumpTo(start)] to [formatJumpTo(end)])</span>"
message_admins(msglog)
log_admin(msglog)
usr << "<span class='notice'>If the server is lagging the operation will periodically sleep so the fill may take longer than typical.</span>"
to_chat(usr, "<span class='notice'>If the server is lagging the operation will periodically sleep so the fill may take longer than typical.</span>")
var/turf_op = ispath(holder.buildmode.objholder,/turf)
var/deletions = 0
for(var/turf/T in fillturfs)
@@ -522,7 +521,8 @@ obj/effect/bmode/buildholder/New()
tcheck(80,1)
holder.fill_left = null
holder.fill_right = null
if(deletions) usr << "<span class='info'>Successfully deleted [deletions] [chosen]'\s</span>"
if(deletions)
to_chat(usr, "<span class='info'>Successfully deleted [deletions] [chosen]'\s</span>")
return
if(pa.Find("left"))
if(holder.buildmode.copycat)
@@ -587,14 +587,14 @@ obj/effect/bmode/buildholder/New()
if(isobj(object)) del(object)
else if(pa.Find("middle"))
if(istype(object,/mob) && !check_rights(R_DEBUG,0))
usr << "<span class='notice'>You don't have sufficient rights to clone [object.type]</span>"
to_chat(usr, "<span class='notice'>You don't have sufficient rights to clone [object.type]</span>")
else
if(ismob(object))
holder.buildmode.objholder = object.type
usr << "<span class='info'>You will now build [object.type] when clicking.</span>"
to_chat(usr, "<span class='info'>You will now build [object.type] when clicking.</span>")
else
holder.buildmode.copycat = object
usr << "<span class='info'>You will now build a lookalike of [object] when clicking.</span>"
to_chat(usr, "<span class='info'>You will now build a lookalike of [object] when clicking.</span>")
if(3)
if(pa.Find("left")) //I cant believe this shit actually compiles.
@@ -602,13 +602,13 @@ obj/effect/bmode/buildholder/New()
log_admin("[key_name(usr)] modified [object.name]'s [holder.buildmode.varholder] to [holder.buildmode.valueholder]")
object.vars[holder.buildmode.varholder] = holder.buildmode.valueholder
else
usr << "<span class='warning'>[initial(object.name)] does not have a var called '[holder.buildmode.varholder]'</span>"
to_chat(usr, "<span class='warning'>[initial(object.name)] does not have a var called '[holder.buildmode.varholder]'</span>")
if(pa.Find("right"))
if(object.vars.Find(holder.buildmode.varholder))
log_admin("[key_name(usr)] modified [object.name]'s [holder.buildmode.varholder] to [holder.buildmode.valueholder]")
object.vars[holder.buildmode.varholder] = initial(object.vars[holder.buildmode.varholder])
else
usr << "<span class='warning'>[initial(object.name)] does not have a var called '[holder.buildmode.varholder]'</span>"
to_chat(usr, "<span class='warning'>[initial(object.name)] does not have a var called '[holder.buildmode.varholder]'</span>")
if(4)
if(pa.Find("left"))
@@ -629,7 +629,7 @@ obj/effect/bmode/buildholder/New()
matches += path
if(matches.len==0)
usr << "<span class='warning'>No types of [O] found.</span>"
to_chat(usr, "<span class='warning'>No types of [O] found.</span>")
return
if(matches.len==1)

View File

@@ -51,7 +51,7 @@ var/list/alldepartments = list("Central Command")
cooldown_time = initial(cooldown_time) - 300*scancount
/obj/machinery/faxmachine/attack_ghost(mob/user as mob)
usr << "<span class='warning'>Nope.</span>"
to_chat(usr, "<span class='warning'>Nope.</span>")
return 0
/obj/machinery/faxmachine/attack_ai(mob/user as mob)
@@ -132,14 +132,14 @@ var/list/alldepartments = list("Central Command")
else
SendFax(tofax.info, tofax.name, usr, dpt)
usr << "Message transmitted successfully."
to_chat(usr, "Message transmitted successfully.")
faxtime = world.timeofday + cooldown_time
if(href_list["remove"])
if(tofax)
tofax.loc = usr.loc
usr.put_in_hands(tofax)
usr << "<span class='notice'>You take the paper out of \the [src].</span>"
to_chat(usr, "<span class='notice'>You take the paper out of \the [src].</span>")
tofax = null
if(href_list["scan"])
@@ -182,11 +182,11 @@ var/list/alldepartments = list("Central Command")
if(!tofax)
user.drop_item(O, src)
tofax = O
user << "<span class='notice'>You insert the paper into \the [src].</span>"
to_chat(user, "<span class='notice'>You insert the paper into \the [src].</span>")
flick("faxsend", src)
updateUsrDialog()
else
user << "<span class='notice'>There is already something in \the [src].</span>"
to_chat(user, "<span class='notice'>There is already something in \the [src].</span>")
else if(istype(O, /obj/item/weapon/card/id))
@@ -198,15 +198,15 @@ var/list/alldepartments = list("Central Command")
else if(istype(O, /obj/item/weapon/wrench))
playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
anchored = !anchored
user << "<span class='notice'>You [anchored ? "wrench" : "unwrench"] \the [src].</span>"
to_chat(user, "<span class='notice'>You [anchored ? "wrench" : "unwrench"] \the [src].</span>")
return
/proc/Centcomm_fax(var/obj/item/weapon/paper/sent, var/sentname, var/mob/Sender)
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'
to_chat(admins, msg)
to_chat(admins, 'sound/effects/fax.ogg')
proc/SendFax(var/sent, var/sentname, var/mob/Sender, var/dpt)

View File

@@ -2,16 +2,16 @@
if(my_atom.next_firetime > world.time)
usr << "<span class='warning'>Your weapons are recharging.</span>"
to_chat(usr, "<span class='warning'>Your weapons are recharging.</span>")
return
var/turf/firstloc
var/turf/secondloc
if(!my_atom.equipment_system || !my_atom.equipment_system.weapon_system)
usr << "<span class='warning'>Missing equipment or weapons.</span>"
to_chat(usr, "<span class='warning'>Missing equipment or weapons.</span>")
my_atom.verbs -= /obj/item/device/spacepod_equipment/weaponry/proc/fire_weapon_system
return
if(!my_atom.battery.use(shot_cost))
usr << "<span class='warning'>\The [my_atom]'s cell is too low on charge!</span>"
to_chat(usr, "<span class='warning'>\The [my_atom]'s cell is too low on charge!</span>")
return
var/olddir
dir = my_atom.dir

View File

@@ -63,11 +63,11 @@
var/obj/item/stack/rods/R = O
var/list/linkedparts = find_square()
if(!linkedparts)
user << "<span class='rose'>You cannot assemble a pod frame because you do not have the necessary assembly.</span>"
to_chat(user, "<span class='rose'>You cannot assemble a pod frame because you do not have the necessary assembly.</span>")
return
var/obj/structure/spacepod_frame/pod = new /obj/structure/spacepod_frame(src.loc)
pod.dir = src.dir
user << "<span class='notice'>You strut the pod frame together.</span>"
to_chat(user, "<span class='notice'>You strut the pod frame together.</span>")
R.use(10)
for(var/obj/item/pod_parts/pod_frame/F in linkedparts)
if(1 == turn(F.dir, -F.link_angle)) //if the part links north during construction, as the bottom left part always does
@@ -76,7 +76,7 @@
qdel(F)
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1)
if(istype(O, /obj/item/weapon/wrench))
user << "<span class='notice'>You [!anchored ? "secure \the [src] in place." : "remove the securing bolts."]</span>"
to_chat(user, "<span class='notice'>You [!anchored ? "secure \the [src] in place." : "remove the securing bolts."]</span>")
anchored = !anchored
density = anchored
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1)
@@ -86,7 +86,7 @@
set category = "Object"
set src in oview(1)
if(anchored)
usr << "\The [src] is securely bolted!"
to_chat(usr, "\The [src] is securely bolted!")
return 0
src.dir = turn(src.dir, -90)
return 1

View File

@@ -86,10 +86,10 @@
if(!health)
spawn(0)
if(occupant)
occupant << "<big><span class='warning'>Critical damage to the vessel detected, core explosion imminent!</span></big>"
to_chat(occupant, "<big><span class='warning'>Critical damage to the vessel detected, core explosion imminent!</span></big>")
for(var/i = 10, i >= 0; --i)
if(occupant)
occupant << "<span class='warning'>[i]</span>"
to_chat(occupant, "<span class='warning'>[i]</span>")
if(i == 0)
explosion(loc, 2, 4, 8)
sleep(10)
@@ -103,7 +103,7 @@
if(H)
H.loc = get_turf(src)
H.ex_act(severity + 1)
H << "<span class='warning'>You are forcefully thrown from \the [src]!</span>"
to_chat(H, "<span class='warning'>You are forcefully thrown from \the [src]!</span>")
del(ion_trail)
del(src)
if(2)
@@ -115,12 +115,12 @@
/obj/spacepod/attackby(obj/item/W as obj, mob/user as mob)
if(iscrowbar(W))
hatch_open = !hatch_open
user << "<span class='notice'>You [hatch_open ? "open" : "close"] the maintenance hatch.</span>"
to_chat(user, "<span class='notice'>You [hatch_open ? "open" : "close"] the maintenance hatch.</span>")
if(istype(W, /obj/item/weapon/cell))
if(!hatch_open)
return ..()
if(battery)
user << "<span class='notice'>The pod already has a battery.</span>"
to_chat(user, "<span class='notice'>The pod already has a battery.</span>")
return
user.drop_item(W, src)
battery = W
@@ -129,14 +129,14 @@
if(!hatch_open)
return ..()
if(!equipment_system)
user << "<span class='warning'>The pod has no equipment datum, yell at pomf</span>"
to_chat(user, "<span class='warning'>The pod has no equipment datum, yell at pomf</span>")
return
if(istype(W, /obj/item/device/spacepod_equipment/weaponry))
if(equipment_system.weapon_system)
user << "<span class='notice'>The pod already has a weapon system, remove it first.</span>"
to_chat(user, "<span class='notice'>The pod already has a weapon system, remove it first.</span>")
return
else
user << "<span class='notice'>You insert \the [W] into the equipment system.</span>"
to_chat(user, "<span class='notice'>You insert \the [W] into the equipment system.</span>")
user.drop_item(W, equipment_system)
equipment_system.weapon_system = W
equipment_system.weapon_system.my_atom = src
@@ -148,7 +148,7 @@
if(!hatch_open)
return ..()
if(!equipment_system || !istype(equipment_system))
user << "<span class='warning'>The pod has no equipment datum, or is the wrong type, yell at pomf.</span>"
to_chat(user, "<span class='warning'>The pod has no equipment datum, or is the wrong type, yell at pomf.</span>")
return
var/list/possible = list()
if(battery)
@@ -165,32 +165,32 @@
switch(input(user, "Remove which equipment?", null, null) as null|anything in possible)
if("Energy Cell")
if(user.put_in_any_hand_if_possible(battery))
user << "<span class='notice'>You remove \the [battery] from the space pod</span>"
to_chat(user, "<span class='notice'>You remove \the [battery] from the space pod</span>")
battery = null
if("Weapon System")
SPE = equipment_system.weapon_system
if(user.put_in_any_hand_if_possible(SPE))
user << "<span class='notice'>You remove \the [SPE] from the equipment system.</span>"
to_chat(user, "<span class='notice'>You remove \the [SPE] from the equipment system.</span>")
SPE.my_atom = null
equipment_system.weapon_system = null
verbs -= typesof(/obj/item/device/spacepod_equipment/weaponry/proc)
else
user << "<span class='warning'>You need an open hand to do that.</span>"
to_chat(user, "<span class='warning'>You need an open hand to do that.</span>")
/*
if("engine system")
SPE = equipment_system.engine_system
if(user.put_in_any_hand_if_possible(SPE))
user << "<span class='notice'>You remove \the [SPE] from the equipment system.</span>"
to_chat(user, "<span class='notice'>You remove \the [SPE] from the equipment system.</span>")
equipment_system.engine_system = null
else
user << "<span class='warning'>You need an open hand to do that.</span>"
to_chat(user, "<span class='warning'>You need an open hand to do that.</span>")
if("shield system")
SPE = equipment_system.shield_system
if(user.put_in_any_hand_if_possible(SPE))
user << "<span class='notice'>You remove \the [SPE] from the equipment system.</span>"
to_chat(user, "<span class='notice'>You remove \the [SPE] from the equipment system.</span>")
equipment_system.shield_system = null
else
user << "<span class='warning'>You need an open hand to do that.</span>"
to_chat(user, "<span class='warning'>You need an open hand to do that.</span>")
*/
return
@@ -226,7 +226,7 @@
if(usr!=src.occupant)
return
src.use_internal_tank = !src.use_internal_tank
src.occupant << "<span class='notice'>Now taking air from [use_internal_tank?"internal airtank":"environment"].</span>"
to_chat(src.occupant, "<span class='notice'>Now taking air from [use_internal_tank?"internal airtank":"environment"].</span>")
return
/obj/spacepod/proc/add_cabin()
@@ -314,18 +314,18 @@
if (usr.stat || !ishuman(usr))
return
if (src.occupant)
usr << "<span class='notice'><B>The [src.name] is already occupied!</B></span>"
to_chat(usr, "<span class='notice'><B>The [src.name] is already occupied!</B></span>")
return
/*
if (usr.abiotic())
usr << "<span class='notice'><B>Subject cannot have abiotic items on.</B></span>"
to_chat(usr, "<span class='notice'><B>Subject cannot have abiotic items on.</B></span>")
return
*/
for(var/mob/living/carbon/slime/M in range(1,usr))
if(M.Victim == usr)
usr << "You're too busy getting your life sucked out of you."
to_chat(usr, "You're too busy getting your life sucked out of you.")
return
// usr << "You start climbing into [src.name]"
// to_chat(usr, "You start climbing into [src.name]")
visible_message("<span class='notice'>[usr] starts to climb into [src.name]</span>")
@@ -333,9 +333,9 @@
if(!src.occupant)
moved_inside(usr)
else if(src.occupant!=usr)
usr << "[src.occupant] was faster. Try better next time, loser."
to_chat(usr, "[src.occupant] was faster. Try better next time, loser.")
else
usr << "You stop entering the exosuit."
to_chat(usr, "You stop entering the exosuit.")
return
/obj/spacepod/verb/exit_pod()
@@ -348,7 +348,7 @@
src.inertia_dir = 0 // engage reverse thruster and power down pod
src.occupant.loc = src.loc
src.occupant = null
usr << "<span class='notice'>You climb out of the pod</span>"
to_chat(usr, "<span class='notice'>You climb out of the pod</span>")
return
/obj/spacepod/proc/enter_after(delay as num, var/mob/user as mob, var/numticks = 5)
@@ -451,13 +451,13 @@
inertia_dir = direction
else
if(!battery)
user << "<span class='warning'>No energy cell detected.</span>"
to_chat(user, "<span class='warning'>No energy cell detected.</span>")
else if(battery.charge < 3)
user << "<span class='warning'>Not enough charge left.</span>"
to_chat(user, "<span class='warning'>Not enough charge left.</span>")
else if(!health)
user << "<span class='warning'>She's dead, Jim</span>"
to_chat(user, "<span class='warning'>She's dead, Jim</span>")
else
user << "<span class='warning'>Unknown error has occurred, yell at pomf.</span>"
to_chat(user, "<span class='warning'>Unknown error has occurred, yell at pomf.</span>")
return 0
battery.charge = max(0, battery.charge - 3)

View File

@@ -54,7 +54,7 @@ mob/proc/airflow_stun()
return 0
if(last_airflow_stun > world.time - zas_settings.Get(/datum/ZAS_Setting/airflow_stun_cooldown)) return 0
if(!(status_flags & CANSTUN) && !(status_flags & CANWEAKEN))
src << "<span class='notice'>You stay upright as the air rushes past you.</span>"
to_chat(src, "<span class='notice'>You stay upright as the air rushes past you.</span>")
return 0
if(weakened <= 0) src << "<span class='warning'>The sudden rush of air knocks you over!</span>"
@@ -74,7 +74,7 @@ mob/living/carbon/human/airflow_stun()
if(shoes)
if(CheckSlip() < 1) return 0
if(!(status_flags & CANSTUN) && !(status_flags & CANWEAKEN))
src << "<span class='notice'>You stay upright as the air rushes past you.</span>"
to_chat(src, "<span class='notice'>You stay upright as the air rushes past you.</span>")
return 0
if(weakened <= 0) src << "<span class='warning'>The sudden rush of air knocks you over!</span>"
@@ -263,7 +263,7 @@ proc/AirflowSpace(zone/A)
if(H.shoes)
if(H.CheckSlip() < 0)
return
src << "<SPAN CLASS='warning'>You are sucked away by airflow!</SPAN>"
to_chat(src, "<SPAN CLASS='warning'>You are sucked away by airflow!</SPAN>")
var/airflow_falloff = 9 - ul_FalloffAmount(airflow_dest) //It's a fast falloff calc. Very useful.
if(airflow_falloff < 1)
airflow_dest = null
@@ -323,7 +323,7 @@ proc/AirflowSpace(zone/A)
if(H.shoes)
if(H.CheckSlip() < 0)
return
src << "<SPAN CLASS='warning'>You are pushed away by airflow!</SPAN>"
to_chat(src, "<SPAN CLASS='warning'>You are pushed away by airflow!</SPAN>")
last_airflow = world.time
var/airflow_falloff = 9 - ul_FalloffAmount(airflow_dest) //It's a fast falloff calc. Very useful.
if(airflow_falloff < 1)

View File

@@ -77,11 +77,11 @@ Class Procs:
/connection/proc/mark_direct()
state |= CONNECTION_DIRECT
//world << "Marked direct."
// to_chat(world, "Marked direct.")
/connection/proc/mark_indirect()
state &= ~CONNECTION_DIRECT
//world << "Marked indirect."
// to_chat(world, "Marked indirect.")
/connection/proc/mark_space()
state |= CONNECTION_SPACE
@@ -95,18 +95,18 @@ Class Procs:
/connection/proc/erase()
edge.remove_connection(src)
state |= CONNECTION_INVALID
//world << "Connection Erased: [state]"
// to_chat(world, "Connection Erased: [state]")
/connection/proc/update()
//world << "Updated, \..."
// to_chat(world, "Updated, \...")
if(!istype(A,/turf/simulated))
//world << "Invalid A."
// to_chat(world, "Invalid A.")
erase()
return
var/block_status = air_master.air_blocked(A,B)
if(block_status & AIR_BLOCKED)
//world << "Blocked connection."
// to_chat(world, "Blocked connection.")
erase()
return
else if(block_status & ZONE_BLOCKED)
@@ -119,14 +119,14 @@ Class Procs:
if(state & CONNECTION_SPACE)
if(!b_is_space)
//world << "Invalid B."
// to_chat(world, "Invalid B.")
erase()
return
if(A.zone != zoneA)
//world << "Zone changed, \..."
// to_chat(world, "Zone changed, \...")
if(!A.zone)
erase()
//world << "erased."
// to_chat(world, "erased.")
return
else
edge.remove_connection(src)
@@ -134,22 +134,22 @@ Class Procs:
edge.add_connection(src)
zoneA = A.zone
//world << "valid."
// to_chat(world, "valid.")
return
else if(b_is_space)
//world << "Invalid B."
// to_chat(world, "Invalid B.")
erase()
return
if(A.zone == B.zone)
//world << "A == B"
// to_chat(world, "A == B")
erase()
return
if(A.zone != zoneA || (zoneB && (B.zone != zoneB)))
//world << "Zones changed, \..."
// to_chat(world, "Zones changed, \...")
if(A.zone && B.zone)
edge.remove_connection(src)
edge = air_master.get_edge(A.zone, B.zone)
@@ -157,9 +157,9 @@ Class Procs:
zoneA = A.zone
zoneB = B.zone
else
//world << "erased."
// to_chat(world, "erased.")
erase()
return
//world << "valid."
// to_chat(world, "valid.")

View File

@@ -69,10 +69,10 @@ Class Procs:
/connection_edge/proc/add_connection(connection/c)
coefficient++
//world << "Connection added: [type] Coefficient: [coefficient]"
// to_chat(world, "Connection added: [type] Coefficient: [coefficient]")
/connection_edge/proc/remove_connection(connection/c)
//world << "Connection removed: [type] Coefficient: [coefficient-1]"
// to_chat(world, "Connection removed: [type] Coefficient: [coefficient-1]")
coefficient--
if(coefficient <= 0)
erase()
@@ -81,7 +81,7 @@ Class Procs:
/connection_edge/proc/erase()
air_master.remove_edge(src)
//world << "[type] Erased."
// to_chat(world, "[type] Erased.")
/connection_edge/proc/tick()
@@ -143,7 +143,7 @@ Class Procs:
A.edges.Add(src)
B.edges.Add(src)
//id = edge_id(A,B)
//world << "New edge between [A] and [B]"
// to_chat(world, "New edge between [A] and [B]")
/connection_edge/zone/add_connection(connection/c)
. = ..()
@@ -167,20 +167,20 @@ Class Procs:
if(A.invalid || B.invalid)
erase()
return
//world << "[id]: Tick [air_master.current_cycle]: \..."
// to_chat(world, "[id]: Tick [air_master.current_cycle]: \...")
if(direct)
if(air_master.equivalent_pressure(A, B))
//world << "merged."
// to_chat(world, "merged.")
erase()
air_master.merge(A, B)
//world << "zones merged."
// to_chat(world, "zones merged.")
return
//air_master.equalize(A, B)
ShareRatio(A.air,B.air,coefficient)
air_master.mark_zone_update(A)
air_master.mark_zone_update(B)
//world << "equalized."
// to_chat(world, "equalized.")
var/differential = A.air.return_pressure() - B.air.return_pressure()
if(abs(differential) < zas_settings.Get(/datum/ZAS_Setting/airflow_lightest_pressure)) return
@@ -213,7 +213,7 @@ Class Procs:
A.edges.Add(src)
air = B.return_air()
//id = 52*A.id
//world << "New edge from [A] to [B]."
// to_chat(world, "New edge from [A] to [B].")
/connection_edge/unsimulated/add_connection(connection/c)
. = ..()
@@ -236,7 +236,7 @@ Class Procs:
if(A.invalid)
erase()
return
//world << "[id]: Tick [air_master.current_cycle]: To [B]!"
// to_chat(world, "[id]: Tick [air_master.current_cycle]: To [B]!")
//A.air.mimic(B, coefficient)
ShareSpace(A.air,air,dbg_out)
air_master.mark_zone_update(A)
@@ -357,7 +357,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
tileslen = avg_unsim.group_multiplier
if(dbg_output)
world << "O2: [unsim_oxygen] N2: [unsim_nitrogen] Size: [share_size] Tiles: [tileslen]"
to_chat(world, "O2: [unsim_oxygen] N2: [unsim_nitrogen] Size: [share_size] Tiles: [tileslen]")
else if(istype(unsimulated_tiles, /list))
if(!unsimulated_tiles.len)
@@ -416,8 +416,8 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
ratio = sharing_lookup_table[tileslen]
if(dbg_output)
world << "Ratio: [ratio]"
world << "Avg O2: [oxy_avg] N2: [nit_avg]"
to_chat(world, "Ratio: [ratio]")
to_chat(world, "Avg O2: [oxy_avg] N2: [nit_avg]")
A.oxygen = max(0, (A.oxygen - oxy_avg) * (1 - ratio) + oxy_avg )
A.nitrogen = max(0, (A.nitrogen - nit_avg) * (1 - ratio) + nit_avg )
@@ -432,7 +432,7 @@ proc/ShareSpace(datum/gas_mixture/A, list/unsimulated_tiles, dbg_output)
A.update_values()
if(dbg_output) world << "Result: [abs(old_pressure - A.return_pressure())] kPa"
if(dbg_output) to_chat(world, "Result: [abs(old_pressure - A.return_pressure())] kPa")
return abs(old_pressure - A.return_pressure())

View File

@@ -96,7 +96,7 @@ Class Procs:
set background = 1
#endif
world << "<span class='danger'>Processing Geometry...</span>"
to_chat(world, "<span class='danger'>Processing Geometry...</span>")
sleep(-1)
var/start_time = world.timeofday
@@ -107,10 +107,10 @@ Class Procs:
simulated_turf_count++
S.update_air_properties()
world << {"<font color='red'><b>Geometry initialized in [round(0.1*(world.timeofday-start_time),0.1)] seconds.</b>
to_chat(world, {"<font color='red'><b>Geometry initialized in [round(0.1*(world.timeofday-start_time),0.1)] seconds.</b>
Total Simulated Turfs: [simulated_turf_count]
Total Zones: [zones.len]
Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_count]</font>"}
Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_count]</font>"})
// spawn Start()
@@ -161,7 +161,7 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
#ifdef ZASDBG
if(updated != updating.len)
tick_progress = "[updating.len - updated] tiles left unupdated."
world << "<span class='warning'>[tick_progress]</span>"
to_chat(world, "<span class='warning'>[tick_progress]</span>")
. = 0
#endif

View File

@@ -4,10 +4,10 @@ client/proc/ZoneTick()
var/result = air_master.Tick()
if(result)
src << "Sucessfully Processed."
to_chat(src, "Sucessfully Processed.")
else
src << "Failed to process! ([air_master.tick_progress])"
to_chat(src, "Failed to process! ([air_master.tick_progress])")
client/proc/Zone_Info(turf/T as null|turf)
@@ -16,10 +16,10 @@ client/proc/Zone_Info(turf/T as null|turf)
if(istype(T,/turf/simulated) && T:zone)
T:zone:dbg_data(src)
else
mob << "No zone here."
to_chat(mob, "No zone here.")
var/datum/gas_mixture/mix = T.return_air()
mob << "[mix.return_pressure()] kPa [mix.temperature]C"
mob << "O2: [mix.oxygen] N2: [mix.nitrogen] CO2: [mix.carbon_dioxide] TX: [mix.toxins]"
to_chat(mob, "[mix.return_pressure()] kPa [mix.temperature]C")
to_chat(mob, "O2: [mix.oxygen] N2: [mix.nitrogen] CO2: [mix.carbon_dioxide] TX: [mix.toxins]")
else
if(zone_debug_images)
for(var/zone in zone_debug_images)
@@ -46,9 +46,9 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
if(direction == "N/A")
if(!(T.c_airblock(T) & AIR_BLOCKED))
mob << "The turf can pass air! :D"
to_chat(mob, "The turf can pass air! :D")
else
mob << "No air passage :x"
to_chat(mob, "No air passage :x")
return
var/turf/simulated/other_turf = get_step(T, direction_list[direction])
@@ -60,29 +60,29 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
if(o_block & AIR_BLOCKED)
if(t_block & AIR_BLOCKED)
mob << "Neither turf can connect. :("
to_chat(mob, "Neither turf can connect. :(")
else
mob << "The initial turf only can connect. :\\"
to_chat(mob, "The initial turf only can connect. :\\")
else
if(t_block & AIR_BLOCKED)
mob << "The other turf can connect, but not the initial turf. :/"
to_chat(mob, "The other turf can connect, but not the initial turf. :/")
else
mob << "Both turfs can connect! :)"
to_chat(mob, "Both turfs can connect! :)")
mob << "Additionally, \..."
to_chat(mob, "Additionally, \...")
if(o_block & ZONE_BLOCKED)
if(t_block & ZONE_BLOCKED)
mob << "neither turf can merge."
to_chat(mob, "neither turf can merge.")
else
mob << "the other turf cannot merge."
to_chat(mob, "the other turf cannot merge.")
else
if(t_block & ZONE_BLOCKED)
mob << "the initial turf cannot merge."
to_chat(mob, "the initial turf cannot merge.")
else
mob << "both turfs can merge."
to_chat(mob, "both turfs can merge.")
/*zone/proc/DebugDisplay(client/client)
@@ -103,34 +103,34 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
for(var/turf/S in unsimulated_tiles)
current_zone_images += image('icons/misc/debug_space.dmi', S, null, TURF_LAYER)
client << "<u>Zone Air Contents</u>"
client << "Oxygen: [air.oxygen]"
client << "Nitrogen: [air.nitrogen]"
client << "Plasma: [air.toxins]"
client << "Carbon Dioxide: [air.carbon_dioxide]"
client << "Temperature: [air.temperature] K"
client << "Heat Energy: [air.temperature * air.heat_capacity()] J"
client << "Pressure: [air.return_pressure()] KPa"
client << ""
client << "Unsimulated Zone(space/catwalk) Tiles: [length(unsimulated_tiles)]"
client << "Movable Objects: [length(movables())]"
client << "<u>Connections: [length(connections)]</u>"
to_chat(client, "<u>Zone Air Contents</u>")
to_chat(client, "Oxygen: [air.oxygen]")
to_chat(client, "Nitrogen: [air.nitrogen]")
to_chat(client, "Plasma: [air.toxins]")
to_chat(client, "Carbon Dioxide: [air.carbon_dioxide]")
to_chat(client, "Temperature: [air.temperature] K")
to_chat(client, "Heat Energy: [air.temperature * air.heat_capacity()] J")
to_chat(client, "Pressure: [air.return_pressure()] KPa")
to_chat(client, "")
to_chat(client, "Unsimulated Zone(space/catwalk) Tiles: [length(unsimulated_tiles)]")
to_chat(client, "Movable Objects: [length(movables())]")
to_chat(client, "<u>Connections: [length(connections)]</u>")
for(var/connection/C in connections)
client << "\ref[C] [C.A] --> [C.B] [(C.indirect?"Open":"Closed")]"
to_chat(client, "\ref[C] [C.A] --> [C.B] [(C.indirect?"Open":"Closed")]")
current_zone_images += image('icons/misc/debug_connect.dmi', C.A, null, TURF_LAYER)
current_zone_images += image('icons/misc/debug_connect.dmi', C.B, null, TURF_LAYER)
client << "Connected Zones:"
to_chat(client, "Connected Zones:")
for(var/zone/zone in connected_zones)
client << "\ref[zone] [zone] - [connected_zones[zone]] (Connected)"
to_chat(client, "\ref[zone] [zone] - [connected_zones[zone]] (Connected)")
for(var/zone/zone in closed_connection_zones)
client << "\ref[zone] [zone] - [closed_connection_zones[zone]] (Unconnected)"
to_chat(client, "\ref[zone] [zone] - [closed_connection_zones[zone]] (Unconnected)")
for(var/C in connections)
if(!istype(C,/connection))
client << "[C] (Not Connection!)"
to_chat(client, "[C] (Not Connection!)")
if(!client.zone_debug_images)
client.zone_debug_images = list()
@@ -148,7 +148,8 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
for(var/zone/Z in air_master.zones)
if(Z.air == air && Z != src)
var/turf/zloc = pick(Z.contents)
client << "<span class='warning'>Illegal air datum shared by: [zloc.loc.name]</span>"*/
to_chat(client, "<span class='warning'>Illegal air datum shared by: [zloc.loc.name]</span>")
*/
/*client/proc/TestZASRebuild()
@@ -156,7 +157,7 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
// var/turf/turf = get_turf(mob)
var/zone/current_zone = mob.loc:zone
if(!current_zone)
src << "There is no zone there!"
to_chat(src, "There is no zone there!")
return
var/list/current_adjacents = list()
@@ -224,7 +225,7 @@ client/proc/Test_ZAS_Connection(var/turf/simulated/T as turf)
//lazy but fast
final_arrangement.Remove(null)
src << "There are [final_arrangement.len] unique segments."
to_chat(src, "There are [final_arrangement.len] unique segments.")
for(var/turf/current in turfs)
current.overlays -= overlays

View File

@@ -251,10 +251,10 @@ var/global/ZAS_Settings/zas_settings = new
fdel(F)
for(var/id in src.settings)
var/datum/ZAS_Setting/setting = src.settings[id]
F << "# [setting.name]"
F << "# [setting.desc]"
F << "[id] [setting.value]"
F << ""
to_chat(F, "# [setting.name]")
to_chat(F, "# [setting.desc]")
to_chat(F, "[id] [setting.value]")
to_chat(F, "")
/ZAS_Settings/proc/Load()
for(var/t in file2list("config/ZAS.txt"))
@@ -312,7 +312,7 @@ var/global/ZAS_Settings/zas_settings = new
else
error("[id] has an invalid typeval.")
return
world << "<span class='notice'><b>[key_name(user)] changed ZAS setting <i>[setting.name]</i> to <i>[displayedValue]</i>.</b></span>"
to_chat(world, "<span class='notice'><b>[key_name(user)] changed ZAS setting <i>[setting.name]</i> to <i>[displayedValue]</i>.</b></span>")
ChangeSettingsDialog(user)
@@ -514,4 +514,4 @@ a { color: white; }
Set("/datum/ZAS_Setting/airflow_speed_decay", 1)
Set("/datum/ZAS_Setting/airflow_delay", 20)
Set("/datum/ZAS_Setting/airflow_mob_slowdown", 3)
world << "<span class='notice'><b>[key_name(usr)] loaded ZAS preset <i>[def]</i></b></span>"
to_chat(world, "<span class='notice'><b>[key_name(usr)] loaded ZAS preset <i>[def]</i></b></span>")

View File

@@ -59,7 +59,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
if(zas_settings.Get(/datum/ZAS_Setting/SKIN_BURNS))
if(!pl_head_protected() || !pl_suit_protected())
burn_skin(0.75)
if(prob(20)) src << "<span class='warning'>Your skin burns!</span>"
if(prob(20)) to_chat(src, "<span class='warning'>Your skin burns!</span>")
updatehealth()
//Burn eyes if exposed.
@@ -72,7 +72,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
if(zas_settings.Get(/datum/ZAS_Setting/GENETIC_CORRUPTION))
if(rand(1,10000) < zas_settings.Get(/datum/ZAS_Setting/GENETIC_CORRUPTION))
randmutb(src)
src << "<span class='warning'>High levels of toxins cause you to spontaneously mutate.</span>"
to_chat(src, "<span class='warning'>High levels of toxins cause you to spontaneously mutate.</span>")
domutcheck(src,null)
@@ -82,11 +82,11 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
return
var/datum/organ/internal/eyes/E = internal_organs_by_name["eyes"]
if(E)
if(prob(20)) src << "<span class='warning'>Your eyes burn!</span>"
if(prob(20)) to_chat(src, "<span class='warning'>Your eyes burn!</span>")
E.damage += 2.5
eye_blurry = min(eye_blurry+1.5,50)
if (prob(max(0,E.damage - 15) + 1) && !eye_blind)
src << "<span class='warning'>You are blinded!</span>"
to_chat(src, "<span class='warning'>You are blinded!</span>")
eye_blind += 20
/mob/living/carbon/human/proc/pl_head_protected()

View File

@@ -75,7 +75,7 @@
var/s_block = c_airblock(src)
if(s_block & AIR_BLOCKED)
#ifdef ZASDBG
if(verbose) world << "Self-blocked."
to_chat(if(verbose) world, "Self-blocked.")
//dbg(blocked)
#endif
if(zone)
@@ -106,7 +106,7 @@
if(block & AIR_BLOCKED)
#ifdef ZASDBG
if(verbose) world << "[d] is blocked."
to_chat(if(verbose) world, "[d] is blocked.")
//unsim.dbg(air_blocked, turn(180,d))
#endif
@@ -116,7 +116,7 @@
if(r_block & AIR_BLOCKED)
#ifdef ZASDBG
if(verbose) world << "[d] is blocked."
to_chat(if(verbose) world, "[d] is blocked.")
//dbg(air_blocked, d)
#endif
@@ -143,7 +143,7 @@
//if((block & ZONE_BLOCKED) || (r_block & ZONE_BLOCKED && !(s_block & ZONE_BLOCKED)))
if(((block & ZONE_BLOCKED) && !(r_block & ZONE_BLOCKED)) || (r_block & ZONE_BLOCKED && !(s_block & ZONE_BLOCKED)))
#ifdef ZASDBG
if(verbose) world << "[d] is zone blocked."
to_chat(if(verbose) world, "[d] is zone blocked.")
//dbg(zone_blocked, d)
#endif
@@ -157,22 +157,22 @@
#ifdef ZASDBG
dbg(assigned)
if(verbose) world << "Added to [zone]"
to_chat(if(verbose) world, "Added to [zone]")
#endif
else if(sim.zone != zone)
#ifdef ZASDBG
if(verbose) world << "Connecting to [sim.zone]"
to_chat(if(verbose) world, "Connecting to [sim.zone]")
#endif
air_master.connect(src, sim)
#ifdef ZASDBG
else if(verbose) world << "[d] has same zone."
to_chat(else if(verbose) world, "[d] has same zone.")
else if(verbose) world << "[d] has invalid zone."
to_chat(else if(verbose) world, "[d] has invalid zone.")
#endif
else

View File

@@ -171,7 +171,7 @@ vs_control
vars[ch] = vw
if(how == "Toggle")
newvar = (newvar?"ON":"OFF")
world << "<span class='notice'><b>[key_name(user)] changed the setting [display_description] to [newvar].</b></span>"
to_chat(world, "<span class='notice'><b>[key_name(user)] changed the setting [display_description] to [newvar].</b></span>")
if(ch in plc.settings)
ChangeSettingsDialog(user,plc.settings)
else
@@ -296,7 +296,7 @@ vs_control
airflow_mob_slowdown = 3
world << "<span class='notice'><b>[key_name(user)] changed the global plasma/ZAS settings to \"[def]\"</b></span>"
to_chat(world, "<span class='notice'><b>[key_name(user)] changed the global plasma/ZAS settings to \"[def]\"</b></span>")
pl_control
var/list/settings = list()

View File

@@ -127,14 +127,14 @@ Class Procs:
T.set_graphic(air.graphics)
/zone/proc/dbg_data(mob/M)
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)"
M << "O2 per N2: [(air.nitrogen ? air.oxygen/air.nitrogen : "N/A")] Moles: [air.total_moles]"
M << "Simulated: [contents.len] ([air.group_multiplier])"
//M << "Unsimulated: [unsimulated_contents.len]"
//M << "Edges: [edges.len]"
if(invalid) M << "Invalid!"
to_chat(M, name)
to_chat(M, "O2: [air.oxygen] N2: [air.nitrogen] CO2: [air.carbon_dioxide] P: [air.toxins]")
to_chat(M, "P: [air.return_pressure()] kPa V: [air.volume]L T: [air.temperature]<5D>K ([air.temperature - T0C]<5D>C)")
to_chat(M, "O2 per N2: [(air.nitrogen ? air.oxygen/air.nitrogen : "N/A")] Moles: [air.total_moles]")
to_chat(M, "Simulated: [contents.len] ([air.group_multiplier])")
// to_chat(M, "Unsimulated: [unsimulated_contents.len]")
// to_chat(M, "Edges: [edges.len]")
if(invalid) to_chat(M, "Invalid!")
var/zone_edges = 0
var/space_edges = 0
var/space_coefficient = 0
@@ -143,10 +143,10 @@ Class Procs:
else
space_edges++
space_coefficient += E.coefficient
M << "[E:air:return_pressure()]kPa"
to_chat(M, "[E:air:return_pressure()]kPa")
M << "Zone Edges: [zone_edges]"
M << "Space Edges: [space_edges] ([space_coefficient] connections)"
to_chat(M, "Zone Edges: [zone_edges]")
to_chat(M, "Space Edges: [space_edges] ([space_coefficient] connections)")
//for(var/turf/T in unsimulated_contents)
// M << "[T] at ([T.x],[T.y])"
// to_chat(M, "[T] at ([T.x],[T.y])")

View File

@@ -1075,7 +1075,7 @@ What are the archived variables for?
if(total_moles() > MINIMUM_AIR_TO_SUSPEND)
if((abs(temperature-sample.temperature) > MINIMUM_TEMPERATURE_DELTA_TO_SUSPEND) && \
((temperature < (1-MINIMUM_TEMPERATURE_RATIO_TO_SUSPEND)*sample.temperature) || (temperature > (1+MINIMUM_TEMPERATURE_RATIO_TO_SUSPEND)*sample.temperature)))
//world << "temp fail [temperature] & [sample.temperature]"
// to_chat(world, "temp fail [temperature] & [sample.temperature]")
return 0
var/check_moles
if(sample.trace_gases.len)

View File

@@ -23,7 +23,7 @@
#ifdef DEBUG_DATUM_POOL
if(ticker)
world << text("DEBUG_DATUM_POOL: new proc has been called ([] | []).", type, list2params(B))
to_chat(world, text("DEBUG_DATUM_POOL: new proc has been called ([] | []).", type, list2params(B)))
#endif
//so the GC knows we're pooling this type.
@@ -39,7 +39,7 @@
masterdatumPool[type] -= O
#ifdef DEBUG_DATUM_POOL
world << text("DEBUG_DATUM_POOL: getFromPool([]) [] left arglist([]).", type, length(masterdatumPool[type]), list2params(B))
to_chat(world, text("DEBUG_DATUM_POOL: getFromPool([]) [] left arglist([]).", type, length(masterdatumPool[type]), list2params(B)))
#endif
if(!O || !istype(O))
@@ -69,7 +69,7 @@
if(istype(D, /atom/movable) && length(masterdatumPool[D.type]) > MAINTAINING_OBJECT_POOL_COUNT)
#ifdef DEBUG_DATUM_POOL
world << text("DEBUG_DATUM_POOL: returnToPool([]) exceeds [] discarding...", D.type, MAINTAINING_OBJECT_POOL_COUNT)
to_chat(world, text("DEBUG_DATUM_POOL: returnToPool([]) exceeds [] discarding...", D.type, MAINTAINING_OBJECT_POOL_COUNT))
#endif
qdel(D)
@@ -84,13 +84,13 @@
#ifdef DEBUG_DATUM_POOL
if(D in masterdatumPool[D.type])
world << text("returnToPool has been called twice for the same datum of type [] time to panic.", D.type)
to_chat(world, text("returnToPool has been called twice for the same datum of type [] time to panic.", D.type))
#endif
masterdatumPool[D.type] |= D
#ifdef DEBUG_DATUM_POOL
world << text("DEBUG_DATUM_POOL: returnToPool([]) [] left.", D.type, length(masterdatumPool[D.type]))
to_chat(world, text("DEBUG_DATUM_POOL: returnToPool([]) [] left.", D.type, length(masterdatumPool[D.type])))
#endif
#undef MAINTAINING_DATUM_POOL_COUNT

View File

@@ -65,7 +65,7 @@
var/extension = copytext(path,-4,0)
if( !fexists(path) || !(extension in valid_extensions) )
src << "<font color='red'>Error: browse_files(): File not found/Invalid file([path]).</font>"
to_chat(src, "<font color='red'>Error: browse_files(): File not found/Invalid file([path]).</font>")
return
return path
@@ -79,7 +79,7 @@
/client/proc/file_spam_check()
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>"
to_chat(src, "<font color='red'>Error: file_spam_check(): Spam. Please wait [round(time_to_wait/10)] seconds.</font>")
return 1
fileaccess_timer = world.time + FTPDELAY
return 0

View File

@@ -109,7 +109,7 @@
var/turf/centerturf = get_turf(center)
if(!centerturf)
usr << "cant get a center turf?"
to_chat(usr, "cant get a center turf?")
return
var/list/turfs = new/list()
var/rsq = radius * (radius+0.5)

View File

@@ -61,7 +61,7 @@ var/global/list/sec_hud_users = list() //list of all entities using a security H
var/list/L = chemical_reactions_list[reaction]
for(var/t in L)
. += " has: [t]\n"
world << .
to_chat(world, .)
*/
var/global/list/escape_list = list()

View File

@@ -6,7 +6,7 @@
* print a warning message to world.log
*/
/* see setup.dm
#define WARNING(MSG) world << "##WARNING: [MSG] in [__FILE__] at line [__LINE__] src: [src] usr: [usr]."
#define WARNING(MSG) to_chat(world, "##WARNING: [MSG] in [__FILE__] at line [__LINE__] src: [src] usr: [usr].")
#define warning(msg) world.log << "## WARNING: [msg]"
#define testing(msg) world.log << "## TESTING: [msg]"
#define log_game(text) diary << html_decode("\[[time_stamp()]]GAME: [text]")
@@ -52,7 +52,7 @@
for(var/client/C in admins)
if(C.prefs.toggles & CHAT_DEBUGLOGS)
C << "DEBUG: [text]"
to_chat(C, "DEBUG: [text]")
@@ -133,5 +133,5 @@
* Standardized method for tracking startup times.
*/
/proc/log_startup_progress(var/message)
world << "<span class='danger'>[message]</span>"
to_chat(world, "<span class='danger'>[message]</span>")
world.log << message

View File

@@ -246,7 +246,7 @@ var/syndicate_code_response//Code response for traitors.
set name = "Generate Code Phrase"
set category = "Debug"
world << "<span class='warning'>Code Phrase is: </span>[generate_code_phrase()]"
to_chat(world, "<span class='warning'>Code Phrase is: </span>[generate_code_phrase()]")
return

View File

@@ -26,8 +26,8 @@
/*
/mob/verb/SanitizeTest(var/t as text)
src << "IN: [t]"
src << "OUT: [sanitizeSQL(t)]"
to_chat(src, "IN: [t]")
to_chat(src, "OUT: [sanitizeSQL(t)]")
*/
/*
* Text sanitization
@@ -477,4 +477,4 @@ var/list/number_units=list(
return out
///mob/verb/test_num2words(var/number as num)
// usr << "\"[list2text(num2words(number), " ")]\""
// to_chat(usr, "\"[list2text(num2words(number), " ")]\"")

View File

@@ -270,7 +270,7 @@ Turf and target are seperate in case you want to teleport some distance from a t
break
if(newname)
break //That's a suitable name!
src << "Sorry, that [role]-name wasn't appropriate, please try another. It's possibly too long/short, has bad characters or is already taken."
to_chat(src, "Sorry, that [role]-name wasn't appropriate, please try another. It's possibly too long/short, has bad characters or is already taken.")
if(!newname) //we'll stick with the oldname then
return
@@ -279,8 +279,8 @@ Turf and target are seperate in case you want to teleport some distance from a t
if(isAI(src))
var/mob/living/silicon/ai/A = src
oldname = null//don't bother with the records update crap
//world << "<b>[newname] is the AI!</b>"
//world << sound('sound/AI/newAI.ogg')
// to_chat(world, "<b>[newname] is the AI!</b>")
// to_chat(world, sound('sound/AI/newAI.ogg'))
// Set eyeobj name
if(A.eyeobj)
A.eyeobj.name = "[newname] (AI Eye)"
@@ -521,7 +521,7 @@ Turf and target are seperate in case you want to teleport some distance from a t
winset(user, windowid, "on-close=\".windowclose [param]\"")
//world << "OnClose [user]: [windowid] : ["on-close=\".windowclose [param]\""]"
// to_chat(world, "OnClose [user]: [windowid] : ["on-close=\".windowclose [param]\""]")
// the on-close client verb
@@ -533,12 +533,12 @@ Turf and target are seperate in case you want to teleport some distance from a t
set hidden = 1 // hide this verb from the user's panel
set name = ".windowclose" // no autocomplete on cmd line
//world << "windowclose: [atomref]"
// to_chat(world, "windowclose: [atomref]")
if(atomref!="null") // if passed a real atomref
var/hsrc = locate(atomref) // find the reffed atom
var/href = "close=1"
if(hsrc)
//world << "[src] Topic [href] [hsrc]"
// to_chat(world, "[src] Topic [href] [hsrc]")
usr = src.mob
src.Topic(href, params2list(href), hsrc) // this will direct to the atom's
return // Topic() proc via client.Topic()
@@ -546,7 +546,7 @@ Turf and target are seperate in case you want to teleport some distance from a t
// no atomref specified (or not found)
// so just reset the user mob's machine var
if(src && src.mob)
//world << "[src] was [src.mob.machine], setting to null"
// to_chat(world, "[src] was [src.mob.machine], setting to null")
src.mob.unset_machine()
return
@@ -1449,3 +1449,7 @@ proc/find_holder_of_type(var/atom/reference,var/typepath) //Returns the first ob
T.color = null
return spiraled_turfs
// Use this to send to a client's chat, no exceptions (except this proc itself).
/proc/to_chat(var/thing, var/output)
thing << output

View File

@@ -66,7 +66,7 @@
if(attack_delayer.blocked()) // This was next_move. next_attack makes more sense.
return
//world << "next_attack is [next_attack] and world.time is [world.time]"
// to_chat(world, "next_attack is [next_attack] and world.time is [world.time]")
if(istype(loc,/obj/mecha))
if(!locate(/turf) in list(A,A.loc)) // Prevents inventory from being drilled
return
@@ -291,7 +291,7 @@
nutrition = max(nutrition - rand(1,5),0)
handle_regular_hud_updates()
else
src << "<span class='warning'>You're out of energy! You need food!</span>"
to_chat(src, "<span class='warning'>You're out of energy! You need food!</span>")
// Simple helper to face what you clicked on, in case it should be needed in more than one place
/mob/proc/face_atom(var/atom/A)

View File

@@ -35,7 +35,7 @@
if(attack_delayer.blocked())
return
if(isVentCrawling())
src << "<span class='danger'>Not while we're vent crawling!</span>"
to_chat(src, "<span class='danger'>Not while we're vent crawling!</span>")
return
face_atom(A) // change direction to face what you clicked on

View File

@@ -211,9 +211,9 @@
hud_used.persistant_inventory_update()
update_action_buttons()
else
usr << "<span class='warning'>Inventory hiding is currently only supported for human mobs, sorry.</span>"
to_chat(usr, "<span class='warning'>Inventory hiding is currently only supported for human mobs, sorry.</span>")
else
usr << "<span class='warning'>This mob type does not use a HUD.</span>"
to_chat(usr, "<span class='warning'>This mob type does not use a HUD.</span>")
/*
The global hud:
@@ -316,7 +316,7 @@ var/datum/global_hud/global_hud = new()
if(!istype(R))
return
if((!R.schematics || !R.schematics.len) && !override)
usr << "<span class='danger'>This [R] has no schematics to choose from.</span>"
to_chat(usr, "<span class='danger'>This [R] has no schematics to choose from.</span>")
return
if(!L.schematics_background)
@@ -339,7 +339,7 @@ var/datum/global_hud/global_hud = new()
var/datum/rcd_schematic/RS = schematic
if(!istype(RS))
if(!istype(RS, /datum/selection_schematic))
usr << "<span class='danger'>Unexpected type in schematics list. [RS][RS ? "/[RS.type]" : "null"]"
to_chat(usr, "<span class='danger'>Unexpected type in schematics list. [RS][RS ? "/[RS.type]" : "null"]")
continue
if(!RS.ourobj)
RS.ourobj = getFromPool(/obj/screen/schematics, null, RS)

View File

@@ -205,11 +205,11 @@
//Modules display is shown
if(!r.module)
usr << "<span class='danger'>No module selected</span>"
to_chat(usr, "<span class='danger'>No module selected</span>")
return
if(!r.module.modules)
usr << "<span class='danger'>Selected module has no modules to select</span>"
to_chat(usr, "<span class='danger'>Selected module has no modules to select</span>")
return
if(!r.robot_modules_background)

View File

@@ -281,7 +281,7 @@
if(iscarbon(usr))
var/mob/living/carbon/C = usr
if(C.legcuffed)
C << "<span class='notice'>You are legcuffed! You cannot run until you get [C.legcuffed] removed!</span>"
to_chat(C, "<span class='notice'>You are legcuffed! You cannot run until you get [C.legcuffed] removed!</span>")
C.m_intent = "walk" //Just incase
C.hud_used.move_intent.icon_state = "walking"
return 1
@@ -322,12 +322,12 @@
if(!C.stat && !C.stunned && !C.paralysis && !C.restrained())
if(C.internal)
C.internal = null
C << "<span class='notice'>No longer running on internals.</span>"
to_chat(C, "<span class='notice'>No longer running on internals.</span>")
if(C.internals)
C.internals.icon_state = "internal0"
else
if(!istype(C.wear_mask, /obj/item/clothing/mask))
C << "<span class='notice'>You are not wearing a mask.</span>"
to_chat(C, "<span class='notice'>You are not wearing a mask.</span>")
return 1
else
var/list/nicename = null
@@ -400,7 +400,7 @@
//We've determined the best container now we set it as our internals
if(best)
C << "<span class='notice'>You are now running on internals from [tankcheck[best]] on your [nicename[best]].</span>"
to_chat(C, "<span class='notice'>You are now running on internals from [tankcheck[best]] on your [nicename[best]].</span>")
C.internal = tankcheck[best]
@@ -408,7 +408,7 @@
if(C.internals)
C.internals.icon_state = "internal1"
else
C << "<span class='notice'>You don't have a[breathes=="oxygen" ? "n oxygen" : addtext(" ",breathes)] tank.</span>"
to_chat(C, "<span class='notice'>You don't have a[breathes=="oxygen" ? "n oxygen" : addtext(" ",breathes)] tank.</span>")
if("act_intent")
usr.a_intent_change("right")
if("help")
@@ -545,7 +545,7 @@
if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes.
return
if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))
usr << "You need your gun in your active hand to do that!"
to_chat(usr, "You need your gun in your active hand to do that!")
return
usr.client.AllowTargetMove()
gun_click_time = world.time
@@ -554,7 +554,7 @@
if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes.
return
if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))
usr << "You need your gun in your active hand to do that!"
to_chat(usr, "You need your gun in your active hand to do that!")
return
usr.client.AllowTargetMove()
gun_click_time = world.time
@@ -563,7 +563,7 @@
if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes.
return
if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))
usr << "You need your gun in your active hand to do that!"
to_chat(usr, "You need your gun in your active hand to do that!")
return
usr.client.AllowTargetRun()
gun_click_time = world.time
@@ -572,7 +572,7 @@
if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes.
return
if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))
usr << "You need your gun in your active hand to do that!"
to_chat(usr, "You need your gun in your active hand to do that!")
return
usr.client.AllowTargetRun()
gun_click_time = world.time
@@ -581,7 +581,7 @@
if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes.
return
if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))
usr << "You need your gun in your active hand to do that!"
to_chat(usr, "You need your gun in your active hand to do that!")
return
usr.client.AllowTargetClick()
gun_click_time = world.time
@@ -591,7 +591,7 @@
if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes.
return
if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))
usr << "You need your gun in your active hand to do that!"
to_chat(usr, "You need your gun in your active hand to do that!")
return
usr.client.AllowTargetClick()
gun_click_time = world.time

View File

@@ -69,7 +69,7 @@ obj/item/proc/get_clamped_volume()
if(istype(M, /mob/living/carbon/slime))
var/mob/living/carbon/slime/slime = M
if(prob(25))
user << "<span class='warning'>[src] passes right through [M]!</span>"
to_chat(user, "<span class='warning'>[src] passes right through [M]!</span>")
return 0
if(power > 0)
@@ -155,7 +155,7 @@ obj/item/proc/get_clamped_volume()
if(!showname && user)
if(user.client)
user << "<span class='danger'>You attack [M] with [src]. </span>"
to_chat(user, "<span class='danger'>You attack [M] with [src]. </span>")
if(istype(M, /mob/living/carbon/human))
@@ -182,7 +182,7 @@ obj/item/proc/get_clamped_volume()
var/mob/living/carbon/monkey/K = M
power = K.defense(power,def_zone)
M.take_organ_damage(0, power)
M << "Aargh it burns!"
to_chat(M, "Aargh it burns!")
M.updatehealth()
add_fingerprint(user)
return .

View File

@@ -28,10 +28,10 @@
if(!targetloc)
return
if(targetarea && targetarea.anti_ethereal && !isAdminGhost(usr))
usr << "<span class='sinister'>A dark forcefield prevents you from entering the area.<span>"
to_chat(usr, "<span class='sinister'>A dark forcefield prevents you from entering the area.<span>")
else
if(targetloc.holy && ((src.invisibility == 0) || iscult(src)))
usr << "<span class='warning'>These are sacred grounds, you cannot go there!</span>"
to_chat(usr, "<span class='warning'>These are sacred grounds, you cannot go there!</span>")
else
forceEnter(targetloc)
@@ -99,13 +99,13 @@
if(awaygate)
user.loc = awaygate.loc
else
user << "[src] has no destination."
to_chat(user, "[src] has no destination.")
/obj/machinery/gateway/centeraway/attack_ghost(mob/user as mob)
if(stationgate)
user.loc = stationgate.loc
else
user << "[src] has no destination."
to_chat(user, "[src] has no destination.")
// -------------------------------------------
// This was supposed to be used by adminghosts

View File

@@ -138,7 +138,7 @@
else
t5 = in_range(src, usr) || src.loc == usr
// world << "according to dblclick(), t5 is [t5]"
// to_chat(world, "according to dblclick(), t5 is [t5]")
// ------- ACTUALLY DETERMINING STUFF -------
if (((t5 || (W && (W.flags & USEDELAY))) && !( istype(src, /obj/screen) )))

View File

@@ -30,7 +30,7 @@
if(!requires_dexterity(user))
attack_hand(user) //if the object doesn't need dexterity, we can use our stump
else
user << "Your [user.hand ? "left hand" : "right hand"] is not fine enough for this action."
to_chat(user, "Your [user.hand ? "left hand" : "right hand"] is not fine enough for this action.")
/atom/proc/requires_dexterity(mob/user)
return 0

View File

@@ -123,10 +123,10 @@ var/const/tk_maxrange = 15
if(8 to tk_maxrange)
user.next_move += 10
else
user << "<span class='notice'>Your mind won't reach that far.</span>"
to_chat(user, "<span class='notice'>Your mind won't reach that far.</span>")
return*/
if(d > tk_maxrange)
user << "<span class='warning'>Your mind won't reach that far.</span>"
to_chat(user, "<span class='warning'>Your mind won't reach that far.</span>")
return
if(!focus)

View File

@@ -6,7 +6,7 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
/mob/living/proc/ventcrawl_carry()
for(var/atom/A in src.contents)
if(!(isInTypes(A, canEnterVentWith)))
src << "<SPAN CLASS='warning'>You can't be carrying items or have items equipped when vent crawling!</SPAN>"
to_chat(src, "<SPAN CLASS='warning'>You can't be carrying items or have items equipped when vent crawling!</SPAN>")
return 0
return 1
@@ -47,7 +47,7 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
if(is_type_in_list(U,ventcrawl_machinery) && Adjacent(U))
pipes |= U
if(!pipes || !pipes.len)
src << "There are no pipes that you can ventcrawl into within range!"
to_chat(src, "There are no pipes that you can ventcrawl into within range!")
return
if(pipes.len == 1)
pipe = pipes[1]
@@ -96,7 +96,7 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
/*
if(clicked_on)
world << "We start with [clicked_on], and [clicked_on.type]"
to_chat(world, "We start with [clicked_on], and [clicked_on.type]")
*/
var/obj/machinery/atmospherics/unary/vent_found
@@ -120,28 +120,28 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
if(vent_found)
if(vent_found.network && (vent_found.network.normal_members.len || vent_found.network.line_members.len))
src << "You begin climbing into the ventilation system..."
to_chat(src, "You begin climbing into the ventilation system...")
if(vent_found.air_contents && !issilicon(src))
switch(vent_found.air_contents.temperature)
if(0 to BODYTEMP_COLD_DAMAGE_LIMIT)
src << "<span class='danger'>You feel a painful freeze coming from the vent!</span>"
to_chat(src, "<span class='danger'>You feel a painful freeze coming from the vent!</span>")
if(BODYTEMP_COLD_DAMAGE_LIMIT to T0C)
src << "<span class='warning'>You feel an icy chill coming from the vent.</span>"
to_chat(src, "<span class='warning'>You feel an icy chill coming from the vent.</span>")
if(T0C + 40 to BODYTEMP_HEAT_DAMAGE_LIMIT)
src << "<span class='warning'>You feel a hot wash coming from the vent.</span>"
to_chat(src, "<span class='warning'>You feel a hot wash coming from the vent.</span>")
if(BODYTEMP_HEAT_DAMAGE_LIMIT to INFINITY)
src << "<span class='danger'>You feel a searing heat coming from the vent!</span>"
to_chat(src, "<span class='danger'>You feel a searing heat coming from the vent!</span>")
switch(vent_found.air_contents.pressure)
if(0 to HAZARD_LOW_PRESSURE)
src << "<span class='danger'>You feel a rushing draw pulling you into the vent!</span>"
to_chat(src, "<span class='danger'>You feel a rushing draw pulling you into the vent!</span>")
if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE)
src << "<span class='warning'>You feel a strong drag pulling you into the vent.</span>"
to_chat(src, "<span class='warning'>You feel a strong drag pulling you into the vent.</span>")
if(WARNING_HIGH_PRESSURE to HAZARD_HIGH_PRESSURE)
src << "<span class='warning'>You feel a strong current pushing you away from the vent.</span>"
to_chat(src, "<span class='warning'>You feel a strong current pushing you away from the vent.</span>")
if(HAZARD_HIGH_PRESSURE to INFINITY)
src << "<span class='danger'>You feel a roaring wind pushing you away from the vent!</span>"
to_chat(src, "<span class='danger'>You feel a roaring wind pushing you away from the vent!</span>")
if(!do_after(src,vent_found, 45,,0))
return
@@ -158,16 +158,16 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
add_ventcrawl(vent_found)
else
src << "This vent is not connected to anything."
to_chat(src, "This vent is not connected to anything.")
else
src << "You must be standing on or beside an air vent to enter it."
to_chat(src, "You must be standing on or beside an air vent to enter it.")
else
src << "You can't vent crawl while you're stunned!"
to_chat(src, "You can't vent crawl while you're stunned!")
else
src << "You must be conscious to do this!"
to_chat(src, "You must be conscious to do this!")
return
/mob/living/proc/add_ventcrawl(obj/machinery/atmospherics/starting_machine)

View File

@@ -11,7 +11,7 @@
* sends a message to admins
*/
/proc/message_admins(msg)
world << msg
to_chat(world, msg)
*/
/**
* logTheThing
@@ -22,9 +22,9 @@
*/
/proc/logTheThing(type, source, target, text, diaryType)
if(diaryType)
world << "Diary: \[[diaryType]:[type]] [text]"
to_chat(world, "Diary: \[[diaryType]:[type]] [text]")
else
world << "Log: \[[type]] [text]"
to_chat(world, "Log: \[[type]] [text]")
/**
* var/disposed

View File

@@ -3,7 +3,7 @@
*/
#ifdef UPDATE_QUEUE_DEBUG
#define uq_dbg(text) world << text
#define uq_dbg(text) to_chat(world, text)
#else
#define uq_dbg(text)
#endif

View File

@@ -4,7 +4,7 @@ var/global/list/updateQueueTestCount = list()
var/start
proc
runTests()
world << "<b>Running 9 tests...</b>"
to_chat(world, "<b>Running 9 tests...</b>")
testUpdateQueuePerformance()
sleep(1)
testInplace()
@@ -23,14 +23,14 @@ var/global/list/updateQueueTestCount = list()
sleep(1)
testReallySlowItemInQueue()
sleep(1)
world << "<b>Finished!</b>"
to_chat(world, "<b>Finished!</b>")
beginTiming()
start = world.time
endTiming(text)
var/time = (world.time - start) / world.tick_lag
world << {"<b><font color="blue">Performance - [text] - <font color="green">[time]</font> ticks</font></b>"}
to_chat(world, {"<b><font color="blue">Performance - [text] - <font color="green">[time]</font> ticks</font></b>"})
getCount()
return updateQueueTestCount[updateQueueTestCount.len]
@@ -50,9 +50,9 @@ var/global/list/updateQueueTestCount = list()
assertThat(condition, text)
if (condition)
world << {"<font color="green"><b>PASS</b></font>: [text]"}
to_chat(world, {"<font color="green"><b>PASS</b></font>: [text]"})
else
world << {"<b><font color="red">FAIL</font>: [text]</b>"}
to_chat(world, {"<b><font color="red">FAIL</font>: [text]</b>"})
testUpdateQueuePerformance()
incrementTestCount()

View File

@@ -15,7 +15,7 @@
air_master.failed_ticks++
if(air_master.failed_ticks > 5)
world << "<SPAN CLASS='danger'>RUNTIMES IN ATMOS TICKER. Killing air simulation!</SPAN>"
to_chat(world, "<SPAN CLASS='danger'>RUNTIMES IN ATMOS TICKER. Killing air simulation!</SPAN>")
world.log << "### ZAS SHUTDOWN"
message_admins("ZASALERT: Shutting down! status: [air_master.tick_progress]")

View File

@@ -8,7 +8,7 @@
if(C.is_afk(INACTIVITY_KICK))
if(!istype(C.mob, /mob/dead))
log_access("AFK: [key_name(C)]")
C << "<SPAN CLASS='warning'>You have been inactive for more than 10 minutes and have been disconnected.</SPAN>"
to_chat(C, "<SPAN CLASS='warning'>You have been inactive for more than 10 minutes and have been disconnected.</SPAN>")
del(C)
scheck()

View File

@@ -54,7 +54,7 @@
scheck()
// TODO: Need debug pane for this.
//world << "LIT: [light_updates]:[overlay_updates]"
// to_chat(world, "LIT: [light_updates]:[overlay_updates]")
#undef MAX_LIGHT_UPDATES_PER_WORK

View File

@@ -692,7 +692,7 @@
var/list/datum/game_mode/runnable_modes = new
for (var/T in (typesof(/datum/game_mode) - /datum/game_mode))
var/datum/game_mode/M = new T()
//world << "DEBUG: [T], tag=[M.config_tag], prob=[probabilities[M.config_tag]]"
// to_chat(world, "DEBUG: [T], tag=[M.config_tag], prob=[probabilities[M.config_tag]]")
if (!(M.config_tag in modes))
del(M)
continue
@@ -701,5 +701,5 @@
continue
if (M.can_start())
runnable_modes[M] = probabilities[M.config_tag]
//world << "DEBUG: runnable_mode\[[runnable_modes.len]\] = [M.config_tag]"
// to_chat(world, "DEBUG: runnable_mode\[[runnable_modes.len]\] = [M.config_tag]")
return runnable_modes

View File

@@ -47,10 +47,10 @@ var/global/datum/controller/failsafe/failsafe
if(0 to 3)
masterControllerAlertLevel++
if(4)
admins << "<font color='red' size='2'><b>Warning. The master Controller has not fired in the last [masterControllerAlertLevel * processing_interval] ticks. Automatic restart in [processing_interval] ticks.</b></font>"
to_chat(admins, "<font color='red' size='2'><b>Warning. The master Controller has not fired in the last [masterControllerAlertLevel * processing_interval] ticks. Automatic restart in [processing_interval] ticks.</b></font>")
masterControllerAlertLevel = 5
if(5)
admins << "<font color='red' size='2'><b>Warning. The master Controller has still not fired within the last [masterControllerAlertLevel * processing_interval] ticks. Killing and restarting...</b></font>"
to_chat(admins, "<font color='red' size='2'><b>Warning. The master Controller has still not fired within the last [masterControllerAlertLevel * processing_interval] ticks. Killing and restarting...</b></font>")
new /datum/controller/game_controller() // Replace the old master controller (hence killing the old one's process).
master_controller.process() // Start it rolling again.
masterControllerAlertLevel = 0

View File

@@ -12,7 +12,7 @@ var/soft_dels = 0
set category = "Debug"
for(var/A in gc_hard_del_types)
usr << "[A] = [gc_hard_del_types[A]]"
to_chat(usr, "[A] = [gc_hard_del_types[A]]")
/datum/garbage_collector
var/list/queue = new
@@ -137,7 +137,7 @@ var/soft_dels = 0
set category = "Debug"
garbageCollector.del_everything = !garbageCollector.del_everything
world << "<b>GC: qdel turned [garbageCollector.del_everything ? "off" : "on"].</b>"
to_chat(world, "<b>GC: qdel turned [garbageCollector.del_everything ? "off" : "on"].</b>")
log_admin("[key_name(usr)] turned qdel [garbageCollector.del_everything ? "off" : "on"].")
message_admins("<span class='notice'>[key_name(usr)] turned qdel [garbageCollector.del_everything ? "off" : "on"].</span>", 1)

View File

@@ -59,7 +59,7 @@ datum/controller/game_controller/New()
job_master = new /datum/controller/occupations()
job_master.SetupOccupations()
job_master.LoadJobs("config/jobs.txt")
//world << "<span class='danger'>Job setup complete in </span>"
// to_chat(world, "<span class='danger'>Job setup complete in </span>")
log_startup_progress("Job setup complete in [stop_watch(watch)]s.")
if(!syndicate_code_phrase) syndicate_code_phrase = generate_code_phrase()
@@ -249,7 +249,7 @@ datum/controller/game_controller/proc/cachedamageicons()
if(!air_master.Tick()) //Runtimed.
air_master.failed_ticks++
if(air_master.failed_ticks > 5)
world << "<font color='red'><b>RUNTIMES IN ATMOS TICKER. Killing air simulation!</font></b>"
to_chat(world, "<font color='red'><b>RUNTIMES IN ATMOS TICKER. Killing air simulation!</font></b>")
world.log << "### ZAS SHUTDOWN"
message_admins("ZASALERT: unable to run [air_master.tick_progress], shutting down!")
log_admin("ZASALERT: unable run zone/process() -- [air_master.tick_progress]")

View File

@@ -75,7 +75,7 @@ datum/shuttle_controller/proc/recall()
if(timeleft >= 600)
return
captain_announce("The emergency shuttle has been recalled.")
world << sound('sound/AI/shuttlerecalled.ogg')
to_chat(world, sound('sound/AI/shuttlerecalled.ogg'))
setdirection(-1)
online = 1
for(var/area/A in areas)
@@ -244,11 +244,11 @@ datum/shuttle_controller/emergency_shuttle/process()
settimeleft(SHUTTLELEAVETIME)
send2mainirc("The Emergency Shuttle has docked with the station.")
captain_announce("The Emergency Shuttle has docked with the station. You have [round(timeleft()/60,1)] minutes to board the Emergency Shuttle.")
world << sound('sound/AI/shuttledock.ogg')
to_chat(world, sound('sound/AI/shuttledock.ogg'))
if(universe.name == "Hell Rising")
world << "___________________________________________________________________"
world << "<span class='sinister' style='font-size:3'> A vile force of darkness is making its way toward the escape shuttle.</span>"
to_chat(world, "___________________________________________________________________")
to_chat(world, "<span class='sinister' style='font-size:3'> A vile force of darkness is making its way toward the escape shuttle.</span>")
return 1

View File

@@ -30,7 +30,7 @@
processScheduler = psched
//processScheduler.deferSetupFor(/datum/controller/process/ticker)
processScheduler.start()
world << "<h1><span class='warning'>Process Scheduler was restarted</span></h1>"
to_chat(world, "<h1><span class='warning'>Process Scheduler was restarted</span></h1>")
message_admins("Admin [key_name_admin(usr)] has restarted the [controller] controller.")
return

View File

@@ -71,25 +71,25 @@ var/global/mommi_base_law_type = /datum/ai_laws/keeper // Asimov is OP as fuck o
if (src.zeroth)
who << "0. [src.zeroth]"
to_chat(who, "0. [src.zeroth]")
for (var/index = 1, index <= src.ion.len, index++)
var/law = src.ion[index]
var/num = ionnum()
who << "[num]. [law]"
to_chat(who, "[num]. [law]")
var/number = 1
for (var/index = 1, index <= src.inherent.len, index++)
var/law = src.inherent[index]
if (length(law) > 0)
who << "[number]. [law]"
to_chat(who, "[number]. [law]")
number++
for (var/index = 1, index <= src.supplied.len, index++)
var/law = src.supplied[index]
if (length(law) > 0)
who << "[number]. [law]"
to_chat(who, "[number]. [law]")
number++
/datum/ai_laws/proc/write_laws()

View File

@@ -147,7 +147,7 @@
winset(user, windowid, "on-close=\".windowclose [param]\"")
//world << "OnClose [user]: [windowid] : ["on-close=\".windowclose [param]\""]"
// to_chat(world, "OnClose [user]: [windowid] : ["on-close=\".windowclose [param]\""]")
// the on-close client verb
@@ -159,12 +159,12 @@
set hidden = 1 // hide this verb from the user's panel
set name = ".windowclose" // no autocomplete on cmd line
//world << "windowclose: [atomref]"
// to_chat(world, "windowclose: [atomref]")
if(atomref!="null") // if passed a real atomref
var/hsrc = locate(atomref) // find the reffed atom
var/href = "close=1"
if(hsrc)
//world << "[src] Topic [href] [hsrc]"
// to_chat(world, "[src] Topic [href] [hsrc]")
usr = src.mob
src.Topic(href, params2list(href), hsrc) // this will direct to the atom's
return // Topic() proc via client.Topic()
@@ -172,7 +172,7 @@
// no atomref specified (or not found)
// so just reset the user mob's machine var
if(src && src.mob)
//world << "[src] was [src.mob.machine], setting to null"
// to_chat(world, "[src] was [src.mob.machine], setting to null")
src.mob.unset_machine()
return

View File

@@ -114,7 +114,7 @@
var/greek = href_list["fuse"]
togglefuse(text2num(greek))
else
L << "<span class='error'>You need a soldering tool!</span>"
to_chat(L, "<span class='error'>You need a soldering tool!</span>")
Interact(usr) //Update

View File

@@ -4,7 +4,7 @@
set name = "Add Reagent"
if(!usr.client || !usr.client.holder)
usr << "<span class='warning'>You need to be an administrator to access this.</span>"
to_chat(usr, "<span class='warning'>You need to be an administrator to access this.</span>")
return
if(!D) return
@@ -14,7 +14,7 @@
if(reagentDatum)
var/reagentAmount = input(usr, "Amount", "Insert Amount", "") as num
if(A.reagents.add_reagent(reagentDatum, reagentAmount))
usr << "<span class='warning'>[reagentDatum] doesn't exist.</span>"
to_chat(usr, "<span class='warning'>[reagentDatum] doesn't exist.</span>")
return
log_admin("[key_name(usr)] added [reagentDatum] with [reagentAmount] units to [A] ")
message_admins("[key_name(usr)] added [reagentDatum] with [reagentAmount] units to [A] ")
@@ -26,7 +26,7 @@
if(!usr.client || !usr.client.holder)
usr << "<span class='warning'>You need to be an administrator to access this.</span>"
to_chat(usr, "<span class='warning'>You need to be an administrator to access this.</span>")
return
@@ -458,7 +458,7 @@ body
html += " <span class='block'>"
for(var/i=0;i<4;i++)
idx=(block*4)+i
bit=1 << idx
to_chat(bit=1, idx)
bv=value & bit
html += "<a href='?_src_=vars;togbit=[idx];var=[name];subject=\ref[DA]' title='bit [idx] ([bit])'>[bv?1:0]</a>"
html += "</span>"
@@ -481,7 +481,7 @@ body
var/mob/M = locate(href_list["rename"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
var/new_name = copytext(sanitize(input(usr,"What would you like to name this mob?","Input a name",M.real_name) as text|null),1,MAX_NAME_LEN)
@@ -496,7 +496,7 @@ body
var/D = locate(href_list["datumedit"])
if(!istype(D,/datum) && !istype(D,/client))
usr << "This can only be used on instances of types /client or /datum"
to_chat(usr, "This can only be used on instances of types /client or /datum")
return
modify_variables(D, href_list["varnameedit"], 1)
@@ -506,10 +506,10 @@ body
var/atom/D = locate(href_list["subject"])
if(!istype(D,/datum) && !istype(D,/client))
usr << "This can only be used on instances of types /client or /datum"
to_chat(usr, "This can only be used on instances of types /client or /datum")
return
if(!(href_list["var"] in D.vars))
usr << "Unable to find variable specified."
to_chat(usr, "Unable to find variable specified.")
return
var/value = D.vars[href_list["var"]]
value ^= 1 << text2num(href_list["togbit"])
@@ -520,7 +520,7 @@ body
var/D = locate(href_list["datumchange"])
if(!istype(D,/datum) && !istype(D,/client))
usr << "This can only be used on instances of types /client or /datum"
to_chat(usr, "This can only be used on instances of types /client or /datum")
return
modify_variables(D, href_list["varnamechange"], 0)
@@ -530,7 +530,7 @@ body
var/atom/A = locate(href_list["datummass"])
if(!istype(A))
usr << "This can only be used on instances of type /atom"
to_chat(usr, "This can only be used on instances of type /atom")
return
cmd_mass_modify_object_variables(A, href_list["varnamemass"])
@@ -540,7 +540,7 @@ body
var/mob/M = locate(href_list["mob_player_panel"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
src.holder.show_player_panel(M)
@@ -551,7 +551,7 @@ body
var/mob/M = locate(href_list["give_spell"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
src.give_spell(M)
@@ -562,7 +562,7 @@ body
var/mob/M = locate(href_list["give_disease"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
src.give_disease(M)
@@ -573,7 +573,7 @@ body
var/mob/M = locate(href_list["godmode"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
src.cmd_admin_godmode(M)
@@ -584,7 +584,7 @@ body
var/mob/M = locate(href_list["gib"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
src.cmd_admin_gib(M)
@@ -594,7 +594,7 @@ body
var/mob/M = locate(href_list["build_mode"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
togglebuildmode(M)
@@ -605,7 +605,7 @@ body
var/mob/M = locate(href_list["drop_everything"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
if(usr.client)
@@ -616,7 +616,7 @@ body
var/mob/M = locate(href_list["direct_control"])
if(!istype(M))
usr << "This can only be used on instances of type /mob"
to_chat(usr, "This can only be used on instances of type /mob")
return
if(usr.client)
@@ -627,7 +627,7 @@ body
var/mob/living/carbon/human/H = locate(href_list["make_skeleton"])
if(!istype(H))
usr << "This can only be used on instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human")
return
H.makeSkeleton()
@@ -638,7 +638,7 @@ body
var/obj/O = locate(href_list["delall"])
if(!isobj(O))
usr << "This can only be used on instances of type /obj"
to_chat(usr, "This can only be used on instances of type /obj")
return
var/action_type = alert("Strict type ([O.type]) or type and all subtypes?",,"Strict type","Type and subtypes","Cancel")
@@ -660,7 +660,7 @@ body
i++
qdel(Obj)
if(!i)
usr << "No objects of this type exist"
to_chat(usr, "No objects of this type exist")
return
log_admin("[key_name(usr)] deleted all objects of type [O_type] ([i] objects deleted) ")
message_admins("<span class='notice'>[key_name(usr)] deleted all objects of type [O_type] ([i] objects deleted) </span>")
@@ -671,7 +671,7 @@ body
i++
qdel(Obj)
if(!i)
usr << "No objects of this type exist"
to_chat(usr, "No objects of this type exist")
return
log_admin("[key_name(usr)] deleted all objects of type or subtype of [O_type] ([i] objects deleted) ")
message_admins("<span class='notice'>[key_name(usr)] deleted all objects of type or subtype of [O_type] ([i] objects deleted) </span>")
@@ -681,7 +681,7 @@ body
var/atom/A = locate(href_list["explode"])
if(!isobj(A) && !ismob(A) && !isturf(A))
usr << "This can only be done to instances of type /obj, /mob and /turf"
to_chat(usr, "This can only be done to instances of type /obj, /mob and /turf")
return
src.cmd_admin_explosion(A)
@@ -692,7 +692,7 @@ body
var/atom/A = locate(href_list["emp"])
if(!isobj(A) && !ismob(A) && !isturf(A))
usr << "This can only be done to instances of type /obj, /mob and /turf"
to_chat(usr, "This can only be done to instances of type /obj, /mob and /turf")
return
src.cmd_admin_emp(A)
@@ -703,7 +703,7 @@ body
var/datum/D = locate(href_list["mark_object"])
if(!istype(D))
usr << "This can only be done to instances of type /datum"
to_chat(usr, "This can only be done to instances of type /datum")
return
src.holder.marked_datum = D
@@ -714,7 +714,7 @@ body
var/atom/movable/A = locate(href_list["teleport_here"])
if(!istype(A))
usr << "This can only be done to instances of movable atoms."
to_chat(usr, "This can only be done to instances of movable atoms.")
return
var/turf/T = get_turf(usr)
@@ -731,7 +731,7 @@ body
for(var/mob/M in range(T,7))
shake_camera(M, 4, 1)
if(flashy_level > 2)
world << "<font size='15' color='red'><b>[uppertext(A.name)] HAS RISEN</b></font>"
to_chat(world, "<font size='15' color='red'><b>[uppertext(A.name)] HAS RISEN</b></font>")
if("Stealthy")
A.alpha = 0
animate(A, alpha = 255, time = stealthy_level)
@@ -745,7 +745,7 @@ body
var/atom/A = locate(href_list["teleport_to"])
if(!istype(A))
user << "This can only be done to instances of atoms."
to_chat(user, "This can only be done to instances of atoms.")
return
user.teleport_to(A)
@@ -755,7 +755,7 @@ body
var/atom/movable/A = locate(href_list["delete"])
if(!istype(A))
usr << "This can only be done to instances of movable atoms."
to_chat(usr, "This can only be done to instances of movable atoms.")
return
if(ismob(A))
@@ -773,7 +773,7 @@ body
var/atom/A = locate(href_list["rotatedatum"])
if(!istype(A))
usr << "This can only be done to instances of type /atom"
to_chat(usr, "This can only be done to instances of type /atom")
return
switch(href_list["rotatedir"])
@@ -786,12 +786,12 @@ body
var/mob/living/carbon/human/H = locate(href_list["makemonkey"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
holder.Topic(href, list("monkeyone"=href_list["makemonkey"]))
@@ -800,12 +800,12 @@ body
var/mob/living/carbon/human/H = locate(href_list["makerobot"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
holder.Topic(href, list("makerobot"=href_list["makerobot"]))
@@ -814,12 +814,12 @@ body
var/mob/living/carbon/human/H = locate(href_list["makealien"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
holder.Topic(href, list("makealien"=href_list["makealien"]))
@@ -828,12 +828,12 @@ body
var/mob/living/carbon/human/H = locate(href_list["makeslime"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
holder.Topic(href, list("makeslime"=href_list["makeslime"]))
@@ -842,12 +842,12 @@ body
var/mob/living/carbon/human/H = locate(href_list["makeai"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
holder.Topic(href, list("makeai"=href_list["makeai"]))
@@ -856,7 +856,7 @@ body
var/mob/living/carbon/human/H = locate(href_list["setmutantrace"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
var/new_mutantrace = input("Please choose a new mutantrace","Mutantrace",null) as null|anything in list("NONE","golem","lizard","slime","plant","shadow","tajaran","skrell","vox")
@@ -866,7 +866,7 @@ body
if("NONE")
new_mutantrace = ""
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
if(H.dna)
H.dna.mutantrace = new_mutantrace
@@ -877,27 +877,27 @@ body
var/mob/living/carbon/human/H = locate(href_list["setspecies"])
if(!istype(H))
usr << "This can only be done to instances of type /mob/living/carbon/human"
to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human")
return
var/new_species = input("Please choose a new species.","Species",null) as null|anything in all_species
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
if(H.set_species(new_species))
usr << "Set species of [H] to [H.species]."
to_chat(usr, "Set species of [H] to [H.species].")
H.regenerate_icons()
else
usr << "Failed! Something went wrong."
to_chat(usr, "Failed! Something went wrong.")
else if(href_list["addlanguage"])
if(!check_rights(R_SPAWN)) return
var/mob/H = locate(href_list["addlanguage"])
if(!istype(H))
usr << "This can only be done to instances of type /mob"
to_chat(usr, "This can only be done to instances of type /mob")
return
var/new_language = input("Please choose a language to add.","Language",null) as null|anything in all_languages
@@ -906,24 +906,24 @@ body
return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
if(H.add_language(new_language))
usr << "Added [new_language] to [H]."
to_chat(usr, "Added [new_language] to [H].")
else
usr << "Mob already knows that language."
to_chat(usr, "Mob already knows that language.")
else if(href_list["remlanguage"])
if(!check_rights(R_SPAWN)) return
var/mob/H = locate(href_list["remlanguage"])
if(!istype(H))
usr << "This can only be done to instances of type /mob"
to_chat(usr, "This can only be done to instances of type /mob")
return
if(!H.languages.len)
usr << "This mob knows no languages."
to_chat(usr, "This mob knows no languages.")
return
var/datum/language/rem_language = input("Please choose a language to remove.","Language",null) as null|anything in H.languages
@@ -932,20 +932,20 @@ body
return
if(!H)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
if(H.remove_language(rem_language.name))
usr << "Removed [rem_language] from [H]."
to_chat(usr, "Removed [rem_language] from [H].")
else
usr << "Mob doesn't know that language."
to_chat(usr, "Mob doesn't know that language.")
else if(href_list["regenerateicons"])
if(!check_rights(0)) return
var/mob/M = locate(href_list["regenerateicons"])
if(!ismob(M))
usr << "This can only be done to instances of type /mob"
to_chat(usr, "This can only be done to instances of type /mob")
return
M.regenerate_icons()
@@ -960,7 +960,7 @@ body
var/amount = input("Deal how much damage to mob? (Negative values here heal)","Adjust [Text]loss",0) as num
if(!L)
usr << "Mob doesn't exist anymore"
to_chat(usr, "Mob doesn't exist anymore")
return
switch(Text)
@@ -971,7 +971,7 @@ body
if("brain") L.adjustBrainLoss(amount)
if("clone") L.adjustCloneLoss(amount)
else
usr << "You caused an error. DEBUG: Text:[Text] Mob:[L]"
to_chat(usr, "You caused an error. DEBUG: Text:[Text] Mob:[L]")
return
if(amount != 0)

View File

@@ -55,10 +55,10 @@ var/list/diseases = typesof(/datum/disease) - /datum/disease
/datum/disease/proc/stage_act()
age++
var/cure_present = has_cure()
//world << "[cure_present]"
// to_chat(world, "[cure_present]")
if(carrier&&!cure_present)
//world << "[affected_mob] is carrier"
// to_chat(world, "[affected_mob] is carrier")
return
spread = (cure_present?"Remissive":initial_spread)
@@ -108,7 +108,7 @@ var/list/diseases = typesof(/datum/disease) - /datum/disease
return 0
/datum/disease/proc/spread(var/atom/source=null, var/airborne_range = 2, var/force_spread)
//world << "Disease [src] proc spread was called from holder [source]"
// to_chat(world, "Disease [src] proc spread was called from holder [source]")
// If we're overriding how we spread, say so here
var/how_spread = spread_type
@@ -169,7 +169,7 @@ var/list/diseases = typesof(/datum/disease) - /datum/disease
spread_type = CONTACT_GENERAL
affected_mob = null
if(!affected_mob) //the virus is in inanimate obj
// world << "[src] longevity = [longevity]"
// to_chat(world, "[src] longevity = [longevity]")
if(prob(70))
if(--longevity<=0)

View File

@@ -167,7 +167,7 @@ var/list/advance_cures = list(
return generated
/datum/disease/advance/proc/Refresh(var/new_name = 0)
//world << "[src.name] \ref[src] - REFRESH!"
// to_chat(world, "[src.name] \ref[src] - REFRESH!")
var/list/properties = GenerateProperties()
AssignProperties(properties)
@@ -234,7 +234,7 @@ var/list/advance_cures = list(
spread = "Blood"
spread_type = spread_id
//world << "Setting spread type to [spread_id]/[spread]"
// to_chat(world, "Setting spread type to [spread_id]/[spread]")
/datum/disease/advance/proc/SetSeverity(var/level_sev)
@@ -261,7 +261,7 @@ var/list/advance_cures = list(
/datum/disease/advance/proc/GenerateCure(var/list/properties = list())
if(properties && properties.len)
var/res = Clamp(properties["resistance"] - (symptoms.len / 2), 1, advance_cures.len)
//world << "Res = [res]"
// to_chat(world, "Res = [res]")
cure_id = advance_cures[res]
// Get the cure name from the cure_id
@@ -336,7 +336,7 @@ var/list/advance_cures = list(
/proc/Advance_Mix(var/list/D_list)
//world << "Mixing!!!!"
// to_chat(world, "Mixing!!!!")
var/list/diseases = list()
@@ -361,7 +361,7 @@ var/list/advance_cures = list(
D2.Mix(D1)
// Should be only 1 entry left, but if not let's only return a single entry
//world << "END MIXING!!!!!"
// to_chat(world, "END MIXING!!!!!")
var/datum/disease/advance/to_return = pick(diseases)
to_return.Refresh(1)
return to_return
@@ -424,7 +424,7 @@ var/list/advance_cures = list(
for(var/datum/disease/D in active_diseases)
src << "<a href='?_src_=vars;Vars=\ref[D]'>[D.name] - [D.holder]</a>"
to_chat(src, "<a href='?_src_=vars;Vars=\ref[D]'>[D.name] - [D.holder]</a>")
*/
#undef RANDOM_STARTING_LEVEL

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