Ejemplo n.º 1
0
void AddToBuf(char* bufOut, int &offsetOut, string in)
{
	for(int i = 0; i < in.size(); i++)
	{
		AddToBuf(bufOut, offsetOut, in[i]);
	}
	AddToBuf(bufOut, offsetOut, ';');
}
Ejemplo n.º 2
0
void ServerInfo::GetBuffer(char* bufOut, int &offsetOut)
{
	AddToBuf(bufOut, offsetOut, this->mServerName);
	AddToBuf(bufOut, offsetOut, (char)this->mNumPlayers);
	AddToBuf(bufOut, offsetOut, (char)this->mMaxNumPlayers);
	AddToBuf(bufOut, offsetOut, (char)this->mGameMode);
	AddToBuf(bufOut, offsetOut, this->mIP);
}
Ejemplo n.º 3
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);
		}
	}
	
}