* Fixes not being able to place chairs on lavaland (#70236)
Fallount from the misc changes, it assumed all non floor turfs were
groundless. This resolves that
* Fixes not being able to place chairs on lavaland
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Wall clocks are no longer described as powered by bluespace (#70198)
* Wall clocks are no longer described as powered by bluespace
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* "It has been 0 days since the last incident" sign (#70099)
Adds a fun sign to various places in engineering which tracks how many days (read: rounds) it has been since last time the engine delaminated.
* "It has been 0 days since the last incident" sign
Co-authored-by: Jacquerel <hnevard@gmail.com>
* SECURITY RESPRITE - DARE.
* [MDB IGNORE][THIS SHOULD BE PR'D TO AN ALREADY OPEN MIRROR] Security Resprite - conflict fixes and modular changes (#16367)
* No Head?
* comemt clena
* boot stuff mostly
* Im done touching this file it makes me sad
* I hate overrides :(
* Kill off the now obsolete vest
* How long has this not even worked for? /mob/ linked in Icon? Why?
* low-key just committed so the PR could re-run checks
* Fixes Blueshift not compiling!
Co-authored-by: axietheaxolotl <86872535+axietheaxolotl@users.noreply.github.com>
Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Adds seethrough component (#69642)
Adds a seethrough component!
Standing behind a big object with this component will make the object transparent:
https://youtu.be/nnyWMJakVtE
And no one else can see it:
And yes you can click through it thanks to the power of plane masters!
Standing behind a tree is a pretty big meme and people will have to either shift right click or bump into you to ever find you. This makes it so much better to implement big objects, since they no longer obscure the tiles behind them
It's also useful for existing big objects, like billboards and the likes
🆑
qol: You can now see through big trees when you stand behind them!
refactor: Adds a seethrough component to make it easier to add big stationairy objects without reducing visibility
/🆑
Info
This is done by sending an override overlay to the user that obscures the normal object and plays an animation.
It registers an ENTERED signal on specific turfs. Those tiles in which it hides stuff is defined as a list of list coordinates, for which I made a global list with some defines. It's really crappy and I'd appreciate some feedback on that
* Adds seethrough component
Co-authored-by: Time-Green <timkoster1@hotmail.com>
* fixes a typo during window construction (#70087)
replaces 'from the floor' to 'to the floor' since you're building the window, not deconstructing it.
* fixes a typo during window construction
Co-authored-by: coldud13 <coldud13@users.noreply.github.com>
* Planks create barricades on doors/windows and can be crowbarred (#69676)
* Wooden planks can be used on doors/windows to barricade it, using a can_barricade Element.
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
* Planks create barricades on doors/windows and can be crowbarred
Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
* Save 2.2s minimum (with zero ruins, likely a good bit more in production) of atom init time (#69564)
Pre-sort smoothing_groups and canSmoothWith
Without any ruins, these sorts were taking more than 0.6s, and the bulk of the runtime cost of sortTim during init time.
This only happens on init and they are never changed apart from that, so pre-sorts everything and adds a unit test (in the form of #ifdef UNIT_TESTS, because you can't initial a list) to ensure that they are proper.
Keep visibilityChanged() to mapload only for turf/Initialize
Saves about 0.4s worst case scenario (e.g. with no ruins). Very expensive code (175k loop iterations) for 0 side effects.
Space areas now have the fullbright overlay, not the space turfs
Saves about 0.8s worst case scenario. Seems to work fine with starlight.
Remove is_station_level check for window spawners assigning RCD memory.
Saves about 0.3s worst case scenario. The logic for this isn't consistent since neither walls nor floors check this (for performance), plus some minor micro-opts to spawners.
Optimize is_station_level
Doubles in speed, used heavily in /turf/open/floor and in other initialization procs. Bit hard to tell exactly how much is saved, though.
* Save 2.2s minimum (with zero ruins, likely a good bit more in production) of atom init time
* Hopefully fixes the broken CI
* Okay now it shouldn't be failing CI anymore (hopefully)
* Fixes even more issues with smoothing_groups, this time hopefully for good
* Okay NOW it's going to pass CI, surely...
* Okay haha what if it passes this time? :)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Fix Body Container bug (#69824)
* Fix Body Container bug
Fixed bug where body containers could not be closed when standing diagonally from them in some cases.
* Update morgue.dm
* Containers get PASSSTRUCTURE, trays get PASSTABLE
* Update code/game/objects/structures/morgue.dm
* Update code/game/objects/structures/morgue.dm
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
* Fix Body Container bug
Co-authored-by: Marina <50789504+KirbyDaMaster@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
* Corporate sofa corners no longer swallow your sprite when oriented North (#69756)
* Corporate sofa corners no longer swallow your sprite when oriented North
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Makes custom built table descriptions more accurate (#69768)
* table memes
* better yet
* Update code/game/objects/structures/tables_racks.dm
* Update code/game/objects/structures/tables_racks.dm
* Makes custom built table descriptions more accurate
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Shadowpeople's healing is from their brain, splits up surgery.dmi (#69543)
About The Pull Request
Shadowpeople
brain now holds their healing properties.
while possible to extract the brain and put them in another species, the burn-in-light downside really makes it a lot more worth it to just stay a shadowperson and enjoy their other benefits than to swap.
Now use burning eyes from nightmares instead of an unsprited nightvision granting eyeball.
surgery.dmi split up
surgery_ui.dmi holds zone selection ui things for research
surgery_tools.dmi holds surgical tools
/organs folder holds organs.dmi, and species specific organ files for flies and shadowpeople
flies don't put in their random organs because of dmi memes, all their UNIQUE organs will be in the .dmi
Why It's Good For The Game
moving behavior onto the organ moves us closer to species as a blueprint, not species as something that magically grants immutable bonuses.
surgery.dmi is poorly described, holds many different things, and conflicts often because of it.
Changelog
cl
add: Shadowpeople now heal from their brains! Their brain-tumor-thingy!
code: split up surgery.dmi
/cl
* Shadowpeople's healing is from their brain, splits up surgery.dmi
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* medical/security modsuit updates and modules (#69194)
tweaks the colors on the security modsuit to be lighter, i think i did that on the original pr but it got reverted due to merge conflicts
makes the standard quick carry module have nitrile level carrying instead of latex level
environmental bodybags are now always pressurized
adds medical and security hardlight bags, which are environmental bags you can use to move people through space, security ones can be sinched to prevent escape
adds a medical version of the prisoner capture module, for patient transport, prisoner capture and patient transport now use the medical/security holobags, medical one deploying them faster. when you move too far out of range the holobag dissipates
adds a defibrillator module, extends shock paddles
adds a thread ripper module, this module temporarily rips away the matter of clothing, to allow stuff like injections, surgery, defibrillation etc through it
adds a surgery processor module, essentially a portable surgery computer like borgs have
fixes a bug where you can unwield defibrillator paddles just after starting the do_after to defib onehanded
fixes a bug where the modsuit gps would have a broken name when renamed
* medical/security modsuit updates and modules
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
* bodybags / crates will now be explicit about what is ontop of them if you can't close them due to other bodybags / crates being in the same tile. (#69545)
bodybags / crates will no longer yell about closets being in the way when trying to close them ontop of other bodybags / crates
* bodybags / crates will now be explicit about what is ontop of them if you can't close them due to other bodybags / crates being in the same tile.
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Fixes storage mass transfer being generally broken, adds mass transferring onto griddles (#69084)
* - Fixes storage mass transfer
- Brings some sanity to storage procs
- Implements a griddle feature that never was
* Uncomment this
* Right-click attack fix
* Scoop fix
* Smartfridges use silent
* Restores some lost checks
* Fixes storage implants
* Fixes storage mass transfer being generally broken, adds mass transferring onto griddles
* update modular
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* Buff regular windows more and place them on Metastation (#69246)
The feedback on the previous version of this PR made me realize that the windows weren't buffed enough to be seen as actual companions to regular walls. This PR buffs the windows to the level that the old reinforced windows were. They have 50 melee armor, take 14 hits to destroy and deconstruction consists of screwdriver -> crowbar -> screwdriver
This pull request changes all reinforced windows in low security areas on Metasation with regular windows.
Areas with normal walls that still have reinforced windows:
Arrivals
Departures
Security stations
Because the regular windows are buffed so much in this PR they are arguably stronger than the regular walls (its easier to smash the windows, but the walls take less tool time) so I don't really see any reason to not place this on almost every place with regular walls
* Buff regular windows more and place them on Metastation
Co-authored-by: Vincent <CPTANT@users.noreply.github.com>
Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
* [s] Fixes bluespace bodybags allowing you to delete them when you're inside of them (#69529)
Fixes bluespace bodybags allowing you to delete them in the round
* [s] Fixes bluespace bodybags allowing you to delete them when you're inside of them
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Fix lockers giving no feedback when trying to close them with another locker inside (#69172)
Fix lockers giving no feedback when trying to close them with another locker inside
You also no longer try to toggle the lock status when you fail to close an open locker. I think this was a bit weird behaviour because changing the lock status of an open locker doesn't really make sense and only resulted in confusing messages.
* Fix lockers giving no feedback when trying to close them with another locker inside
Co-authored-by: Vincent <CPTANT@users.noreply.github.com>
* Necropolis Tendrils now need to be interacted with to drop their loot, and multiple people can receive multiple chests. (#69193)
Tendrils no longer immediately drop their chests, they will drop it once you have used an empty hand on the collapsing tendril. You can only spawn a chest once, but every unique mob that interacts can spawn one chest.
* Necropolis Tendrils now need to be interacted with to drop their loot, and multiple people can receive multiple chests.
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Refactors operating tables to be event driven + QoL + Unit Test (#69015)
* Event driven table
* Operating computer fix + loosening of check
* Unit testing
* IT NEEDS TO BE FORCE MOVE YOU GOTTA CLIMB TABLES AAAAH
* Migrated patient to carbon instead of human
Has no real bearing on the experiments tbh
* DNAs can be null apparently
* Simplify replacement code
* Move comments
* Refactors operating tables to be event driven + QoL + Unit Test
* Refactors operating tables to be event driven + QoL + Unit Test
Co-authored-by: vincentiusvin <54709710+vincentiusvin@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* Removes ComponentInitialize()
* Fixes a leftover merge conflict marker
* Fixes the oversight that came from the upstream merge skew
* Fixes all of the instances where we used ComponentInitialize() when we shouldn't've been
* Fixes CI being broken because of the HEV suits
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>