JavaOxygen
Minecrafter
Ich möchte gerne einen cooldown in meinen Doublejump einbauen, wie mache ich das nun am besten?
Code:
public class DoubleJump implements Listener {
private int seconds = 16;
@SuppressWarnings("deprecation")
@EventHandler
public void onMove(PlayerMoveEvent e) {
final Player p = e.getPlayer();
if(!p.isOnGround())
return;
p.setAllowFlight(true);
}
@EventHandler
public void onDoubleJump(PlayerToggleFlightEvent e) {
final Player p = e.getPlayer();
if(p.hasPermission("system.djump")) {
if(!e.isFlying())
return;
if(p.getGameMode() == GameMode.CREATIVE)
return;
e.setCancelled(true);
p.setAllowFlight(false);
Vector v = p.getLocation().getDirection().multiply(1.8).setY(1.8);
p.setVelocity(v);
p.playSound(p.getLocation(), Sound.ENDERMAN_HIT, 1, 1);
p.setFallDistance(-500);
} else {
e.setCancelled(true);
}
Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getPlugin(), new Runnable() {
@Override
public void run() {
seconds--;
if(seconds == 18) p.sendMessage(Main.prefix + " §4Du wirst gleich ");
}
}, 0, 360);
}
}
Code:
public class DoubleJump implements Listener {
private int seconds = 16;
@SuppressWarnings("deprecation")
@EventHandler
public void onMove(PlayerMoveEvent e) {
final Player p = e.getPlayer();
if(!p.isOnGround())
return;
p.setAllowFlight(true);
}
@EventHandler
public void onDoubleJump(PlayerToggleFlightEvent e) {
final Player p = e.getPlayer();
if(p.hasPermission("system.djump")) {
if(!e.isFlying())
return;
if(p.getGameMode() == GameMode.CREATIVE)
return;
e.setCancelled(true);
p.setAllowFlight(false);
Vector v = p.getLocation().getDirection().multiply(1.8).setY(1.8);
p.setVelocity(v);
p.playSound(p.getLocation(), Sound.ENDERMAN_HIT, 1, 1);
p.setFallDistance(-500);
} else {
e.setCancelled(true);
}
Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getPlugin(), new Runnable() {
@Override
public void run() {
seconds--;
if(seconds == 18) p.sendMessage(Main.prefix + " §4Du wirst gleich ");
}
}, 0, 360);
}
}