Repaths obj/machinery to obj/structure/machinery. **Note for
reviewers:** the only meaningful changed code exists within
**code/game/objects/structures.dm** and
**code/game/objects/structures/_machinery.dm**, largely concerning
damage procs. With the exception of moving airlock defines to their own
file, ALL OTHER CHANGES ARE STRICTLY PATH CHANGES.
Objects, _categorically_, are largely divided between those you can hold
in your hand/inventory and those you can't. Machinery objects are
already subtypes of Structures behaviorally, this PR just makes their
pathing reflect that, and allows for future work (tool actions, more
health/destruction functionality) to be developed without unnecessary
code duplication.
I have tested this PR by loading up the Horizon and dismantling various
machines and structures with tools, shooting guns of various types
throughout the ship, and detonating a bunch of explosions throughout the
ship.
Replace /datum/gas_mixture/proc/return_pressure with XGM_PRESSURE(xgm)
macro. Having such a relatively simple statement contributing proc
overhead to procs called millions of times is ridiculous
Rename /datum/gas_mixture/proc/zburn to react, deleting the old react
which was just an alias for it. Free proc overhead
Turn check_combustibility into a macro CHECK_COMBUSTIBLE(is_cmb, xgm).
also rewrite it slightly so that it only needs to do one pass. Its a bit
nasty so I apologize for that, but speeeeed.
Delete most powernet and obj/machinery/power procs for handling power,
replacing them with macros. The fact that we were unironically calling a
draw_power() on APCs to call draw_power() on their terminals to call
draw_power() on their powernet every single process tick was insane.
Turn `between` into a macro alias for clamp() since the param order is
different
turn `Percent` into a macro AS_PCT
Rewrite significant chunks of update_canmove so its not quite as
horrifying of a proc and hopefully doesn't eat the entire mob subsystem
every movement now
changes:
- rscdel: "Removes 'Assembled Solar Panels' bounty from bounty pool and
updates the 'Solar Assemblies or Trackers' with its old description
referencing the phoron scarcity."
- Reworked prices, wages and balances of (almost) everything ingame.
- Added coinage and decimal support to cash, ruthlessly sanitized to
avoid floating-point errors. Reflected in cash-related things like ATMs.
- Tweaked how cash bundles are made and distributed to support
decimalization.
- Adjusted the starting money individuals and departments receive in
their accounts.
- Adjusted the funding Tajara, Unathi, Diona, Vaurca, and IPCs receive
in their accounts. Should earn more on average than they used to.
Credit values are now roughly 1/10th what they were before, across the
board.
Coins were added too! These have names:
- Unie: 0.01 credits
- Quin: 0.05 credits
- Dece: 0.10 credits
- Quarter: 0.25 credits
These can be seen cameo'd in the screenshots below.
Values, wages, etc, are based on the wiki page
https://wiki.aurorastation.org/index.php?title=Guide_to_Wages_and_Pay .
Values are not anchored to any singular real-world currency.
Example price differences:
| Example Item | Old Price | New Price |
| --- | --- | --- |
| Comet Cola | 15.00 | 1.50 |
| Cup Ramen | 20.00 | 2.00 |
| Jyalara | 38.00 | 3.00 |
| Trans-Stellar Cigarettes | 76.00 | 9.00 |
| Zo'ra Soda | 29.00 | 2.50 |
| Gumball | 5.00 | 0.25 |
| 50x plasteel sheets | 700.00 | 120.00 |
| 5x meat (cargo) | 160.00 | 55.00 |
| 50x phoron crystals (cargo) | 2200.00 | 400.00 |
Wages and account balances have also been tweaked:
| Type | Old Amount | New Amount |
| --- | --- | --- |
| Ship Account | 75,000.00 | 35,000.00 |
| Departmental Accounts | 10,000.00 | 15,000.00 |
| Personal Account (avg) | 200.00 - 20,000.00 | 20.00 - 2,000.00 |
Might break the economy; prices will likely need some adjusting
depending on gameplay constraints. Can be adjusted in TMs.
A little testing never hurt anyone.


---------
Signed-off-by: naut <55491249+nauticall@users.noreply.github.com>
Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
Operation Managers and Hangar Techs were supposed to always have the
Cargo Control program downloadable, but it was access-locked behind HOP
(which has been changed to executive officer). I also gave the program
the ability to run on laptops, so cargo techs actually have a reason to
bring a laptop.
Fixes some cargo bounties that were bugged (including #17225) and
removed some that cannot be fulfilled. Smoke grenades were removed from
security, machinists can't print the Telecomms Traffic Control board,
science can't print NVGs anymore, and there is no way in-game to produce
monkey hide.
rscadd: "Added new cargo bounties."
rscadd: "Adjusted cargo bounties. Reward amounts are semi-randomized, as is the number of required items for some bounties. The types of bounties that appear are more randomized."
tweak: "Altered some bounty descriptions."
tweak: "Any food that has bites taken out of it will no longer count for the related bounty."
tweak: "More types of pies, muffins, and kabobs should now count for their respective bounties."
tweak: "Further adjusted cargo warehouse spawns."