* Tsu's Brand Spanking New Storage: or, How I Learned To Pass Github Copilot As My Own Code
* Delete storage.dm
* yippee
* shit
* holy shit i am stupid
* more fixes
* fuck
* woops
* Refactors mothweek check (#68280)
* Refactors mothweek check
Mothweek HAS SIDE EFFECTS
Checking it on a day that causes a week offset will currently cause that
week offset to persist
That's dumb.
Also it's not very expansive, only covers a slim set of possibilities.
Instead, lets build something to generate all passing days over a period
of time, maybe 3 months out of 2 years.
Then we'll crosscheck that against some predecided "ok" dates
If either list disagrees with each other, we'll fail. That way we can't
miss an edgecase. or have issues with side effects
I like this pattern.
* Refactors mothweek check
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Removed some commented-out code I forgot to remove last time
* Gives the skrell a proper good look for the prefs menu and the screenshot tests
* Updates the Skrell picture used for the screenshot tests
* Completely removes `proc_holders` from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code.
* our changes
* yes
* 0
* Update blackmesa.dmm
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Fixes the MODsuit-related screenshot tests
* Fixes eye sprites not refreshing properly when they're meant to
* Fixed outfits calling too many update procs and pre/post_equip twice because of some silly code
* Fixes glass golems not being transparent
* Fixed the map compilation errors
* Added the screenshot for the vox primalis
* Updates the colors of the moth bodyparts to be easier to work with (making them whiter)
* Fixes the antag icon for blood brothers
* Fixes nightmares looking stupid in their antag icon and also failing the screenshot test
* Fixes the humanoid screenshot
* Updated the blood brother icon with the new colors for moths (because ours are greyscaled)
* Updates some of the randomization stuff for moths, making it possibly functional again
* Cleans up our moth species override a bit
* Updates the screenshot_humanoids test to allow for better control over the screenshots
* Updated the lizard, ashwalker and silverscale screenshots
* I totally didn't forget the .dm
* Moved the set_species before the prepare_human_for_preview()
* The moth's fixed, by the way! In the prefs menu too!
* The xenos are fixed too!
* Pink felinids, how 'bout that?
* Fixed the mush people (so they actually look like the icon that was there already!)
* Snails are fixed too, splitting the .dmi edit in a different commit
* Added https://github.com/tgstation/tgstation/pull/68013 early
* Revert "Fixed the map compilation errors"
This reverts commit b7db0a1f507ed3721d88883338508c058ffb7804.
* Okay just Icebox this time
* Podpeople hair still is broken :(
* Turns out they weren't getting their snouts and frills properly... Now they do!
* Possibly fixes that issue with Tram making compile maps fail
* (code bounty) The tram is now unstoppably powerful. it cannot be stopped, it cannot be slowed, it cannot be reasoned with. YOU HAVE NO IDEA HOW READY YOU ARE
* fex
* fex
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Fixed mech CI not working (thanks safeties)
* Fixes consistent jumpsuits not working for the prefs menu
* Oops forgot to commit this
* We lost this from #10050, now they're grey again
* Fixes point-blank ballistic shots, fixing mech CI that way
* Adds the screenshot icons for our antags
* Adds a bunch of screenshots for all of our species (yes they're ugly but we'll fix them later)
* I Love Merge Conflict Markers
* Fixes `Knockdown` signal being incorrect, making knock-off items (and others) trigger when they should again. Also cleans up the knockoff component and unit tests it. (#67720)
At some point, someone did a find and replace over this file, and completely screwed up the signal for Knockdown().
This caused components that relied on it, like the Knockoff component, to work way less often.
This PR fixes that.
It also goes through and cleans up the Knockoff component. More consistent style guide stuff, minor improvements, better documentation.
It also unit tests it.
* Fixes `Knockdown` signal being incorrect, making knock-off items (and others) trigger when they should again. Also cleans up the knockoff component and unit tests it.
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Fixes slips being broken and adds a unit test to catch it happening again. (#67741)
* Fixes slips being broken and adds a unit test to catch it happening again.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Implements a Demolition Modifier variable to items, affects damage vs structures and robots. (#66967)
Adds a modifier variable which can be used to increase or decrease a given items damage to structures, machinery, vehicles, and robots (including cyborgs, simple-bots, and anything else with the MOB_ROBOTIC biotype)
* Fixes attacks on mech equipment ignoring armor / melee damage, also fixes mech equipment not being disabled at 0% health, also also unit tests mech armor (#67411)
Co-authored-by: itseasytosee <55666666+itseasytosee@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* This tail refactor turned into an organ refactor. Funny how that works.
* Firstly, fixing all the conflicts.
* Fixes all our maps (hopefully)
* Actually, this should fix pod people hair :)
* Almost everything is working, just two major things to fix
* Fixed a certain kind of external organ
* Cleaning up some more stuff
* Turned tail_cat into tail because why the fuck are they separate?
* Moved all the tails into tails.dmi because that was just dumb to have like 3 in a different file
* Adds relevant_layers to organs to help with rendering
* Makes stored_feature_id also check mutant_bodyparts
* Fixes the icon_state names of ALL the tails (pain)
* Fixes wagging, gotta refactor most mutant bodyparts later on
* I Love Added Failures
* Fixed some organs that slipped through my searches
* This could possibly fix the CI for this?
* It doesn't look like it did fix it
* This will make it pass, even if it's ugly as sin.
* Fixed Felinids having a weird ghost tail
* Fixes instances of snouts and tails not being properly colored
Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Fixes Novaflowers not lighting people on fire, again. Unit tests it. Cleans up some unique plant genes stuff too. (#67597)
* Fixes Novaflowers not lighting people on fire, again. Unit tests it. Cleans up some unique plant genes stuff too.
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* fixes inconsistent lighting ci failure in icebox (#67430)
Fixes and adds test for get_pixel_turf returning null on tall objects on top of the map.
* fixes inconsistent lighting ci failure in icebox
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
* Unit tests for default hydroponic seed gene setups (#67029)
Adds a unit test that ensures the default list of genes for all plants is a valid setup.
* Unit tests for default hydroponic seed gene setups
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Forgot about CI failure due to runtime (whoops) (#66762)
* Annotates integration tests failures due to runtimes better
Co-authored-by: Tastyfish <crazychris32@gmail.com>
* Refactors firestacks into status effects (#66573)
This PR refactors firestacks into two status effects: fire_stacks, which behave like normal firestacks you have right now, and wet_stacks, which are your negative fire stacks right now. This allows for custom fires with custom behaviors and icons to be made.
Some fire related is moved away from species(what the fuck was it even doing there) into these as well.
Oh and I fixed the bug where monkeys on fire had a human fire overlay, why wasn't this fixed already, it's like ancient.
Also changed some related proc names to be snake_case like everything should be.
This allows for custom fire types with custom behaviours, like freezing freon fire or radioactive tritium fire. Removing vars from living and moving them to status effects for modularity is also good.
Nothing to argue about since there's nothing player-facing
* Hud Image Culling By Z Level: Theft edition (#65189)
* makes hud images only apply by z level
* makes some of the atom_hud procs have better names
* fixes warning with the hud_user list and adds better documentation
* better docs for hud_images
* removes TODOs
* docs for hud_list
* adds support for linked z levels so mobs can see lower ones
* fixes merge conflict and shittily makes only shocked airlocks get added
* adds support for setting images in the hud as active and inactive
* gets rid of unatomic spatial grid change
* maybe i should actually try COMPILING my changes
* fixes merge skew and makes it compile again
* fixes huds refusing to remove from users who changed z level
* improves z level and registration logic
* fixes antag huds not appearing
* Fixes antag huds not properly setting. We now use hud_list in init, so it needs to be set before the new call, not after. Not sure why the use of appearance key was split like this, but none else knows either so none can stop me
* Ensures that hiding a basic appearance also hides the atom's active list too
* Fixes antag huds going poof
Ensures that remove_atom_from_hud will return false if the passed atom
isn't managed by it
This fixes antag huds disappearing randomly, since they assumed that if
the parent call of remove_atom_from_hud returned true, we should delete
ourselves. This is a safe assumption for them to make, since they should
only ever have one atom.
Does kinda bork if we call remove_atom_from_hud in a way that is unsure
if the passed atom is actually in that list. We were forced into doing
this by how atom huds use the qdeleting signal.
* makes basic alternate_appearance's only update themselves when setting their hud image to active and makes them not add themselves to the global huds_by_category list
* fixes mistake with hud_users list being set non associatively (bad)
* as anything in bot path loops
* Fixes merge skew problems
* Makes bot paths non global
This way they can show themselves to only the bot that "owns" them, ya
feel me?
* Fixes huds not showing up sometimes, cleans up some code
Post Kapu's limb refactor, we were calling prepare_huds twice in a human
init call chain. What was happening was this:
call prepare_huds() // Human
I gained a new hud image
I set active hud icons to mirror it
call prepare_huds() // Living
I overwrote the new hud image
I attempted to set active hud icons, which failed because it assumes
this can never happen
*cries*
* Renames add_hud_to_atom to show_to
My hope is this will make understanding hud code a bit easier, by tying
the behavior to a "verb" more closely. Also renamed a few vars
* remove_hud_from_mob -> hide_from
* Nitpicks a few comments
* Whoops/fuck/shit/damn it all/hhhhhhhhhhhh
* Moves check down, improves stack trace a bit
Co-authored-by: KylerAce <kylerlumpkin1@gmail.com>
* small touch-up
* this should do it
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: KylerAce <kylerlumpkin1@gmail.com>
I initially kept it an exclusive check so funny things like division by inf doesnt get in, but I implemented more inf checks on the quadratic proc and the likes so it really shouldnt be necessary now. This should hopefully reduce cases when the target pressure hits the upper limit because the target gasmix has a miniscule amount of moles, having the result be rejected by the code, and triggering a runtime.
And some minor improvements to the code so it doesnt iterate through the gaslist multiple times.
Nicer code
Co-authored-by: vincentiusvin <54709710+vincentiusvin@users.noreply.github.com>
* unit test for /obj/item/stack singular_name (#66378)
Checks if all non-blacklisted stack items have singular_name set, because apparently that's pretty important
Gives it to a few ones that didn't
* unit test for /obj/item/stack singular_name
* fix
Co-authored-by: capsaicin <84609863+capsaicinz@users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
* CI & Moth Fixing Combo
* Remove this (didn't work anyways)
* fixing a comment (woops)
* Lore friendly commit
* A little more robust?
* Guess we will forgo this.
* More feedback.
* Apply suggestions from code review
Co-authored-by: nevimer <foxmail@protonmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Adds baseturf helpers to create and destroy ignore list (#65910)
This simply adds baseturf helpers to the ignore list of create and destroy to prevent future issues. Currently only breaks downstream. If you add more than 10 baseturf helpers, the CI test will fail.
* Adds baseturf helpers to create and destroy ignore list
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* adds a unique species id unit test + cleans up some golem mischief (#66050)
* adds a unique species id unit test + cleans up some golem mischief
Co-authored-by: capsaicin <84609863+capsaicinz@users.noreply.github.com>