Minecraft Plugin programmieren abfragen ob er den Befehl schon mal genutzt hat?
Hi, Ich programmiere gerade was für Minecraft, ein Plugin in der Programmier Sprache Java. Habt jemand eine Idee wie man ein Befehl so machen kann das der befehl nur 1 mal kommt und wenn man was akzeptiert das er nicht mehr nutzt bar ist ? Danke für schnelle antwort :)
MFG: xXmennXx
4 Antworten
Gib der Klasse, die die Methode beinhaltet, ein boolsches Feld, dessen Zustand du abfragen kannst. Wenn der Nutzer durch seinen Input entscheidet, ob die Methode nochmals ausgeführt werden soll oder nicht, solltest du zusätzlich eine Möglichkeit einbauen, diesen Wert wieder ändern zu können.
public class A {
private boolean alreadyActivated = false;
public void doSomething() {
if(this.alreadyActivated) return;
// some actions
this.alreadyActivated = true; // bzw. Auswertung des User Inputs
}
}
Und wie kann ich jetzt
this.alreadyActivated = true
über einen befehl wie wenn ich ihn chat Ja/Nein eingebe aktiveren oder deaktivieren?
Es gibt auch Bücher. Glücklicherweise musst du dir die wichtigste Referenz aber nicht kaufen, es gibt sie ebenso als OpenBook im Internet: http://openbook.rheinwerk-verlag.de/javainsel/
Ich programmiere gerade so eine versicherung, wenn man /versicherung macht soll man gefragt werden ob man eine abschliessen will wenn man keine hat. aber ich wusste mir gearde kein rat mehr wie man das anstellen sollte. Also was ich damit sagen wollte Danke
Ich würde das über die Player Metadata machen. Du legst die keys requestInsurence und hasInsurence an. Wenn der Versicherungsbefehl ausgeführt wird setzt du requestInsurence auf true und dann sendest du dem Spieler dass er bestätigen soll, wenn er bestätigt dann setzt du hasInsurence auf true ansonsten beide auf false. Im Gegensatz zu der vorherig vorgeschlagenen Lösung brauchst du hier keine Liste mit allen Spielern zusätzlich speichern
Ich würde eine HAshMAp mit dem Spielernamen als key und einem Boolean als value benutzen! Wenn du der Command ausgeführt wird erst abfragen ob der boolean des Spielernamens true ist, wenn ja dann returnen! Wenn der Boolean auf false ist dan den boolean auf true setzen und den rest des Command ausführen!
Das funktieoniert auch mit Intagern und Strings die dan halt einen speziellen Wert haben. Wenn du willst kannst du auch eine Config-Datei benuzten!
Lerne zuerst die JAVA-Grundlagen. Ich empfehle persönlich das Buch Java von Kopf bis Fuß.
Dein Quelltext hat ein Problem. Wenn du den Server reloadest hat er alles vergessen.