package modele; import java.util.ArrayList; import java.util.Hashtable; import controleur.Controle; import controleur.GLOBAL; import outils.connexion.Connection; /** * Gestion du jeu côté serveur * */ public class JeuServeur extends Jeu { /** * Collection de murs */ private ArrayList lesMurs = new ArrayList() ; /** * Collection de joueurs */ private Hashtable lesJoueurs = new Hashtable() ; private Connection connection; /** * Constructeur */ public JeuServeur(Controle control) { this.controle = control; } @Override public void connexion(Connection connection) { this.lesJoueurs.put(connection, new Joueur()); } @Override public void reception(Connection connection, Object info) { String splitted[] = ((String)info).split(GLOBAL.separateur); switch(splitted[0]) { case "pseudo": controle.evenementJeuServeur("ajout panel murs", connection); String pseudo = splitted[1]; int numPerso = Integer.parseInt(splitted[2]); this.lesJoueurs.get(connection).initPerso(pseudo, numPerso); } } @Override public void deconnexion() { } /** * Envoi d'une information vers tous les clients * fais appel plusieurs fois à l'envoi de la classe Jeu */ public void envoi() { } /** * Génération des murs */ public void constructionMurs() { for(int i = 0; i<20; i++){ Mur leMur = new Mur(); lesMurs.add(leMur); this.controle.evenementJeuServeur("ajout mur", leMur.getJLabel());; } } }