to_chat replacing stream operator

This commit is contained in:
Arokha Sieyes
2020-02-17 13:14:08 -05:00
committed by Leshana
parent 5aaba55222
commit 5b15917d32
712 changed files with 4250 additions and 4220 deletions
+5 -5
View File
@@ -1146,7 +1146,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
if(L)
if(reception_message)
L << reception_message
to_chat(L,reception_message)
SSnanoui.update_user_uis(L, src) // Update the receiving user's PDA UI so that they can see the new message
/obj/item/device/pda/proc/new_news(var/message)
@@ -1389,11 +1389,11 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/reagents_length = A.reagents.reagent_list.len
to_chat(user, "<span class='notice'>[reagents_length] chemical agent[reagents_length > 1 ? "s" : ""] found.</span>")
for (var/re in A.reagents.reagent_list)
to_chat(user,"<span class='notice'> [re]</span>")
to_chat(user, "<span class='notice'> [re]</span>")
else
to_chat(user,"<span class='notice'>No active chemical agents found in [A].</span>")
to_chat(user, "<span class='notice'>No active chemical agents found in [A].</span>")
else
to_chat(user,"<span class='notice'>No significantchemical agents found in [A].</span>")
to_chat(user, "<span class='notice'>No significantchemical agents found in [A].</span>")
if(5)
analyze_gases(A, user)
@@ -1445,7 +1445,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
// feature to the PDA, which would better convey the availability of the feature, but this will work for now.
// Inform the user
to_chat(user,"<span class='notice'>Paper scanned and OCRed to notekeeper.</span>") //concept of scanning paper copyright brainoblivion 2009
to_chat(user, "<span class='notice'>Paper scanned and OCRed to notekeeper.</span>") //concept of scanning paper copyright brainoblivion 2009
/obj/item/device/pda/proc/explode() //This needs tuning. //Sure did.
+3 -3
View File
@@ -15,7 +15,7 @@
proc/post_signal(var/freq, var/key, var/value, var/key2, var/value2, var/key3, var/value3, s_filter)
//world << "Post: [freq]: [key]=[value], [key2]=[value2]"
//to_world("Post: [freq]: [key]=[value], [key2]=[value2]")
var/datum/radio_frequency/frequency = radio_controller.return_frequency(freq)
if(!frequency) return
@@ -57,9 +57,9 @@
// var/obj/item/device/pda/P = src.loc
/*
world << "recvd:[P] : [signal.source]"
to_world("recvd:[P] : [signal.source]")
for(var/d in signal.data)
world << "- [d] = [signal.data[d]]"
to_world("- [d] = [signal.data[d]]")
*/
if (signal.data["type"] == "secbot")
if(!botlist)
+1 -1
View File
@@ -19,7 +19,7 @@
return ..()
else
M.death()
user << "<b>ERROR ERROR ERROR</b>"
to_chat(user, "<b>ERROR ERROR ERROR</b>")
/obj/item/device/aicard/attack_self(mob/user)
@@ -32,7 +32,7 @@
if(!active_dummy)
if(istype(target,/obj/item) && !istype(target, /obj/item/weapon/disk/nuclear))
playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6)
user << "<span class='notice'>Scanned [target].</span>"
to_chat(user, "<span class='notice'>Scanned [target].</span>")
saved_item = target.type
saved_icon = target.icon
saved_icon_state = target.icon_state
@@ -45,7 +45,7 @@
playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6)
qdel(active_dummy)
active_dummy = null
usr << "<span class='notice'>You deactivate the [src].</span>"
to_chat(usr, "<span class='notice'>You deactivate the [src].</span>")
var/obj/effect/overlay/T = new /obj/effect/overlay(get_turf(src))
T.icon = 'icons/effects/effects.dmi'
flick("emppulse",T)
@@ -57,7 +57,7 @@
var/obj/effect/dummy/chameleon/C = new /obj/effect/dummy/chameleon(usr.loc)
C.activate(O, usr, saved_icon, saved_icon_state, saved_overlays, src)
qdel(O)
usr << "<span class='notice'>You activate the [src].</span>"
to_chat(usr, "<span class='notice'>You activate the [src].</span>")
var/obj/effect/overlay/T = new/obj/effect/overlay(get_turf(src))
T.icon = 'icons/effects/effects.dmi'
flick("emppulse",T)
@@ -104,22 +104,22 @@
/obj/effect/dummy/chameleon/attackby()
for(var/mob/M in src)
M << "<span class='warning'>Your chameleon-projector deactivates.</span>"
to_chat(M, "<span class='warning'>Your chameleon-projector deactivates.</span>")
master.disrupt()
/obj/effect/dummy/chameleon/attack_hand()
for(var/mob/M in src)
M << "<span class='warning'>Your chameleon-projector deactivates.</span>"
to_chat(M, "<span class='warning'>Your chameleon-projector deactivates.</span>")
master.disrupt()
/obj/effect/dummy/chameleon/ex_act()
for(var/mob/M in src)
M << "<span class='warning'>Your chameleon-projector deactivates.</span>"
to_chat(M, "<span class='warning'>Your chameleon-projector deactivates.</span>")
master.disrupt()
/obj/effect/dummy/chameleon/bullet_act()
for(var/mob/M in src)
M << "<span class='warning'>Your chameleon-projector deactivates.</span>"
to_chat(M, "<span class='warning'>Your chameleon-projector deactivates.</span>")
..()
master.disrupt()
@@ -349,13 +349,13 @@
if(!Adjacent(user) || !video_source) return
user.set_machine(video_source)
user.reset_view(video_source)
to_chat(user,"<span class='notice'>Now viewing video session. To leave camera view, close the communicator window OR: OOC -> Cancel Camera View</span>")
to_chat(user,"<span class='notice'>To return to an active video session, use the communicator in your hand.</span>")
to_chat(user, "<span class='notice'>Now viewing video session. To leave camera view, close the communicator window OR: OOC -> Cancel Camera View</span>")
to_chat(user, "<span class='notice'>To return to an active video session, use the communicator in your hand.</span>")
spawn(0)
while(user.machine == video_source && Adjacent(user))
var/turf/T = get_turf(video_source)
if(!T || !is_on_same_plane_or_station(T.z, user.z) || !video_source.can_use())
user << "<span class='warning'>The screen bursts into static, then goes black.</span>"
to_chat(user, "<span class='warning'>The screen bursts into static, then goes black.</span>")
video_cleanup(user)
return
sleep(10)
+6 -6
View File
@@ -25,21 +25,21 @@
if(istype(O, /obj/machinery/power/apc))
var/obj/machinery/power/apc/A = O
if(A.emagged || A.hacker)
user << "<span class='warning'>There is a software error with the device.</span>"
to_chat(user, "<span class='warning'>There is a software error with the device.</span>")
else
user << "<span class='notice'>The device's software appears to be fine.</span>"
to_chat(user, "<span class='notice'>The device's software appears to be fine.</span>")
return 1
if(istype(O, /obj/machinery/door))
var/obj/machinery/door/D = O
if(D.operating == -1)
user << "<span class='warning'>There is a software error with the device.</span>"
to_chat(user, "<span class='warning'>There is a software error with the device.</span>")
else
user << "<span class='notice'>The device's software appears to be fine.</span>"
to_chat(user, "<span class='notice'>The device's software appears to be fine.</span>")
return 1
else if(istype(O, /obj/machinery))
var/obj/machinery/A = O
if(A.emagged)
user << "<span class='warning'>There is a software error with the device.</span>"
to_chat(user, "<span class='warning'>There is a software error with the device.</span>")
else
user << "<span class='notice'>The device's software appears to be fine.</span>"
to_chat(user, "<span class='notice'>The device's software appears to be fine.</span>")
return 1
+20 -20
View File
@@ -54,7 +54,7 @@
if(choice)
brightness_level = choice
power_usage = brightness_levels[choice]
user << "<span class='notice'>You set the brightness level on \the [src] to [brightness_level].</span>"
to_chat(user, "<span class='notice'>You set the brightness level on \the [src] to [brightness_level].</span>")
update_icon()
/obj/item/device/flashlight/process()
@@ -103,15 +103,15 @@
else if(cell.charge > cell.maxcharge*0.75 && cell.charge <= cell.maxcharge)
tempdesc += "It appears to have a high amount of power remaining."
user << "[tempdesc]"
to_chat(user, "[tempdesc]")
/obj/item/device/flashlight/attack_self(mob/user)
if(power_use)
if(!isturf(user.loc))
user << "You cannot turn the light on while in this [user.loc]." //To prevent some lighting anomalities.
to_chat(user, "You cannot turn the light on while in this [user.loc].") //To prevent some lighting anomalities.
return 0
if(!cell || cell.charge == 0)
user << "You flick the switch on [src], but nothing happens."
to_chat(user, "You flick the switch on [src], but nothing happens.")
return 0
on = !on
playsound(src.loc, 'sound/weapons/empty.ogg', 15, 1, -3)
@@ -135,38 +135,38 @@
if(istype(H))
for(var/obj/item/clothing/C in list(H.head,H.wear_mask,H.glasses))
if(istype(C) && (C.body_parts_covered & EYES))
user << "<span class='warning'>You're going to need to remove [C.name] first.</span>"
to_chat(user, "<span class='warning'>You're going to need to remove [C.name] first.</span>")
return
var/obj/item/organ/vision
if(H.species.vision_organ)
vision = H.internal_organs_by_name[H.species.vision_organ]
if(!vision)
user << "<span class='warning'>You can't find any [H.species.vision_organ ? H.species.vision_organ : "eyes"] on [H]!</span>"
to_chat(user, "<span class='warning'>You can't find any [H.species.vision_organ ? H.species.vision_organ : "eyes"] on [H]!</span>")
user.visible_message("<span class='notice'>\The [user] directs [src] to [M]'s eyes.</span>", \
"<span class='notice'>You direct [src] to [M]'s eyes.</span>")
if(H != user) //can't look into your own eyes buster
if(M.stat == DEAD || M.blinded) //mob is dead or fully blind
user << "<span class='warning'>\The [M]'s pupils do not react to the light!</span>"
to_chat(user, "<span class='warning'>\The [M]'s pupils do not react to the light!</span>")
return
if(XRAY in M.mutations)
user << "<span class='notice'>\The [M] pupils give an eerie glow!</span>"
to_chat(user, "<span class='notice'>\The [M] pupils give an eerie glow!</span>")
if(vision.is_bruised())
user << "<span class='warning'>There's visible damage to [M]'s [vision.name]!</span>"
to_chat(user, "<span class='warning'>There's visible damage to [M]'s [vision.name]!</span>")
else if(M.eye_blurry)
user << "<span class='notice'>\The [M]'s pupils react slower than normally.</span>"
to_chat(user, "<span class='notice'>\The [M]'s pupils react slower than normally.</span>")
if(M.getBrainLoss() > 15)
user << "<span class='notice'>There's visible lag between left and right pupils' reactions.</span>"
to_chat(user, "<span class='notice'>There's visible lag between left and right pupils' reactions.</span>")
var/list/pinpoint = list("oxycodone"=1,"tramadol"=5)
var/list/dilating = list("space_drugs"=5,"mindbreaker"=1)
if(M.reagents.has_any_reagent(pinpoint) || H.ingested.has_any_reagent(pinpoint))
user << "<span class='notice'>\The [M]'s pupils are already pinpoint and cannot narrow any more.</span>"
to_chat(user, "<span class='notice'>\The [M]'s pupils are already pinpoint and cannot narrow any more.</span>")
else if(M.reagents.has_any_reagent(dilating) || H.ingested.has_any_reagent(dilating))
user << "<span class='notice'>\The [M]'s pupils narrow slightly, but are still very dilated.</span>"
to_chat(user, "<span class='notice'>\The [M]'s pupils narrow slightly, but are still very dilated.</span>")
else
user << "<span class='notice'>\The [M]'s pupils narrow.</span>"
to_chat(user, "<span class='notice'>\The [M]'s pupils narrow.</span>")
user.setClickCooldown(user.get_attack_speed(src)) //can be used offensively
M.flash_eyes()
@@ -179,7 +179,7 @@
cell.update_icon()
user.put_in_hands(cell)
cell = null
user << "<span class='notice'>You remove the cell from the [src].</span>"
to_chat(user, "<span class='notice'>You remove the cell from the [src].</span>")
playsound(src, 'sound/machines/button.ogg', 30, 1, 0)
on = 0
update_icon()
@@ -228,13 +228,13 @@
user.drop_item()
W.loc = src
cell = W
user << "<span class='notice'>You install a cell in \the [src].</span>"
to_chat(user, "<span class='notice'>You install a cell in \the [src].</span>")
playsound(src, 'sound/machines/button.ogg', 30, 1, 0)
update_icon()
else
user << "<span class='notice'>\The [src] already has a cell.</span>"
to_chat(user, "<span class='notice'>\The [src] already has a cell.</span>")
else
user << "<span class='notice'>\The [src] cannot use that type of cell.</span>"
to_chat(user, "<span class='notice'>\The [src] cannot use that type of cell.</span>")
else
..()
@@ -359,7 +359,7 @@
// Usual checks
if(!fuel)
user << "<span class='notice'>It's out of fuel.</span>"
to_chat(user, "<span class='notice'>It's out of fuel.</span>")
return
if(on)
return
@@ -413,7 +413,7 @@
/obj/item/device/flashlight/glowstick/attack_self(mob/user)
if(!fuel)
user << "<span class='notice'>The glowstick has already been turned on.</span>"
to_chat(user, "<span class='notice'>The glowstick has already been turned on.</span>")
return
if(on)
return
@@ -45,11 +45,11 @@
var/turf/simulated/floor/F = A
if(!istype(F))
user << "<span class='warning'>\The [src] can only be used on station flooring.</span>"
to_chat(user, "<span class='warning'>\The [src] can only be used on station flooring.</span>")
return
if(!F.flooring || !F.flooring.can_paint || F.broken || F.burnt)
user << "<span class='warning'>\The [src] cannot paint broken or missing tiles.</span>"
to_chat(user, "<span class='warning'>\The [src] cannot paint broken or missing tiles.</span>")
return
var/list/decal_data = decals[decal]
@@ -63,11 +63,11 @@
config_error = 1
if(config_error)
user << "<span class='warning'>\The [src] flashes an error light. You might need to reconfigure it.</span>"
to_chat(user, "<span class='warning'>\The [src] flashes an error light. You might need to reconfigure it.</span>")
return
if(F.decals && F.decals.len > 5 && painting_decal != /obj/effect/floor_decal/reset)
user << "<span class='warning'>\The [F] has been painted too much; you need to clear it off.</span>"
to_chat(user, "<span class='warning'>\The [F] has been painted too much; you need to clear it off.</span>")
return
var/painting_dir = 0
@@ -111,7 +111,7 @@
/obj/item/device/floor_painter/examine(mob/user)
..(user)
user << "It is configured to produce the '[decal]' decal with a direction of '[paint_dir]' using [paint_colour] paint."
to_chat(user, "It is configured to produce the '[decal]' decal with a direction of '[paint_dir]' using [paint_colour] paint.")
/obj/item/device/floor_painter/verb/choose_colour()
set name = "Choose Colour"
@@ -124,7 +124,7 @@
var/new_colour = input(usr, "Choose a colour.", "Floor painter", paint_colour) as color|null
if(new_colour && new_colour != paint_colour)
paint_colour = new_colour
usr << "<span class='notice'>You set \the [src] to paint with <font color='[paint_colour]'>a new colour</font>.</span>"
to_chat(usr, "<span class='notice'>You set \the [src] to paint with <font color='[paint_colour]'>a new colour</font>.</span>")
/obj/item/device/floor_painter/verb/choose_decal()
set name = "Choose Decal"
@@ -138,7 +138,7 @@
var/new_decal = input("Select a decal.") as null|anything in decals
if(new_decal && !isnull(decals[new_decal]))
decal = new_decal
usr << "<span class='notice'>You set \the [src] decal to '[decal]'.</span>"
to_chat(usr, "<span class='notice'>You set \the [src] decal to '[decal]'.</span>")
/obj/item/device/floor_painter/verb/choose_direction()
set name = "Choose Direction"
@@ -152,4 +152,4 @@
var/new_dir = input("Select a direction.") as null|anything in paint_dirs
if(new_dir && !isnull(paint_dirs[new_dir]))
paint_dir = new_dir
usr << "<span class='notice'>You set \the [src] direction to '[paint_dir]'.</span>"
to_chat(usr, "<span class='notice'>You set \the [src] direction to '[paint_dir]'.</span>")
+5 -5
View File
@@ -44,27 +44,27 @@
/obj/item/device/multitool/hacktool/proc/attempt_hack(var/mob/user, var/atom/target)
if(is_hacking)
user << "<span class='warning'>You are already hacking!</span>"
to_chat(user, "<span class='warning'>You are already hacking!</span>")
return 0
if(!is_type_in_list(target, supported_types))
user << "\icon[src] <span class='warning'>Unable to hack this target!</span>"
to_chat(user, "\icon[src] <span class='warning'>Unable to hack this target!</span>")
return 0
var/found = known_targets.Find(target)
if(found)
known_targets.Swap(1, found) // Move the last hacked item first
return 1
user << "<span class='notice'>You begin hacking \the [target]...</span>"
to_chat(user, "<span class='notice'>You begin hacking \the [target]...</span>")
is_hacking = 1
// On average hackin takes ~30 seconds. Fairly small random span to avoid people simply aborting and trying again
var/hack_result = do_after(user, (20 SECONDS + rand(0, 10 SECONDS) + rand(0, 10 SECONDS)))
is_hacking = 0
if(hack_result && in_hack_mode)
user << "<span class='notice'>Your hacking attempt was succesful!</span>"
to_chat(user, "<span class='notice'>Your hacking attempt was succesful!</span>")
user.playsound_local(get_turf(src), 'sound/instruments/piano/An6.ogg', 50)
else
user << "<span class='warning'>Your hacking attempt failed!</span>"
to_chat(user, "<span class='warning'>Your hacking attempt failed!</span>")
return 0
known_targets.Insert(1, target) // Insert the newly hacked target first,
@@ -81,7 +81,7 @@
if(istype(A,ctype))
non_closet = 1
if(non_closet)
user << "<span class='warning'>\The [src] can only be used on closets.</span>"
to_chat(user, "<span class='warning'>\The [src] can only be used on closets.</span>")
return
var/config_error
@@ -89,7 +89,7 @@
if(istype(A,/obj/structure/closet/secure_closet))
var/obj/structure/closet/secure_closet/F = A
if(F.broken)
user << "<span class='warning'>\The [src] cannot paint broken closets.</span>"
to_chat(user, "<span class='warning'>\The [src] cannot paint broken closets.</span>")
return
var/list/colour_data = colours_secure[colour_secure]
@@ -114,7 +114,7 @@
F.update_icon()
if(config_error)
user << "<span class='warning'>\The [src] flashes an error light. You might need to reconfigure it.</span>"
to_chat(user, "<span class='warning'>\The [src] flashes an error light. You might need to reconfigure it.</span>")
return
/obj/item/device/closet_painter/attack_self(var/mob/user)
@@ -126,7 +126,7 @@
/obj/item/device/closet_painter/examine(mob/user)
..(user)
user << "It is configured to produce the '[colour]' paint scheme or the '[colour_secure]' secure closet paint scheme."
to_chat(user, "It is configured to produce the '[colour]' paint scheme or the '[colour_secure]' secure closet paint scheme.")
/obj/item/device/closet_painter/verb/choose_colour()
set name = "Choose Colour"
@@ -140,7 +140,7 @@
var/new_colour = input("Select a colour.") as null|anything in colours
if(new_colour && !isnull(colours[new_colour]))
colour = new_colour
usr << "<span class='notice'>You set \the [src] regular closet colour to '[colour]'.</span>"
to_chat(usr, "<span class='notice'>You set \the [src] regular closet colour to '[colour]'.</span>")
/obj/item/device/closet_painter/verb/choose_colour_secure()
set name = "Choose Secure Colour"
@@ -154,4 +154,4 @@
var/new_colour_secure = input("Select a colour.") as null|anything in colours_secure
if(new_colour_secure && !isnull(colours_secure[new_colour_secure]))
colour_secure = new_colour_secure
usr << "<span class='notice'>You set \the [src] secure closet colour to '[colour_secure]'.</span>"
to_chat(usr, "<span class='notice'>You set \the [src] secure closet colour to '[colour_secure]'.</span>")
+5 -5
View File
@@ -22,7 +22,7 @@
return //it shouldn't be null, okay?
if(!parts)
user << "<span class='warning'>This kit has no parts for this modification left.</span>"
to_chat(user, "<span class='warning'>This kit has no parts for this modification left.</span>")
user.drop_from_inventory(src)
qdel(src)
return
@@ -34,17 +34,17 @@
var/obj/item/clothing/I = O
if (!istype(I) || !allowed)
user << "<span class='notice'>[src] is unable to modify that.</span>"
to_chat(user, "<span class='notice'>[src] is unable to modify that.</span>")
return
var/excluding = ("exclude" in I.species_restricted)
var/in_list = (target_species in I.species_restricted)
if (excluding ^ in_list)
user << "<span class='notice'>[I] is already modified.</span>"
to_chat(user, "<span class='notice'>[I] is already modified.</span>")
return
if(!isturf(O.loc))
user << "<span class='warning'>[O] must be safely placed on the ground for modification.</span>"
to_chat(user, "<span class='warning'>[O] must be safely placed on the ground for modification.</span>")
return
playsound(src.loc, O.usesound, 100, 1)
@@ -64,7 +64,7 @@
/obj/item/device/modkit/examine(mob/user)
..(user)
user << "It looks as though it modifies hardsuits to fit [target_species] users."
to_chat(user, "It looks as though it modifies hardsuits to fit [target_species] users.")
/obj/item/device/modkit/tajaran
name = "tajaran hardsuit modification kit"
+9 -9
View File
@@ -239,12 +239,12 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard)
return
var/mob/M = usr
if(!istype(M, /mob/living/carbon))
usr << "<font color=blue>You don't have any DNA, or your DNA is incompatible with this device.</font>"
to_chat(usr, "<font color=blue>You don't have any DNA, or your DNA is incompatible with this device.</font>")
else
var/datum/dna/dna = usr.dna
pai.master = M.real_name
pai.master_dna = dna.unique_enzymes
pai << "<font color = red><h3>You have been bound to a new master.</h3></font>"
to_chat(pai, "<font color = red><h3>You have been bound to a new master.</h3></font>")
if(href_list["request"])
src.looking_for_personality = 1
paiController.findPAI(src, usr)
@@ -252,10 +252,10 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard)
var/confirm = input("Are you CERTAIN you wish to delete the current personality? This action cannot be undone.", "Personality Wipe") in list("Yes", "No")
if(confirm == "Yes")
for(var/mob/M in src)
M << "<font color = #ff0000><h2>You feel yourself slipping away from reality.</h2></font>"
M << "<font color = #ff4d4d><h3>Byte by byte you lose your sense of self.</h3></font>"
M << "<font color = #ff8787><h4>Your mental faculties leave you.</h4></font>"
M << "<font color = #ffc4c4><h5>oblivion... </h5></font>"
to_chat(M, "<font color = #ff0000><h2>You feel yourself slipping away from reality.</h2></font>")
to_chat(M, "<font color = #ff4d4d><h3>Byte by byte you lose your sense of self.</h3></font>")
to_chat(M, "<font color = #ff8787><h4>Your mental faculties leave you.</h4></font>")
to_chat(M, "<font color = #ffc4c4><h5>oblivion... </h5></font>")
M.death(0)
removePersonality()
if(href_list["wires"])
@@ -269,9 +269,9 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/device/paicard)
var/newlaws = sanitize(input("Enter any additional directives you would like your pAI personality to follow. Note that these directives will not override the personality's allegiance to its imprinted master. Conflicting directives will be ignored.", "pAI Directive Configuration", pai.pai_laws) as message)
if(newlaws)
pai.pai_laws = newlaws
pai << "Your supplemental directives have been updated. Your new directives are:"
pai << "Prime Directive: <br>[pai.pai_law0]"
pai << "Supplemental Directives: <br>[pai.pai_laws]"
to_chat(pai, "Your supplemental directives have been updated. Your new directives are:")
to_chat(pai, "Prime Directive: <br>[pai.pai_law0]")
to_chat(pai, "Supplemental Directives: <br>[pai.pai_laws]")
attack_self(usr)
// WIRE_SIGNAL = 1
@@ -28,4 +28,4 @@
/obj/item/device/pipe_painter/examine(mob/user)
..(user)
user << "It is in [mode] mode."
to_chat(user, "It is in [mode] mode.")
@@ -44,7 +44,7 @@ GLOBAL_LIST_BOILERPLATE(all_beacons, /obj/item/device/radio/beacon)
/obj/item/device/radio/beacon/syndicate/attack_self(mob/user as mob)
if(user)
user << "<span class='notice'>Locked In</span>"
to_chat(user, "<span class='notice'>Locked In</span>")
new /obj/machinery/power/singularity_beacon/syndicate( user.loc )
playsound(src, 'sound/effects/pop.ogg', 100, 1, 1)
qdel(src)
@@ -17,7 +17,7 @@
/obj/item/device/radio/electropack/attack_hand(mob/living/user as mob)
if(src == user.back)
user << "<span class='notice'>You need help taking this off!</span>"
to_chat(user, "<span class='notice'>You need help taking this off!</span>")
return
..()
@@ -25,7 +25,7 @@
..()
if(istype(W, /obj/item/clothing/head/helmet))
if(!b_stat)
user << "<span class='notice'>[src] is not ready to be attached!</span>"
to_chat(user, "<span class='notice'>[src] is not ready to be attached!</span>")
return
var/obj/item/assembly/shock_kit/A = new /obj/item/assembly/shock_kit( user )
A.icon = 'icons/obj/assemblies.dmi'
@@ -95,7 +95,7 @@
sleep(50)
if(M)
M.moved_recently = 0
M << "<span class='danger'>You feel a sharp shock!</span>"
to_chat(M, "<span class='danger'>You feel a sharp shock!</span>")
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(3, 1, M)
s.start()
@@ -236,7 +236,7 @@ var/global/list/default_medbay_channels = list(
var/datum/radio_frequency/connection = null
if(channel && channels && channels.len > 0)
if (channel == "department")
//world << "DEBUG: channel=\"[channel]\" switching to \"[channels[1]]\""
//to_world("DEBUG: channel=\"[channel]\" switching to \"[channels[1]]\"")
channel = channels[1]
connection = secure_radio_connections[channel]
else
@@ -359,7 +359,7 @@ var/global/list/default_medbay_channels = list(
var/list/jamming = is_jammed(src)
if(jamming)
var/distance = jamming["distance"]
to_chat(M,"<span class='danger'>\icon[src] You hear the [distance <= 2 ? "loud hiss" : "soft hiss"] of static.</span>")
to_chat(M, "<span class='danger'>\icon[src] You hear the [distance <= 2 ? "loud hiss" : "soft hiss"] of static.</span>")
return FALSE
// First, we want to generate a new radio signal
@@ -413,7 +413,7 @@ var/global/list/default_medbay_channels = list(
return TRUE //Huzzah, sent via subspace
else if(adhoc_fallback) //Less huzzah, we have to fallback
to_chat(loc,"<span class='warning'>\The [src] pings as it falls back to local radio transmission.</span>")
to_chat(loc, "<span class='warning'>\The [src] pings as it falls back to local radio transmission.</span>")
subspace_transmission = FALSE
return Broadcast_Message(connection, M, voicemask, pick(M.speak_emote),
src, message, displayname, jobname, real_name, M.voice_name,
@@ -466,7 +466,7 @@ var/global/list/default_medbay_channels = list(
if(signal.data["done"] && position.z in signal.data["level"])
if(adhoc_fallback)
to_chat(loc,"<span class='notice'>\The [src] pings as it reestablishes subspace communications.</span>")
to_chat(loc, "<span class='notice'>\The [src] pings as it reestablishes subspace communications.</span>")
subspace_transmission = TRUE
// we're done here.
return TRUE
@@ -31,7 +31,7 @@ effective or pretty fucking useless.
/obj/item/device/batterer/attack_self(mob/living/carbon/user as mob, flag = 0, emp = 0)
if(!user) return
if(times_used >= max_uses)
user << "<span class='warning'>The mind batterer has been burnt out!</span>"
to_chat(user, "<span class='warning'>The mind batterer has been burnt out!</span>")
return
var/list/affected = list()
@@ -43,15 +43,15 @@ effective or pretty fucking useless.
M.Weaken(rand(10,20))
if(prob(25))
M.Stun(rand(5,10))
M << "<span class='danger'>You feel a tremendous, paralyzing wave flood your mind.</span>"
to_chat(M, "<span class='danger'>You feel a tremendous, paralyzing wave flood your mind.</span>")
else
M << "<span class='danger'>You feel a sudden, electric jolt travel through your head.</span>"
to_chat(M, "<span class='danger'>You feel a sudden, electric jolt travel through your head.</span>")
add_attack_logs(user,affected,"Used a [name]")
playsound(src.loc, 'sound/misc/interference.ogg', 50, 1)
user << "<span class='notice'>You trigger [src].</span>"
to_chat(user, "<span class='notice'>You trigger [src].</span>")
times_used += 1
if(times_used >= max_uses)
icon_state = "battererburnt"
@@ -20,19 +20,19 @@
var/turf/location = get_turf(src) // For admin logs
if(istype(item, /obj/item/weapon/tank))
if(tank_one && tank_two)
user << "<span class='warning'>There are already two tanks attached, remove one first.</span>"
to_chat(user, "<span class='warning'>There are already two tanks attached, remove one first.</span>")
return
if(!tank_one)
tank_one = item
user.drop_item()
item.loc = src
user << "<span class='notice'>You attach the tank to the transfer valve.</span>"
to_chat(user, "<span class='notice'>You attach the tank to the transfer valve.</span>")
else if(!tank_two)
tank_two = item
user.drop_item()
item.loc = src
user << "<span class='notice'>You attach the tank to the transfer valve.</span>"
to_chat(user, "<span class='notice'>You attach the tank to the transfer valve.</span>")
message_admins("[key_name_admin(user)] attached both tanks to a transfer valve. (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[location.x];Y=[location.y];Z=[location.z]'>JMP</a>)")
log_game("[key_name_admin(user)] attached both tanks to a transfer valve.")
@@ -42,15 +42,15 @@
else if(isassembly(item))
var/obj/item/device/assembly/A = item
if(A.secured)
user << "<span class='notice'>The device is secured.</span>"
to_chat(user, "<span class='notice'>The device is secured.</span>")
return
if(attached_device)
user << "<span class='warning'>There is already an device attached to the valve, remove it first.</span>"
to_chat(user, "<span class='warning'>There is already an device attached to the valve, remove it first.</span>")
return
user.remove_from_mob(item)
attached_device = A
A.loc = src
user << "<span class='notice'>You attach the [item] to the valve controls and secure it.</span>"
to_chat(user, "<span class='notice'>You attach the [item] to the valve controls and secure it.</span>")
A.holder = src
A.toggle_secure() //this calls update_icon(), which calls update_icon() on the holder (i.e. the bomb).
@@ -114,5 +114,5 @@ var/datum/uplink_random_selection/all_uplink_selection = new/datum/uplink_random
/proc/debug_uplink_item_assoc_list()
for(var/key in uplink.items_assoc)
world << "[key] - [uplink.items_assoc[key]]"
to_world("[key] - [uplink.items_assoc[key]]")
#endif
+5 -5
View File
@@ -16,7 +16,7 @@
set desc = "Alter the message shouted by your hailer."
if(!isnull(insults))
usr << "The hailer is fried. The tiny input screen just shows a waving ASCII penis."
to_chat(usr, "The hailer is fried. The tiny input screen just shows a waving ASCII penis.")
return
var/new_message = input(usr, "Please enter new message (leave blank to reset).") as text
@@ -25,7 +25,7 @@
else
use_message = capitalize(copytext(sanitize(new_message), 1, MAX_MESSAGE_LEN))
usr << "You configure the hailer to shout \"[use_message]\"."
to_chat(usr, "You configure the hailer to shout \"[use_message]\".")
/obj/item/device/hailer/attack_self(mob/living/carbon/user as mob)
if (spamcheck)
@@ -41,7 +41,7 @@
user.audible_message("<span class='warning'>[user]'s [name] gurgles something indecipherable and deeply offensive.</span>", "<span class='warning'>\The [user] holds up \the [name].</span>")
insults--
else
user << "<span class='danger'>*BZZZZZZZZT*</span>"
to_chat(user, "<span class='danger'>*BZZZZZZZZT*</span>")
spamcheck = 1
spawn(20)
@@ -49,8 +49,8 @@
/obj/item/device/hailer/emag_act(var/remaining_charges, var/mob/user)
if(isnull(insults))
user << "<span class='danger'>You overload \the [src]'s voice synthesizer.</span>"
to_chat(user, "<span class='danger'>You overload \the [src]'s voice synthesizer.</span>")
insults = rand(1, 3)//to prevent dickflooding
return 1
else
user << "The hailer is fried. You can't even fit the sequencer into the input slot."
to_chat(user, "The hailer is fried. You can't even fit the sequencer into the input slot.")