Changes the knockout checks to incap all.

Also stops micro interactions while flying.
This commit is contained in:
Cameron Lennox
2017-10-29 11:30:43 -04:00
parent 28e75a89aa
commit c99e7b51da
3 changed files with 13 additions and 3 deletions

View File

@@ -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. 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!!") to_chat(src, "You cannot fly without wings!!")
return 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!") to_chat(src, "You cannot fly in this state!")
return return

View File

@@ -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? 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 var/mob/living/carbon/human/H = src //VOREStation Edit. Used for below
if(H.wings_flying == 1) 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, "<span class='notice'>You can't fly in your current state.</span>") to_chat(src, "<span class='notice'>You can't fly in your current state.</span>")
H.stop_flying() //Should already be done, but just in case. H.stop_flying() //Should already be done, but just in case.
return 0 return 0
@@ -162,7 +162,7 @@
if(ishuman(src)) //VOREStation Edit Start. Code to see if they have wings. if(ishuman(src)) //VOREStation Edit Start. Code to see if they have wings.
var/mob/living/carbon/human/H = src var/mob/living/carbon/human/H = src
if(H.wings_flying == 1) //Some other checks are done in the wings_toggle proc 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() H.stop_flying()
//Just here to see if the person is KO'd, stunned, etc. If so, it'll move onto can_call. //Just here to see if the person is KO'd, stunned, etc. If so, it'll move onto can_call.
else else

View File

@@ -141,6 +141,8 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2
now_pushing = 0 now_pushing = 0
if(src.get_effective_size() > tmob.get_effective_size()) if(src.get_effective_size() > tmob.get_effective_size())
var/mob/living/carbon/human/H = src 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)) if(istype(H) && istype(H.tail_style, /datum/sprite_accessory/tail/taur/naga))
src << "You carefully slither around [tmob]." src << "You carefully slither around [tmob]."
tmob << "[src]'s huge tail slithers past beside you!" 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) /mob/living/proc/handle_micro_bump_other(var/mob/living/tmob)
ASSERT(istype(tmob)) // Baby don't hurt me 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(src.a_intent == I_DISARM && src.canmove && !src.buckled)
// If bigger than them by at least 0.75, move onto them and print message. // If bigger than them by at least 0.75, move onto them and print message.