QuickBedwars - Team-Einteilung

Wenn ihr bei eurem Plugin nicht weiter kommt, könnt ihr hier euer Problem beschreiben und um Hilfe bitten.

QuickBedwars - Team-Einteilung

Beitragvon Entwicklung » Di 11. Jul 2017, 15:59

Ich programmiere zur Zeit ein QuickBedwars-Plugin.
Ich hänge zurzeit an der Teameinteilung.
4 Teams:
Rot
Blau
Gelb
Grün

1. Problem: Wie kann ich Leute gerecht in die Teams gleichmässig verteilen?
2. Problem: Wie mach ich das, dass die Leute, die bereits ein Team ausgewählt haben, nicht in eingeteilt werden?
3. Problem: Es dürfen maximal 4 Spieler in einem Team(Arraylist) sein.
4. Problem: Wie muss ich das machen, wenn nur 3 Spieler drin sind?

Mein halb Funktionierender Versuch:
Code: Alles auswählen
  1.     public void setToTeam() {
  2.         TeamManager tm = new TeamManager();
  3.         int amount = (Bukkit.getOnlinePlayers().size()/4) + 1;
  4.         for(Player all : Bukkit.getOnlinePlayers()) {
  5.             if(TeamManager.red.size() < amount) {
  6.                 tm.setTeam(all, PlayerTeam.RED);
  7.             } else
  8.             if(TeamManager.blue.size() < amount) {
  9.                 tm.setTeam(all, PlayerTeam.BLUE);
  10.             } else
  11.             if(TeamManager.yellow.size() < amount) {
  12.                 tm.setTeam(all, PlayerTeam.YELLOW);
  13.             } else
  14.             if(TeamManager.green.size() < amount) {
  15.                 tm.setTeam(all, PlayerTeam.GREEN);
  16.             }
  17.             tm.setScoreboard(all);
  18.         }
  19.     }

Code: Alles auswählen
  1.     public void setTeam(Player p, PlayerTeam team) {
  2.         if(team == PlayerTeam.RED) {
  3.             red.remove(p.getName());
  4.             blue.remove(p.getName());
  5.             green.remove(p.getName());
  6.             yellow.remove(p.getName());
  7.             red.add(p.getName());
  8.             setScoreboard(p);
  9.         }
  10.         if(team == PlayerTeam.BLUE) {
  11.             red.remove(p.getName());
  12.             blue.remove(p.getName());
  13.             green.remove(p.getName());
  14.             yellow.remove(p.getName());
  15.             blue.add(p.getName());
  16.             setScoreboard(p);
  17.         }
  18.         if(team == PlayerTeam.YELLOW) {
  19.             red.remove(p.getName());
  20.             blue.remove(p.getName());
  21.             green.remove(p.getName());
  22.             yellow.remove(p.getName());
  23.             yellow.add(p.getName());
  24.             setScoreboard(p);
  25.         }
  26.         if(team == PlayerTeam.GREEN) {
  27.             red.remove(p.getName());
  28.             blue.remove(p.getName());
  29.             green.remove(p.getName());
  30.             yellow.remove(p.getName());
  31.             green.add(p.getName());
  32.             setScoreboard(p);
  33.         }
  34.     }
Benutzeravatar
Entwicklung
 
Beiträge: 1
Registriert: Di 11. Jul 2017, 15:55

Zurück zu Hilfe und Support

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste

cron