From c99e7b51da71c447bf421e3b6b28c4750ec35af9 Mon Sep 17 00:00:00 2001 From: Cameron Lennox Date: Sun, 29 Oct 2017 11:30:43 -0400 Subject: [PATCH] Changes the knockout checks to incap all. Also stops micro interactions while flying. --- .../species/station/station_special_abilities_vr.dm | 2 +- code/modules/multiz/movement.dm | 4 ++-- code/modules/vore/resizing/resize_vr.dm | 10 ++++++++++ 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm index 28547653d3..22e2bf5e36 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm @@ -730,7 +730,7 @@ if(!C.wing_style) //The species var isn't taken into account here, as it's only purpose is to give this proc to a person. to_chat(src, "You cannot fly without wings!!") return - if(C.incapacitated() || C.stat || C.lying || C.stunned || C.weakened || C.paralysis) + if(C.incapacitated(INCAPACITATION_ALL)) to_chat(src, "You cannot fly in this state!") return diff --git a/code/modules/multiz/movement.dm b/code/modules/multiz/movement.dm index fc7ae98e64..8983864a14 100644 --- a/code/modules/multiz/movement.dm +++ b/code/modules/multiz/movement.dm @@ -52,7 +52,7 @@ else if(ishuman(src)) //VOREStation Edit Start. Are they human (H above.), have a wing style, and do they have the trait? var/mob/living/carbon/human/H = src //VOREStation Edit. Used for below if(H.wings_flying == 1) - if(H.incapacitated() || H.stat || H.lying || H.stunned || H.weakened || H.paralysis) + if(H.incapacitated(INCAPACITATION_ALL)) to_chat(src, "You can't fly in your current state.") H.stop_flying() //Should already be done, but just in case. return 0 @@ -162,7 +162,7 @@ if(ishuman(src)) //VOREStation Edit Start. Code to see if they have wings. var/mob/living/carbon/human/H = src if(H.wings_flying == 1) //Some other checks are done in the wings_toggle proc - if(H.incapacitated() || H.stat || H.lying || H.stunned || H.weakened || H.paralysis) //Incap by itself doesn't work, for some reason. + if(H.incapacitated(INCAPACITATION_ALL)) H.stop_flying() //Just here to see if the person is KO'd, stunned, etc. If so, it'll move onto can_call. else diff --git a/code/modules/vore/resizing/resize_vr.dm b/code/modules/vore/resizing/resize_vr.dm index 8e4bf21b12..529f05276d 100644 --- a/code/modules/vore/resizing/resize_vr.dm +++ b/code/modules/vore/resizing/resize_vr.dm @@ -141,6 +141,8 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2 now_pushing = 0 if(src.get_effective_size() > tmob.get_effective_size()) var/mob/living/carbon/human/H = src + if(H.wings_flying == 1) + return 1 //Silently pass without a message. if(istype(H) && istype(H.tail_style, /datum/sprite_accessory/tail/taur/naga)) src << "You carefully slither around [tmob]." tmob << "[src]'s huge tail slithers past beside you!" @@ -166,6 +168,14 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2 */ /mob/living/proc/handle_micro_bump_other(var/mob/living/tmob) ASSERT(istype(tmob)) // Baby don't hurt me + if(ishuman(src)) + var/mob/living/carbon/human/P = src + if(P.wings_flying == 1) //If they're flying, don't do any special interactions. + return + if(ishuman(tmob)) + var/mob/living/carbon/human/D = tmob + if(D.wings_flying == 1) //if the prey is flying, don't smush them. + return if(src.a_intent == I_DISARM && src.canmove && !src.buckled) // If bigger than them by at least 0.75, move onto them and print message.