maintenance and player info packet cast fix

This commit is contained in:
ineanto 2023-06-19 15:08:23 +02:00
parent 584b34fd51
commit dee3f9b91c
10 changed files with 61 additions and 52 deletions

12
.gitignore vendored
View file

@ -27,18 +27,6 @@ replay_pid*
# Idea files # Idea files
*.iml *.iml
# Nicko first pass build files
core/target
v1_14_R1/target
v1_15_R1/target
v1_16_R1/target
v1_16_R2/target
v1_16_R3/target
v1_17_R1/target
v1_18_R1/target
v1_18_R2/target
v1_19_R1/target
# Idea Folder # Idea Folder
.idea .idea

23
docker-compose.yml Normal file
View file

@ -0,0 +1,23 @@
# Nicko's docker-compose.yml
# Used for debug and test purposes.
version: '3.1'
services:
db:
image: mariadb
restart: always
environment:
MARIADB_ROOT_PASSWORD: 12345
adminer:
image: adminer
restart: always
ports:
- "8080:8080"
redis:
image: redis
restart: always
ports:
- "6379:6379"

44
pom.xml
View file

@ -39,47 +39,52 @@
</repositories> </repositories>
<dependencies> <dependencies>
<!-- ProtocolLib --> <!--
MINECRAFT
-->
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.19.4-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency> <dependency>
<groupId>com.comphenix.protocol</groupId> <groupId>com.comphenix.protocol</groupId>
<artifactId>ProtocolLib</artifactId> <artifactId>ProtocolLib</artifactId>
<version>5.0.0-SNAPSHOT</version> <version>5.0.0-SNAPSHOT</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<!-- PlaceHolder API -->
<dependency> <dependency>
<groupId>me.clip</groupId> <groupId>me.clip</groupId>
<artifactId>placeholderapi</artifactId> <artifactId>placeholderapi</artifactId>
<version>2.11.2</version> <version>2.11.2</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<!-- Inventory Lib -->
<dependency> <dependency>
<groupId>xyz.xenondevs.invui</groupId> <groupId>xyz.xenondevs.invui</groupId>
<artifactId>invui</artifactId> <artifactId>invui</artifactId>
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
</dependency> </dependency>
<!-- AnvilGUI -->
<dependency> <dependency>
<groupId>net.wesjd</groupId> <groupId>net.wesjd</groupId>
<artifactId>anvilgui</artifactId> <artifactId>anvilgui</artifactId>
<version>1.6.3-SNAPSHOT</version> <version>1.6.3-SNAPSHOT</version>
</dependency> </dependency>
<!-- Google Guava (GSON) -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>31.1-jre</version>
<scope>provided</scope>
</dependency>
<!-- MockBukkit 1.19 (Bukkit Unit Tests) -->
<dependency> <dependency>
<groupId>com.github.seeseemelk</groupId> <groupId>com.github.seeseemelk</groupId>
<artifactId>MockBukkit-v1.19</artifactId> <artifactId>MockBukkit-v1.19</artifactId>
<version>2.29.0</version> <version>2.29.0</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<!-- MariaDB JDBC Driver -->
<!--
DATA
-->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
<dependency> <dependency>
<groupId>org.mariadb.jdbc</groupId> <groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId> <artifactId>mariadb-java-client</artifactId>
@ -95,24 +100,17 @@
<dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId> <groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId> <artifactId>jackson-core</artifactId>
<version>2.14.2</version> <version>2.15.2</version>
</dependency>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.19.4-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId> <groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId> <artifactId>jackson-dataformat-yaml</artifactId>
<version>2.14.2</version> <version>2.15.2</version>
</dependency> </dependency>
<!-- Redis -->
<dependency> <dependency>
<groupId>redis.clients</groupId> <groupId>redis.clients</groupId>
<artifactId>jedis</artifactId> <artifactId>jedis</artifactId>
<version>4.3.0</version> <version>4.4.3</version>
</dependency> </dependency>
</dependencies> </dependencies>

View file

@ -1,8 +1,8 @@
package xyz.atnrch.nicko.gui.admin; package xyz.atnrch.nicko.gui.admin;
import xyz.atnrch.nicko.gui.AdminGUI; import xyz.atnrch.nicko.gui.AdminGUI;
import xyz.atnrch.nicko.gui.items.admin.cache.CacheDetailed; import xyz.atnrch.nicko.gui.items.admin.cache.InvalidateSpecificEntry;
import xyz.atnrch.nicko.gui.items.admin.cache.CacheInvalidate; import xyz.atnrch.nicko.gui.items.admin.cache.InvalidateCompleteCache;
import xyz.atnrch.nicko.gui.items.admin.cache.CacheOverview; import xyz.atnrch.nicko.gui.items.admin.cache.CacheOverview;
import xyz.atnrch.nicko.gui.items.common.GoBack; import xyz.atnrch.nicko.gui.items.common.GoBack;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@ -20,8 +20,8 @@ public class CacheManagementGUI {
.setStructure("B # S A D") .setStructure("B # S A D")
.addIngredient('B', new GoBack(new AdminGUI(player).getGUI())) .addIngredient('B', new GoBack(new AdminGUI(player).getGUI()))
.addIngredient('S', new CacheOverview()) .addIngredient('S', new CacheOverview())
.addIngredient('A', new CacheInvalidate()) .addIngredient('A', new InvalidateCompleteCache())
.addIngredient('D', new CacheDetailed()) .addIngredient('D', new InvalidateSpecificEntry())
.build(); .build();
this.player = player; this.player = player;
} }

View file

