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