This commit is contained in:
Paul 2001-03-29 20:53:10 +00:00
parent 88577baa66
commit 4401fd2f1e
4 changed files with 23 additions and 12 deletions

View file

@ -64,6 +64,7 @@ void CGlassesPickup::init()
CBasePickup::init();
m_glint=0;
m_glintRot=0;
}
/*----------------------------------------------------------------------
@ -84,15 +85,18 @@ void CGlassesPickup::collect(class CPlayer *_player)
Params:
Returns:
---------------------------------------------------------------------- */
int glasses_glintframes=16;
int glasses_glintwait=400;
int glasses_glintspeed=1;
int glasses_glintframes=20;
int glasses_glintwait=500;
int glasses_glintRotSpeed=200;
DVECTOR glasses_gxy={-3,-4};
int glasses_glintFrames[]={FRM__GLINT1,FRM__GLINT2,FRM__GLINT3,FRM__GLINT4};
static const int glasses_glintFrames[]={FRM__GLINT1,FRM__GLINT2,FRM__GLINT3,FRM__GLINT4,FRM__GLINT4,FRM__GLINT3,FRM__GLINT2,FRM__GLINT1};
void CGlassesPickup::thinkPickup(int _frames)
{
m_glint+=_frames*glasses_glintspeed;
m_glint+=_frames;
if(m_glint>glasses_glintframes+glasses_glintwait)m_glint=0;
m_glintRot+=_frames*glasses_glintRotSpeed;
m_glintRot&=4095;
}
/*----------------------------------------------------------------------
@ -115,8 +119,8 @@ void CGlassesPickup::renderPickup(DVECTOR *_pos)
if(m_glint<=glasses_glintframes)
{
fh=sprites->getFrameHeader(glasses_glintFrames[m_glint&0x03]);
sprites->printFT4(fh,x+glasses_gxy.vx,y+glasses_gxy.vy,0,0,PICKUPS_OT_POS-1);
fh=sprites->getFrameHeader(glasses_glintFrames[(m_glint>>glasses_glintspeed)&0x07]);
sprites->printRotatedScaledSprite(fh,x+glasses_gxy.vx,y+glasses_gxy.vy,4095,4095,m_glintRot,PICKUPS_OT_POS-1);
}
}

View file

@ -47,6 +47,7 @@ protected:
private:
int m_glint;
int m_glintRot;
};

View file

@ -59,6 +59,7 @@ void CSpatulaPickup::init()
{
CBasePickup::init();
m_glint=0;
m_glintRot=0;
}
/*----------------------------------------------------------------------
@ -79,14 +80,18 @@ void CSpatulaPickup::collect(class CPlayer *_player)
Returns:
---------------------------------------------------------------------- */
int spat_glintspeed=3;
int spat_maxglint=600;
DVECTOR spat_gxy1={-5,30};
DVECTOR spat_gxy2={10,-5};
int spat_glintFrames[]={FRM__GLINT1,FRM__GLINT2,FRM__GLINT3,FRM__GLINT4};
int spat_maxglint=100;
int spat_glintrotspeed=50;
int spat_glintgrowspeed=5;
DVECTOR spat_gxy1={0,28};
DVECTOR spat_gxy2={20,0};
static const int spat_glintFrames[]={FRM__GLINT1,FRM__GLINT2,FRM__GLINT3,FRM__GLINT4,FRM__GLINT4,FRM__GLINT3,FRM__GLINT2,FRM__GLINT1};
void CSpatulaPickup::thinkPickup(int _frames)
{
m_glint+=_frames*spat_glintspeed;
if(m_glint>spat_maxglint)m_glint-=spat_maxglint;
m_glintRot+=_frames*spat_glintrotspeed;
m_glintRot&=4095;
}
/*----------------------------------------------------------------------
@ -109,10 +114,10 @@ void CSpatulaPickup::renderPickup(DVECTOR *_pos)
if(m_glint<=255)
{
fh=sprites->getFrameHeader(spat_glintFrames[m_glint&0x03]);
fh=sprites->getFrameHeader(spat_glintFrames[(m_glint>>spat_glintgrowspeed)&0x07]);
x=x+(((spat_gxy2.vx-spat_gxy1.vx)*m_glint)>>8)+spat_gxy1.vx;
y=y+(((spat_gxy2.vy-spat_gxy1.vy)*m_glint)>>8)+spat_gxy1.vy;
sprites->printFT4(fh,x,y,0,0,PICKUPS_OT_POS-1);
sprites->printRotatedScaledSprite(fh,x,y,4095,4095,m_glintRot,PICKUPS_OT_POS-1);
}
}

View file

@ -47,6 +47,7 @@ protected:
private:
int m_glint;
int m_glintRot;
};