mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-16 09:21:36 +00:00
SW: picanm_t
git-svn-id: https://svn.eduke32.com/eduke32@5203 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
a97d9c5916
commit
908560f9aa
4 changed files with 29 additions and 35 deletions
|
@ -662,9 +662,9 @@ precache(void)
|
|||
|
||||
SET(gotpic[j>>3], 1<<(j&7));
|
||||
|
||||
if (TEST(picanm[j],TILE_ANIM_TYPE))
|
||||
if (TEST(picanm[j].sf, PICANM_ANIMTYPE_MASK) >> PICANM_ANIMTYPE_SHIFT)
|
||||
{
|
||||
for (i = 1; i <= TEST(picanm[j],TILE_ANIM_NUM); i++)
|
||||
for (i = 1; i <= picanm[j].num; i++)
|
||||
{
|
||||
SET(gotpic[(j+i)>>3], 1<<((j+i)&7));
|
||||
}
|
||||
|
@ -674,9 +674,9 @@ precache(void)
|
|||
|
||||
SET(gotpic[j>>3], 1<<(j&7));
|
||||
|
||||
if (TEST(picanm[j],TILE_ANIM_TYPE))
|
||||
if (TEST(picanm[j].sf, PICANM_ANIMTYPE_MASK) >> PICANM_ANIMTYPE_SHIFT)
|
||||
{
|
||||
for (i = 1; i <= TEST(picanm[j],TILE_ANIM_NUM); i++)
|
||||
for (i = 1; i <= picanm[j].num; i++)
|
||||
{
|
||||
SET(gotpic[(j+i)>>3], 1<<((j+i)&7));
|
||||
}
|
||||
|
@ -690,9 +690,9 @@ precache(void)
|
|||
|
||||
SET(gotpic[j>>3], 1<<(j&7));
|
||||
|
||||
if (TEST(picanm[j],TILE_ANIM_TYPE))
|
||||
if (TEST(picanm[j].sf, PICANM_ANIMTYPE_MASK) >> PICANM_ANIMTYPE_SHIFT)
|
||||
{
|
||||
for (i = 1; i <= TEST(picanm[j],TILE_ANIM_NUM); i++)
|
||||
for (i = 1; i <= picanm[j].num; i++)
|
||||
{
|
||||
SET(gotpic[(j+i)>>3], 1<<((j+i)&7));
|
||||
}
|
||||
|
@ -703,9 +703,9 @@ precache(void)
|
|||
j = wp->overpicnum;
|
||||
SET(gotpic[j>>3], 1<<(j&7));
|
||||
|
||||
if (TEST(picanm[j],TILE_ANIM_TYPE))
|
||||
if (TEST(picanm[j].sf, PICANM_ANIMTYPE_MASK) >> PICANM_ANIMTYPE_SHIFT)
|
||||
{
|
||||
for (i = 1; i <= TEST(picanm[j],TILE_ANIM_NUM); i++)
|
||||
for (i = 1; i <= picanm[j].num; i++)
|
||||
{
|
||||
SET(gotpic[(j+i)>>3], 1<<((j+i)&7));
|
||||
}
|
||||
|
|
|
@ -5719,7 +5719,7 @@ SHOWSPRITE:
|
|||
x1 = sprx;
|
||||
y1 = spry;
|
||||
tilenum = spr->picnum;
|
||||
xoff = (int)((signed char)((picanm[tilenum] >> 8) & 255)) + ((int) spr->xoffset);
|
||||
xoff = (int)picanm[tilenum].xofs + (int)spr->xoffset;
|
||||
if ((spr->cstat & 4) > 0)
|
||||
xoff = -xoff;
|
||||
k = spr->ang;
|
||||
|
@ -5751,8 +5751,8 @@ SHOWSPRITE:
|
|||
if (dimensionmode == 5)
|
||||
{
|
||||
tilenum = spr->picnum;
|
||||
xoff = (int)((signed char)((picanm[tilenum] >> 8) & 255)) + ((int) spr->xoffset);
|
||||
yoff = (int)((signed char)((picanm[tilenum] >> 16) & 255)) + ((int) spr->yoffset);
|
||||
xoff = (int)picanm[tilenum].xofs + (int)spr->xoffset;
|
||||
yoff = (int)picanm[tilenum].yofs + (int)spr->yoffset;
|
||||
if ((spr->cstat & 4) > 0)
|
||||
xoff = -xoff;
|
||||
if ((spr->cstat & 8) > 0)
|
||||
|
|
|
@ -125,7 +125,7 @@ int krand1(void);
|
|||
// Map directions/degrees
|
||||
//
|
||||
|
||||
#if FALSE
|
||||
#if 0
|
||||
y--
|
||||
^ 1536
|
||||
|
|
||||
|
@ -453,12 +453,12 @@ int StdRandomRange(int range);
|
|||
|
||||
|
||||
// x & y offset of tile
|
||||
#define TILE_XOFF(picnum) ((int8_t)TEST(picanm[(picnum)] >> 8, 0xFF))
|
||||
#define TILE_YOFF(picnum) ((int8_t)TEST(picanm[(picnum)] >> 16, 0xFF))
|
||||
#define TILE_XOFF(picnum) (picanm[(picnum)].xofs)
|
||||
#define TILE_YOFF(picnum) (picanm[(picnum)].yofs)
|
||||
|
||||
// x & y offset of current sprite tile
|
||||
#define SPRITEp_XOFF(sp) ((int8_t)TEST(picanm[(sp)->picnum] >> 8, 0xFF))
|
||||
#define SPRITEp_YOFF(sp) ((int8_t)TEST(picanm[(sp)->picnum] >> 16, 0xFF))
|
||||
#define SPRITEp_XOFF(sp) (picanm[(sp)->picnum].xofs)
|
||||
#define SPRITEp_YOFF(sp) (picanm[(sp)->picnum].yofs)
|
||||
|
||||
// Z size of top (TOS) and bottom (BOS) part of sprite
|
||||
#define SPRITEp_SIZE_TOS(sp) (DIV2(SPRITEp_SIZE_Z(sp)) + Z(SPRITEp_YOFF(sp)))
|
||||
|
@ -681,12 +681,6 @@ int StdRandomRange(int range);
|
|||
)
|
||||
|
||||
|
||||
|
||||
// break up of picanm[]
|
||||
#define TILE_ANIM_NUM (0xF|BIT(4)|BIT(5))
|
||||
#define TILE_ANIM_TYPE (BIT(6)|BIT(7))
|
||||
#define TILE_SPEED (0xF << 20)
|
||||
|
||||
#define SIZ(array) (sizeof(array)/sizeof(array[0]))
|
||||
|
||||
|
||||
|
|
|
@ -963,7 +963,7 @@ void
|
|||
PicAnimOff(short picnum)
|
||||
{
|
||||
int i;
|
||||
short anim_type = TEST(picanm[picnum], TILE_ANIM_TYPE);
|
||||
short anim_type = TEST(picanm[picnum].sf, PICANM_ANIMTYPE_MASK) >> PICANM_ANIMTYPE_SHIFT;
|
||||
short num;
|
||||
|
||||
ASSERT(picnum >= 0 && picnum < MAXTILES);
|
||||
|
@ -972,16 +972,16 @@ PicAnimOff(short picnum)
|
|||
return;
|
||||
|
||||
/*
|
||||
num = TEST(picanm[picnum], TILE_ANIM_NUM);
|
||||
num = picanm[picnum].num;
|
||||
ASSERT(num < 20);
|
||||
|
||||
for (i = 0; i < num; i++)
|
||||
{
|
||||
RESET(picanm[picnum + i], TILE_ANIM_TYPE);
|
||||
RESET(picanm[picnum + i].sf, PICANM_ANIMTYPE_MASK);
|
||||
}
|
||||
*/
|
||||
|
||||
RESET(picanm[picnum], TILE_ANIM_TYPE);
|
||||
RESET(picanm[picnum].sf, PICANM_ANIMTYPE_MASK);
|
||||
}
|
||||
|
||||
SWBOOL
|
||||
|
@ -3126,8 +3126,8 @@ KeyMain:
|
|||
|
||||
ChangeState(SpriteNum, s_Key[num]);
|
||||
|
||||
RESET(picanm[sp->picnum], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sp->picnum + 1], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sp->picnum].sf, PICANM_ANIMTYPE_MASK);
|
||||
RESET(picanm[sp->picnum + 1].sf, PICANM_ANIMTYPE_MASK);
|
||||
change_sprite_stat(SpriteNum, STAT_ITEM);
|
||||
RESET(sp->cstat, CSTAT_SPRITE_BLOCK | CSTAT_SPRITE_BLOCK_HITSCAN);
|
||||
u->Radius = 500;
|
||||
|
@ -3161,8 +3161,8 @@ KeyStatueMain:
|
|||
u->spal = sp->pal;
|
||||
ChangeState(SpriteNum, s_KeyStatue[num]);
|
||||
|
||||
RESET(picanm[sp->picnum], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sp->picnum + 1], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sp->picnum].sf, PICANM_ANIMTYPE_MASK);
|
||||
RESET(picanm[sp->picnum + 1].sf, PICANM_ANIMTYPE_MASK);
|
||||
|
||||
change_sprite_stat(SpriteNum, STAT_ITEM);
|
||||
|
||||
|
@ -4595,8 +4595,8 @@ int SpawnItemsMatch(short match)
|
|||
|
||||
ChangeState(SpriteNum, s_Key[num]);
|
||||
|
||||
RESET(picanm[sp->picnum], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sp->picnum + 1], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sp->picnum].sf, PICANM_ANIMTYPE_MASK);
|
||||
RESET(picanm[sp->picnum + 1].sf, PICANM_ANIMTYPE_MASK);
|
||||
|
||||
SetupItemForJump(sip, SpriteNum);
|
||||
|
||||
|
@ -4640,7 +4640,7 @@ NewStateGroup(short SpriteNum, STATEp StateGroup[])
|
|||
|
||||
// turn anims off because people keep setting them in the
|
||||
// art file
|
||||
RESET(picanm[sprite[SpriteNum].picnum], TILE_ANIM_TYPE);
|
||||
RESET(picanm[sprite[SpriteNum].picnum].sf, PICANM_ANIMTYPE_MASK);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -4759,8 +4759,8 @@ getzrangepoint(int x, int y, int z, short sectnum,
|
|||
|
||||
// Calculate and store centering offset information into xoff&yoff
|
||||
tilenum = spr->picnum;
|
||||
xoff = (int)((signed char)((picanm[tilenum] >> 8) & 255)) + ((int) spr->xoffset);
|
||||
yoff = (int)((signed char)((picanm[tilenum] >> 16) & 255)) + ((int) spr->yoffset);
|
||||
xoff = (int)picanm[tilenum].xofs + (int)spr->xoffset;
|
||||
yoff = (int)picanm[tilenum].yofs + (int)spr->yoffset;
|
||||
if (cstat & 4)
|
||||
xoff = -xoff;
|
||||
if (cstat & 8)
|
||||
|
|
Loading…
Reference in a new issue