Fixes#4538
also found when you tried to weld it it would break the sprite also
made the toggle verb just call the attack_hand proc to remove some items from the locker.
Had to do a hacky fix. there was no real way around it.
Also, a couple balances with IPCs
And a totally silly death animation (Which has been commented out for now)
We won't regenerate the list for Manifests every tick while viewing the manifest, instead we have a global variable for it PDA_Manifest that we Cut() if there is a change to the manifest then when the next player goes to view the manifest on their PDA it will recreate the list that one time.
Some sections of the PDA will no longer auto-refresh every tick because...well that's dumb.
Modes that will no longer autoupdate at all: Viewing medical/sec records, viewing notes (will update when you change them of course), and the station alert menu.
Modes that will only autoupdate every 5 ticks: APC list (Because it's a huge fuck off list), the manifest, mulebots and secbots screens, supply requests/orders, and janitor supply locator)
Some other things that I just can't remember right now.
Previously, every single /obj would parse the req_access_txt and req_one_access_txt strings and turn them into a list of numbers for the access system.
This is now done the first time check_access() is called, so only objects that actually use the system will have the lists generated.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>
- Fixed lighting issues in dorms (added APC to bedroom area, also gave cryo storage and dorm bedrooms their own area subtypes so light switches don't conflict anymore)
- Fixed 0-2 cable "pixel_y = 1" offset (it was making a 1 pixel gap between south-to-end cables on the map)
- Replaced research outpost piping with new subtypes
- Fixed a broken air supply pipe running to the research outpost auxiliary storage area
- Replaced a few plating turfs in space with airless platings
- updated update_icon() for pipes and manifolds to change the color instead of the sprite
- updated subtypes to use global defines for colors instead of hard coded html refs
- added an alpha tweak to hidden pipes for the sake of mapping (DM doesn't render semi-transparent icons correctly, but it does handle var/alpha tweaks) - this is overridden when the pipe is spawned in the game world with New()
(Thinking about it, we could potentially do away with the transparent pipe sprites by just using the alpha variable. May do this later.)
- fixed pipe painter
- unwrenched pipes now inherit their source pipe color, and also inherit it when reattached to a pipe network again
Nano manipulators were not lowering build time at all.
Stock and Pico manipulaors were lowering build time by 6%.
This fixes that. Now: Stock = standard build time, Nano = 6% faster, Pico = 12% faster.
Fixes#4447
- Added a parent call to each wardrobe subtypes New() proc.
Wardrobes weren't calling obj/structure/closet/New(), so weren't adding items in the same location to their contents when first created.
- Removed wardrobe/New() proc.
So all subtypes don't inherit an extra set of blue uniforms and brown shoes. Only one wardrobe on the map is of this type, and it's on the derelict, so didn't think it was worth making a map change.
- removed double windows
- added pipe dispensers
- removed one rogue wire
- rearranged the atmos monitoring room based on forum feedback
- changed radiation collector blast doors to same switch network
- tweaked poddoor New() function so they render over glass if closed at round start
- setup engine room pipe network to neutralize the SM at round start - it now cools the nitrogen in the chamber
- added extra functionality to advanced airlock "purge" and "secure" buttons
- made a few tweaks to airlock/door controller NanoUI
- Restored "steam" code to chem grenades to handle grenades that don't have any reagents in them that react i.e. water grenades. (I removed it thinking it was only in there for handling foam reagents, but it seems it has more uses.)
This splashes the surrounding area in whatever reagents were leftover in the grenade after all reactions have occurred.
Before: If a canister is hooked up to a connector port it's icons were being deleted and recreated every tick.
After: We store an update_flag that is a bitfield of the current icon and overlay states, and created a proc to check if it should change. If not, we don't mess with icons. Real simple.
- /datum/computer/file/embedded_program moved from embedded_controller_base.dm to code/game/machinery/embedded_controller/airlock_program.dm
- embedded_controller_base.dm cleaned up and identical parts of the controller subtypes were moved here
- embedded_controller subtypes moved to code/game/machinery/embedded_controller/airlock_controllers.dm
- Added nanoUI templates for airlock controllers
- Added a couple of classes to nano/css/shared.css for colouring buttons
- Minor map update to maintain airlock compatibility and fix a broken airlock near virology
- Fixed DP vent pumps not changing direction
- Made airlock_sensor more versatile (and backwards compatible with old airlock code)
- Added airlock_sensor and access_button airlock subtypes for easier mapping
Fixes#3986
- Foam reagent inheritance fixed:
The trans_to() proc in Chemistry-Holder.dm was calling handle_reactions() every time it would add and remove reagents with add_reagent() and remove_reagent(). I've added a safety flag to both of these procs (and copy_to()) so that trans_to will not call handle_reactions() until it has added all the reagents to the target container. This allows foam to reliably take on the properties of other leftover reagents.
- Fixed a bug in effect_system.dm that wasn't applying reagents from foam to the environment.
- Tweaked smoke to apply reagent effects after it has stopped moving
This was causing huge reagent spam at the center of the smoke cloud as it was spawning, since they were being applied every time the cloud of smoke moved. Also changed it to apply the effects 2-3 times at longer intervals (2 seconds).
- Smoke also only effects tiles in a 3x3 grid now, rather than 5x5.
- Summary:
Chem smoke does slightly less damage (if it contains damaging reagents)
Chem smoke proc calls reduced by 60-70% (significant lag reduction)
Foam works properly again
Foam proc calls reduced by 70-80%