This commit is contained in:
Erwann PHILIPPE 2025-03-11 09:28:09 +01:00
parent 7dd79ff3b1
commit d948887a72
3 changed files with 79 additions and 32 deletions

View file

@ -1,14 +1,21 @@
package controleur;
import outils.connexion.AsyncResponse;
import outils.connexion.ClientSocket;
import outils.connexion.Connection;
import outils.connexion.ServeurSocket;
import vue.Arene;
import vue.ChoixJoueur;
import vue.EntreeJeu;
public class Controle {
public class Controle implements AsyncResponse {
private EntreeJeu frmEntreeJeu ;
public String type;
/**
* Constructeur
*/
private Controle() {
this.frmEntreeJeu = new EntreeJeu() ;
this.frmEntreeJeu = new EntreeJeu(this) ;
this.frmEntreeJeu.setVisible(true);
}
@ -17,4 +24,41 @@ public class Controle {
new Controle();
}
public void evenementEntreeJeu(String info) {
//
if(info.contains("serveur")) {
System.out.println("srv");
type = "serveur";
//
new ServeurSocket(this, 6666);
Arene areneJeu = new Arene();
areneJeu.setVisible(true);
frmEntreeJeu.dispose();
}else {
System.out.println("ip");
type = "client";
//
new ClientSocket(this, info, 6666);
//frmEntreeJeu.dispose();
}
}
@Override
public void reception(Connection connection, String ordre, Object info) {
// TODO Auto-generated method stub
switch (ordre){
case "connexion":
if(type.equals("client")) {
frmEntreeJeu.dispose();
Arene frmArene = new Arene();
ChoixJoueur frmChoixJoueur = new ChoixJoueur();
frmChoixJoueur.setVisible(true);
}
break;
}
}
}

View file

@ -4,6 +4,9 @@ import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import controleur.Controle;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.Font;
@ -16,6 +19,7 @@ public class EntreeJeu extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel contentPane;
private JTextField textField;
private Controle control;
/**
* Launch the application.
@ -25,7 +29,7 @@ public class EntreeJeu extends JFrame {
/**
* Create the frame.
*/
public EntreeJeu() {
public EntreeJeu(Controle ctrl) {
setTitle("Urban Marginal");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 330, 160);
@ -44,9 +48,7 @@ public class EntreeJeu extends JFrame {
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Arene areneJeu = new Arene();
areneJeu.setVisible(true);
EntreeJeu.this.dispose();
ctrl.evenementEntreeJeu("serveur");
}
});
btnNewButton.setFont(new Font("Tahoma", Font.BOLD, 12));
@ -76,9 +78,7 @@ public class EntreeJeu extends JFrame {
JButton btnNewButton_1 = new JButton("Connect");
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ChoixJoueur choixJoueur = new ChoixJoueur();
choixJoueur.setVisible(true);
EntreeJeu.this.dispose();
ctrl.evenementEntreeJeu(textField.getText());
}
});
btnNewButton_1.setFont(new Font("Tahoma", Font.BOLD, 12));
@ -94,5 +94,8 @@ public class EntreeJeu extends JFrame {
btnNewButton_2.setFont(new Font("Tahoma", Font.BOLD, 12));
btnNewButton_2.setBounds(211, 91, 89, 23);
contentPane.add(btnNewButton_2);
control = ctrl;
}
}