mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-25 11:10:47 +00:00
Don't crash G_ShowCacheLocks when there are many locks; Better sprite interpolation in subways
git-svn-id: https://svn.eduke32.com/eduke32@1916 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
f339feb0ad
commit
cf0e5b53c7
2 changed files with 38 additions and 4 deletions
|
@ -5582,6 +5582,27 @@ ACTOR_STATIC void G_MoveEffectors(void) //STATNUM 3
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
else if (l==0 && (sc->floorstat&64))
|
||||||
|
{
|
||||||
|
// fix for jittering of sprites in halted rotating sectors
|
||||||
|
for (p=headspritesect[s->sectnum]; p>=0; p=nextspritesect[p])
|
||||||
|
{
|
||||||
|
// keep this conditional in sync with above!
|
||||||
|
if ((sprite[p].statnum != STAT_EFFECTOR || (sprite[p].lotag==49||sprite[p].lotag==50))
|
||||||
|
&& sprite[p].statnum != STAT_PROJECTILE)
|
||||||
|
if (sprite[p].picnum != LASERLINE)
|
||||||
|
{
|
||||||
|
if (sprite[p].picnum == APLAYER && sprite[p].owner >= 0)
|
||||||
|
{
|
||||||
|
p = nextspritesect[p];
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
actor[p].bposx = sprite[p].x;
|
||||||
|
actor[p].bposy = sprite[p].y;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
A_MoveSector(i);
|
A_MoveSector(i);
|
||||||
}
|
}
|
||||||
|
@ -5771,9 +5792,6 @@ ACTOR_STATIC void G_MoveEffectors(void) //STATNUM 3
|
||||||
(sprite[j].picnum == SECTOREFFECTOR && (sprite[j].lotag == 49||sprite[j].lotag == 50)))
|
(sprite[j].picnum == SECTOREFFECTOR && (sprite[j].lotag == 49||sprite[j].lotag == 50)))
|
||||||
&& sprite[j].picnum != LOCATORS)
|
&& sprite[j].picnum != LOCATORS)
|
||||||
{
|
{
|
||||||
if (move_fixed_sprite(j, s-sprite, t[2]))
|
|
||||||
rotatepoint(s->x,s->y,sprite[j].x,sprite[j].y,q,&sprite[j].x,&sprite[j].y);
|
|
||||||
|
|
||||||
// fix interpolation
|
// fix interpolation
|
||||||
if (numplayers < 2 && !g_netServer)
|
if (numplayers < 2 && !g_netServer)
|
||||||
{
|
{
|
||||||
|
@ -5781,6 +5799,9 @@ ACTOR_STATIC void G_MoveEffectors(void) //STATNUM 3
|
||||||
actor[j].bposy = sprite[j].y;
|
actor[j].bposy = sprite[j].y;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (move_fixed_sprite(j, s-sprite, t[2]))
|
||||||
|
rotatepoint(s->x,s->y,sprite[j].x,sprite[j].y,q,&sprite[j].x,&sprite[j].y);
|
||||||
|
|
||||||
sprite[j].x+= m;
|
sprite[j].x+= m;
|
||||||
sprite[j].y+= x;
|
sprite[j].y+= x;
|
||||||
|
|
||||||
|
|
|
@ -608,24 +608,37 @@ static void G_ShowCacheLocks(void)
|
||||||
{
|
{
|
||||||
int16_t i,k;
|
int16_t i,k;
|
||||||
|
|
||||||
|
if (offscreenrendering)
|
||||||
|
return;
|
||||||
|
|
||||||
k = 0;
|
k = 0;
|
||||||
for (i=cacnum-1; i>=0; i--)
|
for (i=cacnum-1; i>=0; i--)
|
||||||
if ((*cac[i].lock) >= 200)
|
if ((*cac[i].lock) >= 200)
|
||||||
{
|
{
|
||||||
|
if (k >= ydim-12)
|
||||||
|
break;
|
||||||
|
|
||||||
Bsprintf(tempbuf,"Locked- %d: Leng:%d, Lock:%d",i,cac[i].leng,*cac[i].lock);
|
Bsprintf(tempbuf,"Locked- %d: Leng:%d, Lock:%d",i,cac[i].leng,*cac[i].lock);
|
||||||
printext256(0L,k,31,-1,tempbuf,1);
|
printext256(0L,k,31,-1,tempbuf,1);
|
||||||
k += 6;
|
k += 6;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (k < ydim-12)
|
||||||
k += 6;
|
k += 6;
|
||||||
|
|
||||||
for (i=10; i>=0; i--)
|
for (i=10; i>=0; i--)
|
||||||
if (rts_lumplockbyte[i] >= 200)
|
if (rts_lumplockbyte[i] >= 200)
|
||||||
{
|
{
|
||||||
|
if (k >= ydim-12)
|
||||||
|
break;
|
||||||
|
|
||||||
Bsprintf(tempbuf,"RTS Locked %d:",i);
|
Bsprintf(tempbuf,"RTS Locked %d:",i);
|
||||||
printext256(0L,k,31,-1,tempbuf,1);
|
printext256(0L,k,31,-1,tempbuf,1);
|
||||||
k += 6;
|
k += 6;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (k >= ydim-12 && k<ydim-6)
|
||||||
|
printext256(0L,k,31,-1,"(MORE . . .)",1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t A_CheckInventorySprite(spritetype *s)
|
int32_t A_CheckInventorySprite(spritetype *s)
|
||||||
|
|
Loading…
Reference in a new issue