# Conflicts:
#	code/game/area/Away Mission areas.dm
#	code/game/objects/items/weapons/stunbaton.dm
#	code/game/objects/items/weapons/teleportation.dm
#	code/modules/clothing/glasses/glasses.dm
#	code/modules/events/event_container_vr.dm
#	code/modules/mining/ore_box.dm
#	code/modules/paperwork/paper.dm
#	code/modules/rogueminer_vr/zone_console.dm
#	config/custom_items.txt
#	icons/mob/items/lefthand_suits.dmi
#	icons/mob/items/righthand_suits.dmi
#	icons/mob/species/vulpkanin/helmet.dmi
#	icons/mob/species/vulpkanin/suit.dmi
#	icons/mob/suit.dmi
#	icons/obj/clothing/suits.dmi
#	maps/tether/tether_defines.dm
This commit is contained in:
Repede
2020-02-22 12:38:04 -05:00
905 changed files with 89234 additions and 7194 deletions
+2 -2
View File
@@ -80,7 +80,7 @@ obj/item/weapon/paper/admin/proc/updateDisplay()
if(href_list["write"])
var/id = href_list["write"]
if(free_space <= 0)
usr << "<span class='info'>There isn't enough space left on \the [src] to write anything.</span>"
to_chat(usr, "<span class='info'>There isn't enough space left on \the [src] to write anything.</span>")
return
var/t = sanitize(input("Enter what you want to write:", "Write", null, null) as message, free_space, extra = 0)
@@ -96,7 +96,7 @@ obj/item/weapon/paper/admin/proc/updateDisplay()
if(fields > 50)//large amount of fields creates a heavy load on the server, see updateinfolinks() and addtofield()
usr << "<span class='warning'>Too many fields. Sorry, you can't do this.</span>"
to_chat(usr, "<span class='warning'>Too many fields. Sorry, you can't do this.</span>")
fields = last_fields_value
return
+2 -2
View File
@@ -42,10 +42,10 @@
copy.name = "Copy - " + c.name
copy.fields = c.fields
copy.updateinfolinks()
usr << "<span class='notice'>You tear off the carbon-copy!</span>"
to_chat(usr, "<span class='notice'>You tear off the carbon-copy!</span>")
c.copied = 1
copy.iscopy = 1
copy.update_icon()
c.update_icon()
else
usr << "There are no more carbon copies attached to this paper!"
to_chat(usr, "There are no more carbon copies attached to this paper!")
+3 -3
View File
@@ -50,7 +50,7 @@
W.loc = src
if(istype(W, /obj/item/weapon/paper))
toppaper = W
user << "<span class='notice'>You clip the [W] onto \the [src].</span>"
to_chat(user, "<span class='notice'>You clip the [W] onto \the [src].</span>")
update_icon()
else if(istype(toppaper) && istype(W, /obj/item/weapon/pen))
@@ -103,7 +103,7 @@
usr.drop_item()
W.loc = src
haspen = W
usr << "<span class='notice'>You slot the pen into \the [src].</span>"
to_chat(usr, "<span class='notice'>You slot the pen into \the [src].</span>")
else if(href_list["write"])
var/obj/item/weapon/P = locate(href_list["write"])
@@ -164,7 +164,7 @@
var/obj/item/P = locate(href_list["top"])
if(P && (P.loc == src) && istype(P, /obj/item/weapon/paper) )
toppaper = P
usr << "<span class='notice'>You move [P.name] to the top.</span>"
to_chat(usr, "<span class='notice'>You move [P.name] to the top.</span>")
//Update everything
attack_self(usr)
+1 -1
View File
@@ -237,7 +237,7 @@ var/list/adminfaxes = list() //cache for faxes that have been sent to admins
for(var/client/C in admins)
if(check_rights((R_ADMIN|R_MOD),0,C))
C << msg
to_chat(C,msg)
C << 'sound/effects/printer.ogg'
// VoreStation Edit Start
+1 -1
View File
@@ -64,7 +64,7 @@
if(istype(W, /obj/item/weapon/paper) || istype(W, /obj/item/weapon/photo) || istype(W, /obj/item/weapon/paper_bundle))
user.drop_item()
W.loc = src
user << "<span class='notice'>You put the [W] into \the [src].</span>"
to_chat(user, "<span class='notice'>You put the [W] into \the [src].</span>")
update_icon()
else if(istype(W, /obj/item/weapon/pen))
var/n_name = sanitizeSafe(input(usr, "What would you like to label the folder?", "Folder Labelling", null) as text, MAX_NAME_LEN)
+12 -12
View File
@@ -19,30 +19,30 @@
return // don't set a label
if(!labels_left)
user << "<span class='notice'>No labels left.</span>"
to_chat(user, "<span class='notice'>No labels left.</span>")
return
if(!label || !length(label))
user << "<span class='notice'>No text set.</span>"
to_chat(user, "<span class='notice'>No text set.</span>")
return
if(length(A.name) + length(label) > 64)
user << "<span class='notice'>Label too big.</span>"
to_chat(user, "<span class='notice'>Label too big.</span>")
return
if(ishuman(A))
user << "<span class='notice'>The label refuses to stick to [A.name].</span>"
to_chat(user, "<span class='notice'>The label refuses to stick to [A.name].</span>")
return
if(issilicon(A))
user << "<span class='notice'>The label refuses to stick to [A.name].</span>"
to_chat(user, "<span class='notice'>The label refuses to stick to [A.name].</span>")
return
if(isobserver(A))
user << "<span class='notice'>[src] passes through [A.name].</span>"
to_chat(user, "<span class='notice'>[src] passes through [A.name].</span>")
return
if(istype(A, /obj/item/weapon/reagent_containers/glass))
user << "<span class='notice'>The label can't stick to the [A.name]. (Try using a pen)</span>"
to_chat(user, "<span class='notice'>The label can't stick to the [A.name]. (Try using a pen)</span>")
return
if(istype(A, /obj/machinery/portable_atmospherics/hydroponics))
var/obj/machinery/portable_atmospherics/hydroponics/tray = A
if(!tray.mechanical)
user << "<span class='notice'>How are you going to label that?</span>"
to_chat(user, "<span class='notice'>How are you going to label that?</span>")
return
tray.labelled = label
spawn(1)
@@ -56,13 +56,13 @@
mode = !mode
icon_state = "labeler[mode]"
if(mode)
user << "<span class='notice'>You turn on \the [src].</span>"
to_chat(user, "<span class='notice'>You turn on \the [src].</span>")
//Now let them chose the text.
var/str = sanitizeSafe(input(user,"Label text?","Set label",""), MAX_NAME_LEN)
if(!str || !length(str))
user << "<span class='notice'>Invalid text.</span>"
to_chat(user, "<span class='notice'>Invalid text.</span>")
return
label = str
user << "<span class='notice'>You set the text to '[str]'.</span>"
to_chat(user, "<span class='notice'>You set the text to '[str]'.</span>")
else
user << "<span class='notice'>You turn off \the [src].</span>"
to_chat(user, "<span class='notice'>You turn off \the [src].</span>")
+11 -11
View File
@@ -138,7 +138,7 @@
if(in_range(user, src) || istype(user, /mob/observer/dead))
show_content(usr)
else
user << "<span class='notice'>You have to go closer if you want to read it.</span>"
to_chat(user, "<span class='notice'>You have to go closer if you want to read it.</span>")
return
/obj/item/weapon/paper/proc/show_content(var/mob/user, var/forceshow=0)
@@ -155,7 +155,7 @@
set src in usr
if((CLUMSY in usr.mutations) && prob(50))
usr << "<span class='warning'>You cut yourself on the paper.</span>"
to_chat(usr, "<span class='warning'>You cut yourself on the paper.</span>")
return
var/n_name = sanitizeSafe(input(usr, "What would you like to label the paper?", "Paper Labelling", null) as text, MAX_NAME_LEN)
@@ -398,7 +398,7 @@
qdel(src)
else
user << "<font color='red'>You must hold \the [P] steady to burn \the [src].</font>"
to_chat(user, "<font color='red'>You must hold \the [P] steady to burn \the [src].</font>")
/obj/item/weapon/paper/Topic(href, href_list)
@@ -411,7 +411,7 @@
//var/t = strip_html_simple(input(usr, "What text do you wish to add to " + (id=="end" ? "the end of the paper" : "field "+id) + "?", "[name]", null),8192) as message
if(free_space <= 0)
usr << "<span class='info'>There isn't enough space left on \the [src] to write anything.</span>"
to_chat(usr, "<span class='info'>There isn't enough space left on \the [src] to write anything.</span>")
return
var/t = sanitize(input("Enter what you want to write:", "Write", null, null) as message, MAX_PAPER_MESSAGE_LEN, extra = 0)
@@ -450,7 +450,7 @@
// check for exploits
for(var/bad in paper_blacklist)
if(findtext(t,bad))
usr << "<font color='blue'>You think to yourself, \"Hm.. this is only paper...\</font>""
to_chat(usr, "<font color='blue'>You think to yourself, \"Hm.. this is only paper...\</font>"")
log_admin("PAPER: [usr] ([usr.ckey]) tried to use forbidden word in [src]: [bad].")
message_admins("PAPER: [usr] ([usr.ckey]) tried to use forbidden word in [src]: [bad].")
return
@@ -464,7 +464,7 @@
if(fields > 50)//large amount of fields creates a heavy load on the server, see updateinfolinks() and addtofield()
usr << "<span class='warning'>Too many fields. Sorry, you can't do this.</span>"
to_chat(usr, "<span class='warning'>Too many fields. Sorry, you can't do this.</span>")
fields = last_fields_value
return
@@ -500,7 +500,7 @@
if (istype(P, /obj/item/weapon/paper/carbon))
var/obj/item/weapon/paper/carbon/C = P
if (!C.iscopy && !C.copied)
user << "<span class='notice'>Take off the carbon copy first.</span>"
to_chat(user, "<span class='notice'>Take off the carbon copy first.</span>")
add_fingerprint(user)
return
var/obj/item/weapon/paper_bundle/B = new(src.loc)
@@ -536,7 +536,7 @@
src.loc = get_turf(h_user)
if(h_user.client) h_user.client.screen -= src
h_user.put_in_hands(B)
user << "<span class='notice'>You clip the [P.name] to [(src.name == "paper") ? "the paper" : src.name].</span>"
to_chat(user, "<span class='notice'>You clip the [P.name] to [(src.name == "paper") ? "the paper" : src.name].</span>")
src.loc = B
P.loc = B
@@ -546,7 +546,7 @@
else if(istype(P, /obj/item/weapon/pen))
if(icon_state == "scrap")
usr << "<span class='warning'>\The [src] is too crumpled to write on.</span>"
to_chat(usr, "<span class='warning'>\The [src] is too crumpled to write on.</span>")
return
var/obj/item/weapon/pen/robopen/RP = P
@@ -577,7 +577,7 @@
if(istype(P, /obj/item/weapon/stamp/clown))
if(!clown)
user << "<span class='notice'>You are totally unable to use the stamp. HONK!</span>"
to_chat(user, "<span class='notice'>You are totally unable to use the stamp. HONK!</span>")
return
if(!ico)
@@ -590,7 +590,7 @@
stamped += P.type
overlays += stampoverlay
user << "<span class='notice'>You stamp the paper with your rubber stamp.</span>"
to_chat(user, "<span class='notice'>You stamp the paper with your rubber stamp.</span>")
else if(istype(P, /obj/item/weapon/flame))
burnpaper(P, user)
+7 -7
View File
@@ -22,7 +22,7 @@
if (istype(W, /obj/item/weapon/paper/carbon))
var/obj/item/weapon/paper/carbon/C = W
if (!C.iscopy && !C.copied)
user << "<span class='notice'>Take off the carbon copy first.</span>"
to_chat(user, "<span class='notice'>Take off the carbon copy first.</span>")
add_fingerprint(user)
return
// adding sheets
@@ -41,7 +41,7 @@
O.add_fingerprint(usr)
pages.Add(O)
user << "<span class='notice'>You add \the [W.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].</span>"
to_chat(user, "<span class='notice'>You add \the [W.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].</span>")
qdel(W)
else
if(istype(W, /obj/item/weapon/tape_roll))
@@ -58,9 +58,9 @@
/obj/item/weapon/paper_bundle/proc/insert_sheet_at(mob/user, var/index, obj/item/weapon/sheet)
if(istype(sheet, /obj/item/weapon/paper))
user << "<span class='notice'>You add [(sheet.name == "paper") ? "the paper" : sheet.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].</span>"
to_chat(user, "<span class='notice'>You add [(sheet.name == "paper") ? "the paper" : sheet.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].</span>")
else if(istype(sheet, /obj/item/weapon/photo))
user << "<span class='notice'>You add [(sheet.name == "photo") ? "the photo" : sheet.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].</span>"
to_chat(user, "<span class='notice'>You add [(sheet.name == "photo") ? "the photo" : sheet.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].</span>")
user.drop_from_inventory(sheet)
sheet.loc = src
@@ -92,13 +92,13 @@
qdel(src)
else
user << "<font color='red'>You must hold \the [P] steady to burn \the [src].</font>"
to_chat(user, "<font color='red'>You must hold \the [P] steady to burn \the [src].</font>")
/obj/item/weapon/paper_bundle/examine(mob/user)
if(..(user, 1))
src.show_content(user)
else
user << "<span class='notice'>It is too far away.</span>"
to_chat(user, "<span class='notice'>It is too far away.</span>")
return
/obj/item/weapon/paper_bundle/proc/show_content(mob/user as mob)
@@ -202,7 +202,7 @@
set category = "Object"
set src in usr
usr << "<span class='notice'>You loosen the bundle.</span>"
to_chat(usr, "<span class='notice'>You loosen the bundle.</span>")
for(var/obj/O in src)
O.loc = usr.loc
O.layer = initial(O.layer)
+8 -8
View File
@@ -28,10 +28,10 @@
if (H.hand)
temp = H.organs_by_name["l_hand"]
if(temp && !temp.is_usable())
user << "<span class='notice'>You try to move your [temp.name], but cannot!</span>"
to_chat(user, "<span class='notice'>You try to move your [temp.name], but cannot!</span>")
return
user << "<span class='notice'>You pick up the [src].</span>"
to_chat(user, "<span class='notice'>You pick up the [src].</span>")
user.put_in_hands(src)
return
@@ -43,7 +43,7 @@
if (H.hand)
temp = H.organs_by_name["l_hand"]
if(temp && !temp.is_usable())
user << "<span class='notice'>You try to move your [temp.name], but cannot!</span>"
to_chat(user, "<span class='notice'>You try to move your [temp.name], but cannot!</span>")
return
var/response = ""
if(!papers.len > 0)
@@ -73,9 +73,9 @@
P.loc = user.loc
user.put_in_hands(P)
user << "<span class='notice'>You take [P] out of the [src].</span>"
to_chat(user, "<span class='notice'>You take [P] out of the [src].</span>")
else
user << "<span class='notice'>[src] is empty!</span>"
to_chat(user, "<span class='notice'>[src] is empty!</span>")
add_fingerprint(user)
return
@@ -87,7 +87,7 @@
user.drop_item()
i.loc = src
user << "<span class='notice'>You put [i] in [src].</span>"
to_chat(user, "<span class='notice'>You put [i] in [src].</span>")
papers.Add(i)
update_icon()
amount++
@@ -96,9 +96,9 @@
/obj/item/weapon/paper_bin/examine(mob/user)
if(get_dist(src, user) <= 1)
if(amount)
user << "<span class='notice'>There " + (amount > 1 ? "are [amount] papers" : "is one paper") + " in the bin.</span>"
to_chat(user, "<span class='notice'>There " + (amount > 1 ? "are [amount] papers" : "is one paper") + " in the bin.</span>")
else
user << "<span class='notice'>There are no papers in the bin.</span>"
to_chat(user, "<span class='notice'>There are no papers in the bin.</span>")
return
+3 -3
View File
@@ -55,7 +55,7 @@
else
icon_state = "pen_[colour]"
user << "<span class='notice'>Changed color to '[colour].'</span>"
to_chat(user, "<span class='notice'>Changed color to '[colour].'</span>")
/obj/item/weapon/pen/invisible
desc = "It's an invisble pen marker."
@@ -164,7 +164,7 @@
colour = COLOR_WHITE
else
colour = COLOR_BLACK
usr << "<span class='info'>You select the [lowertext(selected_type)] ink container.</span>"
to_chat(usr, "<span class='info'>You select the [lowertext(selected_type)] ink container.</span>")
/*
@@ -186,7 +186,7 @@
/obj/item/weapon/pen/crayon/suicide_act(mob/user)
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
viewers(user) << "<font color='red'><b>[user] is jamming the [src.name] up [TU.his] nose and into [TU.his] brain. It looks like [TU.he] [TU.is] trying to commit suicide.</b></font>"
to_chat(viewers(user),"<font color='red'><b>[user] is jamming the [src.name] up [TU.his] nose and into [TU.his] brain. It looks like [TU.he] [TU.is] trying to commit suicide.</b></font>")
return (BRUTELOSS|OXYLOSS)
/obj/item/weapon/pen/crayon/New()
+7 -7
View File
@@ -53,9 +53,9 @@ var/global/photo_count = 0
/obj/item/weapon/photo/examine(mob/user)
if(in_range(user, src))
show(user)
user << desc
to_chat(user,desc)
else
user << "<span class='notice'>It is too far away.</span>"
to_chat(user, "<span class='notice'>It is too far away.</span>")
/obj/item/weapon/photo/proc/show(mob/user as mob)
user << browse_rsc(img, "tmp_photo_[id].png")
@@ -140,7 +140,7 @@ var/global/photo_count = 0
var/nsize = input("Photo Size","Pick a size of resulting photo.") as null|anything in list(1,3,5,7)
if(nsize)
size = nsize
usr << "<span class='notice'>Camera will now take [size]x[size] photos.</span>"
to_chat(usr, "<span class='notice'>Camera will now take [size]x[size] photos.</span>")
/obj/item/device/camera/attack(mob/living/carbon/human/M as mob, mob/user as mob)
return
@@ -151,15 +151,15 @@ var/global/photo_count = 0
src.icon_state = icon_on
else
src.icon_state = icon_off
user << "You switch the camera [on ? "on" : "off"]."
to_chat(user, "You switch the camera [on ? "on" : "off"].")
return
/obj/item/device/camera/attackby(obj/item/I as obj, mob/user as mob)
if(istype(I, /obj/item/device/camera_film))
if(pictures_left)
user << "<span class='notice'>[src] still has some film in it!</span>"
to_chat(user, "<span class='notice'>[src] still has some film in it!</span>")
return
user << "<span class='notice'>You insert [I] into [src].</span>"
to_chat(user, "<span class='notice'>You insert [I] into [src].</span>")
user.drop_item()
qdel(I)
pictures_left = pictures_max
@@ -245,7 +245,7 @@ var/global/photo_count = 0
pictures_left--
desc = "A polaroid camera. It has [pictures_left] photos left."
user << "<span class='notice'>[pictures_left] photos left.</span>"
to_chat(user, "<span class='notice'>[pictures_left] photos left.</span>")
icon_state = icon_off
on = 0
spawn(64)
@@ -25,10 +25,10 @@
var/mob/living/silicon/robot/C = usr
if(C.connected_ai)
C.connected_ai.aiCamera.injectaialbum(p.copy(1), " (synced from [C.name])")
C.connected_ai << "<span class='unconscious'>Image uploaded by [C.name]</span>"
usr << "<span class='unconscious'>Image synced to remote database</span>" //feedback to the Cyborg player that the picture was taken
to_chat(C.connected_ai, "<span class='unconscious'>Image uploaded by [C.name]</span>")
to_chat(usr, "<span class='unconscious'>Image synced to remote database</span>") //feedback to the Cyborg player that the picture was taken
else
usr << "<span class='unconscious'>Image recorded</span>"
to_chat(usr, "<span class='unconscious'>Image recorded</span>")
// Always save locally
injectaialbum(p)
@@ -39,7 +39,7 @@
var/list/nametemp = list()
var/find
if(cam.aipictures.len == 0)
usr << "<span class='userdanger'>No images saved</span>"
to_chat(usr, "<span class='userdanger'>No images saved</span>")
return
for(var/obj/item/weapon/photo/t in cam.aipictures)
nametemp += t.name
@@ -58,7 +58,7 @@
return
selection.show(usr)
usr << selection.desc
to_chat(usr,selection.desc)
/obj/item/device/camera/siliconcam/proc/deletepicture(obj/item/device/camera/siliconcam/cam)
var/selection = selectpicture(cam)
@@ -67,7 +67,7 @@
return
aipictures -= selection
usr << "<span class='unconscious'>Local image deleted</span>"
to_chat(usr, "<span class='unconscious'>Local image deleted</span>")
/obj/item/device/camera/siliconcam/ai_camera/can_capture_turf(turf/T, mob/user)
var/mob/living/silicon/ai = user
@@ -81,15 +81,15 @@
/obj/item/device/camera/siliconcam/proc/camera_mode_off()
src.in_camera_mode = 0
usr << "<B>Camera Mode deactivated</B>"
to_chat(usr, "<B>Camera Mode deactivated</B>")
/obj/item/device/camera/siliconcam/proc/camera_mode_on()
src.in_camera_mode = 1
usr << "<B>Camera Mode activated</B>"
to_chat(usr, "<B>Camera Mode activated</B>")
/obj/item/device/camera/siliconcam/ai_camera/printpicture(mob/user, obj/item/weapon/photo/p)
injectaialbum(p)
usr << "<span class='unconscious'>Image recorded</span>"
to_chat(usr, "<span class='unconscious'>Image recorded</span>")
/obj/item/device/camera/siliconcam/robot_camera/printpicture(mob/user, obj/item/weapon/photo/p)
injectmasteralbum(p)