Dateien nach "src/main/java/de/viper/survivalplus/tasks" hochladen
This commit is contained in:
45
src/main/java/de/viper/survivalplus/tasks/AutoClearTask.java
Normal file
45
src/main/java/de/viper/survivalplus/tasks/AutoClearTask.java
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
package de.viper.survivalplus.tasks;
|
||||||
|
|
||||||
|
import de.viper.survivalplus.SurvivalPlus;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.configuration.file.FileConfiguration;
|
||||||
|
import org.bukkit.entity.Item;
|
||||||
|
|
||||||
|
public class AutoClearTask implements Runnable {
|
||||||
|
|
||||||
|
private final SurvivalPlus plugin;
|
||||||
|
|
||||||
|
public AutoClearTask(SurvivalPlus plugin) {
|
||||||
|
this.plugin = plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
FileConfiguration lang = plugin.getLangConfig();
|
||||||
|
|
||||||
|
// Vorwarnung
|
||||||
|
String warningMessage = ChatColor.translateAlternateColorCodes('&',
|
||||||
|
lang.getString("autoclear.warning", "&e&lAchtung! &rIn 10 Sekunden werden alle Items gelöscht!"));
|
||||||
|
Bukkit.broadcastMessage(warningMessage);
|
||||||
|
|
||||||
|
// Nach 10 Sekunden: Items löschen
|
||||||
|
Bukkit.getScheduler().runTaskLater(plugin, () -> {
|
||||||
|
int totalRemoved = 0;
|
||||||
|
for (World world : Bukkit.getWorlds()) {
|
||||||
|
for (Item item : world.getEntitiesByClass(Item.class)) {
|
||||||
|
item.remove();
|
||||||
|
totalRemoved++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Bestätigung
|
||||||
|
String resultMessage = ChatColor.translateAlternateColorCodes('&',
|
||||||
|
lang.getString("autoclear.cleared", "&c&l%count% Items wurden automatisch gelöscht."));
|
||||||
|
resultMessage = resultMessage.replace("%count%", String.valueOf(totalRemoved));
|
||||||
|
Bukkit.broadcastMessage(resultMessage);
|
||||||
|
|
||||||
|
}, 20L * 10); // 10 Sekunden Verzögerung
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user