Wie kann man beim Minecraft Plugin programmieren einen Command so programmieren, dass er pro Spieler nur einmal ausführbar ist?

5 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Erstelle Ingame ein Scoreboard und erhöhe das bei jedem Spieler der den Command eingibt auf 1. Bei Eingabe des Commands musst du prüfen ob das Scoreboard bereits 1 ist, oder noch 0.

Dann sparst du dir lästige Extra-Dateien/Datenbanken die du bei den anderen Lösungen hier hast, da das ganze einfach über Ingame-Dateien (die Scoreboards) geregelt wird.

Woher ich das weiß:eigene Erfahrung – Minecraft-Experte. Aktiver Spieler seit 2011.

Mach dir am besten eine Datenbank wo du eine Eigenschaft einträgst, die halt zu dieser Funktion passt. Wenn der Befehl einmal ausgeführt wird, dann wird das in deine Datenbank eingetragen. Und wenn du es nochmal ausführst, dann testet das programm erstmal nach einrm Eintrag ind er Datenbank, ob es schonmal ausgeführt wurde. Wenn ja, dann passiert nichts.

Könntest die uid des Spielers in einer Datenbank Speicher wo dann dein steht uid und danaben Ausgeführt, wenn ausgeführt noch nicht eins ist wird der Command ausgeführt und einen eins in die Tabelle geschrieben. Beim nächsten Versuch den Command auszuführen, wird festgestellt, dass der User mit uid bei Ausgeführt in der Tabelle eine 1 stehen hat und der Command wird nicht ausgeführt.

Woher ich das weiß:Hobby

Entweder eine MySQL Datenbank (oder auch jedes andere beliebige System) oder direkt in Yamls oder Json Dateinen die UUIDs der Spieler schreiben.

Dann kannst du vor jedem ausführen des CMD diese abfragen und wenn die UUID schon drin steht, verweigerst du das dem Spieler einfach.

Woher ich das weiß:Hobby

int x = 0

//Command

if(x == 0){
x++;

und der Command
} else

player.sendMessage("Command bereits aufgeführt);

Woher ich das weiß:Hobby