mirror of
https://github.com/DrBeef/Raze.git
synced 2024-11-15 08:52:00 +00:00
Don't push sprites away from other clip objects when their clip areas overlap if the velocity passed to clipmove() is 0
This workaround should fix issues with stationary sprites moving around at map load when their clip area is overlapping solid walls. git-svn-id: https://svn.eduke32.com/eduke32@8543 1a8010ca-5511-0410-912e-c29ae57300e0 # Conflicts: # source/build/src/clip.cpp
This commit is contained in:
parent
5bd62f666e
commit
d0640618fd
1 changed files with 3 additions and 1 deletions
|
@ -1417,7 +1417,8 @@ int32_t clipmove(vec3_t * const pos, int16_t * const sectnum, int32_t xvect, int
|
|||
|
||||
do
|
||||
{
|
||||
if (enginecompatibility_mode == ENGINECOMPATIBILITY_NONE)
|
||||
if (enginecompatibility_mode == ENGINECOMPATIBILITY_NONE && (xvect|yvect))
|
||||
{
|
||||
for (native_t i=clipnum-1;i>=0;--i)
|
||||
{
|
||||
if (!bitmap_test(clipignore, i) && clipinsideboxline(pos->x, pos->y, clipit[i].x1, clipit[i].y1, clipit[i].x2, clipit[i].y2, walldist))
|
||||
|
@ -1429,6 +1430,7 @@ int32_t clipmove(vec3_t * const pos, int16_t * const sectnum, int32_t xvect, int
|
|||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
vec2_t vec = goal;
|
||||
|
||||
|
|
Loading…
Reference in a new issue