diff --git a/code/game/machinery/atmoalter/canister.dm b/code/game/machinery/atmoalter/canister.dm
index 0b93d51d4a..7cf86a03ed 100644
--- a/code/game/machinery/atmoalter/canister.dm
+++ b/code/game/machinery/atmoalter/canister.dm
@@ -164,6 +164,7 @@
for(var/mob/V in viewers(src, null))
V.show_message(text("\red [user] hits the [src] with a [W]!"))
src.health -= W.force
+ src.add_fingerprint(user)
healthcheck()
..()
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index b28f782cd3..4a982b057d 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -713,7 +713,7 @@
for(var/mob/living/carbon/metroid/M in view(1,src))
M.UpdateFeed(src)
-
+ src.moved_recently = 120
return
/mob/living/carbon/human/update_clothing()
diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm
index 8126c90cb3..fef9b49341 100644
--- a/code/modules/mob/living/carbon/human/life.dm
+++ b/code/modules/mob/living/carbon/human/life.dm
@@ -92,7 +92,7 @@
playsound_local(src,pick(scarySounds),50, 1, -1)
..() //for organs
-
+ src.moved_recently = max(0, moved_recently-1)
/mob/living/carbon/human
proc
diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm
index 3b7ac133e5..b26ac6305b 100644
--- a/code/modules/mob/living/carbon/monkey/life.dm
+++ b/code/modules/mob/living/carbon/monkey/life.dm
@@ -83,7 +83,7 @@
step(src, pick(cardinal))
if(prob(1))
emote(pick("scratch","jump","roll","tail"))
-
+ src.moved_recently = max(0, src.moved_recently-1)
/mob/living/carbon/monkey
proc
diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm
index dd0bacec8d..0adebc1c33 100644
--- a/code/modules/mob/living/carbon/monkey/monkey.dm
+++ b/code/modules/mob/living/carbon/monkey/monkey.dm
@@ -512,7 +512,7 @@
for(var/mob/living/carbon/metroid/M in view(1,src))
M.UpdateFeed(src)
-
+ src.moved_recently = 120
return
/mob/living/carbon/monkey/verb/removeinternal()
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 0c57944bea..52a4fbfbe2 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -741,6 +741,14 @@
flick("gibbed-h", animation)
else if(ismonkey(src))
flick("gibbed-m", animation)
+ else if(ismetroid(src))
+ flick("gibbed-m", animation)
+ else if(iscrab(src))
+ flick("gibbed-m", animation)
+ else if(iscorgi(src))
+ flick("gibbed-m", animation)
+ else if(iscat(src))
+ flick("gibbed-m", animation) //New-has monkey gib effect versus robogib
else if(isalien(src))
flick("gibbed-a", animation)
else
@@ -755,6 +763,14 @@
else
gibs(loc, viruses)
+/* else if(key)
+ if(istype(src, /mob/living/simple_animals)) //Should gib all simple_animals like a monkey
+ gibs(loc, viruses)
+ else if (istype(src, /mob/living/simple_animals))
+ gibs(loc, viruses)
+Currently doesn't work, but should be useful later or at least as a template
+*/
+
else
if(istype(src, /mob/living/silicon))
robogibs(loc, viruses)
diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm
index 07afc79daf..ef89fa3218 100644
--- a/code/modules/mob/mob_helpers.dm
+++ b/code/modules/mob/mob_helpers.dm
@@ -50,6 +50,16 @@
return 1
return 0
+/proc/iscrab(A)
+ if(istype(A, /mob/living/simple_animal/crab))
+ return 1
+ return 0
+
+/proc/iscat(A)
+ if(istype(A, /mob/living/simple_animal/cat/))
+ return 1
+ return 0
+
/*proc/ishivebot(A)
if(A && istype(A, /mob/living/silicon/hivebot))
return 1
diff --git a/code/modules/mob/screen.dm b/code/modules/mob/screen.dm
index 22166d6689..e5dc7c9a55 100644
--- a/code/modules/mob/screen.dm
+++ b/code/modules/mob/screen.dm
@@ -444,7 +444,7 @@
O.show_message(text("\red [] attempts to remove the handcuffs!", usr), 1)
spawn(0)
if(do_after(usr, 1200))
- if(!usr:handcuffed || usr:buckled) return
+ if(!usr:handcuffed || usr:buckled || usr.moved_recently >= 40) return // time leniency for lag
for(var/mob/O in viewers(usr))
O.show_message(text("\red [] manages to remove the handcuffs!", usr), 1)
usr << "\blue You successfully remove your handcuffs."
diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm
index d8280b2a7b..02ace0838c 100644
--- a/code/modules/security levels/keycard authentication.dm
+++ b/code/modules/security levels/keycard authentication.dm
@@ -1,6 +1,6 @@
/obj/machinery/keycard_auth
name = "Keycard Authentication Device"
- desc = "This device is used to trigger ship functions, which require more than one ID card to authenticate."
+ desc = "This device is used to trigger station functions, which require more than one ID card to authenticate."
icon = 'monitors.dmi'
icon_state = "auth_off"
var/active = 0 //This gets set to 1 on all devices except the one where the initial request was made.
@@ -21,7 +21,7 @@
power_channel = ENVIRON
/obj/machinery/keycard_auth/attack_ai(mob/user as mob)
- user << "The ship AI is not to interact with these devices"
+ user << "The station AI is not to interact with these devices"
return
/obj/machinery/keycard_auth/attack_paw(mob/user as mob)