Hallo, habe mir ein Programm geschrieben. allerdings hab eich noch einen fehler.
Ich möchte gerne den Spielern ein Team zuweisen. Momentan sieht es so aus.
Bei 9 Spielern => 3 Teams.
Spieler 1 geht zu Team 1
Spieler 2 geht zu Team 2
Spieler 3 geht zu Team 3
Spieler 4 geht zu Team 1
Spieler 5 geht zu Team 2
Spieler 6 geht zu Team 3
und so weiter.
ich mcöhte aber das die teams zufällig gemacht werden, aber ich hab echt null plan wie ich das anstellen könnte.
hier meine spieler klasse
und die main
Ich möchte gerne den Spielern ein Team zuweisen. Momentan sieht es so aus.
Bei 9 Spielern => 3 Teams.
Spieler 1 geht zu Team 1
Spieler 2 geht zu Team 2
Spieler 3 geht zu Team 3
Spieler 4 geht zu Team 1
Spieler 5 geht zu Team 2
Spieler 6 geht zu Team 3
und so weiter.
ich mcöhte aber das die teams zufällig gemacht werden, aber ich hab echt null plan wie ich das anstellen könnte.
hier meine spieler klasse
Java:
package Klassen;
import javax.swing.*;
import java.util.ArrayList;
public class Spieler {
String spielername;
int team;
public int getTeam() {
return team;
}
public void setTeam(int team){
this.team = team;
}
public String getSpielername() {
return spielername;
}
public void setSpielername(String spielername) {
this.spielername = spielername;
}
public Spieler(String spielername) {
super();
this.spielername = spielername;
}
}
und die main
Java:
package Klassen;
import javax.swing.*;
import java.util.ArrayList;
public class managerMain {
public static void main(String[] args) {
String s_teilnehmeranzahl; // String zum einlesen der Anzahl von Teilnehmern
int teilnehmeranzahl = 0; // Anzahl der Mitspieler
ArrayList<Spieler> teilnehmer = new ArrayList<Spieler>(); //Dynamische ArrayList zum verwalten aller Teilnehmer
Object[] teamsize = {"1v1","3v3","5v5"}; //JOptionPane-Optionsfeld zur Auswahl des Sppielmodus.
s_teilnehmeranzahl = (JOptionPane.showInputDialog(null, "Wie viele Spieler sollen am Turnier teilnehmen?", "LoL-Turniermanager",JOptionPane.QUESTION_MESSAGE)); //
teilnehmeranzahl = Integer.parseInt(s_teilnehmeranzahl); //String wird in einen Int-Wert umgewandelt
for(int i = 0; i < teilnehmeranzahl; i++) { //Schleife fügt so oft spieler hinzu wie sie teilnehmen.
teilnehmer.add(new Spieler(JOptionPane.showInputDialog(null, "Bitte Spielernamen eingebe","LoL-Turniermanager",JOptionPane.INFORMATION_MESSAGE)));
}
int auswahl = JOptionPane.showOptionDialog(null, "Bitte geben Sie die Teamgröße an", "LoL-Turniermanager", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, teamsize, teamsize[2]);
if(auswahl == 0){
JOptionPane.showMessageDialog(null,"Keine Teambildung notwendig","LoL-Turniermanager",JOptionPane.INFORMATION_MESSAGE);
}
else if(auswahl == 1){
if(teilnehmeranzahl%3!=0){
JOptionPane.showMessageDialog(null,"Keine Teambildung möglich.\nAnzahl der Spieler ist nicht durch drei teilbar","LoL-Turniermanager",JOptionPane.INFORMATION_MESSAGE);
}
else{
int anzahlteams = teilnehmeranzahl/3;
int teamwechsel = 0;
for(Spieler z:teilnehmer){
z.setTeam(teamwechsel%anzahlteams);
teamwechsel++;
}
String blabla = "";
for(Spieler z:teilnehmer) {
blabla += "\nSpieler: " + z.getSpielername() + " spielt im Team " + z.getTeam();
//
}
JOptionPane.showMessageDialog(null,""+blabla,"LoL-Turniermanager",JOptionPane.INFORMATION_MESSAGE);
}
}
else if(auswahl == 2){
if(teilnehmeranzahl%5!=0){
JOptionPane.showMessageDialog(null,"Keine Teambildung möglich.\nAnzahl der Spieler ist nicht durch drei teilbar","LoL-Turniermanager",JOptionPane.INFORMATION_MESSAGE);
}
else{
int anzahlteams = teilnehmeranzahl/5;
int teamwechsel = 0;
for(Spieler z:teilnehmer){
z.setTeam(teamwechsel%anzahlteams);
teamwechsel++;
}
for(Spieler z:teilnehmer) {
JOptionPane.showMessageDialog(null,"Spieler: " + z.getSpielername() + "spielt im Team " + z.getTeam(),"LoL-Turniermanager",JOptionPane.INFORMATION_MESSAGE);
}
}
}
}
public static int createRandom(int randomzahl) {
return (int) ((Math.random()*randomzahl)+1);
}
}