This commit is contained in:
Ajneb97 2025-07-20 17:40:04 -04:00
parent 4a6eae6a8e
commit c2be0ef391
15 changed files with 158 additions and 198 deletions

15
pom.xml
View file

@ -6,7 +6,7 @@
<groupId>pk.ajneb97</groupId> <groupId>pk.ajneb97</groupId>
<artifactId>PlayerKits2</artifactId> <artifactId>PlayerKits2</artifactId>
<version>1.0-SNAPSHOT</version> <version>1.18.3</version>
<properties> <properties>
<maven.compiler.source>21</maven.compiler.source> <maven.compiler.source>21</maven.compiler.source>
@ -37,7 +37,7 @@
<dependency> <dependency>
<groupId>org.spigotmc</groupId> <groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId> <artifactId>spigot-api</artifactId>
<version>1.21.7-R0.1-SNAPSHOT</version> <version>1.21.8-R0.1-SNAPSHOT</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<dependency> <dependency>
@ -67,14 +67,23 @@
</dependencies> </dependencies>
<build> <build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins> <plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.3.1</version>
</plugin>
<plugin> <plugin>
<artifactId>maven-compiler-plugin</artifactId> <artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version> <version>3.8.1</version>
<configuration> <configuration>
<source>1.8</source> <source>1.8</source>
<target>1.8</target> <target>1.8</target>
<release>8</release>
</configuration> </configuration>
</plugin> </plugin>
<plugin> <plugin>

View file

