123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- #include <iostream>
- #include "Serveur.h"
- #include "Methodes.h"
- /**
- protocole de transfert:
- direction du perso: ↑→↓← ( alt24 à alt27 )
- si perso ne bouge pas: ■ ( alt254 )
- a faire: commande reset
- */
- int main()
- {
- ///creation du serveur
- Serveur serveur(7856, 2);
- if(!serveur.rendreUtilisable())
- {
- std::cout << "Erreur d'initialisation du serveur!" << std::endl;
- return -1;
- }
- ///symboles envoyer = '○', fini = '$', arreter = '┼', bougePas = '■', reset = '/'
- char envoyer = 9, fini = 36, arreter = 197, bougePas = 254, reset = 47;
- ///attribution du numero du joueur
- char id = '0';
- serveur.envoyer(&id, 0, 1);
- id = '1';
- serveur.envoyer(&id, 1, 1);
- /// attributs
- bool continuer = true;
- unsigned int taille = 1;
- char joueur1 = bougePas, joueur2 = bougePas;
- std::string cheminNiveau;
- char niveau[18*24];
- bool changerNiveau = true, isreset = false;
- ///boucle evenementielle
- while(continuer)
- {
- if(changerNiveau || isreset)
- {
- if(!isreset)
- cheminNiveau = niveauSuivant("Niveaux/0index.txt", cheminNiveau);
- else
- isreset = false;
- if(!chargerNiveau(niveau, "Niveaux/"+cheminNiveau))
- {
- std::cout << "Erreur de chargement du niveau : " << cheminNiveau << std::endl;
- serveur.envoyer(&arreter, 0, taille);
- serveur.envoyer(&arreter, 1, taille);
- return -1;
- }
- else
- {
- serveur.envoyer(&envoyer, 0, taille);
- serveur.envoyer(&envoyer, 1, taille);
- for(int i = 0;i<18*24;i++)
- {
- serveur.envoyer(&niveau[i], 0, taille);
- serveur.envoyer(&niveau[i], 1, taille);
- }
- changerNiveau = false;
- }
- }
- else
- {
- serveur.envoyer(&joueur2, 0, taille);
- serveur.envoyer(&joueur1, 1, taille);
- }
- serveur.recevoir(&joueur1, 0, taille);
- serveur.recevoir(&joueur2, 1, taille);
- if(joueur1 == arreter)
- {
- serveur.envoyer(&arreter, 1, taille);
- save("Niveaux/0index.txt", cheminNiveau);
- return 0;
- }
- else if(joueur2 == arreter)
- {
- serveur.envoyer(&arreter, 0, taille);
- save("Niveaux/0index.txt", cheminNiveau);
- return 0;
- }
- else if(joueur1 == fini && joueur2 == fini)
- changerNiveau = true;
- else if(joueur1 == reset || joueur2 == reset)
- isreset = true;
- }
- return 0;
- }
|