mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-22 20:48:56 +01:00
moves abstract_type up to datum, spawners wont spawn them (#92909)
## About The Pull Request moves all implementations (im aware of) for "Im a parent type dont spawn me please" to the datum layer to standardized behavior adds a standerized proc for filtering out "bad" items that we dont want spawning. applies to it the subtype vendor, gifts, and a new spawner and mystery box for a random gun (neither playerfacing) "port" of https://github.com/shiptest-ss13/Shiptest/pull/4621 https://github.com/user-attachments/assets/22f6f0b2-b44e-411a-b3dc-6b97dc0287aa small warning: I dont have EVERY abstract type defined right now but, ive done a good enough job for now. Im tired of data entry rn ## Why It's Good For The Game standardizing behavior. Might be a micro hit to performance however having this lets us not rely on icon state to determine whether something is a parent type and makes it much easier to tell something is a parent type (could be applied further to things like admin spawning menus and things like that). need feedback on if this is actually good for the game. ## Changelog 🆑 add: Soda cans show up in the silver slime drink table. add: Examine tag for items that are not mean to show up ingame. refactor: Standardizes how gifts rule out abstract types. fix: gifts no longer check if something has an inhand, massively expanding the list of potential items. /🆑
This commit is contained in:
@@ -30,6 +30,8 @@ GLOBAL_LIST_INIT(all_loadout_categories, init_loadout_categories())
|
||||
* Singleton that holds all the information about each loadout items, and how to equip them.
|
||||
*/
|
||||
/datum/loadout_item
|
||||
/// The abstract parent of this loadout item, to determine which items to not instantiate
|
||||
abstract_type = /datum/loadout_item
|
||||
/// The category of the loadout item. Set automatically in New
|
||||
VAR_FINAL/datum/loadout_category/category
|
||||
/// Displayed name of the loadout item.
|
||||
@@ -49,8 +51,6 @@ GLOBAL_LIST_INIT(all_loadout_categories, init_loadout_categories())
|
||||
/// Whether this item can be reskinned.
|
||||
/// Only works if the item has a "unique reskin" list set.
|
||||
var/can_be_reskinned = FALSE
|
||||
/// The abstract parent of this loadout item, to determine which items to not instantiate
|
||||
var/abstract_type = /datum/loadout_item
|
||||
/// The actual item path of the loadout item.
|
||||
var/obj/item/item_path
|
||||
/// Icon file (DMI) for the UI to use for preview icons.
|
||||
|
||||
Reference in New Issue
Block a user