diff --git a/code/modules/asset_cache/assets/paper.dm b/code/modules/asset_cache/assets/paper.dm index 8653cff0dd1..32601e587fb 100644 --- a/code/modules/asset_cache/assets/paper.dm +++ b/code/modules/asset_cache/assets/paper.dm @@ -18,6 +18,11 @@ "stamp-solfed" = 'modular_skyrat/master_files/icons/stamp_icons/large_stamp-solfed.png', // SKYRAT ADDITION: END - Other stamp icons + //BUBBERSTATION ADDITION: START - Bubberstation Stamp Icons + "stamp-merged" = 'icons/stamp_icons/large_stamp-merged.png', + "stamp-closed" = 'icons/stamp_icons/large_stamp-closed.png', + //BUBBERSTATION ADDITION: END - Bubberstation Stamp Icons + "stamp-clown" = 'icons/stamp_icons/large_stamp-clown.png', "stamp-deny" = 'icons/stamp_icons/large_stamp-deny.png', "stamp-ok" = 'icons/stamp_icons/large_stamp-ok.png', @@ -34,4 +39,5 @@ "stamp-mime" = 'icons/stamp_icons/large_stamp-mime.png', "stamp-centcom" = 'icons/stamp_icons/large_stamp-centcom.png', "stamp-syndicate" = 'icons/stamp_icons/large_stamp-syndicate.png' + ) diff --git a/icons/stamp_icons/large_stamp-closed.png b/icons/stamp_icons/large_stamp-closed.png new file mode 100644 index 00000000000..cc1857c7176 Binary files /dev/null and b/icons/stamp_icons/large_stamp-closed.png differ diff --git a/icons/stamp_icons/large_stamp-merged.png b/icons/stamp_icons/large_stamp-merged.png new file mode 100644 index 00000000000..cb92debdbd1 Binary files /dev/null and b/icons/stamp_icons/large_stamp-merged.png differ diff --git a/modular_zubbers/code/_globalvars/lists/maintenance_loot_rare.dm b/modular_zubbers/code/_globalvars/lists/maintenance_loot_rare.dm index 842bed153c4..41ade7626e2 100644 --- a/modular_zubbers/code/_globalvars/lists/maintenance_loot_rare.dm +++ b/modular_zubbers/code/_globalvars/lists/maintenance_loot_rare.dm @@ -8,6 +8,7 @@ GLOBAL_LIST_INIT(rarity_loot, list(//rare: really good items /obj/item/survivalcapsule/bathroom = 1 ) = 25, /obj/item/table_clock = 50, + /obj/item/storage/briefcase/coderbus = 25, list( /obj/item/ammo_casing/shotgun/antitide = 1, /obj/item/ammo_casing/shotgun/beanbag = 1, diff --git a/modular_zubbers/code/game/objects/items/storage/briefcase.dm b/modular_zubbers/code/game/objects/items/storage/briefcase.dm new file mode 100644 index 00000000000..302296d4602 --- /dev/null +++ b/modular_zubbers/code/game/objects/items/storage/briefcase.dm @@ -0,0 +1,7 @@ +/obj/item/storage/briefcase/coderbus + folder_path = null //I hate this whole fucking system wtf. + +/obj/item/storage/briefcase/coderbus/PopulateContents() + new /obj/item/folder/coderbus(src) + new /obj/item/stamp/coderbus/merged(src) + new /obj/item/stamp/coderbus/closed(src) diff --git a/modular_zubbers/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm b/modular_zubbers/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm new file mode 100644 index 00000000000..4f645a6a565 --- /dev/null +++ b/modular_zubbers/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm @@ -0,0 +1,3 @@ +/obj/structure/closet/secure_closet/research_director/PopulateContents() + ..() + new /obj/item/storage/briefcase/coderbus(src) diff --git a/modular_zubbers/code/modules/paperwork/folders_premade.dm b/modular_zubbers/code/modules/paperwork/folders_premade.dm new file mode 100644 index 00000000000..470e910a3c0 --- /dev/null +++ b/modular_zubbers/code/modules/paperwork/folders_premade.dm @@ -0,0 +1,8 @@ +/obj/item/folder/coderbus + icon_state = "folder_syndie" //honestly + +/obj/item/folder/coderbus/Initialize(mapload) + . = ..() + for(var/i in 1 to rand(3,8)) + new /obj/item/paper/fluff/merge_my_fucking_pr(src) + update_appearance() diff --git a/modular_zubbers/code/modules/paperwork/paper_premade.dm b/modular_zubbers/code/modules/paperwork/paper_premade.dm new file mode 100644 index 00000000000..2336e7061e0 --- /dev/null +++ b/modular_zubbers/code/modules/paperwork/paper_premade.dm @@ -0,0 +1,65 @@ +/obj/item/paper/fluff/merge_my_fucking_pr + default_raw_text = "UH OH" + +/obj/item/paper/fluff/merge_my_fucking_pr/Initialize(mapload) + + //I love madlibs. + //The fallbacks should never roll but you never know. + var/pr_number = 40000 + (text2num(copytext("\ref[src]",2),16) % 100000) //While scientific notation is funny, it wasn't precise enough + var/thing_to_remove = lowertext(pick_list_replacements(ION_FILE, "ionobjects")) || "Kebab" //2006 called, they want their meme back + var/obj/machinery/nuclearbomb/selfdestruct/self_destruct = locate() in SSmachines.get_machines_by_type_and_subtypes(/obj/machinery/nuclearbomb/selfdestruct) //Wait, why the fuck are we trying to get the nuke??? Coder backdoor??? + if(self_destruct) + if(self_destruct.r_code == NUKE_CODE_UNSET) + self_destruct.r_code = random_nukecode() + message_admins("Through salt PRs, the self-destruct code was set to \"[self_destruct.r_code]\".") + if(self_destruct.r_code == pr_number) + thing_to_remove = "the station's nuclear self-destruct device" //Just made every senior admin shit themselves with this line. 1 in 140,000 chance, by the way. + + var/title = "Removes [capitalize(thing_to_remove)]" + var/author = "[pick(GLOB.first_names)] [pick(GLOB.last_names)]" || "Joe Momma" + var/author_dash = replacetextEx(author," ","-") + var/conversation = pick_list_replacements(HALLUCINATION_FILE, "conversation") || "Fuck off?" + var/redpill = pick_list_replacements(REDPILL_FILE, "redpill_questions") || "Why not?" + var/job = replacetextEx(pick_list_replacements(HALLUCINATION_FILE, "people") ,"\\%TARGETNAME","Security") || "Security" + var/traitor = replacetextEx(pick_list_replacements(HALLUCINATION_FILE, "accusations") ,"\\%TARGETNAME","a griefer") || "a griefer" + var/location = replacetextEx(pick_list_replacements(HALLUCINATION_FILE, "location") ,"\\%TARGETNAME","dorms") || "dorms" + var/branch = replacetextEx("[traitor]-[thing_to_remove]-removal"," ","-") + var/dirty_commits = rand(4,75) + + default_raw_text = {" +

[title] #[pr_number]

+ [author] wants to merge [dirty_commits] commits into \[Space-Station-13:master\] from \[[author_dash]:[branch]\] +
+
+
+
+
+
+

About The Pull Request

+
+

Removes [thing_to_remove].

+
+

Why It's Good For The Station

+
+

[redpill]

+

+ [pick("The Research Directior needs","Security needs","We need","Central Command needs","Nanotrasen needs")] to remove [thing_to_remove] from + [pick("the Station","the Crew",job,location)]. [pick("You might be thinking","You're probablly wondering","You might be saying","One might think","Some might say")] + "[conversation]", [pick("so let me explain","and you'd normally be right","but let me explain","so let me have a moment of your time","give me a second to explain")]. +

+ [pick("One time","Previously","Last shift","A few moments ago")] that damn griefer george melons was [traitor] [pick("as","while they were")] [job] and [pick("he","they")] + [pick("killed","assaulted","ass slapped","smacked","bwoinked")] [pick("me","my person","my well being","my ass")] [pick("in","near","around")] [location] + [pick("with","using","while I didn't have any")] [thing_to_remove]. This [pick("should not have happened","was fucking stupid","made me cry","wasted my time","annoyed me")] so I am + [pick("petitioning","begging","asking","demanding")] for it to be removed. +

+
+

Changelog

+
+ CL [author]
+ [pick("del","remove","balance","fix","bugfix")]: Removes [thing_to_remove]
+ /CL + "} + + name = "[initial(name)] - pull request #[pr_number], [title]" + + return ..() diff --git a/modular_zubbers/code/modules/paperwork/stamps.dm b/modular_zubbers/code/modules/paperwork/stamps.dm new file mode 100644 index 00000000000..e7649726bc9 --- /dev/null +++ b/modular_zubbers/code/modules/paperwork/stamps.dm @@ -0,0 +1,14 @@ +/obj/item/stamp/coderbus + icon = 'modular_zubbers/icons/obj/service/bureaucracy.dmi' + icon_state = null + desc = "A rubber stamp for stamping unimportant requests." + +/obj/item/stamp/coderbus/merged + name = "merged rubber stamp" + icon_state = "stamp-merged" + dye_color = DYE_PURPLE + +/obj/item/stamp/coderbus/closed + name = "closed rubber stamp" + icon_state = "stamp-closed" + dye_color = DYE_RED diff --git a/modular_zubbers/icons/obj/service/bureaucracy.dmi b/modular_zubbers/icons/obj/service/bureaucracy.dmi new file mode 100644 index 00000000000..25aa8fab525 Binary files /dev/null and b/modular_zubbers/icons/obj/service/bureaucracy.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 43b4e4cb377..5c5e3240905 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -8017,9 +8017,11 @@ #include "modular_zubbers\code\game\objects\items\robot\robot_upgrades\adv_plasmacutter_upgrade.dm" #include "modular_zubbers\code\game\objects\items\stacks\medical.dm" #include "modular_zubbers\code\game\objects\items\storage\boxes.dm" +#include "modular_zubbers\code\game\objects\items\storage\briefcase.dm" #include "modular_zubbers\code\game\objects\items\storage\guncases.dm" #include "modular_zubbers\code\game\objects\structures\trash_pile.dm" #include "modular_zubbers\code\game\objects\structures\beds_chairs\sofa.dm" +#include "modular_zubbers\code\game\objects\structures\crates_lockers\closets\secure\scientist.dm" #include "modular_zubbers\code\game\objects\structures\plaques\static_plaques.dm" #include "modular_zubbers\code\game\traits\negative.dm" #include "modular_zubbers\code\game\traits\neutral.dm" @@ -8134,6 +8136,9 @@ #include "modular_zubbers\code\modules\opposing_force\code\equipment\antagonist_powers.dm" #include "modular_zubbers\code\modules\pai\ghost_pai.dm" #include "modular_zubbers\code\modules\paperwork\fax.dm" +#include "modular_zubbers\code\modules\paperwork\folders_premade.dm" +#include "modular_zubbers\code\modules\paperwork\paper_premade.dm" +#include "modular_zubbers\code\modules\paperwork\stamps.dm" #include "modular_zubbers\code\modules\power\supermatter\supermatter_gas.dm" #include "modular_zubbers\code\modules\projectiles\ammunition\ballistic\smg.dm" #include "modular_zubbers\code\modules\projectiles\boxes_magazines\external\smg.dm"