[semi-modular] thieving gloves (#8772)

* yeet

* goddamn fucking trailing newline

* edit: I reread the bounty

* leftover from: I reread the bounty

* *more* leftover from: I reread the bounty

* speedup

* here too

* empty commit for linter reruns

* there

* remembered the newline this time

* okay I forgot that
This commit is contained in:
Seris02
2021-11-09 15:42:28 -05:00
committed by GitHub
parent a1e5ca10d5
commit 985e677b91
8 changed files with 59 additions and 12 deletions
@@ -119,6 +119,7 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list(
/datum/strippable_item/mob_item_slot/id
key = STRIPPABLE_ITEM_ID
item_slot = ITEM_SLOT_ID
can_be_silent = TRUE //SKYRAT EDIT ADDITION
/datum/strippable_item/mob_item_slot/belt
key = STRIPPABLE_ITEM_BELT
@@ -135,6 +136,7 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list(
/datum/strippable_item/mob_item_slot/pocket
/// Which pocket we're referencing. Used for visible text.
var/pocket_side
can_be_silent = TRUE //SKYRAT EDIT ADDITION
/datum/strippable_item/mob_item_slot/pocket/get_obscuring(atom/source)
return isnull(get_item(source)) \
@@ -163,7 +165,7 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list(
var/result = start_unequip_mob(item, source, user, POCKET_STRIP_DELAY)
if (!result)
if (!result && !HAS_TRAIT(user, TRAIT_STICKY_FINGERS)) //SKYRAT EDIT ADDITION original if (!result)
warn_owner(source)
return result
+9 -3
View File
@@ -1073,13 +1073,19 @@
if(!what.canStrip(who))
to_chat(src, span_warning("You can't remove \the [what.name], it appears to be stuck!"))
return
who.visible_message(span_warning("[src] tries to remove [who]'s [what.name]."), \
span_userdanger("[src] tries to remove your [what.name]."), null, null, src)
//SKYRAT EDIT ADDITION BEGIN - THIEVING GLOVES
var/silent = HAS_TRAIT(who, TRAIT_STICKY_FINGERS) && (where & (ITEM_SLOT_ID|ITEM_SLOT_LPOCKET|ITEM_SLOT_RPOCKET))
if (!silent)
who.visible_message(span_warning("[src] tries to remove [who]'s [what.name]."), \
span_userdanger("[src] tries to remove your [what.name]."), null, null, src)
//SKYRAT EDIT ADDITION END
to_chat(src, span_danger("You try to remove [who]'s [what.name]..."))
log_message("[key_name(who)] is being stripped of [what] by [key_name(src)]", LOG_ATTACK, color="red")
who.log_message("[key_name(who)] is being stripped of [what] by [key_name(src)]", LOG_VICTIM, color="red", log_globally = FALSE)
what.add_fingerprint(src)
if(do_mob(src, who, what.strip_delay, interaction_key = what))
//SKYRAT EDIT CHANGE - THIEVING GLOVES
//if(do_mob(src, who, what.strip_delay, interaction_key = what))
if(do_mob(src, who, what.strip_delay * (HAS_TRAIT(who, TRAIT_STICKY_FINGERS) ? 0.5 : 1), interaction_key = what))
if(what && Adjacent(who))
if(islist(where))
var/list/L = where