@ -140,6 +140,7 @@ public class PlayerKits2 extends JavaPlugin {
break; break;
case "1.21.6": case "1.21.6":
case "1.21.7": case "1.21.7":
case "1.21.8":
serverVersion = ServerVersion.v1_21_R5; serverVersion = ServerVersion.v1_21_R5;
break; break;
default: default:

View file

@ -61,7 +61,7 @@ public class ConfigsManager {
if(!inventoryConfigManager.reloadConfig()){ if(!inventoryConfigManager.reloadConfig()){
return false; return false;
} }
kitsConfigManager.reloadConfigs(); kitsConfigManager.loadConfigs();
if(plugin.getMySQLConnection() == null){ if(plugin.getMySQLConnection() == null){
plugin.reloadPlayerDataSaveTask(); plugin.reloadPlayerDataSaveTask();
} }

View file

@ -0,0 +1,66 @@
package pk.ajneb97.configs;
import pk.ajneb97.PlayerKits2;
import pk.ajneb97.configs.model.CommonConfig;
import java.io.File;
import java.util.ArrayList;
public abstract class DataFolderConfigManager {
protected String folderName;
protected PlayerKits2 plugin;
public DataFolderConfigManager(PlayerKits2 plugin, String folderName){
this.plugin = plugin;
this.folderName = folderName;
}
public void configure() {
createFolder();
loadConfigs();
}
public void createFolder(){
File folder;
try {
folder = new File(plugin.getDataFolder() + File.separator + folderName);
if(!folder.exists()){
folder.mkdirs();
createFiles();
}
} catch(SecurityException e) {
folder = null;
}
}
public CommonConfig getConfigFile(String pathName) {
CommonConfig commonConfig = new CommonConfig(pathName, plugin, folderName, true);
commonConfig.registerConfig();
return commonConfig;
}
public ArrayList<CommonConfig> getConfigs(){
ArrayList<CommonConfig> configs = new ArrayList<>();
String pathFile = plugin.getDataFolder() + File.separator + folderName;
File folder = new File(pathFile);
File[] listOfFiles = folder.listFiles();
for (File file : listOfFiles) {
if (file.isFile()) {
String pathName = file.getName();
CommonConfig commonConfig = new CommonConfig(pathName, plugin, folderName, true);
commonConfig.registerConfig();
configs.add(commonConfig);
}
}
return configs;
}
public abstract void createFiles();
public abstract void loadConfigs();
public abstract void saveConfigs();
}

View file

@ -2,6 +2,7 @@ package pk.ajneb97.configs;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import pk.ajneb97.configs.model.CommonConfig;
import pk.ajneb97.managers.KitItemManager; import pk.ajneb97.managers.KitItemManager;
import pk.ajneb97.model.inventory.ItemKitInventory; import pk.ajneb97.model.inventory.ItemKitInventory;
import pk.ajneb97.model.inventory.KitInventory; import pk.ajneb97.model.inventory.KitInventory;
@ -13,12 +14,12 @@ import java.util.List;
public class InventoryConfigManager { public class InventoryConfigManager {
private PlayerKits2 plugin; private PlayerKits2 plugin;
private CustomConfig configFile; private CommonConfig configFile;
public InventoryConfigManager(PlayerKits2 plugin){ public InventoryConfigManager(PlayerKits2 plugin){
this.plugin = plugin; this.plugin = plugin;
this.configFile = new CustomConfig("inventory.yml",plugin,null, false); this.configFile = new CommonConfig("inventory.yml",plugin,null, false);
this.configFile.registerConfig(); this.configFile.registerConfig();
if(this.configFile.isFirstTime() && OtherUtils.isLegacy()){ if(this.configFile.isFirstTime() && OtherUtils.isLegacy()){
checkAndFix(); checkAndFix();

View file

@ -2,6 +2,7 @@ package pk.ajneb97.configs;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import pk.ajneb97.configs.model.CommonConfig;
import pk.ajneb97.managers.KitItemManager; import pk.ajneb97.managers.KitItemManager;
import pk.ajneb97.model.Kit; import pk.ajneb97.model.Kit;
import pk.ajneb97.model.KitAction; import pk.ajneb97.model.KitAction;
@ -11,111 +12,25 @@ import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
public class KitsConfigManager { public class KitsConfigManager extends DataFolderConfigManager{
private ArrayList<CustomConfig> configFiles;
private String folderName;
private PlayerKits2 plugin;
public KitsConfigManager(PlayerKits2 plugin, String folderName){ public KitsConfigManager(PlayerKits2 plugin, String folderName){
this.plugin = plugin; super(plugin, folderName);
this.folderName = folderName;
this.configFiles = new ArrayList<>();
} }
public void configure() { @Override
createFolder(); public void createFiles() {
reloadConfigs(); new CommonConfig("diamond.yml",plugin,folderName,false).registerConfig();
} new CommonConfig("iron.yml",plugin,folderName,false).registerConfig();
new CommonConfig("food.yml",plugin,folderName,false).registerConfig();
public void reloadConfigs(){
this.configFiles = new ArrayList<>();
registerConfigFiles();
loadConfigs();
}
public void createFolder(){
File folder;
try {
folder = new File(plugin.getDataFolder() + File.separator + folderName);
if(!folder.exists()){
folder.mkdirs();
createDefaultConfigs();
}
} catch(SecurityException e) {
folder = null;
}
}
public void createDefaultConfigs(){
new CustomConfig("diamond.yml",plugin,folderName,false).registerConfig();
new CustomConfig("iron.yml",plugin,folderName,false).registerConfig();
new CustomConfig("food.yml",plugin,folderName,false).registerConfig();
}
public void saveConfigFiles() {
for(int i=0;i<configFiles.size();i++) {
configFiles.get(i).saveConfig();
}
}
public void registerConfigFiles(){
String path = plugin.getDataFolder() + File.separator + folderName;
File folder = new File(path);
File[] listOfFiles = folder.listFiles();
for (int i=0;i<listOfFiles.length;i++) {
if(listOfFiles[i].isFile()) {
String pathName = listOfFiles[i].getName();
CustomConfig config = new CustomConfig(pathName, plugin, folderName, true);
config.registerConfig();
configFiles.add(config);
}
}
}
public ArrayList<CustomConfig> getConfigs(){
return this.configFiles;
}
public boolean fileAlreadyRegistered(String pathName) {
for(int i=0;i<configFiles.size();i++) {
if(configFiles.get(i).getPath().equals(pathName)) {
return true;
}
}
return false;
}
public CustomConfig getConfigFile(String pathName) {
for(int i=0;i<configFiles.size();i++) {
if(configFiles.get(i).getPath().equals(pathName)) {
return configFiles.get(i);
}
}
return null;
}
public boolean registerConfigFile(String pathName) {
if(!fileAlreadyRegistered(pathName)) {
CustomConfig config = new CustomConfig(pathName, plugin, folderName, true);
config.registerConfig();
configFiles.add(config);
return true;
}else {
return false;
}
}
public void removeConfigKit(String path) {
for(int i=0;i<configFiles.size();i++) {
if(configFiles.get(i).getPath().equals(path)) {
configFiles.remove(i);
}
}
} }
@Override
public void loadConfigs(){ public void loadConfigs(){
ArrayList<Kit> kits = new ArrayList<Kit>(); ArrayList<Kit> kits = new ArrayList<>();
for(CustomConfig configFile : configFiles){
ArrayList<CommonConfig> configFiles = getConfigs();
for(CommonConfig configFile : configFiles){
FileConfiguration config = configFile.getConfig(); FileConfiguration config = configFile.getConfig();
String name = configFile.getPath().replace(".yml",""); String name = configFile.getPath().replace(".yml","");
@ -126,17 +41,14 @@ public class KitsConfigManager {
plugin.getKitsManager().setKits(kits); plugin.getKitsManager().setKits(kits);
} }
@Override
public void saveConfigs(){ public void saveConfigs(){
} }
public void saveConfig(Kit kit){ public void saveConfig(Kit kit){
String kitName = kit.getName(); String kitName = kit.getName();
CustomConfig kitConfig = getConfigFile(kitName+".yml"); CommonConfig kitConfig = getConfigFile(kitName+".yml");
if(kitConfig == null) {
registerConfigFile(kitName+".yml");
kitConfig = getConfigFile(kitName+".yml");
}
FileConfiguration config = kitConfig.getConfig(); FileConfiguration config = kitConfig.getConfig();
@ -217,15 +129,8 @@ public class KitsConfigManager {
} }
public void removeKitFile(String kitName){ public void removeKitFile(String kitName){
CustomConfig kitConfig = getConfigFile(kitName+".yml"); File file = new File(plugin.getDataFolder()+File.separator+folderName,kitName+".yml");
if(kitConfig == null){
return;
}
File file = new File(plugin.getDataFolder()+File.separator+folderName,kitConfig.getPath());
file.delete(); file.delete();
removeConfigKit(kitConfig.getPath());
} }
// mainPath must include a "." at the end // mainPath must include a "." at the end

View file

@ -2,6 +2,7 @@ package pk.ajneb97.configs;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import pk.ajneb97.configs.model.CommonConfig;
import pk.ajneb97.model.Kit; import pk.ajneb97.model.Kit;
import java.io.IOException; import java.io.IOException;
@ -12,7 +13,7 @@ import java.nio.file.Paths;
public class MainConfigManager { public class MainConfigManager {
private PlayerKits2 plugin; private PlayerKits2 plugin;
private CustomConfig configFile; private CommonConfig configFile;
//Options //Options
private Kit newKitDefault; private Kit newKitDefault;
@ -28,7 +29,7 @@ public class MainConfigManager {
public MainConfigManager(PlayerKits2 plugin){ public MainConfigManager(PlayerKits2 plugin){
this.plugin = plugin; this.plugin = plugin;
this.configFile = new CustomConfig("config.yml",plugin,null, false); this.configFile = new CommonConfig("config.yml",plugin,null, false);
this.configFile.registerConfig(); this.configFile.registerConfig();
checkUpdate(); checkUpdate();
} }

View file

@ -2,6 +2,7 @@ package pk.ajneb97.configs;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import pk.ajneb97.configs.model.CommonConfig;
import pk.ajneb97.managers.MessagesManager; import pk.ajneb97.managers.MessagesManager;
import java.io.IOException; import java.io.IOException;
@ -12,11 +13,11 @@ import java.nio.file.Paths;
public class MessagesConfigManager { public class MessagesConfigManager {
private PlayerKits2 plugin; private PlayerKits2 plugin;
private CustomConfig configFile; private CommonConfig configFile;
public MessagesConfigManager(PlayerKits2 plugin){ public MessagesConfigManager(PlayerKits2 plugin){
this.plugin = plugin; this.plugin = plugin;
this.configFile = new CustomConfig("messages.yml",plugin,null, false); this.configFile = new CommonConfig("messages.yml",plugin,null, false);
this.configFile.registerConfig(); this.configFile.registerConfig();
checkUpdate(); checkUpdate();
} }

View file

@ -2,85 +2,56 @@ package pk.ajneb97.configs;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import pk.ajneb97.configs.model.CommonConfig;
import pk.ajneb97.model.PlayerData; import pk.ajneb97.model.PlayerData;
import pk.ajneb97.model.PlayerDataKit; import pk.ajneb97.model.PlayerDataKit;
import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.UUID; import java.util.UUID;
public class PlayersConfigManager { public class PlayersConfigManager extends DataFolderConfigManager{
private String folderName;
private PlayerKits2 plugin;
public PlayersConfigManager(PlayerKits2 plugin, String folderName){ public PlayersConfigManager(PlayerKits2 plugin, String folderName){
this.plugin = plugin; super(plugin, folderName);
this.folderName = folderName;
} }
public void configure() { @Override
createFolder(); public void createFiles() {
loadConfigs();
}
public void createFolder(){
File folder;
try {
folder = new File(plugin.getDataFolder() + File.separator + folderName);
if(!folder.exists()){
folder.mkdirs();
}
} catch(SecurityException e) {
folder = null;
}
}
public CustomConfig getConfigFile(String pathName) {
CustomConfig config = new CustomConfig(pathName, plugin, folderName, true);
config.registerConfig();
return config;
} }
@Override
public void loadConfigs(){ public void loadConfigs(){
Map<UUID, PlayerData> players = new HashMap<>(); Map<UUID, PlayerData> players = new HashMap<>();
String path = plugin.getDataFolder() + File.separator + folderName; ArrayList<CommonConfig> configs = getConfigs();
File folder = new File(path); for(CommonConfig commonConfig : configs){
File[] listOfFiles = folder.listFiles(); FileConfiguration config = commonConfig.getConfig();
for (File file : listOfFiles) { String uuidString = commonConfig.getPath().replace(".yml", "");
if (file.isFile()) { String name = config.getString("name");
String pathName = file.getName(); ArrayList<PlayerDataKit> playerDataKits = new ArrayList<>();
CustomConfig configFile = new CustomConfig(pathName, plugin, folderName, true);
configFile.registerConfig();
FileConfiguration config = configFile.getConfig(); if (config.contains("kits")) {
String uuidString = configFile.getPath().replace(".yml", ""); for (String key : config.getConfigurationSection("kits").getKeys(false)) {
String name = config.getString("name"); long cooldown = config.getLong("kits." + key + ".cooldown");
ArrayList<PlayerDataKit> playerDataKits = new ArrayList<>(); boolean oneTime = config.getBoolean("kits." + key + ".one_time");
boolean bought = config.getBoolean("kits." + key + ".bought");
if (config.contains("kits")) { PlayerDataKit playerDataKit = new PlayerDataKit(key);
for (String key : config.getConfigurationSection("kits").getKeys(false)) { playerDataKit.setCooldown(cooldown);
long cooldown = config.getLong("kits." + key + ".cooldown"); playerDataKit.setOneTime(oneTime);
boolean oneTime = config.getBoolean("kits." + key + ".one_time"); playerDataKit.setBought(bought);
boolean bought = config.getBoolean("kits." + key + ".bought");
PlayerDataKit playerDataKit = new PlayerDataKit(key); playerDataKits.add(playerDataKit);
playerDataKit.setCooldown(cooldown);
playerDataKit.setOneTime(oneTime);
playerDataKit.setBought(bought);
playerDataKits.add(playerDataKit);
}
} }
UUID uuid = UUID.fromString(uuidString);
PlayerData playerData = new PlayerData(uuid, name);
playerData.setKits(playerDataKits);
players.put(uuid, playerData);
} }
UUID uuid = UUID.fromString(uuidString);
PlayerData playerData = new PlayerData(uuid, name);
playerData.setKits(playerDataKits);
players.put(uuid, playerData);
} }
plugin.getPlayerDataManager().setPlayers(players); plugin.getPlayerDataManager().setPlayers(players);
@ -88,7 +59,7 @@ public class PlayersConfigManager {
public void saveConfig(PlayerData playerData){ public void saveConfig(PlayerData playerData){
String playerName = playerData.getName(); String playerName = playerData.getName();
CustomConfig playerConfig = getConfigFile(playerData.getUuid()+".yml"); CommonConfig playerConfig = getConfigFile(playerData.getUuid()+".yml");
FileConfiguration config = playerConfig.getConfig(); FileConfiguration config = playerConfig.getConfig();
config.set("name", playerName); config.set("name", playerName);
@ -104,6 +75,7 @@ public class PlayersConfigManager {
playerConfig.saveConfig(); playerConfig.saveConfig();
} }
@Override
public void saveConfigs(){ public void saveConfigs(){
Map<UUID, PlayerData> players = plugin.getPlayerDataManager().getPlayers(); Map<UUID, PlayerData> players = plugin.getPlayerDataManager().getPlayers();
boolean isMySQL = plugin.getConfigsManager().getMainConfigManager().isMySQL(); boolean isMySQL = plugin.getConfigsManager().getMainConfigManager().isMySQL();

View file

@ -1,12 +1,14 @@
package pk.ajneb97.configs; package pk.ajneb97.configs.model;
import org.bukkit.configuration.InvalidConfigurationException; import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.configuration.file.YamlConfiguration;
import pk.ajneb97.PlayerKits2; import pk.ajneb97.PlayerKits2;
import java.io.*;
public class CustomConfig { import java.io.File;
import java.io.IOException;
public class CommonConfig {
private String fileName; private String fileName;
private FileConfiguration fileConfiguration = null; private FileConfiguration fileConfiguration = null;
@ -17,7 +19,7 @@ public class CustomConfig {
private boolean newFile; private boolean newFile;
private boolean isFirstTime; private boolean isFirstTime;
public CustomConfig(String fileName, PlayerKits2 plugin, String folderName, boolean newFile){ public CommonConfig(String fileName, PlayerKits2 plugin, String folderName, boolean newFile){
this.fileName = fileName; this.fileName = fileName;
this.plugin = plugin; this.plugin = plugin;
this.newFile = newFile; this.newFile = newFile;

View file

@ -1,7 +1,6 @@
package pk.ajneb97.managers; package pk.ajneb97.managers;
import me.clip.placeholderapi.PlaceholderAPI; import me.clip.placeholderapi.PlaceholderAPI;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.inventory.meta.ItemMeta;
@ -98,11 +97,7 @@ public class InventoryRequirementsManager {
public void requirementsInventoryBuy(InventoryPlayer inventoryPlayer){ public void requirementsInventoryBuy(InventoryPlayer inventoryPlayer){
Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName()); Kit kit = plugin.getKitsManager().getKitByName(inventoryPlayer.getKitName());
KitRequirements requirements = kit.getRequirements();
DependencyManager dependencyManager = plugin.getDependencyManager();
boolean isPlaceholderAPI = dependencyManager.isPlaceholderAPI();
Player player = inventoryPlayer.getPlayer(); Player player = inventoryPlayer.getPlayer();
FileConfiguration messages = plugin.getConfigsManager().getMessagesConfigManager().getConfig();
MessagesManager msgManager = plugin.getMessagesManager(); MessagesManager msgManager = plugin.getMessagesManager();
//Buy - Unlock //Buy - Unlock
@ -110,6 +105,11 @@ public class InventoryRequirementsManager {
PlayerKitsMessageResult result = kitsManager.giveKit(player,inventoryPlayer.getKitName(), PlayerKitsMessageResult result = kitsManager.giveKit(player,inventoryPlayer.getKitName(),
new GiveKitInstructions(false,true,false,false)); new GiveKitInstructions(false,true,false,false));
if(!result.isError()){ if(!result.isError()){
if(plugin.getConfigsManager().getMainConfigManager().isCloseInventoryOnClaim()){
player.closeInventory();
return;
}
//Everything is good, open previous inventory. //Everything is good, open previous inventory.
requirementsInventoryCancel(inventoryPlayer); requirementsInventoryCancel(inventoryPlayer);
}else{ }else{

View file

@ -111,7 +111,7 @@ public class MigrationManager {
return; return;
} }
kitsConfigManager.reloadConfigs(); kitsConfigManager.loadConfigs();
plugin.getVerifyManager().verify(); plugin.getVerifyManager().verify();
} }

View file

@ -13,10 +13,7 @@ import pk.ajneb97.managers.MessagesManager;
import pk.ajneb97.model.Kit; import pk.ajneb97.model.Kit;
import pk.ajneb97.model.inventory.InventoryPlayer; import pk.ajneb97.model.inventory.InventoryPlayer;
import pk.ajneb97.model.item.KitItem; import pk.ajneb97.model.item.KitItem;
import pk.ajneb97.utils.InventoryItem; import pk.ajneb97.utils.*;
import pk.ajneb97.utils.InventoryUtils;
import pk.ajneb97.utils.ItemUtils;
import pk.ajneb97.utils.OtherUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -87,7 +84,8 @@ public class InventoryEditKitItemsManager {
} }
public void clickOffHand(InventoryPlayer inventoryPlayer, Inventory inv, ItemStack clickedItem, int clickedSlot){ public void clickOffHand(InventoryPlayer inventoryPlayer, Inventory inv, ItemStack clickedItem, int clickedSlot){
if(Bukkit.getVersion().contains("1.8")){ ServerVersion serverVersion = PlayerKits2.serverVersion;
if(!serverVersion.serverVersionGreaterEqualThan(serverVersion,ServerVersion.v1_9_R1)) {
inventoryPlayer.getPlayer().sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&cOffhand only works on 1.9+.")); inventoryPlayer.getPlayer().sendMessage(MessagesManager.getColoredMessage(PlayerKits2.prefix+"&cOffhand only works on 1.9+."));
return; return;
} }

View file

@ -6,6 +6,7 @@ import org.bukkit.Material;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import pk.ajneb97.PlayerKits2;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
@ -13,7 +14,8 @@ import java.util.Arrays;
public class PlayerUtils { public class PlayerUtils {
public static ItemStack[] getAllInventoryContents(Player player){ public static ItemStack[] getAllInventoryContents(Player player){
if(Bukkit.getVersion().contains("1.8")) { ServerVersion serverVersion = PlayerKits2.serverVersion;
if(!serverVersion.serverVersionGreaterEqualThan(serverVersion,ServerVersion.v1_9_R1)) {
ItemStack[] contents = new ItemStack[40]; ItemStack[] contents = new ItemStack[40];
int slot = 0; int slot = 0;
@ -36,7 +38,9 @@ public class PlayerUtils {
public static int getUsedSlots(Player player){ public static int getUsedSlots(Player player){
//ItemStack[] contents = getAllInventoryContents(player); //ItemStack[] contents = getAllInventoryContents(player);
ItemStack[] contents = null; ItemStack[] contents = null;
if(Bukkit.getVersion().contains("1.8")) { ServerVersion serverVersion = PlayerKits2.serverVersion;
if(!serverVersion.serverVersionGreaterEqualThan(serverVersion,ServerVersion.v1_9_R1)) {
// 1.8
contents = player.getInventory().getContents(); contents = player.getInventory().getContents();
}else{ }else{
contents = player.getInventory().getStorageContents(); contents = player.getInventory().getStorageContents();

View file

@ -1,5 +1,5 @@
main: pk.ajneb97.PlayerKits2 main: pk.ajneb97.PlayerKits2
version: 1.18.2 version: ${project.version}
name: PlayerKits2 name: PlayerKits2
api-version: 1.13 api-version: 1.13
softdepend: [Vault,PlaceholderAPI] softdepend: [Vault,PlaceholderAPI]