* Refactors some signal misuse with the stationloving component (#70496)
* Refactors secluded locs
* Tweak
* Use traits instead of signals
* Review
* Type error
* Refactors some signal misuse with the stationloving component
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Small Seconds Define Cleanup for Spawners (#70719)
Hey there,
I was doing some codediving, and I stumbled upon this spawn_time silliness in mob spawner code, so I just swapped everything to use SECONDS defines (since units are very epic).
* Small Seconds Define Cleanup for Spawners
Co-authored-by: san7890 <the@san7890.com>
* Head pikes now drop their mounted heads upon destruction (#70720)
* wow this doesnt look right
* better idea
* Head pikes now drop their mounted heads upon destruction
Co-authored-by: Rhials <Datguy33456@gmail.com>
* Janicart refactor (#70591)
Showing this oldie a bit of love with some minor modernization.
cl ShizCalev
refactor: Modernized the janicart!
fix: Fixed janicart examine message not mentioning how to dump it when it was almost empty, but not completely empty.
fix: Fixed varedited janicarts having no caution signs visible when they went over 4 signs.
/cl
* Janicart refactor
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Chairs now get placed in the direction you are facing (#70641)
chair direction fix
* Chairs now get placed in the direction you are facing
Co-authored-by: Ebb-Real <95765134+Ebb-Real@users.noreply.github.com>
* Sign with slime mutation map for xenobio (#70539)
* Sign with slime mutation map for xenobio
Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
* Fix training toolboxes not setting vis_flags correctly (#70618)
Fix training machines not setting vis_flags correctly
* Fix training toolboxes not setting vis_flags correctly
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
* Makes the railings drop the same amount of rods as used (#70588)
About The Pull Request
Fixes a bug where constructing a railing would take 6 rods, but deconstructing would only give 3.
Why It's Good For The Game
Fixes#70570
* Makes the railings drop the same amount of rods as used
Co-authored-by: JoeNamath <36791242+Darknesshaz@users.noreply.github.com>
* Stairs DLC: Buildable stairs, material datum staircases, fall up a staircase (#70504)
Adds a few new types of stairs, and makes stairs buildable within rounds.
Also removes the terminator sprite variation for stairs, because its basically unused and really not needed with plane cube multiz.
* Stairs DLC: Buildable stairs, material datum staircases, fall up a staircase
Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
* Fixes showcase microwave's missing sprite (#70392)
#70203 changed the microwave's dmi path but did not replace the showcase variant's icon with the new dmi.
* Fixes showcase microwave's missing sprite
* Microwave Aesthetics
Co-authored-by: Sealed101 <75863639+Sealed101@users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
* 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>