From 28a0dfa1296b522a92f1be3f964b3db551bbf8ae Mon Sep 17 00:00:00 2001 From: ZomgPonies Date: Sun, 24 Nov 2013 00:03:21 -0500 Subject: [PATCH] Added catching. Wow that was easy. --- baystation12.dme | 2 ++ .../mob/living/carbon/alien/alien_defenses.dm | 2 ++ code/modules/mob/living/carbon/carbon_defenses.dm | 12 ++++++++++++ 3 files changed, 16 insertions(+) create mode 100644 code/modules/mob/living/carbon/alien/alien_defenses.dm create mode 100644 code/modules/mob/living/carbon/carbon_defenses.dm diff --git a/baystation12.dme b/baystation12.dme index eecee68b134..145b86d4f3f 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -917,11 +917,13 @@ #include "code\modules\mob\living\say.dm" #include "code\modules\mob\living\ventcrawl.dm" #include "code\modules\mob\living\carbon\carbon.dm" +#include "code\modules\mob\living\carbon\carbon_defenses.dm" #include "code\modules\mob\living\carbon\carbon_defines.dm" #include "code\modules\mob\living\carbon\give.dm" #include "code\modules\mob\living\carbon\shock.dm" #include "code\modules\mob\living\carbon\species.dm" #include "code\modules\mob\living\carbon\alien\alien.dm" +#include "code\modules\mob\living\carbon\alien\alien_defenses.dm" #include "code\modules\mob\living\carbon\alien\death.dm" #include "code\modules\mob\living\carbon\alien\login.dm" #include "code\modules\mob\living\carbon\alien\logout.dm" diff --git a/code/modules/mob/living/carbon/alien/alien_defenses.dm b/code/modules/mob/living/carbon/alien/alien_defenses.dm new file mode 100644 index 00000000000..989e09c6755 --- /dev/null +++ b/code/modules/mob/living/carbon/alien/alien_defenses.dm @@ -0,0 +1,2 @@ +/mob/living/carbon/alien/hitby(atom/movable/AM) + ..(AM, 1) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/carbon_defenses.dm b/code/modules/mob/living/carbon/carbon_defenses.dm new file mode 100644 index 00000000000..7730e67df53 --- /dev/null +++ b/code/modules/mob/living/carbon/carbon_defenses.dm @@ -0,0 +1,12 @@ +/mob/living/carbon/hitby(atom/movable/AM, skip) + if(!skip) //ugly, but easy + if(in_throw_mode && !get_active_hand()) //empty active hand and we're in throw mode + if(canmove && !restrained()) + if(istype(AM, /obj/item)) + var/obj/item/I = AM + if(isturf(I.loc)) + put_in_active_hand(I) + visible_message("[src] catches [I]!") + throw_mode_off() + return + ..() \ No newline at end of file