2019-06-10 02:47:29 +02:00
|
|
|
package com.songoda.ultimatestacker.gui;
|
|
|
|
|
2019-09-09 18:08:04 +02:00
|
|
|
import com.songoda.core.compatibility.CompatibleMaterial;
|
2019-09-03 22:38:00 +02:00
|
|
|
import com.songoda.core.gui.Gui;
|
|
|
|
import com.songoda.core.gui.GuiUtils;
|
2021-03-05 15:09:00 +01:00
|
|
|
import com.songoda.core.utils.TextUtils;
|
2020-08-25 01:01:11 +02:00
|
|
|
import com.songoda.ultimatestacker.UltimateStacker;
|
2019-06-10 02:47:29 +02:00
|
|
|
import com.songoda.ultimatestacker.convert.Convert;
|
|
|
|
import com.songoda.ultimatestacker.utils.Methods;
|
2019-09-03 22:38:00 +02:00
|
|
|
import org.bukkit.ChatColor;
|
2019-06-10 02:47:29 +02:00
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
|
2019-09-03 22:38:00 +02:00
|
|
|
public class GUIConvertWhat extends Gui {
|
2019-06-10 02:47:29 +02:00
|
|
|
|
2020-09-01 20:54:43 +02:00
|
|
|
private Convert convertFrom;
|
2019-06-10 02:47:29 +02:00
|
|
|
|
|
|
|
private boolean entities = true;
|
|
|
|
private boolean spawners = true;
|
|
|
|
|
2019-09-03 22:38:00 +02:00
|
|
|
public GUIConvertWhat(Convert convertFrom, Gui returnTo) {
|
|
|
|
super(returnTo);
|
|
|
|
this.setRows(1);
|
|
|
|
this.setTitle("What Do You Want To Convert?");
|
2019-06-10 02:47:29 +02:00
|
|
|
this.convertFrom = convertFrom;
|
|
|
|
|
2019-09-03 22:38:00 +02:00
|
|
|
if (convertFrom.canEntities()) {
|
2019-09-09 18:08:04 +02:00
|
|
|
this.setButton(0, GuiUtils.createButtonItem(CompatibleMaterial.STONE,
|
2019-09-03 22:38:00 +02:00
|
|
|
ChatColor.GRAY + "Stacked Entities",
|
|
|
|
entities ? ChatColor.GREEN + "Yes" : ChatColor.RED + "No"),
|
|
|
|
(event) -> toggleEntities());
|
2019-06-10 02:47:29 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
if (convertFrom.canSpawners()) {
|
2019-09-09 18:08:04 +02:00
|
|
|
this.setButton(1, GuiUtils.createButtonItem(CompatibleMaterial.STONE,
|
2019-09-03 22:38:00 +02:00
|
|
|
ChatColor.GRAY + "Stacked Spawners",
|
|
|
|
spawners ? ChatColor.GREEN + "Yes" : ChatColor.RED + "No"),
|
|
|
|
(event) -> toggleSpawners());
|
2019-06-10 02:47:29 +02:00
|
|
|
}
|
|
|
|
|
2019-09-09 18:08:04 +02:00
|
|
|
this.setButton(8, GuiUtils.createButtonItem(CompatibleMaterial.GREEN_WOOL, ChatColor.GREEN + "Run"),
|
2019-09-03 22:38:00 +02:00
|
|
|
(event) -> run(event.player));
|
2019-06-10 02:47:29 +02:00
|
|
|
|
2019-09-03 22:38:00 +02:00
|
|
|
}
|
2019-06-10 02:47:29 +02:00
|
|
|
|
2020-09-01 20:54:43 +02:00
|
|
|
private void toggleEntities() {
|
2019-09-03 22:38:00 +02:00
|
|
|
entities = !entities;
|
|
|
|
this.updateItem(0, ChatColor.GRAY + "Stacked Entities", entities ? ChatColor.GREEN + "Yes" : ChatColor.RED + "No");
|
|
|
|
}
|
2019-06-10 02:47:29 +02:00
|
|
|
|
2020-09-01 20:54:43 +02:00
|
|
|
private void toggleSpawners() {
|
2019-09-03 22:38:00 +02:00
|
|
|
spawners = !spawners;
|
|
|
|
this.updateItem(1, ChatColor.GRAY + "Stacked Spawners", spawners ? ChatColor.GREEN + "Yes" : ChatColor.RED + "No");
|
2019-06-10 02:47:29 +02:00
|
|
|
}
|
|
|
|
|
2020-09-01 20:54:43 +02:00
|
|
|
private void run(Player player) {
|
2019-09-03 22:38:00 +02:00
|
|
|
if (entities) {
|
|
|
|
convertFrom.convertEntities();
|
2023-02-04 14:48:13 +01:00
|
|
|
//UltimateStacker.getInstance().getEntityStackManager().tryAndLoadColdEntities();
|
2019-09-03 22:38:00 +02:00
|
|
|
}
|
|
|
|
if (spawners) {
|
|
|
|
convertFrom.convertSpawners();
|
|
|
|
}
|
2019-06-10 02:47:29 +02:00
|
|
|
|
2019-09-03 22:38:00 +02:00
|
|
|
convertFrom.disablePlugin();
|
|
|
|
exit();
|
2021-03-05 15:09:00 +01:00
|
|
|
player.sendMessage(TextUtils.formatText("&7Data converted successfully. Remove &6" + convertFrom.getName() + " &7and restart your server to continue."));
|
2019-06-10 02:47:29 +02:00
|
|
|
}
|
|
|
|
}
|