void ProtocolGame::parseAutoWalk(NetworkMessage& msg)
{
// first we get all directions...
std::list<Direction> path;
// size_t dirCount = 1000000000;
size_t dirCount = msg.get<char>();
// std::clog << dirCount << std::endl;
for(size_t i = 0; i < dirCount; ++i)
{
uint8_t rawDir = msg.get<char>();
Direction dir = SOUTH;
switch(rawDir)
{
case 1:
dir = EAST;
break;
case 2:
dir = NORTHEAST;
break;
case 3:
dir = NORTH;
break;
case 4:
dir = NORTHWEST;
break;
case 5:
dir = WEST;
break;
case 6:
dir = SOUTHWEST;
break;
case 7:
dir = SOUTH;
break;
case 8:
dir = SOUTHEAST;
break;
default:
continue;
}
path.push_back(dir);
}
addGameTask(&Game::playerAutoWalk, player->getID(), path);
}