This commit is contained in:
parent
c7bd25dabd
commit
c846365a1b
3 changed files with 21 additions and 4 deletions
|
@ -79,6 +79,13 @@ void CNpcFriend::init()
|
|||
|
||||
m_type = NPC_FRIEND_GARY;
|
||||
|
||||
DVECTOR ofs = getCollisionSize();
|
||||
|
||||
m_drawOffset.vx = 0;
|
||||
m_drawOffset.vy = -( ofs.vy >> 1 );
|
||||
|
||||
setCollisionCentreOffset( 0, -( ofs.vy >> 1 ) );
|
||||
|
||||
//m_spriteBank=new ("enemy sprites") SpriteBank();
|
||||
//m_spriteBank->load(UI_UIGFX_SPR);
|
||||
}
|
||||
|
@ -125,8 +132,8 @@ void CNpcFriend::render()
|
|||
DVECTOR renderPos;
|
||||
DVECTOR offset = CLevel::getCameraPos();
|
||||
|
||||
renderPos.vx = ( Pos.vx - offset.vx - ( VidGetScrW() >> 1 ) ) * 20;
|
||||
renderPos.vy = ( Pos.vy - offset.vy - ( VidGetScrH() >> 1 ) ) * 20;
|
||||
renderPos.vx = ( Pos.vx + m_drawOffset.vx - offset.vx - ( VidGetScrW() >> 1 ) ) * 20;
|
||||
renderPos.vy = ( Pos.vy + m_drawOffset.vy - offset.vy - ( VidGetScrH() >> 1 ) ) * 20;
|
||||
|
||||
m_skel.setPos( renderPos );
|
||||
m_skel.setFrame(m_frame);
|
||||
|
@ -249,6 +256,13 @@ void CNpcEnemy::init()
|
|||
|
||||
m_npcPath.initPath();
|
||||
|
||||
DVECTOR ofs = getCollisionSize();
|
||||
|
||||
m_drawOffset.vx = 0;
|
||||
m_drawOffset.vy = -( ofs.vy >> 1 );
|
||||
|
||||
setCollisionCentreOffset( 0, -( ofs.vy >> 1 ) );
|
||||
|
||||
switch ( m_data[this->m_type].initFunc )
|
||||
{
|
||||
case NPC_INIT_DEFAULT:
|
||||
|
@ -1170,8 +1184,8 @@ void CNpcEnemy::render()
|
|||
DVECTOR renderPos;
|
||||
DVECTOR offset = CLevel::getCameraPos();
|
||||
|
||||
renderPos.vx = ( Pos.vx - offset.vx - ( VidGetScrW() >> 1 ) ) * 20;
|
||||
renderPos.vy = ( Pos.vy - offset.vy - ( VidGetScrH() >> 1 ) ) * 20;
|
||||
renderPos.vx = ( Pos.vx + m_drawOffset.vx - offset.vx - ( VidGetScrW() >> 1 ) ) * 20;
|
||||
renderPos.vy = ( Pos.vy + m_drawOffset.vy - offset.vy - ( VidGetScrH() >> 1 ) ) * 20;
|
||||
|
||||
if ( m_reversed )
|
||||
{
|
||||
|
|
|
@ -103,6 +103,7 @@ protected:
|
|||
int m_animNo;
|
||||
CSkel m_skel;
|
||||
TPAGE_DESC m_actorTPage;
|
||||
DVECTOR m_drawOffset;
|
||||
};
|
||||
|
||||
class CNpcEnemy : public CEnemyThing
|
||||
|
@ -490,6 +491,7 @@ protected:
|
|||
int m_animNo;
|
||||
CSkel m_skel;
|
||||
TPAGE_DESC m_actorTPage;
|
||||
DVECTOR m_drawOffset;
|
||||
|
||||
virtual void collidedWith(CThing *_thisThing);
|
||||
};
|
||||
|
|
|
@ -144,6 +144,7 @@ protected:
|
|||
void setCollisionAngle(int newAngle) {m_collisionAngle = newAngle;}
|
||||
int getCollisionRadius() {return m_collisionRadius;}
|
||||
CRECT getCollisionArea() {return m_collisionArea;}
|
||||
DVECTOR getCollisionSize() {return m_collisionSize;}
|
||||
DVECTOR getCollisionCentre() {return m_collisionCentre;}
|
||||
s16 getCollisionAngle() {return m_collisionAngle;}
|
||||
bool getCentreCollision() {return m_centreCollision;}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue