This commit is contained in:
parent
c6b4ef75cb
commit
6c807b17f7
2 changed files with 37 additions and 10 deletions
|
@ -417,7 +417,7 @@ void CThing::init()
|
|||
|
||||
setCollisionSize(20,20); // Some temporary defaults.. (pkg)
|
||||
setCollisionCentreOffset(0,0);
|
||||
m_collisionAngle = 0;
|
||||
setCollisionAngle(0);
|
||||
}
|
||||
|
||||
/*----------------------------------------------------------------------
|
||||
|
@ -471,6 +471,32 @@ void CThing::render()
|
|||
DVECTOR ofs;
|
||||
CRECT area;
|
||||
|
||||
ofs=CLevel::getCameraPos();
|
||||
area=getCollisionArea();
|
||||
area.x1-=ofs.vx;
|
||||
area.y1-=ofs.vy;
|
||||
area.x2-=ofs.vx;
|
||||
area.y2-=ofs.vy;
|
||||
|
||||
if(area.x1<=511&&area.x2>=0&&
|
||||
area.y1<=255&&area.y2>=0)
|
||||
{
|
||||
DrawLine(area.x1,area.y1,area.x2,area.y1,255,255,255,0);
|
||||
DrawLine(area.x2,area.y1,area.x2,area.y2,255,255,255,0);
|
||||
DrawLine(area.x2,area.y2,area.x1,area.y2,255,255,255,0);
|
||||
DrawLine(area.x1,area.y2,area.x1,area.y1,255,255,255,0);
|
||||
|
||||
area.x1=Pos.vx-10-ofs.vx;
|
||||
area.y1=Pos.vy-10-ofs.vy;
|
||||
area.x2=Pos.vx+10-ofs.vx;
|
||||
area.y2=Pos.vy+10-ofs.vy;
|
||||
DrawLine(area.x1,area.y1,area.x2,area.y2,255,0,0,0);
|
||||
DrawLine(area.x2,area.y1,area.x1,area.y2,255,0,0,0);
|
||||
}
|
||||
/*
|
||||
DVECTOR ofs;
|
||||
CRECT area;
|
||||
|
||||
ofs=CLevel::getCameraPos();
|
||||
|
||||
area=getCollisionArea();
|
||||
|
@ -538,6 +564,7 @@ void CThing::render()
|
|||
DrawLine(area.x1,area.y1,area.x2,area.y2,255,0,0,0);
|
||||
DrawLine(area.x2,area.y1,area.x1,area.y2,255,0,0,0);
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
#else
|
||||
|
|
|
@ -143,8 +143,8 @@ public:
|
|||
DVECTOR getCollisionCentre() {return m_collisionCentre;}
|
||||
int getCollisionRadius() {return m_collisionRadius;}
|
||||
CRECT getCollisionArea() {return m_collisionArea;}
|
||||
s16 getCollisionAngle() {return m_collisionAngle;}
|
||||
DVECTOR getNewCollidedPos() {return m_newCollidedPos;}
|
||||
s16 getCollisionAngle() {return m_collisionAngle;} // pkg - move to CNpcPlatform?
|
||||
DVECTOR getNewCollidedPos() {return m_newCollidedPos;} // pkg - to be removed?
|
||||
DVECTOR getCollisionSize() {return m_collisionSize;}
|
||||
|
||||
virtual int canCollide() {return true;}
|
||||
|
@ -155,22 +155,22 @@ public:
|
|||
virtual void setHasPlatformCollided( bool newVal ) {;}
|
||||
virtual bool getHasPlatformCollided() {return false;}
|
||||
virtual s32 getNewYPos( CThing *_thisThing );
|
||||
void setNewCollidedPos(DVECTOR newPos) {m_newCollidedPos = newPos;}
|
||||
void setNewCollidedPos(DVECTOR newPos) {m_newCollidedPos = newPos;} // pkg - to be removed?
|
||||
|
||||
|
||||
protected:
|
||||
void setCollisionSize(int _w,int _h);
|
||||
void setCollisionCentreOffset(int _x,int _y) {m_collisionCentreOffset.vx=_x;m_collisionCentreOffset.vy=_y;}
|
||||
void setCollisionCentreOffset(DVECTOR xy) {m_collisionCentreOffset=xy;}
|
||||
void setCollisionAngle(int newAngle) {m_collisionAngle = newAngle;}
|
||||
virtual void setCollisionSize(int _w,int _h);
|
||||
virtual void setCollisionCentreOffset(int _x,int _y) {m_collisionCentreOffset.vx=_x;m_collisionCentreOffset.vy=_y;}
|
||||
virtual void setCollisionCentreOffset(DVECTOR xy) {m_collisionCentreOffset=xy;}
|
||||
virtual void setCollisionAngle(int newAngle) {m_collisionAngle = newAngle;} // pkg - move to CNpcPlatform?
|
||||
private:
|
||||
DVECTOR m_collisionSize;
|
||||
DVECTOR m_collisionCentreOffset;
|
||||
int m_collisionRadius;
|
||||
CRECT m_collisionArea;
|
||||
DVECTOR m_collisionCentre;
|
||||
s16 m_collisionAngle;
|
||||
DVECTOR m_newCollidedPos;
|
||||
s16 m_collisionAngle; // pkg - move to CNpcPlatform?
|
||||
DVECTOR m_newCollidedPos; // pkg - to be removed?
|
||||
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue