• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Spigot Wie kann ich bei einem Doppel Jump Cooldown implementieren

DrEm8ee

Kuhfänger
Registriert
10 Januar 2018
Beiträge
58
Diamanten
0
Minecraft
DrEm8ee
Hallo,

Wie kann ich, wenn ich in mein Doppel Jump Plugin Cooldown Implementieren? Ich hatte da an etwas gedacht, wie z.B. dass ich bloß aller paar Sekunden den Doppel Jump machen kann.

mfg
 

RaidProgramming

Minecrafter
Registriert
5 Oktober 2018
Beiträge
5
Diamanten
0
Hallo,
relativ einfach lässt sich dies lösen, wenn du einfach in einer HashMap den letzten Sprung speicherst und dann bei jedem Sprung schaust, ob schon z.B. 5s seit dem letzen Sprung vergangen sind.
Kleines Beispiel:
java:
private HashMap <UUID, Long> cooldown = new HashMap <UUID, Long>();
private int cooldownDuration = 5;

// Methode für den Doppeljump
public void doppelJump() {
    Long time = System.currentTimeMillis();
    if (this.cooldown.containsKey(player.getUniqueId())) {
        long lastUsage = this.cooldown.get(player.getUniqueId());
        if (lastUsage + cooldownDuration * 1000 > time)  {
            // Code abbrechen, damit Doppeljump nicht ausgeführt wird
            // oder etwas in der Art
            return;
        }
    }
    // wenn Doppeljump ausgeführt wird,
    //muss der Eintrag in der Hashmap aktualisiert werden
    this.cooldown.put(player.getUniqueId(), time);
}
 
Zuletzt bearbeitet:
Oben