diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index 5b6d1556402..2ee613e67d8 100644 --- a/code/modules/mob/holder.dm +++ b/code/modules/mob/holder.dm @@ -29,11 +29,13 @@ var/list/holder_mob_icon_cache = list() ASSERT(ismob(held)) . = ..() held.forceMove(src) + held.reset_view(src) START_PROCESSING(SSobj, src) /obj/item/weapon/holder/Entered(mob/held, atom/OldLoc) if(held_mob) held.forceMove(get_turf(src)) + held.reset_view(null) return ASSERT(ismob(held)) . = ..() @@ -71,6 +73,7 @@ var/list/holder_mob_icon_cache = list() held_mob.transform = original_transform held_mob.vis_flags = original_vis_flags held_mob.forceMove(get_turf(src)) + held_mob.reset_view(null) held_mob = null /obj/item/weapon/holder/throw_at(atom/target, range, speed, thrower) @@ -103,9 +106,12 @@ var/list/holder_mob_icon_cache = list() holster.clear_holster() to_chat(held, "You extricate yourself from [holster].") forceMove(get_turf(src)) + held.reset_view(null) + else if(isitem(loc)) to_chat(held, "You struggle free of [loc].") forceMove(get_turf(src)) + held.reset_view(null) //Mob specific holders. /obj/item/weapon/holder/diona diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 7187b245aad..e007e0aa44f 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -50,7 +50,9 @@ "Panther" = "panther", "Cyber Elf" = "cyberelf", "Teppi" = "teppi", - "Catslug" = "catslug" + "Catslug" = "catslug", + "Car" = "car", + "Type One" = "typeone" //VOREStation Addition End ) diff --git a/code/modules/mob/living/silicon/pai/pai_vr.dm b/code/modules/mob/living/silicon/pai/pai_vr.dm index c65eeefa845..61e2f10a211 100644 --- a/code/modules/mob/living/silicon/pai/pai_vr.dm +++ b/code/modules/mob/living/silicon/pai/pai_vr.dm @@ -38,7 +38,9 @@ "pai-fen", "cyberelf", "teppi", - "catslug" + "catslug", + "car", + "typeone" ) /mob/living/silicon/pai/Initialize() diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index fa1b2a0bdff..6ebda2446b9 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -378,6 +378,9 @@ slip.slip_protect = world.time + 25 // This is to prevent slipping back into your pred if they stand on soap or something. //Place them into our drop_location M.forceMove(drop_location()) + if(ismob(M)) + var/mob/ourmob = M + ourmob.reset_view(null) items_preserved -= M //Special treatment for absorbed prey @@ -416,6 +419,10 @@ soundfile = fancy_release_sounds[release_sound] if(soundfile) playsound(src, soundfile, vol = 100, vary = 1, falloff = VORE_SOUND_FALLOFF, preference = /datum/client_preference/eating_noises, volume_channel = VOLUME_CHANNEL_VORE) + //Should fix your view not following you out of mobs sometimes! + if(ismob(M)) + var/mob/ourmob = M + ourmob.reset_view(null) return 1 @@ -429,6 +436,9 @@ prey.buckled.unbuckle_mob() prey.forceMove(src) + if(ismob(prey)) + var/mob/ourmob = prey + ourmob.reset_view(owner) owner.updateVRPanel() if(isanimal(owner)) owner.update_icon() @@ -723,6 +733,10 @@ if(M.loc != src) M.forceMove(src) + if(ismob(M)) + var/mob/ourmob = M + ourmob.reset_view(owner) + //Seek out absorbed prey of the prey, absorb them too. //This in particular will recurse oddly because if there is absorbed prey of prey of prey... //it will just move them up one belly. This should never happen though since... when they were @@ -1033,6 +1047,9 @@ if(!(content in src) || !istype(target)) return content.forceMove(target) + if(ismob(content)) + var/mob/ourmob = content + ourmob.reset_view(owner) if(isitem(content)) var/obj/item/I = content if(istype(I,/obj/item/weapon/card/id)) diff --git a/icons/mob/pai_vr.dmi b/icons/mob/pai_vr.dmi index 705369c7f30..75733364976 100644 Binary files a/icons/mob/pai_vr.dmi and b/icons/mob/pai_vr.dmi differ diff --git a/vorestation.dme b/vorestation.dme index b6f2a99758c..78a544fbf85 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4129,7 +4129,6 @@ #include "maps\expedition_vr\beach\submaps\mountains.dm" #include "maps\expedition_vr\beach\submaps\mountains_areas.dm" #include "maps\gateway_archive_vr\blackmarketpackers.dm" -#include "maps\groundbase\groundbase.dm" #include "maps\offmap_vr\om_ships\abductor.dm" #include "maps\southern_cross\items\clothing\sc_accessory.dm" #include "maps\southern_cross\items\clothing\sc_suit.dm" @@ -4146,5 +4145,6 @@ #include "maps\submaps\space_submaps\debrisfield\debrisfield.dm" #include "maps\submaps\surface_submaps\wilderness\wilderness.dm" #include "maps\submaps\surface_submaps\wilderness\wilderness_areas.dm" +#include "maps\tether\tether.dm" #include "maps\~map_system\maps.dm" // END_INCLUDE