This commit is contained in:
parent
408296a8a2
commit
6c2a9933f4
2 changed files with 15 additions and 3 deletions
|
@ -1659,6 +1659,7 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage,REACT_DIRECTION _reactDirection,CTh
|
||||||
case DAMAGE__SQUASH_ENEMY:
|
case DAMAGE__SQUASH_ENEMY:
|
||||||
case DAMAGE__BURN_ENEMY:
|
case DAMAGE__BURN_ENEMY:
|
||||||
case DAMAGE__BITE_ENEMY:
|
case DAMAGE__BITE_ENEMY:
|
||||||
|
case DAMAGE__COLLISION_DAMAGE:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DAMAGE__KILL_OUTRIGHT:
|
case DAMAGE__KILL_OUTRIGHT:
|
||||||
|
@ -2063,12 +2064,11 @@ int CPlayer::moveVertical(int _moveDistance)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else if(_moveDistance<0)
|
||||||
{
|
{
|
||||||
// Must be below ground
|
// Must be below ground
|
||||||
// Are we jumping into an impassable block?
|
// Are we jumping into an impassable block?
|
||||||
if(_moveDistance<0&&
|
if((m_layerCollision->getCollisionBlock(pos.vx,pos.vy+_moveDistance)&COLLISION_TYPE_MASK)!=COLLISION_TYPE_FLAG_NORMAL&&
|
||||||
(m_layerCollision->getCollisionBlock(pos.vx,pos.vy+_moveDistance)&COLLISION_TYPE_MASK)!=COLLISION_TYPE_FLAG_NORMAL&&
|
|
||||||
getHeightFromGround(pos.vx,pos.vy+_moveDistance)<=0)
|
getHeightFromGround(pos.vx,pos.vy+_moveDistance)<=0)
|
||||||
{
|
{
|
||||||
pos.vy=(pos.vy&0xfff0);
|
pos.vy=(pos.vy&0xfff0);
|
||||||
|
@ -2076,6 +2076,17 @@ int CPlayer::moveVertical(int _moveDistance)
|
||||||
hitGround=true;
|
hitGround=true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Stood on any important types of collision?
|
||||||
|
int colType;
|
||||||
|
|
||||||
|
colType=m_layerCollision->getCollisionBlock(pos.vx,pos.vy+_moveDistance)&COLLISION_TYPE_MASK;
|
||||||
|
if(colType==COLLISION_TYPE_FLAG_DAMAGE)
|
||||||
|
{
|
||||||
|
takeDamage(DAMAGE__COLLISION_DAMAGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
pos.vy+=_moveDistance;
|
pos.vy+=_moveDistance;
|
||||||
setPlayerPos(&pos);
|
setPlayerPos(&pos);
|
||||||
|
|
||||||
|
|
|
@ -121,6 +121,7 @@ typedef enum
|
||||||
DAMAGE__SQUASH_ENEMY,
|
DAMAGE__SQUASH_ENEMY,
|
||||||
DAMAGE__BURN_ENEMY,
|
DAMAGE__BURN_ENEMY,
|
||||||
DAMAGE__BITE_ENEMY,
|
DAMAGE__BITE_ENEMY,
|
||||||
|
DAMAGE__COLLISION_DAMAGE,
|
||||||
DAMAGE__KILL_OUTRIGHT,
|
DAMAGE__KILL_OUTRIGHT,
|
||||||
}DAMAGE_TYPE;
|
}DAMAGE_TYPE;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue