#include "testclientsnakebite.h"
#include "testclientframework.h"
#include "../Ganef/common/frameworkpacket.h"
TestClientSnakeBite::TestClientSnakeBite(ClientFramework * f, ClientPacket * packet) : ClientData(f,packet)
{
x = packet->readInt32();
y = packet->readInt32();
angle = packet->readDouble64();
packet->readPtr(this, &nextbite, f);
is_head = packet->readBool8();
m_mybite = false;
}
TestClientSnakeBite::~TestClientSnakeBite()
{
TestClientFramework * myframework = static_cast<TestClientFramework *>(client_framework);
myframework->removeSnakeBite(this);
}
void TestClientSnakeBite::updatePacket( ClientFramework * f, unsigned char updatetype, ClientPacket * packet )
{
switch(updatetype)
{
case 10:
x = packet->readInt32();
y = packet->readInt32();
angle = packet->readDouble64();
break;
case 20:
packet->readPtr(this, &nextbite, f);
break;
case 30:
m_mybite = true;
break;
case 40:
m_mybite = false;
break;
}
}
void TestClientSnakeBite::sendWantedPosition( int _x, int _y )
{
ClientPacket * p = new ClientPacket(this, 10, 12, false);
p->writeInt32(_x);
p->writeInt32(_y);
enqueuePacket(p);
}