Exemplo n.º 1
0
void GameNetwork::Start(ServerInfo server)
{
	this->mServer = server;
	for(int i = 0; i < PLAYER_CAP; i++)
	{
		this->mNetBalls[i]->SetPos(this->mNetBalls[i]->GetStartPos());
		this->mNetBalls[i]->SetHP(((WARLOCKInfo*)server.GetGameModeInfo())->GetStartHealth());
	}
	this->mNetBalls[this->mIndex]->GetPlayerHistory()->Reset(this->mNetBalls[this->mIndex]->GetStartPos());

	if(!this->mOnline)
	{

		if(this->mServer.GetIP() == "")
		{
			mConn->Host(server);
		}
		else 
		{
			mConn->Connect(server);
		}
	}
	else
	{
		if(server.GetID() == -1)
		{
			char create[1024] = "CREATE GAME";
			int offset = 12;
			server.GetBuffer(create, offset);
			create[offset++] = 10;
			this->mOnlineHandler->Send(create, offset);
		}
		else
		{
			char join[55] = "JOIN GAME";
			int offset = 10;
			AddToBuf(join, offset, server.GetID());
			join[offset++] = 10;
			this->mOnlineHandler->Send(join, offset);
		}
	}
	
}