mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-23 05:07:51 +01:00
Merge pull request #13073 from Very-Soft/resetcamera
Calls reset_view when entering and exiting holders and bellies
This commit is contained in:
@@ -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, "<span class='warning'>You extricate yourself from [holster].</span>")
|
||||
forceMove(get_turf(src))
|
||||
held.reset_view(null)
|
||||
|
||||
else if(isitem(loc))
|
||||
to_chat(held, "<span class='warning'>You struggle free of [loc].</span>")
|
||||
forceMove(get_turf(src))
|
||||
held.reset_view(null)
|
||||
|
||||
//Mob specific holders.
|
||||
/obj/item/weapon/holder/diona
|
||||
|
||||
@@ -436,6 +436,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
|
||||
@@ -476,6 +479,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
|
||||
|
||||
@@ -489,6 +496,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()
|
||||
@@ -785,6 +795,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
|
||||
@@ -1096,6 +1110,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))
|
||||
|
||||
Reference in New Issue
Block a user