DeHertiChes
Minecrafter
Hey, ich habe ein plugin für meinen server gemacht mann soll alle 30 tage mit /gruppen zu einem bestimmten Punkt teleportiert werden.
Ich würde gerne einstellen das immer wenn der server stoppt, die laufenden cooldowns von allen Spielern in die config gespeichert werden. Und wenn der server wieder startet sollen alle wieder aufgerufen werden. Wie kann ich das machen? (bitte simpel erklärt oder mit Beispiel
das ist mein allererstes plugin)
Ich würde gerne einstellen das immer wenn der server stoppt, die laufenden cooldowns von allen Spielern in die config gespeichert werden. Und wenn der server wieder startet sollen alle wieder aufgerufen werden. Wie kann ich das machen? (bitte simpel erklärt oder mit Beispiel
Code:
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 HashMap<String, Long> cooldowns = new HashMap<String, Long>();
private 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", "§4[Gruppen]§5");
getConfig().options().copyDefaults(true);
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;
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());
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;
}
Zuletzt bearbeitet: