mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-22 12:41:09 +01:00
[MANUAL MIRROR] Big Paperwork (#19082)
Big Paperwork: Adds the Paperwork loan offer, paperwork fraud, and ancient paperwork! (#70863) Adds paperwork -- an indecipherable mess of papers that only a seasoned department head could hope to decipher. If processed and sent to Central Command via the cargo shuttle, the budget gets a bonus. Paperwork is distributed through a new Shuttle Loan offer. A nearby station needs some paperwork reviewed. Do you have what it takes to handle BIG PAPERWORK? Processing paperwork is relatively simple. You can inspect it to see which head of staff it "belongs" to, and you can use their stamp to complete it. You get a lot of these, so the bonuses can add up if you get them all in. Just be careful not to return any unprocessed paperwork. With big paperwork comes big paperwork fraud, and big fines. You can photocopy your completed paperwork to double-dip with Central Command and squeeze out a little bit more money. The more paperwork fraud you commit, the higher the chance you'll be caught and fined. On top of that: Some say that in the long forgotten halls of maintenance, there lies _ancient paperwork_. Documents whose importance has long since passed, but are still important for bookkeeping at Central Command. With a keen eye, you might spot one of these while scouring through maintenance. Make sure it gets forwarded to the right person, cargo will thank you. Co-authored-by: Rhials <Datguy33456@gmail.com>
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
/datum/export/paperwork
|
||||
cost = CARGO_CRATE_VALUE * 3
|
||||
unit_name = "paperwork pile"
|
||||
export_types = list(/obj/item/paperwork)
|
||||
exclude_types = list(/obj/item/paperwork/photocopy) //Has its own category
|
||||
allow_negative_cost = TRUE
|
||||
|
||||
/datum/export/paperwork/get_cost(obj/item/paperwork/sold_paperwork)
|
||||
var/paperwork_cost = cost
|
||||
|
||||
if(sold_paperwork.stamped)
|
||||
paperwork_cost = ..()
|
||||
else
|
||||
paperwork_cost = -init_cost //Punishment for improperly filed paperwork.
|
||||
|
||||
return paperwork_cost
|
||||
|
||||
/datum/export/photocopy
|
||||
cost = CARGO_CRATE_VALUE
|
||||
unit_name = "messy paperwork pile"
|
||||
export_types = list(/obj/item/paperwork/photocopy)
|
||||
allow_negative_cost = TRUE
|
||||
///Tracks the chance of losing money for trying to double-dip with photocopies. Resets every time it ruins an order.
|
||||
var/backfire_chance = 0
|
||||
///Used to track if a batch of photocopy exports has backfired
|
||||
var/backfired = FALSE
|
||||
|
||||
/datum/export/photocopy/get_cost(obj/item/paperwork/photocopy/sold_paperwork)
|
||||
if(sold_paperwork.stamped && !backfired) //Upon backfiring, no more photocopies are processed or sold until the next cargo shipment
|
||||
if(sold_paperwork.voided)
|
||||
return 0 //Voided photocopies do nothing
|
||||
else
|
||||
backfire_chance += rand(15,25)
|
||||
if(prob(backfire_chance))
|
||||
backfire_chance = 0
|
||||
backfired = TRUE
|
||||
return -init_cost * 4 //too high of an amount to allow for infinite money
|
||||
else
|
||||
return ..()
|
||||
|
||||
else
|
||||
return -init_cost
|
||||
|
||||
/datum/export/photocopy/total_printout(datum/export_report/ex, notes)
|
||||
. = ..()
|
||||
|
||||
if(backfired)
|
||||
backfired = FALSE
|
||||
. += " Counterfeit paperwork was detected in this shipment. A fine has been taken from your budget as a result."
|
||||
Reference in New Issue
Block a user