Compare commits
4
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c48d4f5c86 | ||
|
|
7f00bc104b | ||
|
|
133cebd1ec | ||
|
|
fc20c9a276 |
@@ -14,7 +14,7 @@ dependencies {
|
||||
compileOnly("com.gitlab.ruany:LiteBansAPI:0.6.1") // move to proxy
|
||||
compileOnly("org.apache.commons:commons-lang3:3.17.0") // needs an alternative, already removed from upstream api and will be removed in server
|
||||
compileOnly("net.luckperms:api:5.5") // Luckperms
|
||||
implementation("com.alttd.inventory_gui:InventoryGUI:1.1.1-SNAPSHOT")
|
||||
implementation("com.alttd.inventory_gui:InventoryGUI:1.1.5-SNAPSHOT")
|
||||
}
|
||||
|
||||
tasks {
|
||||
|
||||
@@ -116,7 +116,7 @@ public class Nicknames implements CommandExecutor, TabCompleter {
|
||||
sender.sendRichMessage(helpMessage(sender, HelpType.REVIEW));
|
||||
return;
|
||||
}
|
||||
NicknamesGui nicknamesGui = new NicknamesGui();
|
||||
NicknamesGui nicknamesGui = new NicknamesGui(player);
|
||||
ChatPlugin.getInstance().getServer().getPluginManager().registerEvents(nicknamesGui, ChatPlugin.getInstance());
|
||||
nicknamesGui.openInventory(player);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.alttd.chat.config.Config;
|
||||
import com.alttd.chat.database.Queries;
|
||||
import com.alttd.chat.events.NickEvent;
|
||||
import com.alttd.chat.objects.Nick;
|
||||
import com.alttd.chat.util.ALogger;
|
||||
import com.alttd.chat.util.Utility;
|
||||
import com.alttd.inventory_gui.click.GuiItem;
|
||||
import com.alttd.inventory_gui.gui.InventoryGui;
|
||||
@@ -37,19 +38,17 @@ public class NicknamesGui implements Listener {
|
||||
private final ChatPlugin plugin = ChatPlugin.getInstance();
|
||||
private final InventoryGui nicknamesGui;
|
||||
|
||||
//Inventory is shared between GUI users so actions one person does are replicated to the other GUI's
|
||||
public NicknamesGui() {
|
||||
public NicknamesGui(Player player) {
|
||||
nicknamesGui = InventoryGui.builder()
|
||||
.plugin(plugin)
|
||||
.title(Component.text("Nicknames GUI"))
|
||||
.rows(6)
|
||||
.build();
|
||||
currentPage = 1;
|
||||
setItems(currentPage);
|
||||
setItems(currentPage, player);
|
||||
}
|
||||
|
||||
//TODO create all pages and share those between instances so page changes don't affect others, but everything is still synchronized
|
||||
public void setItems(int currentPage) {
|
||||
public void setItems(int currentPage, Player player) {
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
@@ -65,8 +64,10 @@ public class NicknamesGui implements Listener {
|
||||
ItemStack playerSkull = createPlayerSkull(nick, Config.NICK_ITEM_LORE);
|
||||
nicknamesGui.getRoot().setItem(i % 27, GuiItem.clickable(playerSkull, inventoryClickEvent ->
|
||||
handleInventoryClick(nick, inventoryClickEvent, miniMessage, playerSkull)));
|
||||
ALogger.info("Added nick " + i + " to gui: " + nick.getUuid());
|
||||
i++;
|
||||
} else {
|
||||
ALogger.info("Reached end of nicknames gui page");
|
||||
hasNextPage = true;
|
||||
break;
|
||||
}
|
||||
@@ -77,7 +78,7 @@ public class NicknamesGui implements Listener {
|
||||
ItemStack itemStack = createGuiItem(Material.PAPER, "§bPrevious page",
|
||||
"§aCurrent page: %page%".replace("%page%", String.valueOf(currentPage)),
|
||||
"§aPrevious page: %previousPage%".replace("%previousPage%", String.valueOf(currentPage - 1)));
|
||||
GuiItem previousPage = GuiItem.clickable(itemStack, e -> setItems(currentPage - 1));
|
||||
GuiItem previousPage = GuiItem.clickable(itemStack, e -> setItems(currentPage - 1, player));
|
||||
nicknamesGui.getRoot().setItem(28, previousPage);
|
||||
}
|
||||
|
||||
@@ -85,20 +86,18 @@ public class NicknamesGui implements Listener {
|
||||
ItemStack itemStack = createGuiItem(Material.PAPER, "§bNext page",
|
||||
"§aCurrent page: %page%".replace("%page%", String.valueOf(currentPage)),
|
||||
"§aNext page: §b%nextPage%".replace("%nextPage%", String.valueOf(currentPage + 1)));
|
||||
GuiItem nextPage = GuiItem.clickable(itemStack, e -> setItems(currentPage + 1));
|
||||
GuiItem nextPage = GuiItem.clickable(itemStack, e -> setItems(currentPage + 1, player));
|
||||
nicknamesGui.getRoot().setItem(36, nextPage);
|
||||
}
|
||||
|
||||
nicknamesGui.render(player);
|
||||
}
|
||||
}.runTaskAsynchronously(ChatPlugin.getInstance());
|
||||
}
|
||||
|
||||
private static void handleInventoryClick(Nick nick, InventoryClickEvent inventoryClickEvent, MiniMessage miniMessage, ItemStack playerSkull) {
|
||||
private void handleInventoryClick(Nick nick, InventoryClickEvent inventoryClickEvent, MiniMessage miniMessage, ItemStack playerSkull) {
|
||||
final Player playerWhoClicked = (Player) inventoryClickEvent.getWhoClicked();
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(nick.getUuid());
|
||||
if (offlinePlayer.getName() == null) {
|
||||
playerWhoClicked.sendRichMessage(Config.NICK_PLAYER_NOT_ONLINE, Placeholder.parsed("player", getOfflinePlayerName(offlinePlayer)));
|
||||
return;
|
||||
}
|
||||
Component offlinePlayerName = miniMessage.deserialize(getOfflinePlayerName(offlinePlayer));
|
||||
if (!nick.hasRequest()) {
|
||||
playerWhoClicked.sendRichMessage(Config.NICK_ALREADY_HANDLED,
|
||||
@@ -113,7 +112,7 @@ public class NicknamesGui implements Listener {
|
||||
//TODO what do we do no click?
|
||||
}
|
||||
|
||||
private static void handleRightClickPlayerSkull(Nick nick, InventoryClickEvent inventoryClickEvent, OfflinePlayer offlinePlayer, Player playerWhoClicked, Component offlinePlayerName, ItemStack playerSkull) {
|
||||
private void handleRightClickPlayerSkull(Nick nick, InventoryClickEvent inventoryClickEvent, OfflinePlayer offlinePlayer, Player playerWhoClicked, Component offlinePlayerName, ItemStack playerSkull) {
|
||||
Queries.denyNewNickname(nick.getUuid());
|
||||
|
||||
String newNick = nick.getNewNick();
|
||||
@@ -154,10 +153,10 @@ public class NicknamesGui implements Listener {
|
||||
|
||||
ItemStack completedNickRequestItem = createCompletedNickRequestItem(offlinePlayerName, playerSkull);
|
||||
inventoryClickEvent.getInventory().setItem(inventoryClickEvent.getSlot(), completedNickRequestItem);
|
||||
playerWhoClicked.updateInventory();
|
||||
nicknamesGui.render(playerWhoClicked);
|
||||
}
|
||||
|
||||
private static void handleLeftClickPlayerSkull(Nick nick, InventoryClickEvent inventoryClickEvent, OfflinePlayer offlinePlayer, Player playerWhoClicked, Component offlinePlayerName, ItemStack playerSkull) {
|
||||
private void handleLeftClickPlayerSkull(Nick nick, InventoryClickEvent inventoryClickEvent, OfflinePlayer offlinePlayer, Player playerWhoClicked, Component offlinePlayerName, ItemStack playerSkull) {
|
||||
Queries.acceptNewNickname(nick.getUuid(), nick.getNewNick());
|
||||
|
||||
String newNick = nick.getNewNick();
|
||||
@@ -191,7 +190,7 @@ public class NicknamesGui implements Listener {
|
||||
|
||||
ItemStack completedNickRequestItem = createCompletedNickRequestItem(offlinePlayerName, playerSkull);
|
||||
inventoryClickEvent.getInventory().setItem(inventoryClickEvent.getSlot(), completedNickRequestItem);
|
||||
playerWhoClicked.updateInventory();
|
||||
nicknamesGui.render(playerWhoClicked);
|
||||
}
|
||||
|
||||
private static ItemStack createCompletedNickRequestItem(Component offlinePlayerName, ItemStack playerSkull) {
|
||||
|
||||
+2
-3
@@ -9,13 +9,12 @@ val nexusPass = providers.gradleProperty("alttdSnapshotPassword").get()
|
||||
|
||||
dependencyResolutionManagement {
|
||||
repositories {
|
||||
// mavenLocal()
|
||||
mavenLocal()
|
||||
mavenCentral()
|
||||
maven("https://repo.alttd.com/snapshots") // Altitude - Galaxy
|
||||
maven("https://oss.sonatype.org/content/groups/public/") // Adventure
|
||||
maven("https://oss.sonatype.org/content/repositories/snapshots/") // Minimessage
|
||||
maven("https://nexus.velocitypowered.com/repository/") // Velocity
|
||||
maven("https://nexus.velocitypowered.com/repository/maven-public/") // Velocity
|
||||
maven("https://repo.papermc.io/repository/maven-public/")
|
||||
maven("https://repo.spongepowered.org/maven") // Configurate
|
||||
maven("https://repo.extendedclip.com/content/repositories/placeholderapi/") // Papi
|
||||
maven("https://jitpack.io")
|
||||
|
||||
@@ -5,8 +5,8 @@ plugins {
|
||||
|
||||
dependencies {
|
||||
implementation(project(":api")) // API
|
||||
compileOnly("com.velocitypowered:velocity-api:3.1.0")
|
||||
annotationProcessor("com.velocitypowered:velocity-api:3.1.0")
|
||||
compileOnly("com.velocitypowered:velocity-api:3.5.0-SNAPSHOT")
|
||||
annotationProcessor("com.velocitypowered:velocity-api:3.5.0-SNAPSHOT")
|
||||
implementation("mysql:mysql-connector-java:8.0.33") // mysql
|
||||
implementation("org.spongepowered", "configurate-yaml", "4.2.0")
|
||||
compileOnly("net.kyori:adventure-text-minimessage:4.23.0")
|
||||
|
||||
@@ -5,7 +5,6 @@ import com.alttd.chat.util.Utility;
|
||||
import com.alttd.velocitychat.VelocityChat;
|
||||
import com.alttd.velocitychat.events.GlobalAdminChatEvent;
|
||||
import com.velocitypowered.api.command.CommandSource;
|
||||
import com.velocitypowered.api.event.PostOrder;
|
||||
import com.velocitypowered.api.event.Subscribe;
|
||||
import com.velocitypowered.api.proxy.Player;
|
||||
import net.kyori.adventure.text.ComponentLike;
|
||||
@@ -19,7 +18,7 @@ public class ChatListener {
|
||||
plugin = VelocityChat.getPlugin();
|
||||
}
|
||||
|
||||
@Subscribe(order = PostOrder.FIRST)
|
||||
@Subscribe(priority = 0)
|
||||
public void onGlobalStaffChat(GlobalAdminChatEvent event) {
|
||||
String senderName = Config.CONSOLENAME;
|
||||
String serverName = "Altitude";
|
||||
|
||||
@@ -11,7 +11,6 @@ import com.alttd.velocitychat.VelocityChat;
|
||||
import com.alttd.velocitychat.commands.vote_to_mute.ActiveVoteToMute;
|
||||
import com.alttd.velocitychat.data.ServerWrapper;
|
||||
import com.alttd.velocitychat.handlers.ServerHandler;
|
||||
import com.velocitypowered.api.event.PostOrder;
|
||||
import com.velocitypowered.api.event.Subscribe;
|
||||
import com.velocitypowered.api.event.connection.DisconnectEvent;
|
||||
import com.velocitypowered.api.event.connection.LoginEvent;
|
||||
@@ -34,7 +33,7 @@ import java.util.concurrent.TimeUnit;
|
||||
|
||||
public class ProxyPlayerListener {
|
||||
|
||||
@Subscribe(order = PostOrder.FIRST)
|
||||
@Subscribe(priority = 0)
|
||||
public void onPlayerLogin(LoginEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
UUID uuid = player.getUniqueId();
|
||||
@@ -57,7 +56,7 @@ public class ProxyPlayerListener {
|
||||
ServerHandler.addPlayerUUID(player.getUsername(), uuid);
|
||||
}
|
||||
|
||||
@Subscribe(order = PostOrder.LAST)
|
||||
@Subscribe(priority = 4)
|
||||
public void afterPlayerLogin(ServerPostConnectEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
RegisteredServer previousServer = event.getPreviousServer();
|
||||
|
||||
Reference in New Issue
Block a user