mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-21 20:11:04 +01:00
bureaucracy and library update 2 : electric boogaloo (#6182)
tweak: "Tweaks some bureaucracy sprites." tweak: "Reverts pen sprite with some improvements." soundadd: "boxes filing cabinets and paper make noises" also put all the bureaucracy in a nice file
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
desc = "It's just an ordinary box."
|
||||
icon_state = "box"
|
||||
item_state = "syringe_kit"
|
||||
use_sound = 'sound/items/storage/box.ogg'
|
||||
var/foldable = /obj/item/stack/material/cardboard // BubbleWrap - if set, can be folded (when empty) into a sheet of cardboard
|
||||
var/maxHealth = 20 //health is already defined
|
||||
|
||||
@@ -96,6 +97,7 @@
|
||||
return
|
||||
// Now make the cardboard
|
||||
to_chat(user, "<span class='notice'>You fold [src] flat.</span>")
|
||||
playsound(src.loc, 'sound/items/storage/boxfold.ogg', 30, 1)
|
||||
new src.foldable(get_turf(src))
|
||||
qdel(src)
|
||||
|
||||
|
||||
@@ -38,8 +38,9 @@
|
||||
if(istype(P, /obj/item/weapon/paper) || istype(P, /obj/item/weapon/folder) || istype(P, /obj/item/weapon/photo) || istype(P, /obj/item/weapon/paper_bundle))
|
||||
to_chat(user, "<span class='notice'>You put [P] in [src].</span>")
|
||||
user.drop_from_inventory(P,src)
|
||||
icon_state = "[initial(icon_state)]-open"
|
||||
sleep(5)
|
||||
flick("[initial(icon_state)]-open",src)
|
||||
playsound(loc, 'sound/bureaucracy/filingcabinet.ogg', 50, 1)
|
||||
sleep(40)
|
||||
icon_state = initial(icon_state)
|
||||
updateUsrDialog()
|
||||
else if(P.iswrench())
|
||||
@@ -90,9 +91,10 @@
|
||||
if(istype(P) && (P.loc == src) && src.Adjacent(usr))
|
||||
usr.put_in_hands(P)
|
||||
updateUsrDialog()
|
||||
icon_state = "[initial(icon_state)]-open"
|
||||
flick("[initial(icon_state)]-open",src)
|
||||
playsound(loc, 'sound/bureaucracy/filingcabinet.ogg', 50, 1)
|
||||
spawn(0)
|
||||
sleep(5)
|
||||
sleep(20)
|
||||
icon_state = initial(icon_state)
|
||||
|
||||
|
||||
|
||||
@@ -91,11 +91,11 @@
|
||||
to_chat(user, span("notice", "You're going to have to unfold it before you can read it."))
|
||||
return
|
||||
if(name != "sheet of paper")
|
||||
to_chat(user, "It's titled '[name]'.")
|
||||
to_chat(user,"It's titled '[name]'.")
|
||||
if(in_range(user, src) || isobserver(user))
|
||||
show_content(usr)
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You have to go closer if you want to read it.</span>")
|
||||
to_chat(user, span("notice", "You have to go closer if you want to read it."))
|
||||
|
||||
|
||||
/obj/item/weapon/paper/proc/show_content(mob/user, forceshow)
|
||||
@@ -112,7 +112,7 @@
|
||||
set src in usr
|
||||
|
||||
if((CLUMSY in usr.mutations) && prob(50))
|
||||
to_chat(usr, "<span class='warning'>You cut yourself on the paper.</span>")
|
||||
to_chat(usr, span("warning", "You cut yourself on the paper."))
|
||||
return
|
||||
var/n_name = sanitizeSafe(input(usr, "What would you like to label the paper?", "Paper Labelling", null) as text, MAX_NAME_LEN)
|
||||
|
||||
@@ -128,9 +128,10 @@
|
||||
return
|
||||
//crumple dat paper
|
||||
info = stars(info,85)
|
||||
user.visible_message("\The [user] crumples \the [src] into a ball!", "You crumple \the [src] into a ball.", "You hear crinkling.")
|
||||
user.visible_message("\The [user] crumples \the [src] into a ball!", "You crumple \the [src] into a ball.")
|
||||
playsound(src, 'sound/bureaucracy/papercrumple.ogg', 50, 1)
|
||||
icon_state = "scrap"
|
||||
throw_range = 8
|
||||
throw_range = 4 //you can now make epic paper ball hoops into the disposals (kinda dumb that you could only throw crumpled paper 1 tile) -wezzy
|
||||
return
|
||||
|
||||
if (user.a_intent == I_GRAB && icon_state != "scrap" && !istype(src, /obj/item/weapon/paper/carbon))
|
||||
@@ -138,7 +139,8 @@
|
||||
user.show_message(span("alert", "The paper is already folded into a plane."))
|
||||
return
|
||||
user.visible_message(span("notice", "\The [user] carefully folds \the [src] into a plane."),
|
||||
span("notice", "You carefully fold \the [src] into a plane."), "You hear paper rustling.")
|
||||
span("notice", "You carefully fold \the [src] into a plane."), "\The [user] folds \the [src] into a plane.")
|
||||
playsound(src, 'sound/bureaucracy/paperfold.ogg', 50, 1)
|
||||
icon_state = "paper_plane"
|
||||
throw_range = 8
|
||||
old_name = name
|
||||
@@ -147,6 +149,7 @@
|
||||
|
||||
if (user.a_intent == I_HELP && old_name && icon_state == "paper_plane")
|
||||
user.visible_message(span("notice", "\The [user] unfolds \the [src]."), span("notice", "You unfold \the [src]."), "You hear paper rustling.")
|
||||
playsound(src, 'sound/bureaucracy/paperfold.ogg', 50, 1)
|
||||
icon_state = initial(icon_state)
|
||||
throw_range = initial(throw_range)
|
||||
name = old_name
|
||||
@@ -175,7 +178,7 @@
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H == user)
|
||||
to_chat(user, "<span class='notice'>You wipe off the lipstick with [src].</span>")
|
||||
to_chat(user, span("notice", "You wipe off the lipstick with [src]."))
|
||||
H.lip_style = null
|
||||
H.update_body()
|
||||
else
|
||||
@@ -317,6 +320,8 @@
|
||||
|
||||
user.visible_message("<span class='[class]'>[user] holds \the [P] up to \the [src], it looks like \he's trying to burn it!</span>", \
|
||||
"<span class='[class]'>You hold \the [P] up to \the [src], burning it slowly.</span>")
|
||||
playsound(src.loc, 'sound/bureaucracy/paperburn.ogg', 50, 1)
|
||||
icon_state = "paper_onfire"
|
||||
|
||||
//I was going to add do_after in here, but keeping the current method allows people to burn papers they're holding, while they move. That seems fine to keep -Nanako
|
||||
spawn(20)
|
||||
@@ -327,7 +332,7 @@
|
||||
qdel(src)
|
||||
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You must hold \the [P] steady to burn \the [src].</span>")
|
||||
to_chat(user, span("warning", "You must hold \the [P] steady to burn \the [src]."))
|
||||
|
||||
|
||||
/obj/item/weapon/paper/Topic(href, href_list)
|
||||
@@ -340,7 +345,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)
|
||||
to_chat(usr, "<span class='info'>There isn't enough space left on \the [src] to write anything.</span>")
|
||||
to_chat(usr, span("info", "There isn't enough space left on \the [src] to write anything."))
|
||||
return
|
||||
|
||||
var/t = sanitize(input("Enter what you want to write:", "Write", null, null) as message, free_space, extra = 0)
|
||||
@@ -375,7 +380,7 @@
|
||||
|
||||
|
||||
if(fields > 50)//large amount of fields creates a heavy load on the server, see updateinfolinks() and addtofield()
|
||||
to_chat(usr, "<span class='warning'>Too many fields. Sorry, you can't do this.</span>")
|
||||
to_chat(usr, span("warning", "Too many fields. Sorry, you can't do this."))
|
||||
fields = last_fields_value
|
||||
return
|
||||
|
||||
@@ -387,9 +392,9 @@
|
||||
|
||||
update_space(t)
|
||||
|
||||
usr << browse("<HTML><HEAD><TITLE>[name]</TITLE></HEAD><BODY bgcolor='[color]'>[info_links][stamps]</BODY></HTML>", "window=[name]") // Update the window)
|
||||
usr << browse("<HTML><HEAD><TITLE>[name]</TITLE></HEAD><BODY bgcolor='[color]'>[info_links][stamps]</BODY></HTML>", "window=[name]") // Update the window
|
||||
|
||||
playsound(src, pick('sound/items/pen1.ogg','sound/items/pen2.ogg'), 10)
|
||||
playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 10)
|
||||
update_icon()
|
||||
|
||||
|
||||
@@ -408,7 +413,7 @@
|
||||
if (istype(P, /obj/item/weapon/paper/carbon))
|
||||
var/obj/item/weapon/paper/carbon/C = P
|
||||
if (!C.iscopy && !C.copied)
|
||||
to_chat(user, "<span class='notice'>Take off the carbon copy first.</span>")
|
||||
to_chat(user, span("notice", "Take off the carbon copy first."))
|
||||
add_fingerprint(user)
|
||||
return
|
||||
var/obj/item/weapon/paper_bundle/B = new(src.loc)
|
||||
@@ -445,7 +450,7 @@
|
||||
src.forceMove(get_turf(h_user))
|
||||
if(h_user.client) h_user.client.screen -= src
|
||||
h_user.put_in_hands(B)
|
||||
to_chat(user, "<span class='notice'>You clip the [P.name] to [(src.name == "paper") ? "the paper" : src.name].</span>")
|
||||
to_chat(user, span("notice", "You clip the [P.name] to [(src.name == "paper") ? "the paper" : src.name]."))
|
||||
src.forceMove(B)
|
||||
|
||||
B.pages.Add(src)
|
||||
@@ -455,7 +460,7 @@
|
||||
|
||||
else if(istype(P, /obj/item/weapon/pen))
|
||||
if(icon_state == "scrap")
|
||||
to_chat(usr, "<span class='warning'>\The [src] is too crumpled to write on.</span>")
|
||||
to_chat(user, span("warning", "The [src] is too crumpled to write on."))
|
||||
return
|
||||
|
||||
var/obj/item/weapon/pen/robopen/RP = P
|
||||
@@ -486,7 +491,7 @@
|
||||
|
||||
if(istype(P, /obj/item/weapon/stamp/clown))
|
||||
if(!clown)
|
||||
to_chat(user, "<span class='notice'>You are totally unable to use the stamp. HONK!</span>")
|
||||
to_chat(user, span("notice", "You are totally unable to use the stamp. HONK!"))
|
||||
return
|
||||
|
||||
if(!ico)
|
||||
@@ -499,10 +504,10 @@
|
||||
stamped += P.type
|
||||
add_overlay(stampoverlay)
|
||||
|
||||
playsound(src, 'sound/items/stamp.ogg', 50, 1)
|
||||
to_chat(user, "<span class='notice'>You stamp the paper with \the [P].</span>")
|
||||
playsound(src, 'sound/bureaucracy/stamp.ogg', 50, 1)
|
||||
to_chat(user, span("notice", "You stamp the paper with \the [P]."))
|
||||
|
||||
else if(istype(P, /obj/item/weapon/flame))
|
||||
else if(istype(P, /obj/item/weapon/flame) || P.iswelder())
|
||||
burnpaper(P, user)
|
||||
else if(P.iswelder())
|
||||
burnpaper(P, user)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
if (paper_result > 0)
|
||||
paperamount += paper_result
|
||||
qdel(W)
|
||||
playsound(src.loc, 'sound/items/pshred.ogg', 75, 1)
|
||||
playsound(src.loc, 'sound/bureaucracy/papershred.ogg', 75, 1)
|
||||
to_chat(user, span("notice", "You shred the paper."))
|
||||
flick("papershredder_on", src)
|
||||
if(paperamount > max_paper)
|
||||
@@ -107,8 +107,19 @@
|
||||
paperamount--
|
||||
return new /obj/item/weapon/shreddedp(get_turf(src))
|
||||
|
||||
/obj/machinery/papershredder/update_icon()
|
||||
icon_state = "papershredder[max(0,min(5,Floor(paperamount/2)))]"
|
||||
/obj/machinery/papershredder/update_icon() //makes it show how full the papershredder is while covering up the animation. Seemsgood - Wezzy
|
||||
cut_overlays()
|
||||
switch(paperamount)
|
||||
if(2 to 3)
|
||||
add_overlay("papershredder1")
|
||||
if(4 to 5)
|
||||
add_overlay("papershredder2")
|
||||
if(6 to 7)
|
||||
add_overlay("papershredder3")
|
||||
if(8 to 9)
|
||||
add_overlay("papershredder4")
|
||||
if(10)
|
||||
add_overlay("papershredder5")
|
||||
|
||||
/obj/item/weapon/shreddedp/attackby(var/obj/item/W as obj, var/mob/user)
|
||||
if(istype(W, /obj/item/weapon/flame/lighter))
|
||||
@@ -116,36 +127,49 @@
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/shreddedp/proc/burnpaper(var/obj/item/weapon/flame/lighter/P, var/mob/user)
|
||||
if(user.restrained())
|
||||
return
|
||||
if(!P.lit)
|
||||
to_chat(user, "<span class='warning'>\The [P] is not lit.</span>")
|
||||
return
|
||||
user.visible_message("<span class='warning'>\The [user] holds \the [P] up to \the [src]. It looks like \he's trying to burn it!</span>", \
|
||||
"<span class='warning'>You hold \the [P] up to \the [src], burning it slowly.</span>")
|
||||
if(!do_after(user,20))
|
||||
to_chat(user, "<span class='warning'>You must hold \the [P] steady to burn \the [src].</span>")
|
||||
return
|
||||
user.visible_message("<span class='danger'>\The [user] burns right through \the [src], turning it to ash. It flutters through the air before settling on the floor in a heap.</span>", \
|
||||
"<span class='danger'>You burn right through \the [src], turning it to ash. It flutters through the air before settling on the floor in a heap.</span>")
|
||||
FireBurn()
|
||||
/obj/item/weapon/shreddedp/proc/burnpaper(obj/item/weapon/P, mob/user)
|
||||
var/class = "warning"
|
||||
|
||||
if (!user.restrained())
|
||||
if (istype(P, /obj/item/weapon/flame))
|
||||
var/obj/item/weapon/flame/F = P
|
||||
if (!F.lit)
|
||||
return
|
||||
else if (P.iswelder())
|
||||
var/obj/item/weapon/weldingtool/F = P // NOW THAT'S WHAT I CALL RECYCLING - wezzy
|
||||
if (!F.welding)
|
||||
return
|
||||
if (!F.remove_fuel(1, user))
|
||||
return
|
||||
else
|
||||
|
||||
return
|
||||
|
||||
if(istype(P, /obj/item/weapon/flame/lighter/zippo))
|
||||
class = "rose"
|
||||
|
||||
user.visible_message("<span class='[class]'>[user] holds \the [P] up to \the [src], it looks like \he's trying to burn it!</span>", \
|
||||
"<span class='[class]'>You hold \the [P] up to \the [src], burning it slowly.</span>")
|
||||
playsound(src.loc, 'sound/bureaucracy/paperburn.ogg', 50, 1)
|
||||
icon_state = "shredp_onfire" //no do_after here, so people can walk n' burn at the same time. -wezzy
|
||||
|
||||
spawn(20)
|
||||
if(get_dist(src, user) < 2 && user.get_active_hand() == P)
|
||||
user.visible_message("<span class='[class]'>[user] burns right through \the [src], turning it to ash. It flutters through the air before settling on the floor in a heap.</span>", \
|
||||
"<span class='[class]'>You burn right through \the [src], turning it to ash. It flutters through the air before settling on the floor in a heap.</span>")
|
||||
new /obj/effect/decal/cleanable/ash(src.loc)
|
||||
qdel(src)
|
||||
|
||||
else
|
||||
to_chat(user, span("warning", "You must hold \the [P] steady to burn \the [src]."))
|
||||
|
||||
/obj/item/weapon/shreddedp/proc/FireBurn()
|
||||
new /obj/effect/decal/cleanable/ash(get_turf(src))
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/shreddedp
|
||||
name = "shredded paper"
|
||||
desc = "The remains of a private, confidential, or otherwise sensitive document."
|
||||
icon = 'icons/obj/bureaucracy.dmi'
|
||||
icon_state = "shredp"
|
||||
throwforce = 0
|
||||
w_class = 1
|
||||
throw_range = 3
|
||||
throw_speed = 1
|
||||
|
||||
/obj/item/weapon/shreddedp/New()
|
||||
..()
|
||||
pixel_x = rand(-5,5)
|
||||
pixel_y = rand(-5,5)
|
||||
if(prob(65)) color = pick("#BABABA","#7F7F7F")
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
* Pens
|
||||
*/
|
||||
/obj/item/weapon/pen
|
||||
desc = "It's a normal black ink pen."
|
||||
desc = "An instrument for writing or drawing with ink. This one is in black. Stylish, classic and professional."
|
||||
name = "pen"
|
||||
icon = 'icons/obj/bureaucracy.dmi'
|
||||
icon_state = "pen"
|
||||
@@ -25,17 +25,18 @@
|
||||
|
||||
|
||||
/obj/item/weapon/pen/blue
|
||||
desc = "It's a normal blue ink pen."
|
||||
desc = "An instrument for writing or drawing with ink. This one is in blue. Ironically used mostly by white-collar workers."
|
||||
icon_state = "pen_blue"
|
||||
colour = "blue"
|
||||
|
||||
/obj/item/weapon/pen/red
|
||||
desc = "It's a normal red ink pen."
|
||||
desc = "An instrument for writing or drawing with ink. This one is in red. Favored by teachers and creeps who like to pretend to write in blood."
|
||||
icon_state = "pen_red"
|
||||
colour = "red"
|
||||
|
||||
/obj/item/weapon/pen/multi
|
||||
desc = "It's a pen with multiple colors of ink!"
|
||||
desc = "An instrument for writing or drawing with ink. This one comes with with multiple colors! Push down all three simultaneously to rule the universe."
|
||||
icon_state = "pen_multi"
|
||||
var/selectedColor = 1
|
||||
var/colors = list("black","blue","red")
|
||||
|
||||
@@ -53,7 +54,7 @@
|
||||
to_chat(user, "<span class='notice'>Changed color to '[colour].'</span>")
|
||||
|
||||
/obj/item/weapon/pen/invisible
|
||||
desc = "It's an invisble pen marker."
|
||||
desc = "An instrument for writing or drawing with ink. This one has invisible ink."
|
||||
icon_state = "pen"
|
||||
colour = "white"
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
name = "photocopier"
|
||||
icon = 'icons/obj/library.dmi'
|
||||
icon_state = "photocopier"
|
||||
var/insert_anim = "photocopier1"
|
||||
var/insert_anim = "photocopier_scan"
|
||||
anchored = 1
|
||||
density = 1
|
||||
use_power = 1
|
||||
@@ -179,11 +179,13 @@ VUEUI_MONITOR_VARS(/obj/machinery/photocopier, photocopiermonitor)
|
||||
toner--
|
||||
if(toner == 0)
|
||||
visible_message("<span class='notice'>A red light on \the [src] flashes, indicating that it is out of toner.</span>")
|
||||
flick("photocopier_notoner", src)
|
||||
return
|
||||
|
||||
c.set_content_unsafe(pname, info)
|
||||
if (print)
|
||||
src.print(c, use_sound, 'sound/items/poster_being_created.ogg', delay)
|
||||
src.print(c, use_sound, 'sound/bureaucracy/print.ogg', delay)
|
||||
flick("photocopier_print", src)
|
||||
return c
|
||||
|
||||
/obj/machinery/photocopier/proc/photocopy(var/obj/item/weapon/photo/photocopy)
|
||||
@@ -204,6 +206,7 @@ VUEUI_MONITOR_VARS(/obj/machinery/photocopier, photocopiermonitor)
|
||||
if(toner < 0)
|
||||
toner = 0
|
||||
visible_message("<span class='notice'>A red light on \the [src] flashes, indicating that it is out of toner.</span>")
|
||||
flick("photocopier_notoner", src)
|
||||
|
||||
return p
|
||||
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
################################
|
||||
# Example Changelog File
|
||||
#
|
||||
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
|
||||
#
|
||||
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
|
||||
# When it is, any changes listed below will disappear.
|
||||
#
|
||||
# Valid Prefixes:
|
||||
# bugfix
|
||||
# wip (For works in progress)
|
||||
# tweak
|
||||
# soundadd
|
||||
# sounddel
|
||||
# rscadd (general adding of nice things)
|
||||
# rscdel (general deleting of nice things)
|
||||
# imageadd
|
||||
# imagedel
|
||||
# maptweak
|
||||
# spellcheck (typo fixes)
|
||||
# experiment
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: WowzewoW
|
||||
|
||||
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
|
||||
delete-after: True
|
||||
|
||||
# Any changes you've made. See valid prefix list above.
|
||||
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
|
||||
# SCREW THIS UP AND IT WON'T WORK.
|
||||
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
|
||||
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
|
||||
changes:
|
||||
- tweak: "Tweaks some bureaucracy and library sprites."
|
||||
- tweak: "Reverts pen sprite with some improvements."
|
||||
- soundadd: "Filing cabinets, boxes and paper have new sounds."
|
||||
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 27 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user