diagonal walk improv

This commit is contained in:
Eduardo Bart 2011-08-31 23:56:01 -03:00
parent d6a29b7cb7
commit ee5180b9c5
1 changed files with 3 additions and 3 deletions

View File

@ -71,7 +71,7 @@ void Tile::draw(int x, int y)
// own creature not walking
if(creature->getWalkOffsetX() == 0 && creature->getWalkOffsetY() == 0 && xi == 0 && yi == 0)
draw = true;
// own creature walking west/east/north/south
// own creature walking on any direction
else if(xi == 0 && yi == 0 &&
creature->getWalkOffsetX() <= 8 && creature->getWalkOffsetY() <= 8 &&
creature->getWalkOffsetX() > -24 && creature->getWalkOffsetY() > -24)
@ -83,8 +83,8 @@ void Tile::draw(int x, int y)
else if(xi != 0 && yi == 0 && (creature->getWalkOffsetX() > 8 || creature->getWalkOffsetX() <= -24) && creature->getWalkOffsetY() == 0)
draw = true;
// creature walking in diagonal
else if(xi != 0 && yi != 0 && (creature->getWalkOffsetY() > 8 || creature->getWalkOffsetY() <= -24) &&
(creature->getWalkOffsetX() > 8 || creature->getWalkOffsetX() <= -24))
else if(xi != 0 && yi != 0 && ((creature->getWalkOffsetY() > 8 || creature->getWalkOffsetY() <= -24) ||
(creature->getWalkOffsetX() > 8 || creature->getWalkOffsetX() <= -24)))
draw = true;
if(draw)
creature->draw(x - m_drawElevation + xi*32, y - m_drawElevation + yi*32);