mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-06-22 06:35:12 +01:00
36cf718cc7
* Adds a stack_trace for emissives with invalid icon_states, fixes all that appeared roundstart (#73678) ## About The Pull Request So, this spiraled from one missing icon being fixed to an entire check for said icons. Several icon files no longer use error icons because its assumed that the checks will handle any missing ones, but the checks don't apply to emissives nor overlays at all. This led to the radsuit having an emissive but no icon_state for it - a relic of the old radsuit. This was only noticed because of a downstream with an error icon appearing for it... I was curious how many were actually having the same issue, so I made a small little stack_trace in the mutable_appearance proc. There were like, 2k. Lots of them were icons named, like, "transparent" or "blank" too... I moved that check to the emissives proc because I semi-understand that system so could actually fix it, and it moved to around fourty roundstart. Much more achievable. (The error usually has more info if you click on it, including the item that caused it. I dunno how to add that to the check itself because of where it's located, though.)  This fixes all the ones I could find, including... Nonexistant icons that shouldn't be adding emissives on: - Empty Barsign - Radsuit - Mass Driver Controllers - Telescreens - Aux Base Consoles - PanDEMIC - Kobayashi computer (holodeck) - Abductor camera console - Syndie drop pod - BSA controller Entirely missing icons on: - Pwr Game Vendor (this was just misnamed) - Generic Soda Vendor - Engivend - Security Laptop (proud of this one.,.,)  There are no doubt more of them hidden about, but I don't really know what I'm doing... If there's a check that'd be better than this, please review telling me what to change <3 ## Why It's Good For The Game Fixes missing icons, fixes attempts to add icons where we don't need them, and adds a check to help fix more of the two issues as they occur. ## Changelog 🆑 fix: fixed missing emissives on the Engivend, Pwr-Game Soda, and generic Soda vendors. Also fixed the seclaptop having no valid screen icon! fix: fixed a few items trying to apply emissives when they shouldn't. code: added a stack_trace for emissives with missing icon states. /🆑 * Adds a stack_trace for emissives with invalid icon_states, fixes all that appeared roundstart * Update cryopod.dm --------- Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
35 lines
1.6 KiB
Plaintext
35 lines
1.6 KiB
Plaintext
/// These tests perform no behavior of their own, and have their tests offloaded onto other procs.
|
|
/// This is useful in cases like in build_appearance_list where we want to know if any fail,
|
|
/// but is not useful to right a test for.
|
|
/// This file exists so that you can change any of these to TEST_FOCUS and only check for that test.
|
|
/// For example, change /datum/unit_test/focus_only/invalid_overlays to TEST_FOCUS(/datum/unit_test/focus_only/invalid_overlays),
|
|
/// and you will only test the check for invalid overlays in appearance building.
|
|
/datum/unit_test/focus_only
|
|
|
|
/// Checks that every created emissive has a valid icon_state
|
|
/datum/unit_test/focus_only/invalid_emissives
|
|
|
|
/// Checks that every overlay passed into build_appearance_list exists in the icon
|
|
/datum/unit_test/focus_only/invalid_overlays
|
|
|
|
/// Checks that every icon sent to the research_designs spritesheet is valid
|
|
/datum/unit_test/focus_only/invalid_research_designs
|
|
|
|
/// Checks that every icon sent to vending machines is valid
|
|
/datum/unit_test/focus_only/invalid_vending_machine_icon_states
|
|
|
|
/// Checks that space does not initialize multiple times
|
|
/datum/unit_test/focus_only/multiple_space_initialization
|
|
|
|
/// Checks that smoothing_groups and canSmoothWith are properly sorted in /atom/Initialize
|
|
/datum/unit_test/focus_only/sorted_smoothing_groups
|
|
|
|
/// Checks that floor tiles are properly mapped to broken/burnt
|
|
/datum/unit_test/focus_only/valid_turf_states
|
|
|
|
/// Checks that nightvision eyes have a full set of color lists
|
|
/datum/unit_test/focus_only/nightvision_color_cutoffs
|
|
|
|
/// Checks that no light shares a tile/pixel offsets with another
|
|
/datum/unit_test/focus_only/stacked_lights
|