This commit is contained in:
parent
89b0aa146b
commit
d920a3994a
2 changed files with 4 additions and 33 deletions
|
@ -118,6 +118,7 @@ int CLayerCollision::getHeightFromGround(int _x,int _y,int _maxHeight)
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
/*
|
||||||
int CLayerCollision::getHeightFromCeiling(int _x,int _y,int _maxHeight)
|
int CLayerCollision::getHeightFromCeiling(int _x,int _y,int _maxHeight)
|
||||||
{
|
{
|
||||||
int mapX,mapY,xFraction,yFraction;
|
int mapX,mapY,xFraction,yFraction;
|
||||||
|
@ -158,36 +159,7 @@ int CLayerCollision::getHeightFromCeiling(int _x,int _y,int _maxHeight)
|
||||||
|
|
||||||
return distanceFromCeiling;
|
return distanceFromCeiling;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
/*****************************************************************************/
|
|
||||||
int CLayerCollision::getCollisionType(int _x,int _y)
|
|
||||||
{
|
|
||||||
int mapX,mapY,xFraction,yFraction;
|
|
||||||
int distanceFromGround;
|
|
||||||
int block,colHeight;
|
|
||||||
int ret;
|
|
||||||
|
|
||||||
mapX=_x>>4;
|
|
||||||
mapY=(_y>>4)*MapWidth;
|
|
||||||
xFraction=_x&0x0f;
|
|
||||||
yFraction=16-(_y&0x0f);
|
|
||||||
|
|
||||||
block=Map[mapX+mapY];
|
|
||||||
colHeight=s_collisionTable[((block&COLLISION_MASK)*16)+xFraction];
|
|
||||||
if(colHeight==yFraction)
|
|
||||||
{
|
|
||||||
ret=block;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
PAUL_DBGMSG("not on ground in getCollisionType()");
|
|
||||||
ret=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
#ifdef __SHOW_COLLISION__
|
#ifdef __SHOW_COLLISION__
|
||||||
|
|
|
@ -22,10 +22,9 @@ virtual ~CLayerCollision();
|
||||||
|
|
||||||
virtual void shutdown();
|
virtual void shutdown();
|
||||||
|
|
||||||
u8 Get(int X,int Y) {return(Map[X+(Y*MapWidth)]&COLLISION_MASK);}
|
u8 Get(int X,int Y) {return(Map[X+(Y*MapWidth)]&COLLISION_MASK);}
|
||||||
int getHeightFromGround(int _x,int _y,int _maxHeight=32);
|
int getHeightFromGround(int _x,int _y,int _maxHeight=32);
|
||||||
int getHeightFromCeiling(int _x,int _y,int _maxHeight=32);
|
int getCollisionBlock(int _x,int _y) {return Map[(_x>>4)+((_y>>4)*MapWidth)];}
|
||||||
int getCollisionType(int _x,int _y);
|
|
||||||
|
|
||||||
#ifdef __SHOW_COLLISION__
|
#ifdef __SHOW_COLLISION__
|
||||||
void render(DVECTOR &MapPos);
|
void render(DVECTOR &MapPos);
|
||||||
|
|
Loading…
Add table
Reference in a new issue