diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index da915622e3f..5e99cd96b34 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -78,7 +78,7 @@ var/obj/item/W = get_active_hand() - if(W == null || !W.no_redirection) + if(W == null || !W.abstract) face_atom(A) if(W == A) diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm index 1d79994ef81..82122caba7a 100644 --- a/code/_onclick/other_mobs.dm +++ b/code/_onclick/other_mobs.dm @@ -17,8 +17,17 @@ /atom/proc/attack_hand(mob/user as mob) return -/mob/living/carbon/human/RestrainedClickOn(var/atom/A) +/* +/mob/living/carbon/human/RestrainedClickOn(var/atom/A) ---carbons will handle this return +*/ + +/mob/living/carbon/RestrainedClickOn(var/atom/A) + var/obj/item/I = get_active_hand() + if(I.abstract) + I.afterattack(A) + return 1 + return 0 /mob/living/carbon/human/RangedAttack(var/atom/A) if(!gloves && !mutations.len) return @@ -51,6 +60,7 @@ /mob/living/RestrainedClickOn(var/atom/A) return + /* Monkeys */ @@ -67,6 +77,8 @@ things considerably */ /mob/living/carbon/monkey/RestrainedClickOn(var/atom/A) + if(..()) + return if(a_intent != "harm" || !ismob(A)) return if(istype(wear_mask, /obj/item/clothing/mask/muzzle)) return diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm index 69f2d9a9968..fd632f5ad60 100644 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ b/code/game/gamemodes/changeling/changeling_powers.dm @@ -656,7 +656,6 @@ var/list/datum/dna/hivemind_bank = list() layer = 20 abstract = 1 item_state = "nothing" - no_redirection = 1 var/sting_type var/sting_range var/sting_cost diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index a2047529c42..abdde87489c 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -38,7 +38,6 @@ var/list/allowed = null //suit storage stuff. var/obj/item/device/uplink/hidden/hidden_uplink = null // All items can have an uplink hidden inside, just remember to add the triggers. var/reflect_chance = 0 //This var dictates what % of a time an object will reflect an energy based weapon's shot - var/no_redirection = 0 //0 means you will change direction, it is the default setting for all items, 1 means you dont change direction when click something with this, /obj/item/device icon = 'icons/obj/device.dmi' diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index f4cd25c9737..e37dc043618 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -635,6 +635,11 @@ note dizziness decrements automatically in the mob's Life() proc. pixel_x = old_x pixel_y = old_y +/mob/proc/RestrainedClick(target) + var/obj/item/A = get_active_hand() + if(A.abstract) + A.afterattack(target) + /mob/Stat() ..()