mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-28 10:01:58 +00:00
* Refactors NODROP flag into TRAIT_NODROP 🆑 coiax fix: Anti-drop implants can no longer be used to drop objects that they were not responsible for sticking to a person's hand. fix: Backfiring with a Barnyard spellbook will now play a spooky horse sound. refactor: Refactors the way that "NODROP" items work to a new system, there should be no change in functionality. /🆑 Various items in the codebase were doing weird hoop jumps in order to preserve the nodrop flag's state when it also wanted to change it, so I moved it to a trait system. I may have gone overboard with the type of unique trait sources, but those can be changed later. My long term plan is make a general "CURSED" nodrop origin, which means you can unlock cursed items by being hit with a bolt of door opening or something. But that's for another PR, this has no functionality changes, apart from some slightly modified descriptions on cursed masks. - Removed a bunch of redundant voice changing code for all the voice changing animal masks, used two new clothing flags for this purpose. - Also refactored a bit the animal masks, making new cursed subtypes that play the sound when created. * Drop location
40 lines
2.8 KiB
Plaintext
40 lines
2.8 KiB
Plaintext
// Flags for the obj_flags var on /obj
|
|
|
|
|
|
#define EMAGGED (1<<0)
|
|
#define IN_USE (1<<1) // If we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!
|
|
#define CAN_BE_HIT (1<<2) //can this be bludgeoned by items?
|
|
#define BEING_SHOCKED (1<<3) // Whether this thing is currently (already) being shocked by a tesla
|
|
#define DANGEROUS_POSSESSION (1<<4) //Admin possession yes/no
|
|
#define ON_BLUEPRINTS (1<<5) //Are we visible on the station blueprints at roundstart?
|
|
#define UNIQUE_RENAME (1<<6) // can you customize the description/name of the thing?
|
|
#define USES_TGUI (1<<7) //put on things that use tgui on ui_interact instead of custom/old UI.
|
|
#define FROZEN (1<<8)
|
|
|
|
// If you add new ones, be sure to add them to /obj/Initialize as well for complete mapping support
|
|
|
|
// Flags for the item_flags var on /obj/item
|
|
|
|
#define BEING_REMOVED (1<<0)
|
|
#define IN_INVENTORY (1<<1) //is this item equipped into an inventory slot or hand of a mob? used for tooltips
|
|
#define FORCE_STRING_OVERRIDE (1<<2) // used for tooltips
|
|
#define NEEDS_PERMIT (1<<3) //Used by security bots to determine if this item is safe for public use.
|
|
#define SLOWS_WHILE_IN_HAND (1<<4)
|
|
#define NO_MAT_REDEMPTION (1<<5) // Stops you from putting things like an RCD or other items into an ORM or protolathe for materials.
|
|
#define DROPDEL (1<<6) // When dropped, it calls qdel on itself
|
|
#define NOBLUDGEON (1<<7) // when an item has this it produces no "X has been hit by Y with Z" message in the default attackby()
|
|
#define ABSTRACT (1<<9) // for all things that are technically items but used for various different stuff
|
|
#define IMMUTABLE_SLOW (1<<10) // When players should not be able to change the slowdown of the item (Speed potions, etc)
|
|
|
|
// Flags for the clothing_flags var on /obj/item/clothing
|
|
|
|
#define LAVAPROTECT (1<<0)
|
|
#define STOPSPRESSUREDAMAGE (1<<1) //SUIT and HEAD items which stop pressure damage. To stop you taking all pressure damage you must have both a suit and head item with this flag.
|
|
#define BLOCK_GAS_SMOKE_EFFECT (1<<2) // blocks the effect that chemical clouds would have on a mob --glasses, mask and helmets ONLY!
|
|
#define MASKINTERNALS (1<<3) // mask allows internals
|
|
#define NOSLIP (1<<4) //prevents from slipping on wet floors, in space etc
|
|
#define THICKMATERIAL (1<<5) //prevents syringes, parapens and hypos if the external suit or helmet (if targeting head) has this flag. Example: space suits, biosuit, bombsuits, thick suits that cover your body.
|
|
#define VOICEBOX_TOGGLABLE (1<<6) // The voicebox in this clothing can be toggled.
|
|
#define VOICEBOX_DISABLED (1<<7) // The voicebox is currently turned off.
|
|
#define SHOWEROKAY (1<<8) //prevents you from being stupid if you shower in them
|