Source

pacman-game-server / serveurPartie / main.cpp

#include <iostream>

#include "game.h"
#include "threads.h"

using namespace std;

int main(int argc, char **argv)
{
    // port d'ecoute TCP des messages du serveur
    u_short portEcouteServeur = 2330;
    // port d'ecoute TCP de connection des clients
    u_short portEcoute = 2331;
    // port d'ecoute UDP des mouvements des joueurs
    u_short portLecture = 2332;

    // port d'ecoute UDP du client distant
    u_short portEcouteDistant = 8880;
    // port d'ecoute TCP du serveur principal
    u_short portEcouteServeurPrincipal = 7770;

    string adresseServeurPrincipal;
    cout << "Adresse du serveur principal :" << endl;
    cin >> adresseServeurPrincipal;
    cout << "Connexion au serveur...\n" << endl;

    Game * jeux = new Game(portEcoute, portLecture, portEcouteServeur, portEcouteDistant, portEcouteServeurPrincipal, adresseServeurPrincipal);

    // Lancement thread d'ecoute du serveur :
    pthread_t * join_toEcouteServeur = jeux->initEcouteServeur();

    // si connexion au serveur principal reussie
    if (jeux->serveurConnection() == 0)
    {
        // Lancement thread d'ecoute des clients :
        pthread_t * join_toEcoute = jeux->initEcoute();
        // Lancement thread de lecture :
        pthread_t * join_toLecture = jeux->initLecture();

        (void) pthread_join(*join_toEcoute, NULL);
        (void) pthread_join(*join_toLecture, NULL);
        (void) pthread_join(*join_toEcouteServeur, NULL);
    }
    else
        printf("Erreur de connexion au serveur principal.\n");

    return 0;
}