Exemplo n.º 1
0
void ClientGame::update()
{
    Packet packet;
    int data_length = network->receivePackets(network_data);

    if (data_length <= 0)
    {
        //no data recieved
        return;
    }

    int i = 0;
    while (i < (unsigned int)data_length)
    {
        packet.deserialize(&(network_data[i]));
        i += sizeof(Packet);

        switch (packet.packet_type) {

        case ACTION_EVENT:

            printf("client received action event packet from server\n");

            sendActionPackets();

            break;

        case TEST:

            printf("client received action TEST packet from server\n\n\n");

            sendActionPackets();

            break;

        default:

            printf("error in packet types\n");

            break;
        }
    }
}
Exemplo n.º 2
0
void ClientGame::RunGame() {
	//check to see if it needs an update from the server
	if (game->UPDATE_SERVER) {
		sendActionPackets(SERVER_TO_CLIENT_UPDATE_TERRAIN_DATA);
		NEED_UPDATE = true;
		game->UPDATE_SERVER = false;
	}

	float msec = Window::GetWindow().GetTimer()->GetTimedMS();	//How many milliseconds since last update?

	game->UpdateRendering(msec);	//Update our 'sybsystem' logic (renderer and physics!)
	game->UpdateGame(msec);	//Update our game logic
	UPDATE_PLAYER_STATUS = true;
}