@ -8,7 +8,7 @@ import xyz.xenondevs.invui.gui.ScrollGui;
import xyz.xenondevs.invui.gui.structure.Markers; import xyz.xenondevs.invui.gui.structure.Markers;
import xyz.xenondevs.invui.item.Item; import xyz.xenondevs.invui.item.Item;
import xyz.atnrch.nicko.NickoBukkit; import xyz.atnrch.nicko.NickoBukkit;
import xyz.atnrch.nicko.gui.items.admin.cache.SkinPlaceholder; import xyz.atnrch.nicko.gui.items.admin.cache.EntryPlaceholder;
import xyz.atnrch.nicko.gui.admin.CacheManagementGUI; import xyz.atnrch.nicko.gui.admin.CacheManagementGUI;
import xyz.atnrch.nicko.gui.items.common.ScrollDown; import xyz.atnrch.nicko.gui.items.common.ScrollDown;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@ -34,7 +34,7 @@ public class CacheDetailedGUI {
.collect(Collectors.toList()); .collect(Collectors.toList());
final List<Item> items = loadedSkins.stream() final List<Item> items = loadedSkins.stream()
.map(SkinPlaceholder::new) .map(EntryPlaceholder::new)
.collect(Collectors.toList()); .collect(Collectors.toList());
gui = ScrollGui.items(guiItemBuilder -> { gui = ScrollGui.items(guiItemBuilder -> {

View file

@ -7,8 +7,8 @@ import xyz.xenondevs.invui.item.impl.AsyncItem;
import java.util.UUID; import java.util.UUID;
public class SkinPlaceholder extends AsyncItem { public class EntryPlaceholder extends AsyncItem {
public SkinPlaceholder(String name) { public EntryPlaceholder(String name) {
super(new ItemBuilder(Material.PAINTING).setDisplayName("§7§oLoading..."), () -> { super(new ItemBuilder(Material.PAINTING).setDisplayName("§7§oLoading..."), () -> {
final String stringUUID = name.replaceAll("(.{8})(.{4})(.{4})(.{4})(.+)", "$1-$2-$3-$4-$5"); final String stringUUID = name.replaceAll("(.{8})(.{4})(.{4})(.{4})(.+)", "$1-$2-$3-$4-$5");
final UUID uuid = UUID.fromString(stringUUID); final UUID uuid = UUID.fromString(stringUUID);

View file

@ -9,8 +9,8 @@ import org.bukkit.event.inventory.ClickType;
import xyz.xenondevs.invui.item.builder.ItemBuilder; import xyz.xenondevs.invui.item.builder.ItemBuilder;
import xyz.xenondevs.invui.item.impl.SuppliedItem; import xyz.xenondevs.invui.item.impl.SuppliedItem;
public class CacheInvalidate extends SuppliedItem { public class InvalidateCompleteCache extends SuppliedItem {
public CacheInvalidate() { public InvalidateCompleteCache() {
super(() -> { super(() -> {
final ItemBuilder builder = new ItemBuilder(Material.TNT); final ItemBuilder builder = new ItemBuilder(Material.TNT);
builder.setDisplayName("§fInvalidate §6skin cache"); builder.setDisplayName("§fInvalidate §6skin cache");

View file

@ -6,8 +6,8 @@ import org.bukkit.event.inventory.ClickType;
import xyz.xenondevs.invui.item.builder.ItemBuilder; import xyz.xenondevs.invui.item.builder.ItemBuilder;
import xyz.xenondevs.invui.item.impl.SuppliedItem; import xyz.xenondevs.invui.item.impl.SuppliedItem;
public class CacheDetailed extends SuppliedItem { public class InvalidateSpecificEntry extends SuppliedItem {
public CacheDetailed() { public InvalidateSpecificEntry() {
super(() -> { super(() -> {
final ItemBuilder builder = new ItemBuilder(Material.PAPER); final ItemBuilder builder = new ItemBuilder(Material.PAPER);
builder.setDisplayName("§6Invalidate specific skin..."); builder.setDisplayName("§6Invalidate specific skin...");

View file

@ -41,10 +41,10 @@ public class WrapperPlayerServerPlayerInfo extends AbstractPacket {
} }
public List<PlayerInfoData> getData() { public List<PlayerInfoData> getData() {
return handle.getPlayerInfoDataLists().read(0); return handle.getPlayerInfoDataLists().read(1);
} }
public void setData(List<PlayerInfoData> value) { public void setData(List<PlayerInfoData> value) {
handle.getPlayerInfoDataLists().write(0, value); handle.getPlayerInfoDataLists().write(1, value);
} }
} }

View file

@ -3,13 +3,13 @@ package xyz.atnrch.nicko.test.storage;
import be.seeseemelk.mockbukkit.MockBukkit; import be.seeseemelk.mockbukkit.MockBukkit;
import be.seeseemelk.mockbukkit.ServerMock; import be.seeseemelk.mockbukkit.ServerMock;
import be.seeseemelk.mockbukkit.entity.PlayerMock; import be.seeseemelk.mockbukkit.entity.PlayerMock;
import org.junit.jupiter.api.*;
import xyz.atnrch.nicko.NickoBukkit; import xyz.atnrch.nicko.NickoBukkit;
import xyz.atnrch.nicko.config.DataSourceConfiguration;
import xyz.atnrch.nicko.i18n.Locale;
import xyz.atnrch.nicko.config.Configuration; import xyz.atnrch.nicko.config.Configuration;
import xyz.atnrch.nicko.config.DataSourceConfiguration;
import xyz.atnrch.nicko.disguise.ActionResult; import xyz.atnrch.nicko.disguise.ActionResult;
import xyz.atnrch.nicko.disguise.NickoProfile; import xyz.atnrch.nicko.disguise.NickoProfile;
import org.junit.jupiter.api.*; import xyz.atnrch.nicko.i18n.Locale;
import java.util.Optional; import java.util.Optional;