From 569e89abd0d40d3ff4541c9cc88e5d780fcac478 Mon Sep 17 00:00:00 2001 From: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com> Date: Fri, 5 Jun 2020 16:23:31 -0400 Subject: [PATCH] Minor circle hand fixes (#51276) * love being "the circle game" person now * most useless flag ever --- code/__DEFINES/obj_flags.dm | 1 + code/datums/components/riding.dm | 3 +++ code/game/objects/items/weaponry.dm | 4 ++-- code/modules/mob/living/carbon/human/human_defense.dm | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/code/__DEFINES/obj_flags.dm b/code/__DEFINES/obj_flags.dm index 12d01bd1374..c29184e5c30 100644 --- a/code/__DEFINES/obj_flags.dm +++ b/code/__DEFINES/obj_flags.dm @@ -29,6 +29,7 @@ #define IN_STORAGE (1<<11) //is this item in the storage item, such as backpack? used for tooltips #define SURGICAL_TOOL (1<<12) //Tool commonly used for surgery: won't attack targets in an active surgical operation on help intent (in case of mistakes) #define EYE_STAB (1<<13) /// Item can be used to eyestab +#define HAND_ITEM (1<<14) /// If an item is just your hand (circled hand, slapper) and shouldn't block things like riding // Flags for the clothing_flags var on /obj/item/clothing diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index 98f4d5afe06..5482f3b2167 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -329,6 +329,9 @@ else inhand.rider = riding_target_override inhand.parent = AM + for(var/obj/item/I in user.held_items) // yes i know this sucks but these are ABSTRACT++ dumbness and i'm not adding a whole new flag for these two meme items + if((I.obj_flags & HAND_ITEM)) + qdel(I) if(user.put_in_hands(inhand, TRUE)) amount_equipped++ else diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 7629827f6ff..6eeecd43ff9 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -683,7 +683,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 icon_state = "madeyoulook" force = 0 throwforce = 0 - item_flags = DROPDEL | ABSTRACT + item_flags = DROPDEL | ABSTRACT | HAND_ITEM attack_verb = list("bopped") /obj/item/circlegame/Initialize() @@ -783,7 +783,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 inhand_icon_state = "nothing" force = 0 throwforce = 0 - item_flags = DROPDEL | ABSTRACT + item_flags = DROPDEL | ABSTRACT | HAND_ITEM attack_verb = list("slapped") hitsound = 'sound/effects/snap.ogg' diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index f843f8909b9..6d7097dcfd2 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -203,7 +203,7 @@ if(M.a_intent == INTENT_DISARM) //Always drop item in hand, if no item, get stunned instead. var/obj/item/I = get_active_held_item() - if(I && dropItemToGround(I)) + if(I && !(I.item_flags & ABSTRACT) && dropItemToGround(I)) playsound(loc, 'sound/weapons/slash.ogg', 25, TRUE, -1) visible_message("[M] disarmed [src]!", \ "[M] disarmed you!", "You hear aggressive shuffling!", null, M)