- m4x3f mmdl_inv;
- m4x3_invert_full( mmdl, mmdl_inv );
- v3f localized;
- m4x3_mulv( mmdl_inv, localplayer.rb.co, localized );
- ent_spawn *spawn = world_find_closest_spawn( world, localized );
- if( spawn )
- v3_copy( spawn->transform.co, uSpawnPos );
+ if( dest_spawn && (v3_dist2(dest_spawn->transform.co,uPlayerPos) > 0.1f) )
+ v3_copy( dest_spawn->transform.co, uSpawnPos );
+ else
+ v3_add( uPlayerPos, (v3f){0,-1,0}, uSpawnPos );