mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
Stops buckled mobs from slipping (for now)
Conflicts: code/game/turfs/simulated.dm
This commit is contained in:
@@ -965,7 +965,7 @@ steam.start() -- spawns the effect
|
||||
|
||||
if (istype(AM, /mob/living/carbon))
|
||||
var/mob/M = AM
|
||||
if (istype(M, /mob/living/carbon/human) && (istype(M:shoes, /obj/item/clothing/shoes) && M:shoes.flags&NOSLIP))
|
||||
if (istype(M, /mob/living/carbon/human) && (istype(M:shoes, /obj/item/clothing/shoes) && M:shoes.flags&NOSLIP) || M.buckled)
|
||||
return
|
||||
if (istype (M, /mob/living/carbon/human) && M:species.bodyflags & FEET_NOSLIP)
|
||||
return
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
/obj/item/weapon/bananapeel/Crossed(AM as mob|obj)
|
||||
if (istype(AM, /mob/living/carbon))
|
||||
var/mob/M = AM
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP))
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP) || M.buckled)
|
||||
return
|
||||
if(istype(M, /mob/living/carbon/human) && M:species.bodyflags & FEET_NOSLIP)
|
||||
return
|
||||
@@ -28,7 +28,7 @@
|
||||
/obj/item/weapon/soap/Crossed(AM as mob|obj) //EXACTLY the same as bananapeel for now, so it makes sense to put it in the same dm -- Urist
|
||||
if (istype(AM, /mob/living/carbon))
|
||||
var/mob/M = AM
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP))
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP) || M.buckled)
|
||||
return
|
||||
|
||||
M.stop_pulling()
|
||||
|
||||
@@ -91,6 +91,12 @@
|
||||
from.AddTracks(/obj/effect/decal/cleanable/blood/tracks/footprints/green,H,bloodDNA,0,H.dir) // Going
|
||||
bloodDNA = null
|
||||
|
||||
var/noslip = 0
|
||||
for (var/obj/structure/stool/bed/chair/C in loc)
|
||||
if (C.buckled_mob == M)
|
||||
noslip = 1
|
||||
if (noslip)
|
||||
return // no slipping while sitting in a chair, plz
|
||||
switch (src.wet)
|
||||
if(1)
|
||||
if(istype(M, /mob/living/carbon/human)) // Added check since monkeys don't have shoes
|
||||
@@ -116,8 +122,8 @@
|
||||
M.inertia_dir = 0
|
||||
return
|
||||
|
||||
if(2) //lube //can cause infinite loops - needs work
|
||||
if(!istype(M, /mob/living/carbon/slime))
|
||||
if(2) //lube //can cause infinite loops - needs work
|
||||
if(!istype(M, /mob/living/carbon/slime) && !M.buckled)
|
||||
M.stop_pulling()
|
||||
step(M, M.dir)
|
||||
spawn(1) step(M, M.dir)
|
||||
|
||||
@@ -792,7 +792,7 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/bluetomato/Crossed(AM as mob|obj)
|
||||
if (istype(AM, /mob/living/carbon))
|
||||
var/mob/M = AM
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP))
|
||||
if (istype(M, /mob/living/carbon/human) && (isobj(M:shoes) && M:shoes.flags&NOSLIP) || M.buckled)
|
||||
return
|
||||
|
||||
M.stop_pulling()
|
||||
|
||||
Reference in New Issue
Block a user