mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-17 10:05:27 +01:00
refactors most spans
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
|
||||
/obj/item/stack/hose/CtrlClick(mob/user)
|
||||
if(remembered)
|
||||
to_chat(user, "<span class='notice'>You wind \the [src] back up.</span>")
|
||||
to_chat(user, span_notice("You wind \the [src] back up."))
|
||||
remembered = null
|
||||
return
|
||||
|
||||
@@ -50,18 +50,18 @@
|
||||
if(remembered && remembered.valid_connection(AC))
|
||||
var/distancetonode = get_dist(remembered,AC)
|
||||
if(distancetonode > world.view)
|
||||
to_chat(user, "<span class='notice'>\The [src] would probably burst if it were this long.</span>")
|
||||
to_chat(user, span_notice("\The [src] would probably burst if it were this long."))
|
||||
else if(distancetonode <= amount)
|
||||
to_chat(user, "<span class='notice'>You join \the [remembered] to \the [AC]</span>")
|
||||
to_chat(user, span_notice("You join \the [remembered] to \the [AC]"))
|
||||
remembered.setup_hoses(AC)
|
||||
use(distancetonode)
|
||||
remembered = null
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You do not have enough tubing to connect the sockets.</span>")
|
||||
to_chat(user, span_notice("You do not have enough tubing to connect the sockets."))
|
||||
|
||||
else
|
||||
remembered = AC
|
||||
to_chat(user, "<span class='notice'>You connect one end of tubing to \the [AC].</span>")
|
||||
to_chat(user, span_notice("You connect one end of tubing to \the [AC]."))
|
||||
|
||||
else
|
||||
var/choice = tgui_input_list(usr, "Select a target hose connector.", "Socket Selection", available_sockets)
|
||||
@@ -72,20 +72,20 @@
|
||||
if(remembered.valid_connection(CC))
|
||||
var/distancetonode = get_dist(remembered, CC)
|
||||
if(distancetonode > world.view)
|
||||
to_chat(user, "<span class='notice'>\The [src] would probably burst if it were this long.</span>")
|
||||
to_chat(user, span_notice("\The [src] would probably burst if it were this long."))
|
||||
else if(distancetonode <= amount)
|
||||
to_chat(user, "<span class='notice'>You join \the [remembered] to \the [CC]</span>")
|
||||
to_chat(user, span_notice("You join \the [remembered] to \the [CC]"))
|
||||
|
||||
remembered.setup_hoses(CC)
|
||||
use(distancetonode)
|
||||
remembered = null
|
||||
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You do not have enough tubing to connect the sockets.</span>")
|
||||
to_chat(user, span_notice("You do not have enough tubing to connect the sockets."))
|
||||
|
||||
else
|
||||
remembered = CC
|
||||
to_chat(user, "<span class='notice'>You connect one end of tubing to \the [CC].</span>")
|
||||
to_chat(user, span_notice("You connect one end of tubing to \the [CC]."))
|
||||
|
||||
return
|
||||
|
||||
|
||||
@@ -298,7 +298,7 @@
|
||||
var/amount_per_pill = CLAMP(reagents.total_volume / count, 0, MAX_UNITS_PER_PILL)
|
||||
while(count--)
|
||||
if(reagents.total_volume <= 0)
|
||||
to_chat(usr, "<span class='notice'>Not enough reagents to create these pills!</span>")
|
||||
to_chat(usr, span_notice("Not enough reagents to create these pills!"))
|
||||
return
|
||||
|
||||
var/obj/item/reagent_containers/pill/P = new(loc)
|
||||
@@ -334,7 +334,7 @@
|
||||
// var/is_medical_patch = chemical_safety_check(reagents)
|
||||
while(count--)
|
||||
if(reagents.total_volume <= 0)
|
||||
to_chat(usr, "<span class='notice'>Not enough reagents to create these patches!</span>")
|
||||
to_chat(usr, span_notice("Not enough reagents to create these patches!"))
|
||||
return
|
||||
|
||||
var/obj/item/reagent_containers/pill/patch/P = new(loc)
|
||||
@@ -361,7 +361,7 @@
|
||||
var/amount_per_bottle = CLAMP(reagents.total_volume / count, 0, MAX_UNITS_PER_BOTTLE)
|
||||
while(count--)
|
||||
if(reagents.total_volume <= 0)
|
||||
to_chat(usr, "<span class='notice'>Not enough reagents to create these bottles!</span>")
|
||||
to_chat(usr, span_notice("Not enough reagents to create these bottles!"))
|
||||
return
|
||||
var/obj/item/reagent_containers/glass/bottle/P = new(loc)
|
||||
P.name = "[answer] bottle"
|
||||
@@ -417,7 +417,7 @@
|
||||
var/datum/reagent/R = reagent_list[idx]
|
||||
|
||||
printing = TRUE
|
||||
visible_message("<span class='notice'>[src] rattles and prints out a sheet of paper.</span>")
|
||||
visible_message(span_notice("[src] rattles and prints out a sheet of paper."))
|
||||
// playsound(loc, 'sound/goonstation/machines/printer_dotmatrix.ogg', 50, 1)
|
||||
|
||||
var/obj/item/paper/P = new /obj/item/paper(loc)
|
||||
|
||||
@@ -41,13 +41,13 @@
|
||||
/obj/item/reagent_containers/chem_disp_cartridge/proc/setLabel(L, mob/user = null)
|
||||
if(L)
|
||||
if(user)
|
||||
to_chat(user, "<span class='notice'>You set the label on \the [src] to '[L]'.</span>")
|
||||
to_chat(user, span_notice("You set the label on \the [src] to '[L]'."))
|
||||
|
||||
label = L
|
||||
name = "[initial(name)] - '[L]'"
|
||||
else
|
||||
if(user)
|
||||
to_chat(user, "<span class='notice'>You clear the label on \the [src].</span>")
|
||||
to_chat(user, span_notice("You clear the label on \the [src]."))
|
||||
label = ""
|
||||
name = initial(name)
|
||||
|
||||
@@ -68,28 +68,28 @@
|
||||
target.add_fingerprint(user)
|
||||
|
||||
if(!target.reagents.total_volume && target.reagents)
|
||||
to_chat(user, "<span class='warning'>\The [target] is empty.</span>")
|
||||
to_chat(user, span_warning("\The [target] is empty."))
|
||||
return
|
||||
|
||||
if(reagents.total_volume >= reagents.maximum_volume)
|
||||
to_chat(user, "<span class='warning'>\The [src] is full.</span>")
|
||||
to_chat(user, span_warning("\The [src] is full."))
|
||||
return
|
||||
|
||||
var/trans = target.reagents.trans_to(src, target:amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You fill \the [src] with [trans] units of the contents of \the [target].</span>")
|
||||
to_chat(user, span_notice("You fill \the [src] with [trans] units of the contents of \the [target]."))
|
||||
|
||||
else if(target.is_open_container() && target.reagents) //Something like a glass. Player probably wants to transfer TO it.
|
||||
|
||||
if(!reagents.total_volume)
|
||||
to_chat(user, "<span class='warning'>\The [src] is empty.</span>")
|
||||
to_chat(user, span_warning("\The [src] is empty."))
|
||||
return
|
||||
|
||||
if(target.reagents.total_volume >= target.reagents.maximum_volume)
|
||||
to_chat(user, "<span class='warning'>\The [target] is full.</span>")
|
||||
to_chat(user, span_warning("\The [target] is full."))
|
||||
return
|
||||
|
||||
var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You transfer [trans] units of the solution to \the [target].</span>")
|
||||
to_chat(user, span_notice("You transfer [trans] units of the solution to \the [target]."))
|
||||
|
||||
else
|
||||
return ..()
|
||||
|
||||
@@ -63,27 +63,27 @@
|
||||
/obj/machinery/chemical_dispenser/proc/add_cartridge(obj/item/reagent_containers/chem_disp_cartridge/C, mob/user)
|
||||
if(!istype(C))
|
||||
if(user)
|
||||
to_chat(user, "<span class='warning'>\The [C] will not fit in \the [src]!</span>")
|
||||
to_chat(user, span_warning("\The [C] will not fit in \the [src]!"))
|
||||
return
|
||||
|
||||
if(cartridges.len >= max_catriges)
|
||||
if(user)
|
||||
to_chat(user, "<span class='warning'>\The [src] does not have any slots open for \the [C] to fit into!</span>")
|
||||
to_chat(user, span_warning("\The [src] does not have any slots open for \the [C] to fit into!"))
|
||||
return
|
||||
|
||||
if(!C.label)
|
||||
if(user)
|
||||
to_chat(user, "<span class='warning'>\The [C] does not have a label!</span>")
|
||||
to_chat(user, span_warning("\The [C] does not have a label!"))
|
||||
return
|
||||
|
||||
if(cartridges[C.label])
|
||||
if(user)
|
||||
to_chat(user, "<span class='warning'>\The [src] already contains a cartridge with that label!</span>")
|
||||
to_chat(user, span_warning("\The [src] already contains a cartridge with that label!"))
|
||||
return
|
||||
|
||||
if(user)
|
||||
user.drop_from_inventory(C)
|
||||
to_chat(user, "<span class='notice'>You add \the [C] to \the [src].</span>")
|
||||
to_chat(user, span_notice("You add \the [C] to \the [src]."))
|
||||
|
||||
C.loc = src
|
||||
cartridges[C.label] = C
|
||||
@@ -98,15 +98,15 @@
|
||||
/obj/machinery/chemical_dispenser/attackby(obj/item/W, mob/user)
|
||||
if(W.has_tool_quality(TOOL_WRENCH))
|
||||
playsound(src, W.usesound, 50, 1)
|
||||
to_chat(user, "<span class='notice'>You begin to [anchored ? "un" : ""]fasten \the [src].</span>")
|
||||
to_chat(user, span_notice("You begin to [anchored ? "un" : ""]fasten \the [src]."))
|
||||
if (do_after(user, 20 * W.toolspeed))
|
||||
user.visible_message(
|
||||
"<span class='notice'>\The [user] [anchored ? "un" : ""]fastens \the [src].</span>",
|
||||
"<span class='notice'>You have [anchored ? "un" : ""]fastened \the [src].</span>",
|
||||
span_notice("\The [user] [anchored ? "un" : ""]fastens \the [src]."),
|
||||
span_notice("You have [anchored ? "un" : ""]fastened \the [src]."),
|
||||
"You hear a ratchet.")
|
||||
anchored = !anchored
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You decide not to [anchored ? "un" : ""]fasten \the [src].</span>")
|
||||
to_chat(user, span_notice("You decide not to [anchored ? "un" : ""]fasten \the [src]."))
|
||||
|
||||
else if(istype(W, /obj/item/reagent_containers/chem_disp_cartridge))
|
||||
add_cartridge(W, user)
|
||||
@@ -116,29 +116,29 @@
|
||||
if(!label) return
|
||||
var/obj/item/reagent_containers/chem_disp_cartridge/C = remove_cartridge(label)
|
||||
if(C)
|
||||
to_chat(user, "<span class='notice'>You remove \the [C] from \the [src].</span>")
|
||||
to_chat(user, span_notice("You remove \the [C] from \the [src]."))
|
||||
C.loc = loc
|
||||
playsound(src, W.usesound, 50, 1)
|
||||
|
||||
else if(istype(W, /obj/item/reagent_containers/glass) || istype(W, /obj/item/reagent_containers/food))
|
||||
if(container)
|
||||
to_chat(user, "<span class='warning'>There is already \a [container] on \the [src]!</span>")
|
||||
to_chat(user, span_warning("There is already \a [container] on \the [src]!"))
|
||||
return
|
||||
|
||||
var/obj/item/reagent_containers/RC = W
|
||||
|
||||
if(!accept_drinking && istype(RC,/obj/item/reagent_containers/food))
|
||||
to_chat(user, "<span class='warning'>This machine only accepts beakers!</span>")
|
||||
to_chat(user, span_warning("This machine only accepts beakers!"))
|
||||
return
|
||||
|
||||
if(!RC.is_open_container())
|
||||
to_chat(user, "<span class='warning'>You don't see how \the [src] could dispense reagents into \the [RC].</span>")
|
||||
to_chat(user, span_warning("You don't see how \the [src] could dispense reagents into \the [RC]."))
|
||||
return
|
||||
|
||||
container = RC
|
||||
user.drop_from_inventory(RC)
|
||||
RC.loc = src
|
||||
to_chat(user, "<span class='notice'>You set \the [RC] on \the [src].</span>")
|
||||
to_chat(user, span_notice("You set \the [RC] on \the [src]."))
|
||||
else
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -43,12 +43,12 @@
|
||||
/obj/structure/reagent_dispensers/examine(mob/user)
|
||||
. = ..()
|
||||
if(get_dist(user, src) <= 2)
|
||||
. += "<span class='notice'>It contains:</span>"
|
||||
. += span_notice("It contains:")
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
for(var/datum/reagent/R in reagents.reagent_list)
|
||||
. += "<span class='notice'>[R.volume] units of [R.name]</span>"
|
||||
. += span_notice("[R.volume] units of [R.name]")
|
||||
else
|
||||
. += "<span class='notice'>Nothing.</span>"
|
||||
. += span_notice("Nothing.")
|
||||
|
||||
/obj/structure/reagent_dispensers/verb/set_APTFT() //set amount_per_transfer_from_this
|
||||
set name = "Set transfer amount"
|
||||
@@ -187,15 +187,15 @@
|
||||
. = ..()
|
||||
if(get_dist(user, src) <= 2)
|
||||
if(modded)
|
||||
. += "<span class='warning'>Fuel faucet is wrenched open, leaking the fuel!</span>"
|
||||
. += span_warning("Fuel faucet is wrenched open, leaking the fuel!")
|
||||
if(rig)
|
||||
. += "<span class='notice'>There is some kind of device rigged to the tank.</span>"
|
||||
. += span_notice("There is some kind of device rigged to the tank.")
|
||||
|
||||
/obj/structure/reagent_dispensers/fueltank/attack_hand()
|
||||
if (rig)
|
||||
usr.visible_message("[usr] begins to detach [rig] from \the [src].", "You begin to detach [rig] from \the [src]")
|
||||
if(do_after(usr, 20))
|
||||
usr.visible_message("<span class='notice'>[usr] detaches [rig] from \the [src].</span>", "<span class='notice'>You detach [rig] from \the [src]</span>")
|
||||
usr.visible_message(span_notice("[usr] detaches [rig] from \the [src]."), span_notice("You detach [rig] from \the [src]"))
|
||||
rig.loc = get_turf(usr)
|
||||
rig = null
|
||||
overlays = new/list()
|
||||
@@ -213,11 +213,11 @@
|
||||
leak_fuel(amount_per_transfer_from_this)
|
||||
if (istype(W,/obj/item/assembly_holder))
|
||||
if (rig)
|
||||
to_chat(user, "<span class='warning'>There is another device in the way.</span>")
|
||||
to_chat(user, span_warning("There is another device in the way."))
|
||||
return ..()
|
||||
user.visible_message("[user] begins rigging [W] to \the [src].", "You begin rigging [W] to \the [src]")
|
||||
if(do_after(user, 20))
|
||||
user.visible_message("<span class='notice'>[user] rigs [W] to \the [src].</span>", "<span class='notice'>You rig [W] to \the [src]</span>")
|
||||
user.visible_message(span_notice("[user] rigs [W] to \the [src]."), span_notice("You rig [W] to \the [src]"))
|
||||
|
||||
var/obj/item/assembly_holder/H = W
|
||||
if (istype(H.a_left,/obj/item/assembly/igniter) || istype(H.a_right,/obj/item/assembly/igniter))
|
||||
@@ -346,7 +346,7 @@
|
||||
/obj/structure/reagent_dispensers/water_cooler/examine(mob/user)
|
||||
. = ..()
|
||||
if(cupholder)
|
||||
. += "<span class='notice'>There are [cups] cups in the cup dispenser.</span>"
|
||||
. += span_notice("There are [cups] cups in the cup dispenser.")
|
||||
|
||||
/obj/structure/reagent_dispensers/water_cooler/verb/rotate_clockwise()
|
||||
set name = "Rotate Cooler Clockwise"
|
||||
@@ -378,7 +378,7 @@
|
||||
if(bottle)
|
||||
playsound(src, I.usesound, 50, 1)
|
||||
if(do_after(user, 20) && bottle)
|
||||
to_chat(user, "<span class='notice'>You unfasten the jug.</span>")
|
||||
to_chat(user, span_notice("You unfasten the jug."))
|
||||
var/obj/item/reagent_containers/glass/cooler_bottle/G = new /obj/item/reagent_containers/glass/cooler_bottle( src.loc )
|
||||
for(var/datum/reagent/R in reagents.reagent_list)
|
||||
var/total_reagent = reagents.get_reagent_amount(R.id)
|
||||
@@ -393,7 +393,7 @@
|
||||
user.visible_message("\The [user] begins securing \the [src] to the floor.", "You start securing \the [src] to the floor.")
|
||||
if(do_after(user, 20 * I.toolspeed, src))
|
||||
if(!src) return
|
||||
to_chat(user, "<span class='notice'>You [anchored? "un" : ""]secured \the [src]!</span>")
|
||||
to_chat(user, span_notice("You [anchored? "un" : ""]secured \the [src]!"))
|
||||
anchored = !anchored
|
||||
playsound(src, I.usesound, 50, 1)
|
||||
return
|
||||
@@ -401,7 +401,7 @@
|
||||
if(I.has_tool_quality(TOOL_SCREWDRIVER))
|
||||
if(cupholder)
|
||||
playsound(src, I.usesound, 50, 1)
|
||||
to_chat(user, "<span class='notice'>You take the cup dispenser off.</span>")
|
||||
to_chat(user, span_notice("You take the cup dispenser off."))
|
||||
new /obj/item/stack/material/plastic( src.loc )
|
||||
if(cups)
|
||||
for(var/i = 0 to cups)
|
||||
@@ -412,9 +412,9 @@
|
||||
return
|
||||
if(!bottle && !cupholder)
|
||||
playsound(src, I.usesound, 50, 1)
|
||||
to_chat(user, "<span class='notice'>You start taking the water-cooler apart.</span>")
|
||||
to_chat(user, span_notice("You start taking the water-cooler apart."))
|
||||
if(do_after(user, 20 * I.toolspeed) && !bottle && !cupholder)
|
||||
to_chat(user, "<span class='notice'>You take the water-cooler apart.</span>")
|
||||
to_chat(user, span_notice("You take the water-cooler apart."))
|
||||
new /obj/item/stack/material/plastic( src.loc, 4 )
|
||||
qdel(src)
|
||||
return
|
||||
@@ -424,19 +424,19 @@
|
||||
if(!bottle)
|
||||
if(anchored)
|
||||
var/obj/item/reagent_containers/glass/cooler_bottle/G = I
|
||||
to_chat(user, "<span class='notice'>You start to screw the bottle onto the water-cooler.</span>")
|
||||
to_chat(user, span_notice("You start to screw the bottle onto the water-cooler."))
|
||||
if(do_after(user, 20) && !bottle && anchored)
|
||||
bottle = 1
|
||||
update_icon()
|
||||
to_chat(user, "<span class='notice'>You screw the bottle onto the water-cooler!</span>")
|
||||
to_chat(user, span_notice("You screw the bottle onto the water-cooler!"))
|
||||
for(var/datum/reagent/R in G.reagents.reagent_list)
|
||||
var/total_reagent = G.reagents.get_reagent_amount(R.id)
|
||||
reagents.add_reagent(R.id, total_reagent)
|
||||
qdel(G)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You need to wrench down the cooler first.</span>")
|
||||
to_chat(user, span_warning("You need to wrench down the cooler first."))
|
||||
else
|
||||
to_chat(user, "<span class='warning'>There is already a bottle there!</span>")
|
||||
to_chat(user, span_warning("There is already a bottle there!"))
|
||||
return 1
|
||||
|
||||
if(istype(I, /obj/item/stack/material/plastic))
|
||||
@@ -444,17 +444,17 @@
|
||||
if(anchored)
|
||||
var/obj/item/stack/material/plastic/P = I
|
||||
src.add_fingerprint(user)
|
||||
to_chat(user, "<span class='notice'>You start to attach a cup dispenser onto the water-cooler.</span>")
|
||||
to_chat(user, span_notice("You start to attach a cup dispenser onto the water-cooler."))
|
||||
playsound(src, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
if(do_after(user, 20) && !cupholder && anchored)
|
||||
if (P.use(1))
|
||||
to_chat(user, "<span class='notice'>You attach a cup dispenser onto the water-cooler.</span>")
|
||||
to_chat(user, span_notice("You attach a cup dispenser onto the water-cooler."))
|
||||
cupholder = 1
|
||||
update_icon()
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You need to wrench down the cooler first.</span>")
|
||||
to_chat(user, span_warning("You need to wrench down the cooler first."))
|
||||
else
|
||||
to_chat(user, "<span class='warning'>There is already a cup dispenser there!</span>")
|
||||
to_chat(user, span_warning("There is already a cup dispenser there!"))
|
||||
return
|
||||
|
||||
/obj/structure/reagent_dispensers/water_cooler/attack_hand(mob/user)
|
||||
|
||||
@@ -104,29 +104,29 @@
|
||||
/obj/machinery/portable_atmospherics/powered/reagent_distillery/examine(mob/user)
|
||||
. = ..()
|
||||
if(get_dist(user, src) <= 2)
|
||||
. += "<span class='notice'>\The [src] is powered [on ? "on" : "off"].</span>"
|
||||
. += span_notice("\The [src] is powered [on ? "on" : "off"].")
|
||||
|
||||
. += "<span class='notice'>\The [src]'s gauges read:</span>"
|
||||
. += span_notice("\The [src]'s gauges read:")
|
||||
if(!use_atmos)
|
||||
. += "<span class='notice'>- Target Temperature:</span> <span class='warning'>[target_temp]</span>"
|
||||
. += "<span class='notice'>- Temperature:</span> <span class='warning'>[current_temp]</span>"
|
||||
. += span_notice("- Target Temperature:</span> <span class='warning'>[target_temp]")
|
||||
. += span_notice("- Temperature:</span> <span class='warning'>[current_temp]")
|
||||
|
||||
if(InputBeaker)
|
||||
if(InputBeaker.reagents.reagent_list.len)
|
||||
. += "<span class='notice'>\The [src]'s input beaker holds [InputBeaker.reagents.total_volume] units of liquid.</span>"
|
||||
. += span_notice("\The [src]'s input beaker holds [InputBeaker.reagents.total_volume] units of liquid.")
|
||||
else
|
||||
. += "<span class='notice'>\The [src]'s input beaker is empty!</span>"
|
||||
. += span_notice("\The [src]'s input beaker is empty!")
|
||||
|
||||
if(reagents.reagent_list.len)
|
||||
. += "<span class='notice'>\The [src]'s internal buffer holds [reagents.total_volume] units of liquid.</span>"
|
||||
. += span_notice("\The [src]'s internal buffer holds [reagents.total_volume] units of liquid.")
|
||||
else
|
||||
. += "<span class='notice'>\The [src]'s internal buffer is empty!</span>"
|
||||
. += span_notice("\The [src]'s internal buffer is empty!")
|
||||
|
||||
if(OutputBeaker)
|
||||
if(OutputBeaker.reagents.reagent_list.len)
|
||||
. += "<span class='notice'>\The [src]'s output beaker holds [OutputBeaker.reagents.total_volume] units of liquid.</span>"
|
||||
. += span_notice("\The [src]'s output beaker holds [OutputBeaker.reagents.total_volume] units of liquid.")
|
||||
else
|
||||
. += "<span class='notice'>\The [src]'s output beaker is empty!</span>"
|
||||
. += span_notice("\The [src]'s output beaker is empty!")
|
||||
|
||||
/obj/machinery/portable_atmospherics/powered/reagent_distillery/verb/toggle_power(mob/user = usr)
|
||||
set name = "Toggle Distillery Heating"
|
||||
@@ -135,22 +135,22 @@
|
||||
|
||||
if(powered())
|
||||
on = !on
|
||||
to_chat(user, "<span class='notice'>You turn \the [src] [on ? "on" : "off"].</span>")
|
||||
to_chat(user, span_notice("You turn \the [src] [on ? "on" : "off"]."))
|
||||
else
|
||||
to_chat(user, "<span class='notice'> Nothing happens.</span>")
|
||||
to_chat(user, span_notice(" Nothing happens."))
|
||||
|
||||
/obj/machinery/portable_atmospherics/powered/reagent_distillery/verb/toggle_mixing(mob/user = usr)
|
||||
set name = "Start Distillery Mixing"
|
||||
set category = "Object"
|
||||
set src in view(1)
|
||||
|
||||
to_chat(user, "<span class='notice'>You press \the [src]'s chamber agitator button.</span>")
|
||||
to_chat(user, span_notice("You press \the [src]'s chamber agitator button."))
|
||||
if(on)
|
||||
visible_message("<b>\The [src]</b> rattles to life.")
|
||||
reagents.handle_reactions()
|
||||
else
|
||||
spawn(1 SECOND)
|
||||
to_chat(user, "<span class='notice'>Nothing happens..</span>")
|
||||
to_chat(user, span_notice("Nothing happens.."))
|
||||
|
||||
/obj/machinery/portable_atmospherics/powered/reagent_distillery/attack_hand(mob/user)
|
||||
var/list/options = list()
|
||||
@@ -185,10 +185,10 @@
|
||||
toggle_power(user)
|
||||
|
||||
if("inspect gauges")
|
||||
to_chat(user, "<span class='notice'>\The [src]'s gauges read:</span>")
|
||||
to_chat(user, span_notice("\The [src]'s gauges read:"))
|
||||
if(!use_atmos)
|
||||
to_chat(user, "<span class='notice'>- Target Temperature:</span> <span class='warning'>[target_temp]</span>")
|
||||
to_chat(user, "<span class='notice'>- Temperature:</span> <span class='warning'>[current_temp]</span>")
|
||||
to_chat(user, span_notice("- Target Temperature:</span> <span class='warning'>[target_temp]"))
|
||||
to_chat(user, span_notice("- Temperature:</span> <span class='warning'>[current_temp]"))
|
||||
|
||||
if("pulse agitator")
|
||||
toggle_mixing(user)
|
||||
@@ -321,7 +321,7 @@
|
||||
else if(connected_port && avg_pressure > 1000)
|
||||
current_temp = round((current_temp + avg_temp) / 2)
|
||||
else if(!run_pump)
|
||||
visible_message("<span class='notice'>\The [src]'s motors wind down.</span>")
|
||||
visible_message(span_notice("\The [src]'s motors wind down."))
|
||||
on = FALSE
|
||||
|
||||
if(InputBeaker && reagents.total_volume < reagents.maximum_volume)
|
||||
|
||||
@@ -45,25 +45,25 @@
|
||||
/obj/machinery/reagentgrinder/examine(mob/user)
|
||||
. = ..()
|
||||
if(!in_range(user, src) && !issilicon(user) && !isobserver(user))
|
||||
. += "<span class='warning'>You're too far away to examine [src]'s contents and display!</span>"
|
||||
. += span_warning("You're too far away to examine [src]'s contents and display!")
|
||||
return
|
||||
|
||||
if(inuse)
|
||||
. += "<span class='warning'>\The [src] is operating.</span>"
|
||||
. += span_warning("\The [src] is operating.")
|
||||
return
|
||||
|
||||
if(beaker || length(holdingitems))
|
||||
. += "<span class='notice'>\The [src] contains:</span>"
|
||||
. += span_notice("\The [src] contains:")
|
||||
if(beaker)
|
||||
. += "<span class='notice'>- \A [beaker].</span>"
|
||||
. += span_notice("- \A [beaker].")
|
||||
for(var/obj/item/O as anything in holdingitems)
|
||||
. += "<span class='notice'>- \A [O.name].</span>"
|
||||
. += span_notice("- \A [O.name].")
|
||||
|
||||
if(!(stat & (NOPOWER|BROKEN)))
|
||||
. += "<span class='notice'>The status display reads:</span>\n"
|
||||
if(beaker)
|
||||
for(var/datum/reagent/R in beaker.reagents.reagent_list)
|
||||
. += "<span class='notice'>- [R.volume] units of [R.name].</span>"
|
||||
. += span_notice("- [R.volume] units of [R.name].")
|
||||
|
||||
/obj/machinery/reagentgrinder/update_icon()
|
||||
icon_state = "juicer"+num2text(!isnull(beaker))
|
||||
@@ -265,4 +265,4 @@
|
||||
if(new_beaker)
|
||||
beaker = new_beaker
|
||||
update_icon()
|
||||
return TRUE
|
||||
return TRUE
|
||||
|
||||
@@ -126,13 +126,13 @@
|
||||
/obj/machinery/injector_maker/examine(mob/user)
|
||||
. = ..()
|
||||
if(!in_range(user, src) && !issilicon(user) && !isobserver(user))
|
||||
. += "<span class='warning'>You're too far away to examine [src]'s contents and display!</span>"
|
||||
. += span_warning("You're too far away to examine [src]'s contents and display!")
|
||||
return
|
||||
|
||||
if(beaker)
|
||||
. += "<span class='notice'>\The [src] contains:</span>"
|
||||
. += span_notice("\The [src] contains:")
|
||||
if(beaker)
|
||||
. += "<span class='notice'>- \A [beaker].</span>"
|
||||
. += span_notice("- \A [beaker].")
|
||||
|
||||
. += "<span class ='notice'>\The [src] contains [src.count_small_injector] small injectors and [src.count_large_injector] large injectors.\n </span>"
|
||||
. += "<span class ='notice'> It can hold [capacity_small_injector] small and [capacity_large_injector] large injectors respectively.\n </span>"
|
||||
@@ -142,7 +142,7 @@
|
||||
. += "<span class='notice'>The status display reads the following reagents:</span>\n"
|
||||
if(beaker)
|
||||
for(var/datum/reagent/R in beaker.reagents.reagent_list)
|
||||
. += "<span class='notice'>- [R.volume] units of [R.name].</span>"
|
||||
. += span_notice("- [R.volume] units of [R.name].")
|
||||
|
||||
/obj/machinery/injector_maker/attack_hand(mob/user as mob)
|
||||
interact(user)
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
if(Output.get_pairing())
|
||||
reagents.trans_to_holder(Output.reagents, Output.reagents.maximum_volume)
|
||||
if(prob(5))
|
||||
visible_message("<span class='notice'>\The [src] gurgles as it pumps fluid.</span>")
|
||||
visible_message(span_notice("\The [src] gurgles as it pumps fluid."))
|
||||
|
||||
|
||||
// Sets the power state, if possible.
|
||||
@@ -124,7 +124,7 @@
|
||||
|
||||
/obj/machinery/pump/attack_ai(mob/user)
|
||||
if(!set_state(!on))
|
||||
to_chat(user, "<span class='notice'>You try to toggle \the [src] but it does not respond.</span>")
|
||||
to_chat(user, span_notice("You try to toggle \the [src] but it does not respond."))
|
||||
|
||||
/obj/machinery/pump/attack_hand(mob/user)
|
||||
if(open && istype(cell))
|
||||
@@ -133,11 +133,11 @@
|
||||
cell.update_icon()
|
||||
cell = null
|
||||
set_state(FALSE)
|
||||
to_chat(user, "<span class='notice'>You remove the power cell.</span>")
|
||||
to_chat(user, span_notice("You remove the power cell."))
|
||||
return
|
||||
|
||||
if(!set_state(!on))
|
||||
to_chat(user, "<span class='notice'>You try to toggle \the [src] but it does not respond.</span>")
|
||||
to_chat(user, span_notice("You try to toggle \the [src] but it does not respond."))
|
||||
|
||||
/obj/machinery/pump/attackby(obj/item/W, mob/user)
|
||||
. = TRUE
|
||||
@@ -147,23 +147,23 @@
|
||||
|
||||
else if(W.has_tool_quality(TOOL_CROWBAR) && unlocked)
|
||||
to_chat(user, open ? \
|
||||
"<span class='notice'>You crowbar the battery panel in place.</span>" : \
|
||||
"<span class='notice'>You remove the battery panel.</span>" \
|
||||
span_notice("You crowbar the battery panel in place.") : \
|
||||
span_notice("You remove the battery panel.") \
|
||||
)
|
||||
open = !open
|
||||
|
||||
else if(W.has_tool_quality(TOOL_WRENCH))
|
||||
if(on)
|
||||
to_chat(user, "<span class='notice'>\The [src] is active. Turn it off before trying to move it!</span>")
|
||||
to_chat(user, span_notice("\The [src] is active. Turn it off before trying to move it!"))
|
||||
return FALSE
|
||||
default_unfasten_wrench(user, W, 2 SECONDS)
|
||||
|
||||
else if(istype(W, /obj/item/cell) && open)
|
||||
if(istype(cell))
|
||||
to_chat(user, "<span class='notice'>There is a power cell already installed.</span>")
|
||||
to_chat(user, span_notice("There is a power cell already installed."))
|
||||
return FALSE
|
||||
user.drop_from_inventory(W, src)
|
||||
to_chat(user, "<span class='notice'>You insert the power cell.</span>")
|
||||
to_chat(user, span_notice("You insert the power cell."))
|
||||
|
||||
else
|
||||
. = ..()
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
var/list/seen = viewers(4, T)
|
||||
for(var/mob/M in seen)
|
||||
if(M.client)
|
||||
M.show_message("<span class='notice'>[icon2html(container,M.client)] [mix_message]</span>", 1)
|
||||
M.show_message(span_notice("[icon2html(container,M.client)] [mix_message]"), 1)
|
||||
playsound(T, reaction_sound, 80, 1)
|
||||
|
||||
//obtains any special data that will be provided to the reaction products
|
||||
|
||||
@@ -846,7 +846,7 @@
|
||||
var/location = get_turf(holder.my_atom)
|
||||
|
||||
for(var/mob/M in viewers(5, location))
|
||||
to_chat(M, "<span class='warning'>The solution spews out foam!</span>")
|
||||
to_chat(M, span_warning("The solution spews out foam!"))
|
||||
|
||||
var/datum/effect/effect/system/foam_spread/s = new()
|
||||
s.set_up(created_volume, location, holder, 0)
|
||||
@@ -868,7 +868,7 @@
|
||||
var/location = get_turf(holder.my_atom)
|
||||
|
||||
for(var/mob/M in viewers(5, location))
|
||||
to_chat(M, "<span class='warning'>The solution spews out a metalic foam!</span>")
|
||||
to_chat(M, span_warning("The solution spews out a metalic foam!"))
|
||||
|
||||
var/datum/effect/effect/system/foam_spread/s = new()
|
||||
s.set_up(created_volume, location, holder, 1)
|
||||
@@ -886,7 +886,7 @@
|
||||
var/location = get_turf(holder.my_atom)
|
||||
|
||||
for(var/mob/M in viewers(5, location))
|
||||
to_chat(M, "<span class='warning'>The solution spews out a metalic foam!</span>")
|
||||
to_chat(M, span_warning("The solution spews out a metalic foam!"))
|
||||
|
||||
var/datum/effect/effect/system/foam_spread/s = new()
|
||||
s.set_up(created_volume, location, holder, 2)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
if(!possible_transfer_amounts)
|
||||
src.verbs -= /obj/item/reagent_containers/verb/set_APTFT
|
||||
create_reagents(volume)
|
||||
|
||||
|
||||
if(starts_with)
|
||||
var/total_so_far = 0
|
||||
for(var/string in starts_with)
|
||||
@@ -49,15 +49,15 @@
|
||||
return 0
|
||||
|
||||
if(!target.reagents || !target.reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>[target] is empty.</span>")
|
||||
to_chat(user, span_notice("[target] is empty."))
|
||||
return 1
|
||||
|
||||
if(reagents && !reagents.get_free_space())
|
||||
to_chat(user, "<span class='notice'>[src] is full.</span>")
|
||||
to_chat(user, span_notice("[src] is full."))
|
||||
return 1
|
||||
|
||||
var/trans = target.reagents.trans_to_obj(src, target:amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You fill [src] with [trans] units of the contents of [target].</span>")
|
||||
to_chat(user, span_notice("You fill [src] with [trans] units of the contents of [target]."))
|
||||
return 1
|
||||
|
||||
/obj/item/reagent_containers/proc/standard_splash_mob(var/mob/user, var/mob/target) // This goes into afterattack
|
||||
@@ -65,27 +65,27 @@
|
||||
return
|
||||
|
||||
if(!reagents || !reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>[src] is empty.</span>")
|
||||
to_chat(user, span_notice("[src] is empty."))
|
||||
return 1
|
||||
|
||||
if(target.reagents && !target.reagents.get_free_space())
|
||||
to_chat(user, "<span class='notice'>[target] is full.</span>")
|
||||
to_chat(user, span_notice("[target] is full."))
|
||||
return 1
|
||||
|
||||
var/contained = reagentlist()
|
||||
add_attack_logs(user,target,"Splashed with [src.name] containing [contained]")
|
||||
user.visible_message("<span class='danger'>[target] has been splashed with something by [user]!</span>", "<span class = 'notice'>You splash the solution onto [target].</span>")
|
||||
user.visible_message(span_danger("[target] has been splashed with something by [user]!"), "<span class = 'notice'>You splash the solution onto [target].</span>")
|
||||
reagents.splash(target, reagents.total_volume)
|
||||
return 1
|
||||
|
||||
/obj/item/reagent_containers/proc/self_feed_message(var/mob/user)
|
||||
to_chat(user, "<span class='notice'>You eat \the [src]</span>")
|
||||
to_chat(user, span_notice("You eat \the [src]"))
|
||||
|
||||
/obj/item/reagent_containers/proc/other_feed_message_start(var/mob/user, var/mob/target)
|
||||
user.visible_message("<span class='warning'>[user] is trying to feed [target] \the [src]!</span>")
|
||||
user.visible_message(span_warning("[user] is trying to feed [target] \the [src]!"))
|
||||
|
||||
/obj/item/reagent_containers/proc/other_feed_message_finish(var/mob/user, var/mob/target)
|
||||
user.visible_message("<span class='warning'>[user] has fed [target] \the [src]!</span>")
|
||||
user.visible_message(span_warning("[user] has fed [target] \the [src]!"))
|
||||
|
||||
/obj/item/reagent_containers/proc/feed_sound(var/mob/user)
|
||||
return
|
||||
@@ -95,7 +95,7 @@
|
||||
return FALSE
|
||||
|
||||
if(!reagents || !reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>\The [src] is empty.</span>")
|
||||
to_chat(user, span_notice("\The [src] is empty."))
|
||||
return TRUE
|
||||
|
||||
if(ishuman(target))
|
||||
@@ -105,16 +105,16 @@
|
||||
return FALSE
|
||||
var/obj/item/blocked = H.check_mouth_coverage()
|
||||
if(blocked)
|
||||
to_chat(user, "<span class='warning'>\The [blocked] is in the way!</span>")
|
||||
to_chat(user, span_warning("\The [blocked] is in the way!"))
|
||||
return FALSE
|
||||
|
||||
user.setClickCooldown(user.get_attack_speed(src)) //puts a limit on how fast people can eat/drink things
|
||||
if(user == target)
|
||||
if(user == target)
|
||||
self_feed_message(user)
|
||||
reagents.trans_to_mob(user, issmall(user) ? CEILING(amount_per_transfer_from_this/2, 1) : amount_per_transfer_from_this, CHEM_INGEST)
|
||||
feed_sound(user)
|
||||
return TRUE
|
||||
|
||||
|
||||
else
|
||||
other_feed_message_start(user, target)
|
||||
if(!do_mob(user, target))
|
||||
@@ -132,13 +132,13 @@
|
||||
return 0
|
||||
|
||||
if(!reagents || !reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>[src] is empty.</span>")
|
||||
to_chat(user, span_notice("[src] is empty."))
|
||||
return 1
|
||||
|
||||
if(!target.reagents.get_free_space())
|
||||
to_chat(user, "<span class='notice'>[target] is full.</span>")
|
||||
to_chat(user, span_notice("[target] is full."))
|
||||
return 1
|
||||
|
||||
var/trans = reagents.trans_to(target, amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You transfer [trans] units of the solution to [target].</span>")
|
||||
to_chat(user, span_notice("You transfer [trans] units of the solution to [target]."))
|
||||
return 1
|
||||
|
||||
@@ -58,13 +58,13 @@
|
||||
if(istype(W, /obj/item/pen) || istype(W, /obj/item/flashlight/pen))
|
||||
var/tmp_label = sanitizeSafe(tgui_input_text(user, "Enter a label for [name]", "Label", label_text, MAX_NAME_LEN), MAX_NAME_LEN)
|
||||
if(length(tmp_label) > 50)
|
||||
to_chat(user, "<span class='notice'>The label can be at most 50 characters long.</span>")
|
||||
to_chat(user, span_notice("The label can be at most 50 characters long."))
|
||||
else if(length(tmp_label) > 10)
|
||||
to_chat(user, "<span class='notice'>You set the label.</span>")
|
||||
to_chat(user, span_notice("You set the label."))
|
||||
label_text = tmp_label
|
||||
update_iv_label()
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You set the label to \"[tmp_label]\".</span>")
|
||||
to_chat(user, span_notice("You set the label to \"[tmp_label]\"."))
|
||||
label_text = tmp_label
|
||||
update_iv_label()
|
||||
|
||||
@@ -108,4 +108,4 @@
|
||||
name = "Empty BloodPack"
|
||||
desc = "Seems pretty useless... Maybe if there were a way to fill it?"
|
||||
icon_state = "empty"
|
||||
item_state = "bloodpack_empty"
|
||||
item_state = "bloodpack_empty"
|
||||
|
||||
@@ -5,17 +5,17 @@
|
||||
var/reagent_to_remove = reagents.get_master_reagent_id()
|
||||
switch(reagents.get_master_reagent_id())
|
||||
if("blood")
|
||||
user.show_message("<span class='warning'>You sink your fangs into \the [src] and suck the blood out of it!</span>")
|
||||
user.show_message(span_warning("You sink your fangs into \the [src] and suck the blood out of it!"))
|
||||
user.visible_message(span_red("[user] sinks their fangs into \the [src] and drains it!"))
|
||||
user.adjust_nutrition(remove_volume*5)
|
||||
reagents.remove_reagent(reagent_to_remove, remove_volume)
|
||||
update_icon()
|
||||
return
|
||||
else
|
||||
user.show_message("<span class='warning'>You take a look at \the [src] and notice that it is not filled with blood!</span>")
|
||||
user.show_message(span_warning("You take a look at \the [src] and notice that it is not filled with blood!"))
|
||||
return
|
||||
else
|
||||
user.show_message("<span class='warning'>You take a look at \the [src] and notice it has nothing in it!</span>")
|
||||
user.show_message(span_warning("You take a look at \the [src] and notice it has nothing in it!"))
|
||||
return
|
||||
else
|
||||
return
|
||||
|
||||
@@ -67,31 +67,31 @@
|
||||
return
|
||||
|
||||
if(!reagent_volumes[reagent_ids[mode]])
|
||||
to_chat(user, "<span class='warning'>The injector is empty.</span>")
|
||||
to_chat(user, span_warning("The injector is empty."))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(istype(H))
|
||||
var/obj/item/organ/external/affected = H.get_organ(user.zone_sel.selecting)
|
||||
if(!affected)
|
||||
to_chat(user, "<span class='danger'>\The [H] is missing that limb!</span>")
|
||||
to_chat(user, span_danger("\The [H] is missing that limb!"))
|
||||
return
|
||||
/* since synths have oil/coolant streams now, it only makes sense that you should be able to inject stuff. preserved for posterity.
|
||||
else if(affected.robotic >= ORGAN_ROBOT)
|
||||
to_chat(user, "<span class='danger'>You cannot inject a robotic limb.</span>")
|
||||
to_chat(user, span_danger("You cannot inject a robotic limb."))
|
||||
return
|
||||
*/
|
||||
|
||||
if(M.can_inject(user, 1, ignore_thickness = bypass_protection))
|
||||
to_chat(user, "<span class='notice'>You inject [M] with the injector.</span>")
|
||||
to_chat(M, "<span class='notice'>You feel a tiny prick!</span>")
|
||||
to_chat(user, span_notice("You inject [M] with the injector."))
|
||||
to_chat(M, span_notice("You feel a tiny prick!"))
|
||||
|
||||
if(M.reagents)
|
||||
var/t = min(amount_per_transfer_from_this, reagent_volumes[reagent_ids[mode]])
|
||||
M.reagents.add_reagent(reagent_ids[mode], t)
|
||||
reagent_volumes[reagent_ids[mode]] -= t
|
||||
add_attack_logs(user, M, "Borg injected with [reagent_ids[mode]]")
|
||||
to_chat(user, "<span class='notice'>[t] units injected. [reagent_volumes[reagent_ids[mode]]] units remaining.</span>")
|
||||
to_chat(user, span_notice("[t] units injected. [reagent_volumes[reagent_ids[mode]]] units remaining."))
|
||||
return
|
||||
|
||||
/obj/item/reagent_containers/borghypo/attack_self(mob/user as mob) //Change the mode
|
||||
@@ -115,13 +115,13 @@
|
||||
playsound(src, 'sound/effects/pop.ogg', 50, 0)
|
||||
mode = t
|
||||
var/datum/reagent/R = SSchemistry.chemical_reagents[reagent_ids[mode]]
|
||||
to_chat(usr, "<span class='notice'>Synthesizer is now producing '[R.name]'.</span>")
|
||||
to_chat(usr, span_notice("Synthesizer is now producing '[R.name]'."))
|
||||
|
||||
/obj/item/reagent_containers/borghypo/examine(mob/user)
|
||||
. = ..()
|
||||
if(get_dist(user, src) <= 2)
|
||||
var/datum/reagent/R = SSchemistry.chemical_reagents[reagent_ids[mode]]
|
||||
. += "<span class='notice'>It is currently producing [R.name] and has [reagent_volumes[reagent_ids[mode]]] out of [volume] units left.</span>"
|
||||
. += span_notice("It is currently producing [R.name] and has [reagent_volumes[reagent_ids[mode]]] out of [volume] units left.")
|
||||
|
||||
/obj/item/reagent_containers/borghypo/service
|
||||
name = "cyborg drink synthesizer"
|
||||
@@ -187,15 +187,15 @@
|
||||
return
|
||||
|
||||
if(!reagent_volumes[reagent_ids[mode]])
|
||||
to_chat(user, "<span class='notice'>[src] is out of this reagent, give it some time to refill.</span>")
|
||||
to_chat(user, span_notice("[src] is out of this reagent, give it some time to refill."))
|
||||
return
|
||||
|
||||
if(!target.reagents.get_free_space())
|
||||
to_chat(user, "<span class='notice'>[target] is full.</span>")
|
||||
to_chat(user, span_notice("[target] is full."))
|
||||
return
|
||||
|
||||
var/t = min(amount_per_transfer_from_this, reagent_volumes[reagent_ids[mode]])
|
||||
target.reagents.add_reagent(reagent_ids[mode], t)
|
||||
reagent_volumes[reagent_ids[mode]] -= t
|
||||
to_chat(user, "<span class='notice'>You transfer [t] units of the solution to [target].</span>")
|
||||
to_chat(user, span_notice("You transfer [t] units of the solution to [target]."))
|
||||
return
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
. = ..()
|
||||
if(get_dist(user, src) <= 2)
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
. += "<span class='notice'>It contains [reagents.total_volume] units of liquid.</span>"
|
||||
. += span_notice("It contains [reagents.total_volume] units of liquid.")
|
||||
else
|
||||
. += "<span class='notice'>It is empty.</span>"
|
||||
. += span_notice("It is empty.")
|
||||
|
||||
/obj/item/reagent_containers/dropper/afterattack(var/obj/target, var/mob/user, var/proximity)
|
||||
if(!target.reagents || !proximity) return
|
||||
@@ -28,11 +28,11 @@
|
||||
if(reagents.total_volume)
|
||||
|
||||
if(!target.reagents.get_free_space())
|
||||
to_chat(user, "<span class='notice'>[target] is full.</span>")
|
||||
to_chat(user, span_notice("[target] is full."))
|
||||
return
|
||||
|
||||
if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/reagent_containers/food) && !istype(target, /obj/item/clothing/mask/smokable/cigarette)) //You can inject humans and food but you cant remove the shit.
|
||||
to_chat(user, "<span class='notice'>You cannot directly fill this object.</span>")
|
||||
to_chat(user, span_notice("You cannot directly fill this object."))
|
||||
return
|
||||
|
||||
var/trans = 0
|
||||
@@ -40,7 +40,7 @@
|
||||
if(ismob(target))
|
||||
|
||||
var/time = 20 //2/3rds the time of a syringe
|
||||
user.visible_message("<span class='warning'>[user] is trying to squirt something into [target]'s eyes!</span>")
|
||||
user.visible_message(span_warning("[user] is trying to squirt something into [target]'s eyes!"))
|
||||
|
||||
if(!do_mob(user, target, time))
|
||||
return
|
||||
@@ -61,7 +61,7 @@
|
||||
|
||||
if(safe_thing)
|
||||
trans = reagents.splash(safe_thing, min(amount_per_transfer_from_this, reagents.total_volume), max_spill=30)
|
||||
user.visible_message("<span class='warning'>[user] tries to squirt something into [target]'s eyes, but fails!</span>", "<span class='notice'>You transfer [trans] units of the solution.</span>")
|
||||
user.visible_message(span_warning("[user] tries to squirt something into [target]'s eyes, but fails!"), span_notice("You transfer [trans] units of the solution."))
|
||||
return
|
||||
|
||||
var/contained = reagentlist()
|
||||
@@ -69,27 +69,27 @@
|
||||
|
||||
trans += reagents.trans_to_mob(target, min(amount_per_transfer_from_this, reagents.total_volume)/2, CHEM_INGEST) //Half injected, half ingested
|
||||
trans += reagents.trans_to_mob(target, min(amount_per_transfer_from_this, reagents.total_volume), CHEM_BLOOD) //I guess it gets into the bloodstream through the eyes or something
|
||||
user.visible_message("<span class='warning'>[user] squirts something into [target]'s eyes!</span>", "<span class='notice'>You transfer [trans] units of the solution.</span>")
|
||||
user.visible_message(span_warning("[user] squirts something into [target]'s eyes!"), span_notice("You transfer [trans] units of the solution."))
|
||||
|
||||
return
|
||||
|
||||
else
|
||||
trans = reagents.trans_to_obj(target, amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You transfer [trans] units of the solution.</span>")
|
||||
to_chat(user, span_notice("You transfer [trans] units of the solution."))
|
||||
|
||||
else // Taking from something
|
||||
|
||||
if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers))
|
||||
to_chat(user, "<span class='notice'>You cannot directly remove reagents from [target].</span>")
|
||||
to_chat(user, span_notice("You cannot directly remove reagents from [target]."))
|
||||
return
|
||||
|
||||
if(!target.reagents || !target.reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>[target] is empty.</span>")
|
||||
to_chat(user, span_notice("[target] is empty."))
|
||||
return
|
||||
|
||||
var/trans = target.reagents.trans_to_obj(src, amount_per_transfer_from_this)
|
||||
|
||||
to_chat(user, "<span class='notice'>You fill the dropper with [trans] units of the solution.</span>")
|
||||
to_chat(user, span_notice("You fill the dropper with [trans] units of the solution."))
|
||||
|
||||
return
|
||||
|
||||
|
||||
@@ -66,11 +66,11 @@
|
||||
. = ..()
|
||||
if(get_dist(user, src) <= 2)
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
. += "<span class='notice'>It contains [reagents.total_volume] units of liquid.</span>"
|
||||
. += span_notice("It contains [reagents.total_volume] units of liquid.")
|
||||
else
|
||||
. += "<span class='notice'>It is empty.</span>"
|
||||
. += span_notice("It is empty.")
|
||||
if(!is_open_container())
|
||||
. += "<span class='notice'>Airtight lid seals it completely.</span>"
|
||||
. += span_notice("Airtight lid seals it completely.")
|
||||
|
||||
/obj/item/reagent_containers/glass/attack_self()
|
||||
..()
|
||||
@@ -101,7 +101,7 @@
|
||||
return ..()
|
||||
|
||||
/obj/item/reagent_containers/glass/self_feed_message(var/mob/user)
|
||||
to_chat(user, "<span class='notice'>You swallow a gulp from \the [src].</span>")
|
||||
to_chat(user, span_notice("You swallow a gulp from \the [src]."))
|
||||
|
||||
/obj/item/reagent_containers/glass/proc/attempt_snake_milking(mob/living/user, mob/living/target)
|
||||
var/reagent
|
||||
@@ -142,7 +142,7 @@
|
||||
if(standard_splash_mob(user,target))
|
||||
return 1
|
||||
if(reagents && reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>You splash the solution onto [target].</span>") //They are on harm intent, aka wanting to spill it.
|
||||
to_chat(user, span_notice("You splash the solution onto [target].")) //They are on harm intent, aka wanting to spill it.
|
||||
reagents.splash(target, reagents.total_volume)
|
||||
return 1
|
||||
..()
|
||||
@@ -151,19 +151,19 @@
|
||||
if(istype(W, /obj/item/pen) || istype(W, /obj/item/flashlight/pen))
|
||||
var/tmp_label = sanitizeSafe(tgui_input_text(user, "Enter a label for [name]", "Label", label_text, MAX_NAME_LEN), MAX_NAME_LEN)
|
||||
if(length(tmp_label) > 50)
|
||||
to_chat(user, "<span class='notice'>The label can be at most 50 characters long.</span>")
|
||||
to_chat(user, span_notice("The label can be at most 50 characters long."))
|
||||
else if(length(tmp_label) > 10)
|
||||
to_chat(user, "<span class='notice'>You set the label.</span>")
|
||||
to_chat(user, span_notice("You set the label."))
|
||||
label_text = tmp_label
|
||||
update_name_label()
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You set the label to \"[tmp_label]\".</span>")
|
||||
to_chat(user, span_notice("You set the label to \"[tmp_label]\"."))
|
||||
label_text = tmp_label
|
||||
update_name_label()
|
||||
if(istype(W,/obj/item/storage/bag))
|
||||
..()
|
||||
if(W && W.w_class <= w_class && (flags & OPENCONTAINER) && user.a_intent != I_HELP)
|
||||
to_chat(user, "<span class='notice'>You dip \the [W] into \the [src].</span>")
|
||||
to_chat(user, span_notice("You dip \the [W] into \the [src]."))
|
||||
reagents.touch_obj(W, reagents.total_volume)
|
||||
|
||||
/obj/item/reagent_containers/glass/proc/update_name_label()
|
||||
@@ -324,7 +324,7 @@
|
||||
qdel(src)
|
||||
return
|
||||
else if(D.has_tool_quality(TOOL_WIRECUTTER))
|
||||
to_chat(user, "<span class='notice'>You cut a big hole in \the [src] with \the [D]. It's kinda useless as a bucket now.</span>")
|
||||
to_chat(user, span_notice("You cut a big hole in \the [src] with \the [D]. It's kinda useless as a bucket now."))
|
||||
user.put_in_hands(new /obj/item/clothing/head/helmet/bucket)
|
||||
user.drop_from_inventory(src)
|
||||
qdel(src)
|
||||
@@ -334,19 +334,19 @@
|
||||
if (M.use(1))
|
||||
var/obj/item/secbot_assembly/edCLN_assembly/B = new /obj/item/secbot_assembly/edCLN_assembly
|
||||
B.loc = get_turf(src)
|
||||
to_chat(user, "<span class='notice'>You armed the robot frame.</span>")
|
||||
to_chat(user, span_notice("You armed the robot frame."))
|
||||
if (user.get_inactive_hand()==src)
|
||||
user.remove_from_mob(src)
|
||||
user.put_in_inactive_hand(B)
|
||||
qdel(src)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You need one sheet of metal to arm the robot frame.</span>")
|
||||
to_chat(user, span_warning("You need one sheet of metal to arm the robot frame."))
|
||||
else if(istype(D, /obj/item/mop) || istype(D, /obj/item/soap) || istype(D, /obj/item/reagent_containers/glass/rag)) //VOREStation Edit - "Allows soap and rags to be used on buckets"
|
||||
if(reagents.total_volume < 1)
|
||||
to_chat(user, "<span class='warning'>\The [src] is empty!</span>")
|
||||
to_chat(user, span_warning("\The [src] is empty!"))
|
||||
else
|
||||
reagents.trans_to_obj(D, 5)
|
||||
to_chat(user, "<span class='notice'>You wet \the [D] in \the [src].</span>")
|
||||
to_chat(user, span_notice("You wet \the [D] in \the [src]."))
|
||||
playsound(src, 'sound/effects/slosh.ogg', 25, 1)
|
||||
else
|
||||
return ..()
|
||||
@@ -378,17 +378,17 @@
|
||||
to_chat(user, "This wooden bucket doesn't play well with electronics.")
|
||||
return
|
||||
else if(istype(D, /obj/item/material/knife/machete/hatchet))
|
||||
to_chat(user, "<span class='notice'>You cut a big hole in \the [src] with \the [D]. It's kinda useless as a bucket now.</span>")
|
||||
to_chat(user, span_notice("You cut a big hole in \the [src] with \the [D]. It's kinda useless as a bucket now."))
|
||||
user.put_in_hands(new /obj/item/clothing/head/helmet/bucket/wood)
|
||||
user.drop_from_inventory(src)
|
||||
qdel(src)
|
||||
return
|
||||
else if(istype(D, /obj/item/mop))
|
||||
if(reagents.total_volume < 1)
|
||||
to_chat(user, "<span class='warning'>\The [src] is empty!</span>")
|
||||
to_chat(user, span_warning("\The [src] is empty!"))
|
||||
else
|
||||
reagents.trans_to_obj(D, 5)
|
||||
to_chat(user, "<span class='notice'>You wet \the [D] in \the [src].</span>")
|
||||
to_chat(user, span_notice("You wet \the [D] in \the [src]."))
|
||||
playsound(src, 'sound/effects/slosh.ogg', 25, 1)
|
||||
return
|
||||
else
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
|
||||
/obj/item/reagent_containers/hypospray/attack(mob/living/M as mob, mob/user as mob)
|
||||
if(!reagents.total_volume)
|
||||
to_chat(user, "<span class='warning'>[src] is empty.</span>")
|
||||
to_chat(user, span_warning("[src] is empty."))
|
||||
return
|
||||
if (!istype(M))
|
||||
return
|
||||
@@ -40,26 +40,26 @@
|
||||
if(istype(H))
|
||||
var/obj/item/organ/external/affected = H.get_organ(user.zone_sel.selecting)
|
||||
if(!affected)
|
||||
to_chat(user, "<span class='danger'>\The [H] is missing that limb!</span>")
|
||||
to_chat(user, span_danger("\The [H] is missing that limb!"))
|
||||
return
|
||||
/* since synths have oil/coolant streams now, it only makes sense that you should be able to inject stuff. preserved for posterity.
|
||||
else if(affected.robotic >= ORGAN_ROBOT)
|
||||
to_chat(user, "<span class='danger'>You cannot inject a robotic limb.</span>")
|
||||
to_chat(user, span_danger("You cannot inject a robotic limb."))
|
||||
return
|
||||
*/
|
||||
|
||||
//VOREStation Add Start - Adds Prototype Hypo functionality
|
||||
if(H != user && prototype)
|
||||
to_chat(user, "<span class='notice'>You begin injecting [H] with \the [src].</span>")
|
||||
to_chat(H, "<span class='danger'> [user] is trying to inject you with \the [src]!</span>")
|
||||
to_chat(user, span_notice("You begin injecting [H] with \the [src]."))
|
||||
to_chat(H, span_danger(" [user] is trying to inject you with \the [src]!"))
|
||||
if(!do_after(user, 30, H))
|
||||
return
|
||||
//VOREstation Add End
|
||||
else if(!H.stat && !prototype) //VOREStation Edit
|
||||
if(H != user)
|
||||
if(H.a_intent != I_HELP)
|
||||
to_chat(user, "<span class='notice'>[H] is resisting your attempt to inject them with \the [src].</span>")
|
||||
to_chat(H, "<span class='danger'> [user] is trying to inject you with \the [src]!</span>")
|
||||
to_chat(user, span_notice("[H] is resisting your attempt to inject them with \the [src]."))
|
||||
to_chat(H, span_danger(" [user] is trying to inject you with \the [src]!"))
|
||||
if(!do_after(user, 30, H))
|
||||
return
|
||||
|
||||
@@ -109,7 +109,7 @@
|
||||
loaded_vial.update_icon()
|
||||
user.put_in_hands(loaded_vial)
|
||||
loaded_vial = null
|
||||
to_chat(user, "<span class='notice'>You remove the vial from the [src].</span>")
|
||||
to_chat(user, span_notice("You remove the vial from the [src]."))
|
||||
update_icon()
|
||||
playsound(src, 'sound/weapons/flipblade.ogg', 50, 1)
|
||||
return
|
||||
@@ -127,7 +127,7 @@
|
||||
/obj/item/reagent_containers/hypospray/vial/attackby(obj/item/W, mob/user as mob)
|
||||
if(istype(W, /obj/item/reagent_containers/glass/beaker/vial))
|
||||
if(!loaded_vial)
|
||||
user.visible_message("<span class='notice'>[user] begins loading [W] into \the [src].</span>","<span class='notice'>You start loading [W] into \the [src].</span>")
|
||||
user.visible_message(span_notice("[user] begins loading [W] into \the [src]."),span_notice("You start loading [W] into \the [src]."))
|
||||
if(!do_after(user,30) || loaded_vial || !(W in user))
|
||||
return 0
|
||||
if(W.is_open_container())
|
||||
@@ -138,11 +138,11 @@
|
||||
loaded_vial = W
|
||||
reagents.maximum_volume = loaded_vial.reagents.maximum_volume
|
||||
loaded_vial.reagents.trans_to_holder(reagents,volume)
|
||||
user.visible_message("<span class='notice'>[user] has loaded [W] into \the [src].</span>","<span class='notice'>You have loaded [W] into \the [src].</span>")
|
||||
user.visible_message(span_notice("[user] has loaded [W] into \the [src]."),span_notice("You have loaded [W] into \the [src]."))
|
||||
update_icon()
|
||||
playsound(src, 'sound/weapons/empty.ogg', 50, 1)
|
||||
else
|
||||
to_chat(user, "<span class='notice'>\The [src] already has a vial.</span>")
|
||||
to_chat(user, span_notice("\The [src] already has a vial."))
|
||||
else
|
||||
..()
|
||||
|
||||
@@ -186,9 +186,9 @@
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/examine(mob/user)
|
||||
. = ..()
|
||||
if(reagents && reagents.reagent_list.len)
|
||||
. += "<span class='notice'>It is currently loaded.</span>"
|
||||
. += span_notice("It is currently loaded.")
|
||||
else
|
||||
. += "<span class='notice'>It is spent.</span>"
|
||||
. += span_notice("It is spent.")
|
||||
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/detox
|
||||
|
||||
@@ -27,17 +27,17 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/external/affecting = H.get_organ(check_zone(L.zone_sel.selecting))
|
||||
if(!affecting)
|
||||
to_chat(user, "<span class='warning'>The limb is missing!</span>")
|
||||
to_chat(user, span_warning("The limb is missing!"))
|
||||
return
|
||||
if(affecting.status >= ORGAN_ROBOT)
|
||||
to_chat(user, "<span class='notice'>\The [src] won't work on a robotic limb!</span>")
|
||||
to_chat(user, span_notice("\The [src] won't work on a robotic limb!"))
|
||||
return
|
||||
|
||||
if(!H.can_inject(user, FALSE, L.zone_sel.selecting, pierce_material))
|
||||
to_chat(user, "<span class='notice'>\The [src] can't be applied through such a thick material!</span>")
|
||||
to_chat(user, span_notice("\The [src] can't be applied through such a thick material!"))
|
||||
return
|
||||
|
||||
to_chat(H, "<span class='notice'>\The [src] is placed on your [affecting].</span>")
|
||||
to_chat(H, span_notice("\The [src] is placed on your [affecting]."))
|
||||
M.drop_from_inventory(src) //icon update
|
||||
if(reagents.total_volume)
|
||||
reagents.trans_to_mob(M, reagents.total_volume, CHEM_BLOOD) //CHEM_TOUCH
|
||||
@@ -48,29 +48,29 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/external/affecting = H.get_organ(check_zone(L.zone_sel.selecting))
|
||||
if(!affecting)
|
||||
to_chat(user, "<span class='warning'>The limb is missing!</span>")
|
||||
to_chat(user, span_warning("The limb is missing!"))
|
||||
return
|
||||
if(affecting.status >= ORGAN_ROBOT)
|
||||
to_chat(user, "<span class='notice'>\The [src] won't work on a robotic limb!</span>")
|
||||
to_chat(user, span_notice("\The [src] won't work on a robotic limb!"))
|
||||
return
|
||||
|
||||
if(!H.can_inject(user, FALSE, L.zone_sel.selecting, pierce_material))
|
||||
to_chat(user, "<span class='notice'>\The [src] can't be applied through such a thick material!</span>")
|
||||
to_chat(user, span_notice("\The [src] can't be applied through such a thick material!"))
|
||||
return
|
||||
|
||||
user.visible_message("<span class='warning'>[user] attempts to place \the [src] onto [H]`s [affecting].</span>")
|
||||
user.visible_message(span_warning("[user] attempts to place \the [src] onto [H]`s [affecting]."))
|
||||
|
||||
user.setClickCooldown(user.get_attack_speed(src))
|
||||
if(!do_mob(user, M))
|
||||
return
|
||||
|
||||
user.drop_from_inventory(src) //icon update
|
||||
user.visible_message("<span class='warning'>[user] applies \the [src] to [H].</span>")
|
||||
user.visible_message(span_warning("[user] applies \the [src] to [H]."))
|
||||
|
||||
var/contained = reagentlist()
|
||||
add_attack_logs(user,M,"Applied a patch containing [contained]")
|
||||
|
||||
to_chat(H, "<span class='notice'>\The [src] is placed on your [affecting].</span>")
|
||||
to_chat(H, span_notice("\The [src] is placed on your [affecting]."))
|
||||
M.drop_from_inventory(src) //icon update
|
||||
|
||||
if(reagents.total_volume)
|
||||
@@ -79,4 +79,4 @@
|
||||
|
||||
return 1
|
||||
|
||||
return 0
|
||||
return 0
|
||||
|
||||
@@ -31,10 +31,10 @@
|
||||
return
|
||||
var/obj/item/blocked = H.check_mouth_coverage()
|
||||
if(blocked)
|
||||
to_chat(user, "<span class='warning'>\The [blocked] is in the way!</span>")
|
||||
to_chat(user, span_warning("\The [blocked] is in the way!"))
|
||||
return
|
||||
|
||||
to_chat(M, "<span class='notice'>You swallow \the [src].</span>")
|
||||
to_chat(M, span_notice("You swallow \the [src]."))
|
||||
M.drop_from_inventory(src) //icon update
|
||||
if(reagents.total_volume)
|
||||
reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST)
|
||||
@@ -49,17 +49,17 @@
|
||||
return
|
||||
var/obj/item/blocked = H.check_mouth_coverage()
|
||||
if(blocked)
|
||||
to_chat(user, "<span class='warning'>\The [blocked] is in the way!</span>")
|
||||
to_chat(user, span_warning("\The [blocked] is in the way!"))
|
||||
return
|
||||
|
||||
user.visible_message("<span class='warning'>[user] attempts to force [M] to swallow \the [src].</span>")
|
||||
user.visible_message(span_warning("[user] attempts to force [M] to swallow \the [src]."))
|
||||
|
||||
user.setClickCooldown(user.get_attack_speed(src))
|
||||
if(!do_mob(user, M))
|
||||
return
|
||||
|
||||
user.drop_from_inventory(src) //icon update
|
||||
user.visible_message("<span class='warning'>[user] forces [M] to swallow \the [src].</span>")
|
||||
user.visible_message(span_warning("[user] forces [M] to swallow \the [src]."))
|
||||
|
||||
var/contained = reagentlist()
|
||||
add_attack_logs(user,M,"Fed a pill containing [contained]")
|
||||
@@ -77,15 +77,15 @@
|
||||
|
||||
if(target.is_open_container() && target.reagents)
|
||||
if(!target.reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>[target] is empty. Can't dissolve \the [src].</span>")
|
||||
to_chat(user, span_notice("[target] is empty. Can't dissolve \the [src]."))
|
||||
return
|
||||
to_chat(user, "<span class='notice'>You dissolve \the [src] in [target].</span>")
|
||||
to_chat(user, span_notice("You dissolve \the [src] in [target]."))
|
||||
|
||||
add_attack_logs(user,null,"Spiked [target.name] with a pill containing [reagentlist()]")
|
||||
|
||||
reagents.trans_to(target, reagents.total_volume)
|
||||
for(var/mob/O in viewers(2, user))
|
||||
O.show_message("<span class='warning'>[user] puts something in \the [target].</span>", 1)
|
||||
O.show_message(span_warning("[user] puts something in \the [target]."), 1)
|
||||
|
||||
qdel(src)
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
/obj/item/reagent_containers/pill/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(is_sharp(W))
|
||||
var/obj/item/reagent_containers/powder/J = new /obj/item/reagent_containers/powder(src.loc)
|
||||
user.visible_message("<span class='warning'>[user] gently cuts up [src] with [W]!</span>")
|
||||
user.visible_message(span_warning("[user] gently cuts up [src] with [W]!"))
|
||||
playsound(src.loc, 'sound/effects/chop.ogg', 50, 1)
|
||||
|
||||
if(reagents)
|
||||
@@ -104,7 +104,7 @@
|
||||
|
||||
if(istype(W, /obj/item/card/id))
|
||||
var/obj/item/reagent_containers/powder/J = new /obj/item/reagent_containers/powder(src.loc)
|
||||
user.visible_message("<span class='warning'>[user] clumsily chops up [src] with [W]!</span>")
|
||||
user.visible_message(span_warning("[user] clumsily chops up [src] with [W]!"))
|
||||
playsound(src.loc, 'sound/effects/chop.ogg', 50, 1)
|
||||
|
||||
if(reagents)
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
return
|
||||
|
||||
if(reagents.total_volume < amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>\The [src] is empty!</span>")
|
||||
to_chat(user, span_notice("\The [src] is empty!"))
|
||||
return
|
||||
|
||||
Spray_at(A, user, proximity)
|
||||
@@ -75,7 +75,7 @@
|
||||
return
|
||||
amount_per_transfer_from_this = next_in_list(amount_per_transfer_from_this, possible_transfer_amounts)
|
||||
spray_size = next_in_list(spray_size, spray_sizes)
|
||||
to_chat(user, "<span class='notice'>You adjusted the pressure nozzle. You'll now use [amount_per_transfer_from_this] units per spray.</span>")
|
||||
to_chat(user, span_notice("You adjusted the pressure nozzle. You'll now use [amount_per_transfer_from_this] units per spray."))
|
||||
|
||||
/obj/item/reagent_containers/spray/examine(mob/user)
|
||||
. = ..()
|
||||
@@ -91,7 +91,7 @@
|
||||
if (tgui_alert(usr, "Are you sure you want to empty that?", "Empty Bottle:", list("Yes", "No")) != "Yes")
|
||||
return
|
||||
if(isturf(usr.loc))
|
||||
to_chat(usr, "<span class='notice'>You empty \the [src] onto the floor.</span>")
|
||||
to_chat(usr, span_notice("You empty \the [src] onto the floor."))
|
||||
reagents.splash(usr.loc, reagents.total_volume)
|
||||
|
||||
//space cleaner
|
||||
@@ -245,7 +245,7 @@
|
||||
/obj/item/reagent_containers/spray/chemsprayer/hosed/AltClick(mob/living/carbon/user)
|
||||
if(++spray_particles > 3) spray_particles = 1
|
||||
|
||||
to_chat(user, "<span class='notice'>You turn the dial on \the [src] to [spray_particles].</span>")
|
||||
to_chat(user, span_notice("You turn the dial on \the [src] to [spray_particles]."))
|
||||
return
|
||||
|
||||
/obj/item/reagent_containers/spray/chemsprayer/hosed/CtrlClick(var/mob/user)
|
||||
@@ -264,7 +264,7 @@
|
||||
var/list/the_targets = list(T, T1, T2)
|
||||
|
||||
if(src.reagents.total_volume < 1)
|
||||
to_chat(usr, "<span class='notice'>\The [src] is empty.</span>")
|
||||
to_chat(usr, span_notice("\The [src] is empty."))
|
||||
return
|
||||
|
||||
if(!heavy_spray)
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
switch(mode)
|
||||
if(SYRINGE_CAPPED)
|
||||
mode = SYRINGE_DRAW
|
||||
to_chat(user,"<span class='notice'>You uncap the syringe.</span>")
|
||||
to_chat(user,span_notice("You uncap the syringe."))
|
||||
if(SYRINGE_DRAW)
|
||||
mode = SYRINGE_INJECT
|
||||
if(SYRINGE_INJECT)
|
||||
@@ -88,7 +88,7 @@
|
||||
return
|
||||
|
||||
if(mode == SYRINGE_BROKEN)
|
||||
to_chat(user, "<span class='warning'>This syringe is broken!</span>")
|
||||
to_chat(user, span_warning("This syringe is broken!"))
|
||||
return
|
||||
|
||||
if(user.a_intent == I_HURT && ismob(target))
|
||||
@@ -101,23 +101,23 @@
|
||||
switch(mode)
|
||||
if(SYRINGE_DRAW)
|
||||
if(!reagents.get_free_space())
|
||||
to_chat(user, "<span class='warning'>The syringe is full.</span>")
|
||||
to_chat(user, span_warning("The syringe is full."))
|
||||
mode = SYRINGE_INJECT
|
||||
return
|
||||
|
||||
if(ismob(target))//Blood!
|
||||
if(reagents.has_reagent("blood"))
|
||||
to_chat(user, "<span class='notice'>There is already a blood sample in this syringe.</span>")
|
||||
to_chat(user, span_notice("There is already a blood sample in this syringe."))
|
||||
return
|
||||
|
||||
if(istype(target, /mob/living/carbon))
|
||||
var/amount = reagents.get_free_space()
|
||||
var/mob/living/carbon/T = target
|
||||
if(!T.dna)
|
||||
to_chat(user, "<span class='warning'>You are unable to locate any blood. (To be specific, your target seems to be missing their DNA datum).</span>")
|
||||
to_chat(user, span_warning("You are unable to locate any blood. (To be specific, your target seems to be missing their DNA datum)."))
|
||||
return
|
||||
if(NOCLONE in T.mutations) //target done been et, no more blood in him
|
||||
to_chat(user, "<span class='warning'>You are unable to locate any blood.</span>")
|
||||
to_chat(user, span_warning("You are unable to locate any blood."))
|
||||
return
|
||||
|
||||
if(T.isSynthetic())
|
||||
@@ -125,7 +125,7 @@
|
||||
return
|
||||
|
||||
if(drawing)
|
||||
to_chat(user, "<span class='warning'>You are already drawing blood from [T.name].</span>")
|
||||
to_chat(user, span_warning("You are already drawing blood from [T.name]."))
|
||||
return
|
||||
|
||||
var/datum/reagent/B
|
||||
@@ -153,21 +153,21 @@
|
||||
reagents.update_total()
|
||||
on_reagent_change()
|
||||
reagents.handle_reactions()
|
||||
to_chat(user, "<span class='notice'>You take a blood sample from [target].</span>")
|
||||
to_chat(user, span_notice("You take a blood sample from [target]."))
|
||||
for(var/mob/O in viewers(4, user))
|
||||
O.show_message("<span class='notice'>[user] takes a blood sample from [target].</span>", 1)
|
||||
O.show_message(span_notice("[user] takes a blood sample from [target]."), 1)
|
||||
|
||||
else //if not mob
|
||||
if(!target.reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>[target] is empty.</span>")
|
||||
to_chat(user, span_notice("[target] is empty."))
|
||||
return
|
||||
|
||||
if(!target.is_open_container() && !istype(target, /obj/structure/reagent_dispensers) && !istype(target, /obj/item/slime_extract) && !istype(target, /obj/item/reagent_containers/food))
|
||||
to_chat(user, "<span class='notice'>You cannot directly remove reagents from this object.</span>")
|
||||
to_chat(user, span_notice("You cannot directly remove reagents from this object."))
|
||||
return
|
||||
|
||||
var/trans = target.reagents.trans_to_obj(src, amount_per_transfer_from_this)
|
||||
to_chat(user, "<span class='notice'>You fill the syringe with [trans] units of the solution.</span>")
|
||||
to_chat(user, span_notice("You fill the syringe with [trans] units of the solution."))
|
||||
update_icon()
|
||||
|
||||
|
||||
@@ -177,17 +177,17 @@
|
||||
|
||||
if(SYRINGE_INJECT)
|
||||
if(!reagents.total_volume)
|
||||
to_chat(user, "<span class='notice'>The syringe is empty.</span>")
|
||||
to_chat(user, span_notice("The syringe is empty."))
|
||||
mode = SYRINGE_DRAW
|
||||
return
|
||||
if(istype(target, /obj/item/implantcase/chem))
|
||||
return
|
||||
|
||||
if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/reagent_containers/food) && !istype(target, /obj/item/slime_extract) && !istype(target, /obj/item/clothing/mask/smokable/cigarette) && !istype(target, /obj/item/storage/fancy/cigarettes))
|
||||
to_chat(user, "<span class='notice'>You cannot directly fill this object.</span>")
|
||||
to_chat(user, span_notice("You cannot directly fill this object."))
|
||||
return
|
||||
if(!target.reagents.get_free_space())
|
||||
to_chat(user, "<span class='notice'>[target] is full.</span>")
|
||||
to_chat(user, span_notice("[target] is full."))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/human/H = target
|
||||
@@ -195,11 +195,11 @@
|
||||
if(istype(H))
|
||||
affected = H.get_organ(user.zone_sel.selecting) //VOREStation Edit - See above comment.
|
||||
if(!affected)
|
||||
to_chat(user, "<span class='danger'>\The [H] is missing that limb!</span>")
|
||||
to_chat(user, span_danger("\The [H] is missing that limb!"))
|
||||
return
|
||||
/* since synths have oil/coolant streams now, it only makes sense that you should be able to inject stuff. preserved for posterity.
|
||||
else if(affected.robotic >= ORGAN_ROBOT)
|
||||
to_chat(user, "<span class='danger'>You cannot inject a robotic limb.</span>")
|
||||
to_chat(user, span_danger("You cannot inject a robotic limb."))
|
||||
return
|
||||
*/
|
||||
|
||||
@@ -223,9 +223,9 @@
|
||||
return
|
||||
|
||||
if(injtime == time)
|
||||
user.visible_message("<span class='warning'>[user] is trying to inject [target] with [visible_name]!</span>","<span class='notice'>You begin injecting [target] with [visible_name].</span>")
|
||||
user.visible_message(span_warning("[user] is trying to inject [target] with [visible_name]!"),span_notice("You begin injecting [target] with [visible_name]."))
|
||||
else
|
||||
user.visible_message("<span class='warning'>[user] begins hunting for an injection port on [target]'s suit!</span>","<span class='notice'>You begin hunting for an injection port on [target]'s suit!</span>")
|
||||
user.visible_message(span_warning("[user] begins hunting for an injection port on [target]'s suit!"),span_notice("You begin hunting for an injection port on [target]'s suit!"))
|
||||
|
||||
//The warmup
|
||||
user.setClickCooldown(DEFAULT_QUICK_COOLDOWN)
|
||||
@@ -248,11 +248,11 @@
|
||||
update_icon()
|
||||
|
||||
if(trans)
|
||||
to_chat(user, "<span class='notice'>You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units.</span>")
|
||||
to_chat(user, span_notice("You inject [trans] units of the solution. The syringe now contains [src.reagents.total_volume] units."))
|
||||
if(ismob(target))
|
||||
add_attack_logs(user,target,"Injected with [src.name] containing [contained], trasferred [trans] units")
|
||||
else
|
||||
to_chat(user, "<span class='notice'>The syringe is empty.</span>")
|
||||
to_chat(user, span_notice("The syringe is empty."))
|
||||
|
||||
// dirty(target,affected) //VOREStation Add -- Removed by Request
|
||||
return
|
||||
@@ -266,7 +266,7 @@
|
||||
var/obj/item/organ/external/affecting = H.get_organ(target_zone)
|
||||
|
||||
if (!affecting || affecting.is_stump())
|
||||
to_chat(user, "<span class='danger'>They are missing that limb!</span>")
|
||||
to_chat(user, span_danger("They are missing that limb!"))
|
||||
return
|
||||
|
||||
var/hit_area = affecting.name
|
||||
@@ -284,13 +284,13 @@
|
||||
|
||||
return
|
||||
|
||||
user.visible_message("<span class='danger'>[user] stabs [target] in \the [hit_area] with [src.name]!</span>")
|
||||
user.visible_message(span_danger("[user] stabs [target] in \the [hit_area] with [src.name]!"))
|
||||
|
||||
if(affecting.take_damage(3))
|
||||
H.UpdateDamageIcon()
|
||||
|
||||
else
|
||||
user.visible_message("<span class='danger'>[user] stabs [target] with [src.name]!</span>")
|
||||
user.visible_message(span_danger("[user] stabs [target] with [src.name]!"))
|
||||
target.take_organ_damage(3)// 7 is the same as crowbar punch
|
||||
|
||||
|
||||
@@ -322,10 +322,10 @@
|
||||
|
||||
/obj/item/reagent_containers/syringe/ld50_syringe/afterattack(obj/target, mob/user, flag)
|
||||
if(mode == SYRINGE_DRAW && ismob(target)) // No drawing 50 units of blood at once
|
||||
to_chat(user, "<span class='notice'>This needle isn't designed for drawing blood.</span>")
|
||||
to_chat(user, span_notice("This needle isn't designed for drawing blood."))
|
||||
return
|
||||
if(user.a_intent == "hurt" && ismob(target)) // No instant injecting
|
||||
to_chat(user, "<span class='notice'>This syringe is too big to stab someone with it.</span>")
|
||||
to_chat(user, span_notice("This syringe is too big to stab someone with it."))
|
||||
..()
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -190,7 +190,7 @@
|
||||
var/removed_heat = between(0, volume * WATER_LATENT_HEAT, -environment.get_thermal_energy_change(min_temperature))
|
||||
environment.add_thermal_energy(-removed_heat)
|
||||
if (prob(5))
|
||||
T.visible_message("<span class='warning'>The water sizzles as it lands on \the [T]!</span>")
|
||||
T.visible_message(span_warning("The water sizzles as it lands on \the [T]!"))
|
||||
|
||||
else if(volume >= 10)
|
||||
T.wet_floor(1)
|
||||
@@ -214,7 +214,7 @@
|
||||
if(istype(L, /mob/living/simple_mob/slime))
|
||||
var/mob/living/simple_mob/slime/S = L
|
||||
S.adjustToxLoss(15 * amount)
|
||||
S.visible_message("<span class='warning'>[S]'s flesh sizzles where the water touches it!</span>", "<span class='danger'>Your flesh burns in the water!</span>")
|
||||
S.visible_message(span_warning("[S]'s flesh sizzles where the water touches it!"), span_danger("Your flesh burns in the water!"))
|
||||
|
||||
// Then extinguish people on fire.
|
||||
var/needed = max(0,L.fire_stacks) * 5
|
||||
@@ -230,7 +230,7 @@
|
||||
var/obj/item/clothing/mask/smokable/S = H.wear_mask
|
||||
if(S.lit)
|
||||
S.quench()
|
||||
H.visible_message("<span class='notice'>[H]\'s [S.name] is put out.</span>")
|
||||
H.visible_message(span_notice("[H]\'s [S.name] is put out."))
|
||||
|
||||
/* //VOREStation Edit Start. Stops slimes from dying from water. Fixes fuel affect_ingest, too.
|
||||
/datum/reagent/water/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -247,7 +247,7 @@
|
||||
|
||||
/datum/reagent/water/affect_touch(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_SLIME && prob(10))
|
||||
M.visible_message("<span class='warning'>[M]'s flesh sizzles where the water touches it!</span>", "<span class='danger'>Your flesh burns in the water!</span>")
|
||||
M.visible_message(span_warning("[M]'s flesh sizzles where the water touches it!"), span_danger("Your flesh burns in the water!"))
|
||||
..()
|
||||
*/ //VOREStation Edit End.
|
||||
|
||||
|
||||
@@ -205,11 +205,11 @@
|
||||
if(volume < 5)
|
||||
return
|
||||
if(istype(O, /obj/item/book/tome))
|
||||
to_chat(usr, "<span class='notice'>The solution does nothing. Whatever this is, it isn't normal ink.</span>")
|
||||
to_chat(usr, span_notice("The solution does nothing. Whatever this is, it isn't normal ink."))
|
||||
return
|
||||
var/obj/item/book/affectedbook = O
|
||||
affectedbook.dat = null
|
||||
to_chat(usr, "<span class='notice'>The solution dissolves the ink on the book.</span>")
|
||||
to_chat(usr, span_notice("The solution dissolves the ink on the book."))
|
||||
return
|
||||
|
||||
/datum/reagent/fluorine
|
||||
@@ -364,11 +364,11 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.head)
|
||||
if(H.head.unacidable)
|
||||
to_chat(H, "<span class='danger'>Your [H.head] protects you from the acid.</span>")
|
||||
to_chat(H, span_danger("Your [H.head] protects you from the acid."))
|
||||
remove_self(volume)
|
||||
return
|
||||
else if(removed > meltdose)
|
||||
to_chat(H, "<span class='danger'>Your [H.head] melts away!</span>")
|
||||
to_chat(H, span_danger("Your [H.head] melts away!"))
|
||||
qdel(H.head)
|
||||
H.update_inv_head(1)
|
||||
H.update_hair(1)
|
||||
@@ -378,11 +378,11 @@
|
||||
|
||||
if(H.wear_mask)
|
||||
if(H.wear_mask.unacidable)
|
||||
to_chat(H, "<span class='danger'>Your [H.wear_mask] protects you from the acid.</span>")
|
||||
to_chat(H, span_danger("Your [H.wear_mask] protects you from the acid."))
|
||||
remove_self(volume)
|
||||
return
|
||||
else if(removed > meltdose)
|
||||
to_chat(H, "<span class='danger'>Your [H.wear_mask] melts away!</span>")
|
||||
to_chat(H, span_danger("Your [H.wear_mask] melts away!"))
|
||||
qdel(H.wear_mask)
|
||||
H.update_inv_wear_mask(1)
|
||||
H.update_hair(1)
|
||||
@@ -392,10 +392,10 @@
|
||||
|
||||
if(H.glasses)
|
||||
if(H.glasses.unacidable)
|
||||
to_chat(H, "<span class='danger'>Your [H.glasses] partially protect you from the acid!</span>")
|
||||
to_chat(H, span_danger("Your [H.glasses] partially protect you from the acid!"))
|
||||
removed /= 2
|
||||
else if(removed > meltdose)
|
||||
to_chat(H, "<span class='danger'>Your [H.glasses] melt away!</span>")
|
||||
to_chat(H, span_danger("Your [H.glasses] melt away!"))
|
||||
qdel(H.glasses)
|
||||
H.update_inv_glasses(1)
|
||||
removed -= meltdose / 2
|
||||
@@ -427,7 +427,7 @@
|
||||
var/obj/effect/decal/cleanable/molten_item/I = new/obj/effect/decal/cleanable/molten_item(O.loc)
|
||||
I.desc = "Looks like this was \an [O] some time ago."
|
||||
for(var/mob/M in viewers(5, O))
|
||||
to_chat(M, "<span class='warning'>\The [O] melts.</span>")
|
||||
to_chat(M, span_warning("\The [O] melts."))
|
||||
qdel(O)
|
||||
remove_self(meltdose) // 10 units of acid will not melt EVERYTHING on the tile
|
||||
|
||||
|
||||
@@ -31,11 +31,11 @@
|
||||
if(world.time > data + 90 SECONDS && volume > 0.5) /// Spam prevention.
|
||||
data = world.time
|
||||
var/msg = pick(high_message_list)
|
||||
to_chat(M, "<span class='warning'>[msg]</span>")
|
||||
to_chat(M, span_warning("[msg]"))
|
||||
else if(volume <= 0.2 && data != -1)
|
||||
data = -1
|
||||
var/msg = pick(sober_message_list)
|
||||
to_chat(M, "<span class='warning'>[msg]</span>")
|
||||
to_chat(M, span_warning("[msg]"))
|
||||
if(prob(5) && prob_proc == FALSE) /// Enables procs to activate, remains true until THAT PROC sets it to false again.
|
||||
prob_proc = TRUE
|
||||
|
||||
@@ -251,7 +251,7 @@
|
||||
|
||||
M.fear = max((M.fear - 6),0)
|
||||
if(prob(5) && prob_proc == TRUE)
|
||||
to_chat(M, "<span class='warning'>Everything feels out of control...</span>")
|
||||
to_chat(M, span_warning("Everything feels out of control..."))
|
||||
M.hallucination += 200
|
||||
prob_proc = FALSE
|
||||
|
||||
@@ -262,4 +262,4 @@
|
||||
taste_description = "mint"
|
||||
color = "#e6efe3"
|
||||
high_message_list = list("You feel sluggish...", "You feel calm and collected.")
|
||||
sober_message_list = list("You feel so much more antsy...", "Your concentration wavers.")
|
||||
sober_message_list = list("You feel so much more antsy...", "Your concentration wavers.")
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
//We'll assume that the batter isnt going to be regurgitated and eaten by someone else. Only show this once
|
||||
if(data["cooked"] != 1)
|
||||
if (!messaged)
|
||||
to_chat(M, "<span class='warning'>Ugh, this raw [name] tastes disgusting.</span>")
|
||||
to_chat(M, span_warning("Ugh, this raw [name] tastes disgusting."))
|
||||
nutriment_factor *= 0.5
|
||||
messaged = 1
|
||||
|
||||
@@ -238,7 +238,7 @@
|
||||
M.take_organ_damage(0, removed * 1.5 * dfactor)
|
||||
data["temperature"] -= (6 * removed) / (1 + volume*0.1)//Cools off as it burns you
|
||||
if (lastburnmessage+100 < world.time )
|
||||
to_chat(M, "<span class='danger'>Searing hot oil burns you, wash it off quick!</span>")
|
||||
to_chat(M, span_danger("Searing hot oil burns you, wash it off quick!"))
|
||||
lastburnmessage = world.time
|
||||
|
||||
/datum/reagent/nutriment/triglyceride/oil/cooking
|
||||
@@ -587,7 +587,7 @@
|
||||
..()
|
||||
if(iscarbon(M) && !M.isSynthetic())
|
||||
var/message = pick("Oh god, it smells disgusting here.", "What is that stench?", "That's an awful odor.")
|
||||
to_chat(M, "<span class='alien'>[message]</span>")
|
||||
to_chat(M, span_alien("[message]"))
|
||||
if(prob(CLAMP(amount, 5, 90)))
|
||||
var/mob/living/L = M
|
||||
L.vomit()
|
||||
@@ -725,7 +725,7 @@
|
||||
return
|
||||
if(alien == IS_ALRAUNE) // VOREStation Edit: It wouldn't affect plants that much.
|
||||
if(prob(5))
|
||||
to_chat(M, "<span class='rose'>You feel a chilly, tingling sensation in your mouth.</span>")
|
||||
to_chat(M, span_rose("You feel a chilly, tingling sensation in your mouth."))
|
||||
M.bodytemperature -= rand(10, 25)
|
||||
return
|
||||
if(ishuman(M))
|
||||
@@ -734,12 +734,12 @@
|
||||
return
|
||||
var/effective_dose = (dose * M.species.spice_mod)
|
||||
if((effective_dose < 5) && (dose == metabolism || prob(5)))
|
||||
to_chat(M, "<span class='danger'>Your insides suddenly feel a spreading chill!</span>")
|
||||
to_chat(M, span_danger("Your insides suddenly feel a spreading chill!"))
|
||||
if(effective_dose >= 5)
|
||||
M.apply_effect(2 * M.species.spice_mod, AGONY, 0)
|
||||
M.bodytemperature -= rand(1, 5) * M.species.spice_mod // Really fucks you up, cause it makes you cold.
|
||||
if(prob(5))
|
||||
M.visible_message("<span class='warning'>[M] [pick("dry heaves!","coughs!","splutters!")]</span>", pick("<span class='danger'>You feel like your insides are freezing!</span>", "<span class='danger'>Your insides feel like they're turning to ice!</span>"))
|
||||
M.visible_message(span_warning("[M] [pick("dry heaves!","coughs!","splutters!")]"), pick(span_danger("You feel like your insides are freezing!"), span_danger("Your insides feel like they're turning to ice!")))
|
||||
// holder.remove_reagent("capsaicin", 5) // VOREStation Edit: Nop, we don't instadelete spices for free.
|
||||
|
||||
/datum/reagent/frostoil/cryotoxin //A longer lasting version of frost oil.
|
||||
@@ -770,7 +770,7 @@
|
||||
return
|
||||
if(alien == IS_ALRAUNE) // VOREStation Edit: It wouldn't affect plants that much.
|
||||
if(prob(5))
|
||||
to_chat(M, "<span class='rose'>You feel a pleasant sensation in your mouth.</span>")
|
||||
to_chat(M, span_rose("You feel a pleasant sensation in your mouth."))
|
||||
M.bodytemperature += rand(10, 25)
|
||||
return
|
||||
if(ishuman(M))
|
||||
@@ -780,12 +780,12 @@
|
||||
|
||||
var/effective_dose = (dose * M.species.spice_mod)
|
||||
if((effective_dose < 5) && (dose == metabolism || prob(5)))
|
||||
to_chat(M, "<span class='danger'>Your insides feel uncomfortably hot!</span>")
|
||||
to_chat(M, span_danger("Your insides feel uncomfortably hot!"))
|
||||
if(effective_dose >= 5)
|
||||
M.apply_effect(2 * M.species.spice_mod, AGONY, 0)
|
||||
M.bodytemperature += rand(1, 5) * M.species.spice_mod // Really fucks you up, cause it makes you overheat, too.
|
||||
if(prob(5))
|
||||
M.visible_message("<span class='warning'>[M] [pick("dry heaves!","coughs!","splutters!")]</span>", pick("<span class='danger'>You feel like your insides are burning!</span>", "<span class='danger'>You feel like your insides are on fire!</span>", "<span class='danger'>You feel like your belly is full of lava!</span>"))
|
||||
M.visible_message(span_warning("[M] [pick("dry heaves!","coughs!","splutters!")]"), pick(span_danger("You feel like your insides are burning!"), span_danger("You feel like your insides are on fire!"), span_danger("You feel like your belly is full of lava!")))
|
||||
// holder.remove_reagent("frostoil", 5) // VOREStation Edit: Nop, we don't instadelete spices for free.
|
||||
|
||||
/datum/reagent/condensedcapsaicin
|
||||
@@ -865,11 +865,11 @@
|
||||
if(head_covered && chest_covered && groin_covered && legs_covered && arms_covered && hands_covered && feet_covered)
|
||||
break
|
||||
if(eyes_covered && mouth_covered)
|
||||
to_chat(M, "<span class='warning'>Your [safe_thing] protects you from the pepperspray!</span>")
|
||||
to_chat(M, span_warning("Your [safe_thing] protects you from the pepperspray!"))
|
||||
if(alien != IS_SLIME)
|
||||
return
|
||||
else if(eyes_covered)
|
||||
to_chat(M, "<span class='warning'>Your [safe_thing] protects you from most of the pepperspray!</span>")
|
||||
to_chat(M, span_warning("Your [safe_thing] protects you from most of the pepperspray!"))
|
||||
M.eye_blurry = max(M.eye_blurry, effective_strength * 3)
|
||||
M.Blind(effective_strength)
|
||||
M.Stun(5)
|
||||
@@ -877,12 +877,12 @@
|
||||
if(alien != IS_SLIME)
|
||||
return
|
||||
else if(mouth_covered) // Mouth cover is better than eye cover
|
||||
to_chat(M, "<span class='warning'>Your [safe_thing] protects your face from the pepperspray!</span>")
|
||||
to_chat(M, span_warning("Your [safe_thing] protects your face from the pepperspray!"))
|
||||
M.eye_blurry = max(M.eye_blurry, effective_strength)
|
||||
if(alien != IS_SLIME)
|
||||
return
|
||||
else// Oh dear :D
|
||||
to_chat(M, "<span class='warning'>You're sprayed directly in the eyes with pepperspray!</span>")
|
||||
to_chat(M, span_warning("You're sprayed directly in the eyes with pepperspray!"))
|
||||
M.eye_blurry = max(M.eye_blurry, effective_strength * 5)
|
||||
M.Blind(effective_strength * 2)
|
||||
M.Stun(5)
|
||||
@@ -892,31 +892,31 @@
|
||||
if(alien == IS_SLIME)
|
||||
if(!head_covered)
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your head burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your head burns!"))
|
||||
M.apply_effect(5 * effective_strength, AGONY, 0)
|
||||
if(!chest_covered)
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your chest burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your chest burns!"))
|
||||
M.apply_effect(5 * effective_strength, AGONY, 0)
|
||||
if(!groin_covered && prob(75))
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your groin burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your groin burns!"))
|
||||
M.apply_effect(3 * effective_strength, AGONY, 0)
|
||||
if(!arms_covered && prob(45))
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your arms burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your arms burns!"))
|
||||
M.apply_effect(3 * effective_strength, AGONY, 0)
|
||||
if(!legs_covered && prob(45))
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your legs burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your legs burns!"))
|
||||
M.apply_effect(3 * effective_strength, AGONY, 0)
|
||||
if(!hands_covered && prob(20))
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your hands burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your hands burns!"))
|
||||
M.apply_effect(effective_strength / 2, AGONY, 0)
|
||||
if(!feet_covered && prob(20))
|
||||
if(prob(33))
|
||||
to_chat(M, "<span class='warning'>The exposed flesh on your feet burns!</span>")
|
||||
to_chat(M, span_warning("The exposed flesh on your feet burns!"))
|
||||
M.apply_effect(effective_strength / 2, AGONY, 0)
|
||||
|
||||
/datum/reagent/condensedcapsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -925,11 +925,11 @@
|
||||
if(!H.can_feel_pain())
|
||||
return
|
||||
if(dose == metabolism)
|
||||
to_chat(M, "<span class='danger'>You feel like your insides are burning!</span>")
|
||||
to_chat(M, span_danger("You feel like your insides are burning!"))
|
||||
else
|
||||
M.apply_effect(4, AGONY, 0)
|
||||
if(prob(5))
|
||||
M.visible_message("<span class='warning'>[M] [pick("dry heaves!","coughs!","splutters!")]</span>", "<span class='danger'>You feel like your insides are burning!</span>")
|
||||
M.visible_message(span_warning("[M] [pick("dry heaves!","coughs!","splutters!")]"), span_danger("You feel like your insides are burning!"))
|
||||
// holder.remove_reagent("frostoil", 5) // VOREStation Edit: Nop, we don't instadelete spices for free.
|
||||
|
||||
/* Drinks */
|
||||
@@ -4370,7 +4370,7 @@
|
||||
return
|
||||
var/adjust_liver = rand(-3, 2)
|
||||
if(prob(L.damage))
|
||||
to_chat(M, "<span class='cult'>You feel woozy...</span>")
|
||||
to_chat(M, span_cult("You feel woozy..."))
|
||||
L.damage = max(L.damage + (adjust_liver * removed), 0)
|
||||
var/adjust_tox = rand(-4, 2)
|
||||
M.adjustToxLoss(adjust_tox * removed)
|
||||
@@ -4544,7 +4544,7 @@
|
||||
..()
|
||||
playsound(M, 'sound/items/hooh.ogg', 50, 1, -1)
|
||||
if(prob(5))
|
||||
to_chat(M, "<span class='warning'>You feel like you've been gnomed...</span>")
|
||||
to_chat(M, span_warning("You feel like you've been gnomed..."))
|
||||
|
||||
/datum/reagent/drink/soda/kompot
|
||||
name = "Kompot"
|
||||
|
||||
@@ -62,9 +62,9 @@
|
||||
return
|
||||
else
|
||||
if((dose < 5) && (dose == metabolism || prob(5)))
|
||||
to_chat(M, "<span class='danger'>Your insides feel uncomfortably hot!</span>")
|
||||
to_chat(M, span_danger("Your insides feel uncomfortably hot!"))
|
||||
if(dose >= 5 && prob(5))
|
||||
M.visible_message("<span class='warning'>[M] [pick("dry heaves!","coughs!","splutters!")]</span>", pick("<span class='danger'>You feel like your insides are burning!</span>", "<span class='danger'>You feel like your insides are on fire!</span>", "<span class='danger'>You feel like your belly is full of lava!</span>"))
|
||||
M.visible_message(span_warning("[M] [pick("dry heaves!","coughs!","splutters!")]"), pick(span_danger("You feel like your insides are burning!"), span_danger("You feel like your insides are on fire!"), span_danger("You feel like your belly is full of lava!")))
|
||||
|
||||
/datum/reagent/ethanol/monstertamer
|
||||
name = "Monster Tamer"
|
||||
@@ -103,7 +103,7 @@
|
||||
H.feral -= removed * 3 // should calm them down quick, provided they're actually in a state to STAY calm.
|
||||
if (H.feral <=0) //check if they're unferalled
|
||||
H.feral = 0
|
||||
to_chat(H, "<span class='info'>Your mind starts to clear, soothed into a state of clarity as your senses return.</span>")
|
||||
to_chat(H, span_info("Your mind starts to clear, soothed into a state of clarity as your senses return."))
|
||||
log_and_message_admins("is no longer feral.", H)
|
||||
|
||||
/datum/reagent/ethanol/monstertamer/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -466,7 +466,7 @@
|
||||
H.feral -= removed * 3 // should calm them down quick, provided they're actually in a state to STAY calm.
|
||||
if (H.feral <=0) //check if they're unferalled
|
||||
H.feral = 0
|
||||
to_chat(H, "<span class='info'>Your mind starts to clear, soothed into a state of clarity as your senses return.</span>")
|
||||
to_chat(H, span_info("Your mind starts to clear, soothed into a state of clarity as your senses return."))
|
||||
log_and_message_admins("is no longer feral.", H)
|
||||
|
||||
/datum/reagent/ethanol/hairoftherat/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -556,7 +556,7 @@
|
||||
H.feral -= removed * 3 //Should calm them down quick, provided they're actually in a state to STAY calm.
|
||||
if(H.feral <=0) //Check if they're unferalled
|
||||
H.feral = 0
|
||||
to_chat(H, "<span class='info'>Your mind starts to clear, soothed into a state of clarity as your senses return.</span>")
|
||||
to_chat(H, span_info("Your mind starts to clear, soothed into a state of clarity as your senses return."))
|
||||
log_and_message_admins("is no longer feral.", H)
|
||||
|
||||
/datum/reagent/nutriment/protein/brainzsnax/red
|
||||
@@ -883,7 +883,7 @@
|
||||
/datum/reagent/drink/coffee/nukie/mega/fast/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
if(prob(1))
|
||||
M.visible_message("<span class='danger'>\The [M] sizzles!</span>")
|
||||
M.visible_message(span_danger("\The [M] sizzles!"))
|
||||
M.adjustFireLoss(5)
|
||||
M.add_chemical_effect(CE_SPEEDBOOST, 1)
|
||||
|
||||
|
||||
@@ -261,7 +261,7 @@
|
||||
else if(alien == IS_SLIME && dose >= 15)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 15 * M.species.chem_strength_pain)
|
||||
if(prob(15))
|
||||
to_chat(M, "<span class='notice'>You have a moment of clarity as you collapse.</span>")
|
||||
to_chat(M, span_notice("You have a moment of clarity as you collapse."))
|
||||
M.adjustBrainLoss(-20 * removed) //VOREStation Edit
|
||||
M.Weaken(6)
|
||||
else if(alien != IS_DIONA)
|
||||
@@ -286,7 +286,7 @@
|
||||
else if(alien == IS_SLIME && dose >= 10)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 25 * M.species.chem_strength_pain)
|
||||
if(prob(25))
|
||||
to_chat(M, "<span class='notice'>You have a moment of clarity, as you feel your tubes lose pressure rapidly.</span>")
|
||||
to_chat(M, span_notice("You have a moment of clarity, as you feel your tubes lose pressure rapidly."))
|
||||
M.adjustBrainLoss(-8 * removed)
|
||||
M.Weaken(3)
|
||||
else if(alien != IS_DIONA)
|
||||
@@ -368,7 +368,7 @@
|
||||
var/chem_effective = 1 * M.species.chem_strength_heal
|
||||
if(alien == IS_SLIME)
|
||||
chem_effective = 0.25
|
||||
to_chat(M, "<span class='danger'>It's cold. Something causes your cellular mass to harden occasionally, resulting in vibration.</span>")
|
||||
to_chat(M, span_danger("It's cold. Something causes your cellular mass to harden occasionally, resulting in vibration."))
|
||||
M.Weaken(10)
|
||||
M.silent = max(M.silent, 10)
|
||||
M.make_jittery(4)
|
||||
@@ -393,7 +393,7 @@
|
||||
var/chem_effective = 1 * M.species.chem_strength_heal
|
||||
if(alien == IS_SLIME)
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='danger'>It's so cold. Something causes your cellular mass to harden sporadically, resulting in seizure-like twitching.</span>")
|
||||
to_chat(M, span_danger("It's so cold. Something causes your cellular mass to harden sporadically, resulting in seizure-like twitching."))
|
||||
chem_effective = 0.5
|
||||
M.Weaken(20)
|
||||
M.silent = max(M.silent, 20)
|
||||
@@ -427,7 +427,7 @@
|
||||
var/chem_effective = 1 * M.species.chem_strength_heal
|
||||
if(alien == IS_SLIME)
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='danger'>It's so cold. Something causes your cellular mass to solidify sporadically, resulting in uncontrollable twitching.</span>")
|
||||
to_chat(M, span_danger("It's so cold. Something causes your cellular mass to solidify sporadically, resulting in uncontrollable twitching."))
|
||||
chem_effective = 0.5
|
||||
M.Weaken(10)
|
||||
M.silent = max(M.silent, 10)
|
||||
@@ -463,7 +463,7 @@
|
||||
if(M.bodytemperature < 170 || (M.stat == DEAD && M.has_modifier_of_type(/datum/modifier/bloodpump_corpse)))
|
||||
if(alien == IS_SLIME)
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='danger'>It's so cold. Something causes your cellular mass to harden sporadically, resulting in seizure-like twitching.</span>")
|
||||
to_chat(M, span_danger("It's so cold. Something causes your cellular mass to harden sporadically, resulting in seizure-like twitching."))
|
||||
chem_effective = 0.5
|
||||
M.Weaken(20)
|
||||
M.silent = max(M.silent, 20)
|
||||
@@ -617,7 +617,7 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/internal/heart/ht = H.internal_organs_by_name[O_HEART]
|
||||
ht?.take_damage(1)
|
||||
to_chat(M, "<span class='warning'>Huh... Is this what a heart attack feels like?</span>")
|
||||
to_chat(M, span_warning("Huh... Is this what a heart attack feels like?"))
|
||||
|
||||
/datum/reagent/alkysine
|
||||
name = "Alkysine"
|
||||
@@ -862,7 +862,7 @@
|
||||
if(prob(5))
|
||||
H.vomit(1)
|
||||
else if(prob(5))
|
||||
to_chat(H, "<span class='danger'>Something churns inside you.</span>")
|
||||
to_chat(H, span_danger("Something churns inside you."))
|
||||
H.adjustToxLoss(10 * removed)
|
||||
H.vomit(0, 1)
|
||||
else
|
||||
@@ -1136,12 +1136,12 @@
|
||||
if(alien == IS_SLIME)
|
||||
if(volume <= 0.1 && data != -1)
|
||||
data = -1
|
||||
to_chat(M, "<span class='notice'>You regain focus...</span>")
|
||||
to_chat(M, span_notice("You regain focus..."))
|
||||
else
|
||||
var/delay = (5 MINUTES)
|
||||
if(world.time > data + delay)
|
||||
data = world.time
|
||||
to_chat(M, "<span class='warning'>Your senses feel unfocused, and divided.</span>")
|
||||
to_chat(M, span_warning("Your senses feel unfocused, and divided."))
|
||||
M.add_chemical_effect(CE_ANTIBIOTIC, dose >= overdose ? ANTIBIO_OD : ANTIBIO_NORM)
|
||||
|
||||
/datum/reagent/spaceacillin/affect_touch(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
@@ -1169,12 +1169,12 @@
|
||||
if(ishuman(M) && alien == IS_SLIME) //Everything about them is treated like a targetted organism. Widespread bodily function begins to fail.
|
||||
if(volume <= 0.1 && data != -1)
|
||||
data = -1
|
||||
to_chat(M, "<span class='notice'>Your body ceases its revolt.</span>")
|
||||
to_chat(M, span_notice("Your body ceases its revolt."))
|
||||
else
|
||||
var/delay = (3 MINUTES)
|
||||
if(world.time > data + delay)
|
||||
data = world.time
|
||||
to_chat(M, "<span class='critical'>It feels like your body is revolting!</span>")
|
||||
to_chat(M, span_critical("It feels like your body is revolting!"))
|
||||
M.Confuse(7)
|
||||
M.adjustFireLoss(removed * 2)
|
||||
M.adjustToxLoss(removed * 2)
|
||||
@@ -1183,7 +1183,7 @@
|
||||
M.eye_blurry = min(20, max(0, M.eye_blurry + 10))
|
||||
if(prob(25))
|
||||
if(prob(25))
|
||||
to_chat(M, "<span class='danger'>Your pneumatic fluids seize for a moment.</span>")
|
||||
to_chat(M, span_danger("Your pneumatic fluids seize for a moment."))
|
||||
M.Stun(2)
|
||||
spawn(30)
|
||||
M.Weaken(2)
|
||||
@@ -1196,7 +1196,7 @@
|
||||
if(M.bruteloss >= 60 && M.toxloss >= 60 && M.brainloss >= 30) //Total Structural Failure. Limbs start splattering.
|
||||
var/obj/item/organ/external/O = pick(H.organs)
|
||||
if(prob(20) && !istype(O, /obj/item/organ/external/chest/unbreakable/slime) && !istype(O, /obj/item/organ/external/groin/unbreakable/slime))
|
||||
to_chat(M, "<span class='critical'>You feel your [O] begin to dissolve, before it sloughs from your body.</span>")
|
||||
to_chat(M, span_critical("You feel your [O] begin to dissolve, before it sloughs from your body."))
|
||||
O.droplimb() //Splat.
|
||||
return
|
||||
|
||||
@@ -1241,12 +1241,12 @@
|
||||
if(alien == IS_SLIME)
|
||||
if(volume <= 0.1 && data != -1)
|
||||
data = -1
|
||||
to_chat(M, "<span class='notice'>The itching fades...</span>")
|
||||
to_chat(M, span_notice("The itching fades..."))
|
||||
else
|
||||
var/delay = (2 MINUTES)
|
||||
if(world.time > data + delay)
|
||||
data = world.time
|
||||
to_chat(M, "<span class='warning'>Your skin itches.</span>")
|
||||
to_chat(M, span_warning("Your skin itches."))
|
||||
|
||||
M.add_chemical_effect(CE_ANTIBIOTIC, dose >= overdose ? ANTIBIO_OD : ANTIBIO_NORM)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 20 * M.species.chem_strength_pain) // 5 less than paracetamol.
|
||||
@@ -1313,7 +1313,7 @@
|
||||
if(istype(L, /mob/living/simple_mob/slime))
|
||||
var/mob/living/simple_mob/slime/S = L
|
||||
S.adjustToxLoss(rand(15, 25) * amount) // Does more damage than water.
|
||||
S.visible_message("<span class='warning'>[S]'s flesh sizzles where the fluid touches it!</span>", "<span class='danger'>Your flesh burns in the fluid!</span>")
|
||||
S.visible_message(span_warning("[S]'s flesh sizzles where the fluid touches it!"), span_danger("Your flesh burns in the fluid!"))
|
||||
remove_self(amount)
|
||||
|
||||
/datum/reagent/leporazine
|
||||
@@ -1427,4 +1427,4 @@
|
||||
M.adjustCloneLoss(-2 * removed)
|
||||
M.druggy = max(M.druggy, 20)
|
||||
M.hallucination = max(M.hallucination, 3)
|
||||
M.adjustBrainLoss(1 * removed) //your life for your mind. The Earthmother's Tithe.
|
||||
M.adjustBrainLoss(1 * removed) //your life for your mind. The Earthmother's Tithe.
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
/datum/reagent/numbing_enzyme/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.add_chemical_effect(CE_PAINKILLER, 200)
|
||||
if(prob(0.01)) //1 in 10000 chance per tick. Extremely rare.
|
||||
to_chat(M,"<span class='warning'>Your body feels numb as a light, tingly sensation spreads throughout it, like some odd warmth.</span>")
|
||||
to_chat(M,span_warning("Your body feels numb as a light, tingly sensation spreads throughout it, like some odd warmth."))
|
||||
//Not noted here, but a movement debuff of 1.5 is handed out in human_movement.dm when numbing_enzyme is in a person's bloodstream!
|
||||
|
||||
/datum/reagent/numbing_enzyme/overdose(var/mob/living/carbon/M, var/alien)
|
||||
@@ -40,24 +40,24 @@
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(prob(1))
|
||||
to_chat(H,"<span class='warning'>Your entire body feels numb and the sensation of pins and needles continually assaults you. You blink and the next thing you know, your legs give out momentarily!</span>")
|
||||
to_chat(H,span_warning("Your entire body feels numb and the sensation of pins and needles continually assaults you. You blink and the next thing you know, your legs give out momentarily!"))
|
||||
H.AdjustWeakened(5) //Fall onto the floor for a few moments.
|
||||
H.Confuse(15) //Be unable to walk correctly for a bit longer.
|
||||
if(prob(1))
|
||||
if(H.losebreath <= 1 && H.oxyloss <= 20) //Let's not suffocate them to the point that they pass out.
|
||||
to_chat(H,"<span class='warning'>You feel a sharp stabbing pain in your chest and quickly realize that your lungs have stopped functioning!</span>") //Let's scare them a bit.
|
||||
to_chat(H,span_warning("You feel a sharp stabbing pain in your chest and quickly realize that your lungs have stopped functioning!")) //Let's scare them a bit.
|
||||
H.losebreath = 10
|
||||
H.adjustOxyLoss(5)
|
||||
if(prob(2))
|
||||
to_chat(H,"<span class='warning'>You feel a dull pain behind your eyes and at thee back of your head...</span>")
|
||||
to_chat(H,span_warning("You feel a dull pain behind your eyes and at thee back of your head..."))
|
||||
H.hallucination += 20 //It messes with your mind for some reason.
|
||||
H.eye_blurry += 20 //Groggy vision for a small bit.
|
||||
if(prob(3))
|
||||
to_chat(H,"<span class='warning'>You shiver, your body continually being assaulted by the sensation of pins and needles.</span>")
|
||||
to_chat(H,span_warning("You shiver, your body continually being assaulted by the sensation of pins and needles."))
|
||||
H.emote("shiver")
|
||||
H.make_jittery(10)
|
||||
if(prob(3))
|
||||
to_chat(H,"<span class='warning'>Your tongue feels numb and unresponsive.</span>")
|
||||
to_chat(H,span_warning("Your tongue feels numb and unresponsive."))
|
||||
H.stuttering += 20
|
||||
|
||||
/datum/reagent/vermicetol
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
/datum/reagent/modapplying/cryofluid/touch_turf(var/turf/T, var/amount)
|
||||
..()
|
||||
if(istype(T, /turf/simulated/floor/water) && prob(amount))
|
||||
T.visible_message("<span class='danger'>\The [T] crackles loudly as the cryogenic fluid causes it to boil away, leaving behind a hard layer of ice.</span>")
|
||||
T.visible_message(span_danger("\The [T] crackles loudly as the cryogenic fluid causes it to boil away, leaving behind a hard layer of ice."))
|
||||
T.ChangeTurf(/turf/simulated/floor/outdoors/ice, 1, 1, TRUE)
|
||||
else
|
||||
if(istype(T, /turf/simulated))
|
||||
|
||||
@@ -509,7 +509,7 @@
|
||||
var/obj/item/clothing/mask/smokable/S = H.wear_mask
|
||||
if(S.lit)
|
||||
S.quench() // No smoking in my medbay!
|
||||
H.visible_message("<span class='notice'>[H]\'s [S.name] is put out.</span>")
|
||||
H.visible_message(span_notice("[H]\'s [S.name] is put out."))
|
||||
|
||||
/datum/reagent/lube // TODO: spraying on borgs speeds them up
|
||||
name = "Space Lube"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.species.name != "Promethean")
|
||||
to_chat(M, "<span class='danger'>Your flesh rapidly mutates!</span>")
|
||||
to_chat(M, span_danger("Your flesh rapidly mutates!"))
|
||||
|
||||
var/list/backup_implants = list()
|
||||
for(var/obj/item/organ/I in H.organs)
|
||||
@@ -80,7 +80,7 @@
|
||||
var/removed_heat = between(0, volume * 19000, -environment.get_thermal_energy_change(min_temperature))
|
||||
environment.add_thermal_energy(-removed_heat)
|
||||
if(prob(5))
|
||||
T.visible_message("<span class='warning'>The foam sizzles as it lands on \the [T]!</span>")
|
||||
T.visible_message(span_warning("The foam sizzles as it lands on \the [T]!"))
|
||||
|
||||
/datum/reagent/firefighting_foam/touch_obj(var/obj/O, reac_volume)
|
||||
O.water_act(reac_volume / 5)
|
||||
@@ -89,7 +89,7 @@
|
||||
if(istype(M, /mob/living/simple_mob/slime)) //I'm sure foam is water-based!
|
||||
var/mob/living/simple_mob/slime/S = M
|
||||
S.adjustToxLoss(15 * reac_volume)
|
||||
S.visible_message("<span class='warning'>[S]'s flesh sizzles where the foam touches it!</span>", "<span class='danger'>Your flesh burns in the foam!</span>")
|
||||
S.visible_message(span_warning("[S]'s flesh sizzles where the foam touches it!"), span_danger("Your flesh burns in the foam!"))
|
||||
|
||||
M.adjust_fire_stacks(-reac_volume)
|
||||
M.ExtinguishMob()
|
||||
|
||||
@@ -120,7 +120,7 @@
|
||||
if(alien == IS_SLIME)
|
||||
M.adjust_fire_stacks(removed * 10)
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='critical'>You feel something boiling within you!</span>")
|
||||
to_chat(M, span_critical("You feel something boiling within you!"))
|
||||
spawn(rand(30, 60))
|
||||
M.IgniteMob()
|
||||
|
||||
@@ -254,7 +254,7 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/internal/heart/ht = H.internal_organs_by_name[O_HEART]
|
||||
ht?.take_damage(1)
|
||||
to_chat(M, "<span class='warning'>Huh... Is this what a heart attack feels like?</span>")
|
||||
to_chat(M, span_warning("Huh... Is this what a heart attack feels like?"))
|
||||
|
||||
/datum/reagent/toxin/potassium_chloride
|
||||
name = "Potassium Chloride"
|
||||
@@ -416,7 +416,7 @@
|
||||
if(locate(/obj/effect/overlay/wallrot) in W)
|
||||
for(var/obj/effect/overlay/wallrot/E in W)
|
||||
qdel(E)
|
||||
W.visible_message("<span class='notice'>The fungi are completely dissolved by the solution!</span>")
|
||||
W.visible_message(span_notice("The fungi are completely dissolved by the solution!"))
|
||||
|
||||
/datum/reagent/toxin/plantbgone/touch_obj(var/obj/O, var/volume)
|
||||
..()
|
||||
@@ -501,11 +501,11 @@
|
||||
if(alien == IS_DIONA)
|
||||
return
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='warning'>Your veins feel like they're on fire!</span>")
|
||||
to_chat(M, span_warning("Your veins feel like they're on fire!"))
|
||||
M.adjust_fire_stacks(0.1)
|
||||
else if(prob(5))
|
||||
M.IgniteMob()
|
||||
to_chat(M, "<span class='critical'>Some of your veins rupture, the exposed blood igniting!</span>")
|
||||
to_chat(M, span_critical("Some of your veins rupture, the exposed blood igniting!"))
|
||||
|
||||
/datum/reagent/condensedcapsaicin/venom
|
||||
name = "Irritant toxin"
|
||||
@@ -523,9 +523,9 @@
|
||||
if(prob(50))
|
||||
M.apply_effect(4, AGONY, 0)
|
||||
if(prob(20))
|
||||
to_chat(M, "<span class='danger'>You feel like your insides are burning!</span>")
|
||||
to_chat(M, span_danger("You feel like your insides are burning!"))
|
||||
else if(prob(20))
|
||||
M.visible_message("<span class='warning'>[M] [pick("dry heaves!","coughs!","splutters!","rubs at their eyes!")]</span>")
|
||||
M.visible_message(span_warning("[M] [pick("dry heaves!","coughs!","splutters!","rubs at their eyes!")]"))
|
||||
else
|
||||
M.eye_blurry = max(M.eye_blurry, 10)
|
||||
|
||||
@@ -545,7 +545,7 @@
|
||||
M.apply_effect(5, AGONY, 0)
|
||||
M.adjustToxLoss(3 * removed)
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='warning'>Your cellular mass hardens for a moment.</span>")
|
||||
to_chat(M, span_warning("Your cellular mass hardens for a moment."))
|
||||
M.Stun(6)
|
||||
return
|
||||
if(alien == IS_SKRELL)
|
||||
@@ -623,7 +623,7 @@
|
||||
M.UpdateAppearance()
|
||||
if(prob(removed * 40)) //Additionally, let's make it so there's an 8% chance per tick for a random cosmetic/not guranteed good/bad mutation.
|
||||
randmuti(M)//This should equate to 4 random cosmetic mutations per 10 injected/20 ingested/30 touching units
|
||||
to_chat(M, "<span class='warning'>You feel odd!</span>")
|
||||
to_chat(M, span_warning("You feel odd!"))
|
||||
M.apply_effect(10 * removed, IRRADIATE, 0)
|
||||
|
||||
/datum/reagent/slimejelly
|
||||
@@ -646,7 +646,7 @@
|
||||
M.add_chemical_effect(CE_PAINKILLER, 60)
|
||||
else
|
||||
if(prob(10))
|
||||
to_chat(M, "<span class='danger'>Your insides are burning!</span>")
|
||||
to_chat(M, span_danger("Your insides are burning!"))
|
||||
M.adjustToxLoss(rand(100, 300) * removed)
|
||||
else if(prob(40))
|
||||
M.heal_organ_damage(25 * removed, 0)
|
||||
@@ -893,7 +893,7 @@
|
||||
M.UpdateAppearance()
|
||||
if(prob(removed * 40))
|
||||
randmuti(M)
|
||||
to_chat(M, "<span class='warning'>You feel odd!</span>")
|
||||
to_chat(M, span_warning("You feel odd!"))
|
||||
M.apply_effect(16 * removed, IRRADIATE, 0)
|
||||
|
||||
/datum/reagent/aslimetoxin
|
||||
@@ -923,7 +923,7 @@
|
||||
M.UpdateAppearance()
|
||||
if(prob(removed * 40))
|
||||
randmuti(M)
|
||||
to_chat(M, "<span class='warning'>You feel odd!</span>")
|
||||
to_chat(M, span_warning("You feel odd!"))
|
||||
M.apply_effect(6 * removed, IRRADIATE, 0)
|
||||
|
||||
/*
|
||||
|
||||
@@ -142,8 +142,8 @@
|
||||
if(!(H.gender == MALE))
|
||||
H.set_gender(MALE)
|
||||
H.change_gender_identity(MALE)
|
||||
H.visible_message("<span class='notice'>[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now male.</span>",
|
||||
"<span class='warning'>Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became male.</span>")
|
||||
H.visible_message(span_notice("[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now male."),
|
||||
span_warning("Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became male."))
|
||||
|
||||
/datum/reagent/gynorovir
|
||||
name = "Gynorovir"
|
||||
@@ -163,8 +163,8 @@
|
||||
if(!(H.gender == FEMALE))
|
||||
H.set_gender(FEMALE)
|
||||
H.change_gender_identity(FEMALE)
|
||||
H.visible_message("<span class='notice'>[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now female.</span>",
|
||||
"<span class='warning'>Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became female.</span>")
|
||||
H.visible_message(span_notice("[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now female."),
|
||||
span_warning("Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became female."))
|
||||
|
||||
/datum/reagent/androgynorovir
|
||||
name = "Androgynorovir"
|
||||
@@ -184,8 +184,8 @@
|
||||
if(!(H.gender == PLURAL))
|
||||
H.set_gender(PLURAL)
|
||||
H.change_gender_identity(PLURAL)
|
||||
H.visible_message("<span class='notice'>[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now of mixed gender.</span>",
|
||||
"<span class='warning'>Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became of mixed gender.</span>")
|
||||
H.visible_message(span_notice("[H] suddenly twitches as some of their features seem to contort and reshape, adjusting... In the end, it seems they are now of mixed gender."),
|
||||
span_warning("Your body suddenly contorts, feeling very different in various ways... By the time the rushing feeling is over it seems you just became of mixed gender."))
|
||||
|
||||
|
||||
////////////////////////// Misc Drugs //////////////////////////
|
||||
@@ -241,4 +241,4 @@
|
||||
/datum/reagent/pain_enzyme/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
M.add_chemical_effect(CE_PAINKILLER, -200)
|
||||
if(prob(0.01)) //1 in 10000 chance per tick. Extremely rare.
|
||||
to_chat(M,"<span class='warning'>Your body feels as though it's on fire!</span>")
|
||||
to_chat(M,span_warning("Your body feels as though it's on fire!"))
|
||||
|
||||
Reference in New Issue
Block a user