DasHanfbauer Geschrieben 5. Mai 2017 Share Geschrieben 5. Mai 2017 Hey ich bin ein plugin am coden der eine Befehl soll einen cooldown haben aber jetzt zeigt eclipse einen Fehler an wie kann ich das beheben? Der problem Punkt ist fast ganz unten ich habe ihn beschriftet import java.util.HashMap; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.plugin.java.JavaPlugin; public class TestPlugin extends JavaPlugin { public static HashMap<String, Long> cooldowns = new HashMap<String, Long>(); public String prefix = "§4[RollmopsMC]§5"; public void onEnable() { initConfig(); System.out.println(prefix + " erfolgreich geladen!"); } public void onDisable() { System.out.println(prefix + " erfolgreich deaktiviert!"); } private void initConfig() { reloadConfig(); getConfig().addDefault("plugin.prefix", "§0[§4RollmopsMC§0] §5"); getConfig().options().copyDefaults(true); getConfig().addDefault("cooldown.Default.zeituebrig", 0); saveConfig(); prefix = getConfig().getString("plugin.prefix"); } public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { if (cmd.getName().equalsIgnoreCase("gruppeninfo")) { sender.sendMessage(prefix + " Mit /gruppen kannst du alle 30 tage deinen Beruf/Gruppe aendern. mehr infos dazu findest du im tutorialbuch (/tutorial)"); return true; } if (cmd.getName().equalsIgnoreCase("gruppen")) { if(sender instanceof Player) { int cooldownTime = 2592000; reloadConfig(); if(getConfig().get("cooldown." + sender.getName() + ".zeituebrig") == null) { getConfig().set("cooldown." + sender.getName() + ".zeituebrig", 0); saveConfig(); } cooldowns.put(sender.getName(), getConfig().get("cooldown." + sender.getName() + ".zeituebrig")); //hier ist das Problem if(cooldowns.containsKey(sender.getName())) { long secondsleft = ((cooldowns.get(sender.getName())/1000)+cooldownTime) - (System.currentTimeMillis()/1000); long daysleft = secondsleft / 86400; if(secondsleft>0) { sender.sendMessage(prefix + "Du kannst erst in "+ (daysleft+1) +"§5 Tagen wieder Gruppe wechseln!"); return true; } } cooldowns.put(sender.getName(), System.currentTimeMillis()); getConfig().set("cooldown." + sender.getName() + ".zeituebrig", System.currentTimeMillis()); saveConfig(); Player player = (Player) sender; player.sendMessage(prefix + " waehle deine Gruppe! §8 Achtung du kannst sie erst in 30 Tagen wieder wechseln"); player.teleport(new Location(Bukkit.getWorld("Spawn"), 3000, 70, 3000)); return true; } else { sender.sendMessage(prefix + "diesen Command koennen nur spieler ausfuehren"); return true; } } return false; } } Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Joey Geschrieben 5. Mai 2017 Share Geschrieben 5. Mai 2017 Welchen Fehler gibt dir Eclipse den aus? Eine Möglichkeit wäre, dass getConfig().get("cooldown." + sender.getName() + ".zeituebrig"); dir keinen Long zurück gibt, sondern irgendwas anderes. Versuch es mal mit getConfig().getLong("cooldown." + sender.getName() + ".zeituebrig")); Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden