This commit is contained in:
DeltaFire
2021-12-03 18:29:13 +01:00
parent 4db81db5f7
commit e576962ac3
3 changed files with 6 additions and 0 deletions
+2
View File
@@ -222,6 +222,8 @@
/// forces us to not render our overlays
#define TRAIT_HUMAN_NO_RENDER "human_no_render"
#define TRAIT_TRASHCAN "trashcan"
///Used for fireman carry to have mobe not be dropped when passing by a prone individual.
#define TRAIT_BEING_CARRIED "being_carried"
// mobility flag traits
// IN THE FUTURE, IT WOULD BE NICE TO DO SOMETHING SIMILAR TO https://github.com/tgstation/tgstation/pull/48923/files (ofcourse not nearly the same because I have my.. thoughts on it)
+2
View File
@@ -219,6 +219,7 @@
if(!fireman_carrying)
M.Daze(25)
REMOVE_TRAIT(M, TRAIT_MOBILITY_NOUSE, src)
REMOVE_TRAIT(M, TRAIT_BEING_CARRIED, src)
return ..()
/datum/component/riding/human/vehicle_mob_buckle(datum/source, mob/living/M, force = FALSE)
@@ -228,6 +229,7 @@
H.add_or_update_variable_movespeed_modifier(/datum/movespeed_modifier/human_carry, TRUE, fireman_carrying? FIREMAN_CARRY_SLOWDOWN : PIGGYBACK_CARRY_SLOWDOWN)
if(fireman_carrying)
ADD_TRAIT(M, TRAIT_MOBILITY_NOUSE, src)
ADD_TRAIT(M, TRAIT_BEING_CARRIED, src)
/datum/component/riding/human/proc/on_host_unarmed_melee(atom/target)
var/mob/living/carbon/human/H = parent
@@ -36,6 +36,8 @@
if(ismob(mover))
if(mover in buckled_mobs)
return TRUE
if(HAS_TRAIT(mover, TRAIT_BEING_CARRIED))
return TRUE //We're being carried and our carrier managed to pass, ergo, let us pass aswell.
var/mob/living/L = mover //typecast first, check isliving and only check this if living using short circuit
if(isliving(L) && lying && L.lying) //if we're both lying down and aren't already being thrown/shipped around, don't pass
return FALSE