diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index d666a38d993..cd41747a394 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -103,6 +103,10 @@ /mob/observer/dead/Initialize(mapload, aghost = FALSE) appearance = loc + invisibility = initial(invisibility) + layer = initial(layer) + plane = initial(plane) + alpha = initial(alpha) admin_ghosted = aghost see_in_dark = world.view //I mean. I don't even know if byond has occlusion culling... but... diff --git a/code/modules/mob/living/silicon/pai/pai_vr.dm b/code/modules/mob/living/silicon/pai/pai_vr.dm index 195e14983ed..a9a5543439a 100644 --- a/code/modules/mob/living/silicon/pai/pai_vr.dm +++ b/code/modules/mob/living/silicon/pai/pai_vr.dm @@ -287,6 +287,12 @@ /mob/living/silicon/pai/UnarmedAttack(atom/A, proximity_flag) . = ..() + if(istype(A,/obj/structure/ladder)) + // Zmovement already allows these to be used with the verbs anyway + var/obj/structure/ladder/L = A + L.attack_hand(src) + return + if(!ismob(A) || A == src) return diff --git a/code/modules/multiz/movement.dm b/code/modules/multiz/movement.dm index 0d5e6c05e9c..cfaf314985a 100644 --- a/code/modules/multiz/movement.dm +++ b/code/modules/multiz/movement.dm @@ -255,6 +255,16 @@ if(T.density) return TRUE +/mob/living/silicon/pai/can_ztravel() + if(incapacitated()) + return FALSE + + if(Process_Spacemove()) + return TRUE + + if(!restrained()) + return TRUE + // TODO - Leshana Experimental //Execution by grand piano!