diff --git a/.gitignore b/.gitignore
index ac1abf2..9470ce0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,8 +9,6 @@ api/
libs/
*.iml
-gradle-wrapper.properties
-gradle/
.gradle/
*.lock
diff --git a/build.gradle b/build.gradle
index bca1474..1316f14 100644
--- a/build.gradle
+++ b/build.gradle
@@ -2,7 +2,7 @@ plugins {
id 'java'
id 'maven-publish'
id "com.github.johnrengelman.shadow" version "7.1.2"
- id("io.papermc.paperweight.userdev") version "1.3.5"
+ id "io.papermc.paperweight.userdev" version "1.3.5"
}
apply plugin: "java"
@@ -42,6 +42,12 @@ repositories {
maven {
url = uri('https://repo.maven.apache.org/maven2/')
}
+ maven {
+ url = 'https://repo.extendedclip.com/content/repositories/placeholderapi/'
+ }
+ maven {
+ url = 'https://repo.citizensnpcs.co/'
+ }
mavenCentral()
}
@@ -65,12 +71,14 @@ dependencies {
compileOnly 'net.essentialsx:EssentialsX:2.19.4'
compileOnly 'com.fastasyncworldedit:FastAsyncWorldEdit-Core:2.0.1'
compileOnly 'com.fastasyncworldedit:FastAsyncWorldEdit-Bukkit:2.0.1'
+ compileOnly 'me.clip:placeholderapi:2.11.1'
+ compileOnly 'net.citizensnpcs:citizens-main:2.0.29-SNAPSHOT'
compileOnly fileTree(dir: 'libs', include: '*.jar')
paperweightDevelopmentBundle("io.papermc.paper:dev-bundle:1.18.2-R0.1-SNAPSHOT")
}
group = 'gq.unurled'
-version = '0.4.6'
+version = '0.4.8'
description = 'Raxen'
java.sourceCompatibility = JavaVersion.VERSION_17
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000..7454180
Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/src/main/java/gq/unurled/raxen/Raxen.java b/src/main/java/gq/unurled/raxen/Raxen.java
index a8345bf..9fadbf0 100644
--- a/src/main/java/gq/unurled/raxen/Raxen.java
+++ b/src/main/java/gq/unurled/raxen/Raxen.java
@@ -4,24 +4,22 @@ import com.comphenix.protocol.ProtocolLibrary;
import com.comphenix.protocol.ProtocolManager;
import gq.unurled.raxen.config.Config;
import gq.unurled.raxen.config.PlayerConfig;
-import gq.unurled.raxen.manager.*;
-import gq.unurled.raxen.utils.LuckPerm;
+import gq.unurled.raxen.manager.Manager;
import gq.unurled.raxen.utils.Reload;
-import gq.unurled.raxen.utils.Vault;
import lombok.Getter;
-import net.kyori.adventure.text.TextComponent;
+import org.bukkit.Bukkit;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.logging.Logger;
-import static gq.unurled.raxen.utils.Utils.colorTextComp;
+import static gq.unurled.raxen.utils.Utils.colorComp;
public final class Raxen extends JavaPlugin {
- private static final TextComponent prefix = colorTextComp("Rx> ");
+ private static final String prefix = "Rx> ";
@Getter
- private static String version = "0.4.7";
+ private static String version = "0.4.8";
private final PluginManager pm = getServer().getPluginManager();
private static Raxen plugin;
@@ -29,87 +27,59 @@ public final class Raxen extends JavaPlugin {
private static Logger logger;
private static Config config;
- private static WorldManager worldManager;
- @Getter
- private static StorageManager storageManager;
- private static PlayerManager playerManager;
private static PlayerConfig playerConfig;
- private static ListenerManager listenerManager;
- @Getter
- private static CommandManager commandManager;
- @Getter
- private gq.unurled.raxen.manager.ProtocolManager protoManager;
- @Getter
- private ItemManager itemManager;
- @Getter
- private ResourcePackManager resourcePackManager;
- @Getter
- private LootManager lootManager;
-
@Getter
private ProtocolManager protocolManager;
+
@Getter
- public LuckPerm luckPerm;
- @Getter
- public Vault vault;
+ private Manager manager;
@Override
public void onEnable() {
plugin = this;
logger = getLogger();
version = plugin.getDescription().getVersion();
+ manager = new Manager();
+ manager.set(plugin);
- //Config and storage sruff
- config = new Config(this);
- worldManager = new WorldManager(this);
- storageManager = new StorageManager(this);
+ // Config
+ config = new Config(plugin);
- //Managers
- itemManager = new ItemManager(this);
- playerManager = new PlayerManager(this);
- listenerManager = new ListenerManager(this);
- commandManager = new CommandManager(this);
protocolManager = ProtocolLibrary.getProtocolManager();
- protoManager = new gq.unurled.raxen.manager.ProtocolManager(this);
- resourcePackManager = new ResourcePackManager(this);
- lootManager = new LootManager(this);
- playerConfig = new PlayerConfig(this);
- luckPerm = new LuckPerm(this);
- luckPerm.register();
- vault = new Vault(this);
+ playerConfig = new PlayerConfig(plugin);
//register Commands and Events
registerCommands();
registerEvents();
- getServer().getConsoleSender().sendMessage(colorTextComp(prefix +"Server Started Successfully!"));
+ Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Server Started Successfully!"));
- listenerManager.getServerPingEvent().setLoading(false);
+ manager.getListenerManager().getServerPingEvent().setLoading(false);
}
private void registerCommands() {
- commandManager.register();
+ manager.getCommandManager().register();
- getServer().getConsoleSender().sendMessage(colorTextComp(prefix +"Commands Registered!"));
+ Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Commands Registered!"));
}
private void registerEvents() {
- listenerManager.register();
+ manager.getListenerManager().register();
- getServer().getConsoleSender().sendMessage(colorTextComp(prefix +"Events Registered!"));
+ Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Events Registered!"));
}
@Override
public void onDisable() {
- listenerManager.getServerPingEvent().setLoading(true);
+ manager.getListenerManager().getServerPingEvent().setLoading(true);
Reload.kickAll();
playerConfig.close();
- getServer().getConsoleSender().sendMessage(colorTextComp(prefix +"Server Stopped Successfully!"));
+ Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Server Stopped Successfully!"));
}
public static Logger getPluginLogger() {
@@ -124,14 +94,10 @@ public final class Raxen extends JavaPlugin {
return plugin;
}
- public static TextComponent getPrefix() {
+ public static String getPrefix() {
return prefix;
}
- public static PlayerManager getPlayerManager() {
- return playerManager;
- }
-
public static PlayerConfig getPlayerConfig() {
return playerConfig;
}
diff --git a/src/main/java/gq/unurled/raxen/commands/RaxenCommand.java b/src/main/java/gq/unurled/raxen/commands/RaxenCommand.java
index b451fa3..b9ae606 100644
--- a/src/main/java/gq/unurled/raxen/commands/RaxenCommand.java
+++ b/src/main/java/gq/unurled/raxen/commands/RaxenCommand.java
@@ -1,8 +1,7 @@
package gq.unurled.raxen.commands;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.manager.StorageManager;
-import net.kyori.adventure.text.Component;
+import gq.unurled.raxen.manager.entity.StorageManager;
import net.kyori.adventure.text.TextComponent;
import net.kyori.adventure.text.event.ClickEvent;
import org.bukkit.command.Command;
@@ -29,7 +28,7 @@ public class RaxenCommand implements TabExecutor {
if(sender instanceof Player) {
Player player = (Player) sender;
if(!(player.hasPermission("raxen."))) {
- msgPlayer(player, Raxen.getPrefix().append(colorTextComp("You can't execute this command. Insufficient permission.")));
+ msgPlayer(player, coloredString(Raxen.getPrefix()) + colorTextComp("You can't execute this command. Insufficient permission."));
}
switch (args.length) {
case 0 -> msgPl(player, 0);
@@ -37,13 +36,13 @@ public class RaxenCommand implements TabExecutor {
switch (args[0]) {
case "mongodb", "mongo", "MONGODB", "MONGO" -> {
//print info about connection
- sender.sendMessage(Raxen.getPrefix().append(colorTextComp("Printing About Raxen's MongoDB connection...")));
- msgPlayer(player, Raxen.getPrefix()
- .append(colorTextComp("---------------------------------------------")));
+ sender.sendMessage(coloredString(Raxen.getPrefix()) + colorTextComp("Printing About Raxen's MongoDB connection..."));
+ msgPlayer(player, coloredString(Raxen.getPrefix()) +
+ colorTextComp("---------------------------------------------"));
msgPlayer(player, colorTextComp("MONGO DB"));
- msgPlayer(player, StorageManager.getMongo().getMongoClient().getClusterDescription().toString());
- msgPlayer(player, StorageManager.getMongo().getMongoDatabase().getName());
- msgPlayer(player, StorageManager.getMongo().getMongoCollection().getNamespace().toString());
+ msgPlayer(player, StorageManager.getMongodb().getMongoClient().getClusterDescription().toString());
+ msgPlayer(player, StorageManager.getMongodb().getMongoDatabase().getName());
+ msgPlayer(player, StorageManager.getMongodb().getMongoCollection().getNamespace().toString());
msgPlayer(player, "---------------------------------------------");
}
case "v", "version", "ver" -> {
@@ -60,37 +59,37 @@ public class RaxenCommand implements TabExecutor {
log(String.valueOf(args.length));
switch (args.length) {
case 0 -> {
- msgSender(sender, Raxen.getPrefix() + colorString("Printing About Raxen..."),
- colorString("---------------------------------------------"),
- colorString(" Raxen "),
- colorString(" - Version: " + Raxen.getVersion()),
- colorString(" - Author: Un&eurled"));
- TextComponent txt = Component.text(colorString(" - Website: https://unurled.gq"));
+ msgSender(sender, Raxen.getPrefix() + "Printing About Raxen...",
+ "---------------------------------------------",
+ " Raxen ",
+ " - Version: " + Raxen.getVersion(),
+ " - Author: Unurled");
+ TextComponent txt = colorTextComp(" - Website: https://unurled.gq");
sender.sendMessage(txt);
- sender.sendMessage(colorString("---------------------------------------------"));
+ sender.sendMessage(coloredString("---------------------------------------------"));
return true;
}
case 1 -> {
switch (args[0]) {
case "mongodb", "mongo", "MONGODB", "MONGO" -> {
//print info about connection
- sender.sendMessage(Raxen.getPrefix() + colorString("Printing About Raxen's MongoDB connection..."));
- sender.sendMessage(colorString("---------------------------------------------"), colorString("MONGO DB"));
- sender.sendMessage(StorageManager.getMongo().getMongoClient().getClusterDescription().toString());
- sender.sendMessage(StorageManager.getMongo().getMongoDatabase().getName());
- sender.sendMessage(StorageManager.getMongo().getMongoCollection().getNamespace().toString());
- sender.sendMessage(colorString("---------------------------------------------"));
+ msgSender(sender, Raxen.getPrefix() + "Printing About Raxen's MongoDB connection...",
+ "---------------------------------------------" + "MONGO DB");
+ sender.sendMessage(StorageManager.getMongodb().getMongoClient().getClusterDescription().toString());
+ sender.sendMessage(StorageManager.getMongodb().getMongoDatabase().getName());
+ sender.sendMessage(StorageManager.getMongodb().getMongoCollection().getNamespace().toString());
+ sender.sendMessage(coloredString("---------------------------------------------"));
return true;
}
case "v", "version", "ver" -> {
- sender.sendMessage(Raxen.getPrefix() + colorString("Printing About Raxen..."),
- colorString("---------------------------------------------"),
- colorString(" Raxen "),
- colorString(" - Version: " + Raxen.getVersion()),
- colorString(" - Author: Un&eurled"));
- TextComponent txt= Component.text(colorString(" - Website: https://unurled.gq"));
+ msgSender(sender, Raxen.getPrefix() + "Printing About Raxen...",
+ "---------------------------------------------",
+ " Raxen ",
+ " - Version: " + Raxen.getVersion(),
+ " - Author: Un&eurled");
+ TextComponent txt=colorTextComp(" - Website: https://unurled.gq");
sender.sendMessage(txt);
- sender.sendMessage(colorString("---------------------------------------------"));
+ sender.sendMessage(coloredString("---------------------------------------------"));
return true;
}
case "hemlp", "?", "h" ->
diff --git a/src/main/java/gq/unurled/raxen/commands/admin/NbtCommand.java b/src/main/java/gq/unurled/raxen/commands/admin/NbtCommand.java
index 1691a9f..0d78ab0 100644
--- a/src/main/java/gq/unurled/raxen/commands/admin/NbtCommand.java
+++ b/src/main/java/gq/unurled/raxen/commands/admin/NbtCommand.java
@@ -18,8 +18,8 @@ import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
import java.util.List;
+import static gq.unurled.raxen.components.player.PlayerUtils.updateSkills;
import static gq.unurled.raxen.utils.Items.attributes;
-import static gq.unurled.raxen.utils.Skills.updateSkills;
import static gq.unurled.raxen.utils.Utils.*;
public class NbtCommand implements TabExecutor {
@@ -38,11 +38,11 @@ public class NbtCommand implements TabExecutor {
}
Player player = (Player) sender;
if(player.getInventory().getItemInMainHand().getType() == Material.AIR || player.getInventory().getItemInMainHand() == null) {
- msgPlayer(player,colorString("You must hold an Item in hand."));
+ msgPlayer(player,colorTextComp("You must hold an Item in hand."));
return true;
}
switch (args.length) {
- case 0, 1 -> msgPlayer(player, colorString("You must specify an nbt and an int."));
+ case 0, 1 -> msgPlayer(player, colorTextComp("You must specify an nbt and an int."));
case 2 -> {
debug(main, "'" + args[0] + "'", "'" + args[1] + "'");
ItemStack it = player.getInventory().getItemInMainHand();
@@ -70,8 +70,8 @@ public class NbtCommand implements TabExecutor {
}
}
if (!ever) {
- lore.add(Component.text(colorString("Attributes:")));
- lore.add(Component.text(colorString(attributes(args[0]) + ": " + (Integer.parseInt(args[1]) + a))));
+ lore.add(colorTextComp("Attributes:"));
+ lore.add(colorTextComp(attributes(args[0]) + ": " + (Integer.parseInt(args[1]) + a)));
}
itm.lore(lore);
it.setItemMeta(itm);
@@ -90,7 +90,7 @@ public class NbtCommand implements TabExecutor {
attributes.addStrength(player, nbti.getInteger("STRENGTH"));
}
it = nbti.getItem();
- msgPlayer(player, Raxen.getPrefix() + colorString("You successfully added the nbt " + attributes(args[0]) + "with " + args[1] + "."));
+ msgPlayer(player, colorTextComp(Raxen.getPrefix() + "You successfully added the nbt " + attributes(args[0]) + "with " + args[1] + "."));
updateSkills(main, player);
player.getInventory().setItem(player.getInventory().getHeldItemSlot(), it);
}
diff --git a/src/main/java/gq/unurled/raxen/commands/player/SkillsCommand.java b/src/main/java/gq/unurled/raxen/commands/player/SkillsCommand.java
index c0e48b9..7cc65a0 100644
--- a/src/main/java/gq/unurled/raxen/commands/player/SkillsCommand.java
+++ b/src/main/java/gq/unurled/raxen/commands/player/SkillsCommand.java
@@ -1,6 +1,7 @@
package gq.unurled.raxen.commands.player;
import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.player.PlayerUtils;
import gq.unurled.raxen.components.player.attributes.Attributes;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
@@ -101,7 +102,7 @@ public class SkillsCommand implements TabExecutor {
}
break;
}
- gq.unurled.raxen.utils.Skills.updateSkills(main, player);
+ PlayerUtils.updateSkills(main, player);
}
return false;
}
diff --git a/src/main/java/gq/unurled/raxen/commands/player/StorageCommand.java b/src/main/java/gq/unurled/raxen/commands/player/StorageCommand.java
index 6a3faf7..a481a94 100644
--- a/src/main/java/gq/unurled/raxen/commands/player/StorageCommand.java
+++ b/src/main/java/gq/unurled/raxen/commands/player/StorageCommand.java
@@ -1,7 +1,7 @@
package gq.unurled.raxen.commands.player;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.manager.PlayerManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@@ -17,7 +17,7 @@ import static gq.unurled.raxen.utils.Utils.*;
public class StorageCommand implements TabExecutor {
- private PlayerManager playerManager = Raxen.getPlayerManager();
+ private PlayerManager playerManager;
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
@@ -27,6 +27,7 @@ public class StorageCommand implements TabExecutor {
}
Player player = (Player) sender;
Inventory inv;
+ playerManager = ((Raxen) Bukkit.getPluginManager().getPlugin("Raxen")).getManager().getPlayerManager();
switch (args.length) {
case 0:
if(playerManager.getRaxenPlayer(player).getStorage() == null) {
diff --git a/src/main/java/gq/unurled/raxen/components/entity/EntityUtils.java b/src/main/java/gq/unurled/raxen/components/entity/EntityUtils.java
index 098d447..45751bf 100644
--- a/src/main/java/gq/unurled/raxen/components/entity/EntityUtils.java
+++ b/src/main/java/gq/unurled/raxen/components/entity/EntityUtils.java
@@ -4,6 +4,7 @@ import gq.unurled.raxen.Raxen;
import org.bukkit.entity.LivingEntity;
import org.bukkit.persistence.PersistentDataContainer;
import org.bukkit.persistence.PersistentDataType;
+import org.jetbrains.annotations.NotNull;
import static gq.unurled.raxen.utils.Utils.debug;
@@ -17,7 +18,7 @@ public class EntityUtils {
namespacedKey = new EntityNamespacedKey(main);
}
- public static void setNameSpacedKeys(org.bukkit.entity.Entity e, String name, Integer level, int health, int itemHealth, int defense, int itemDefense, int speed, int itemSpeed, int strength, int itemDmg) {
+ public static void setNameSpacedKeys(org.bukkit.entity.@NotNull Entity e, String name, Integer level, int health, int itemHealth, int defense, int itemDefense, int speed, int itemSpeed, int strength, int itemDmg) {
PersistentDataContainer data = e.getPersistentDataContainer();
data.set(namespacedKey.healthKey, PersistentDataType.INTEGER, health);
data.set(namespacedKey.itemHealthKey, PersistentDataType.INTEGER, itemHealth);
@@ -31,7 +32,7 @@ public class EntityUtils {
data.set(namespacedKey.levelKey, PersistentDataType.INTEGER, level);
}
- public static void updateSkills(LivingEntity livingEntity) {
+ public static void updateSkills(@NotNull LivingEntity livingEntity) {
Attributes attributes = new Attributes(main);
int health, itemHealth, defense, itemDefense, speed, itemSpeed, strength, itemDmg;
org.bukkit.entity.Entity e = livingEntity;
diff --git a/src/main/java/gq/unurled/raxen/components/entity/RaxenEntity.java b/src/main/java/gq/unurled/raxen/components/entity/RaxenEntity.java
index f754be8..8c240a7 100644
--- a/src/main/java/gq/unurled/raxen/components/entity/RaxenEntity.java
+++ b/src/main/java/gq/unurled/raxen/components/entity/RaxenEntity.java
@@ -1,6 +1,8 @@
package gq.unurled.raxen.components.entity;
import gq.unurled.raxen.Raxen;
+import lombok.Getter;
+import lombok.Setter;
import net.kyori.adventure.text.Component;
import org.bukkit.Location;
import org.bukkit.NamespacedKey;
@@ -13,9 +15,15 @@ public class RaxenEntity {
private final Raxen main;
+ @Getter
private final String name;
+ @Getter
private Integer level;
+ @Getter
+ @Setter
private Double health;
+ @Getter
+ @Setter
private Double strength;
public RaxenEntity(Raxen main, String name, Integer level, Double health, Double strength) {
@@ -39,4 +47,10 @@ public class RaxenEntity {
data.set(new NamespacedKey(main ,"NAME"), PersistentDataType.STRING, name);
}
+ public Double getMaxHealth(Entity e) {
+ PersistentDataContainer data = e.getPersistentDataContainer();
+ EntityNamespacedKey key = new EntityNamespacedKey(main);
+ return data.get(key.maxHealth, PersistentDataType.DOUBLE);
+ }
+
}
diff --git a/src/main/java/gq/unurled/raxen/components/entity/custom/Entity.java b/src/main/java/gq/unurled/raxen/components/entity/custom/Entity.java
new file mode 100644
index 0000000..e92bfc2
--- /dev/null
+++ b/src/main/java/gq/unurled/raxen/components/entity/custom/Entity.java
@@ -0,0 +1,68 @@
+package gq.unurled.raxen.components.entity.custom;
+
+import gq.unurled.raxen.Raxen;
+import lombok.Getter;
+import lombok.Setter;
+
+import static gq.unurled.raxen.utils.Utils.colorString;
+
+public class Entity {
+
+ private final String name;
+ @Getter
+ private Integer level;
+ @Setter
+ private Double health;
+ @Getter
+ @Setter
+ private Double strength;
+ @Getter
+ @Setter
+ private Double defense;
+ @Getter
+ @Setter
+ private Double speed;
+ @Getter
+ @Setter
+ private Double maxHealth;
+ @Getter
+ @Setter
+ private boolean isHostile;
+
+ public Entity(String name, Integer level, Double maxHealth, Double strength, Double defense, Double speed, boolean isHostile) {
+ this.name = name;
+ this.level = level;
+ this.health = maxHealth;
+ this.strength = strength;
+ this.defense = defense;
+ this.speed = speed;
+ this.maxHealth = maxHealth;
+ this.isHostile = isHostile;
+ }
+
+ public void register (Raxen main) {
+ main.getManager().getEntityManager().entities.put(name, this);
+ }
+
+ public String getName() {
+ return "" + name;
+ }
+
+ public String getFullName(Entity e) {
+ if (isHostile) {
+ return colorString(getColorLevel() + "⚔️" + getName() + "" + health + "/" + maxHealth);
+ } else {
+ return colorString(getColorLevel() + "❤️" + getName() + "" + health + "/" + maxHealth);
+ }
+ }
+
+ public String getColorLevel() {
+ return level.toString();
+ }
+
+ public Double getHealth() {
+ Double health = 0.0;
+
+ return health;
+ }
+}
diff --git a/src/main/java/gq/unurled/raxen/components/entity/custom/hostile/low/Goblin.java b/src/main/java/gq/unurled/raxen/components/entity/custom/hostile/low/Goblin.java
new file mode 100644
index 0000000..8dd9e4c
--- /dev/null
+++ b/src/main/java/gq/unurled/raxen/components/entity/custom/hostile/low/Goblin.java
@@ -0,0 +1,24 @@
+package gq.unurled.raxen.components.entity.custom.hostile.low;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.entity.RaxenEntity;
+import gq.unurled.raxen.components.entity.custom.Entity;
+
+public class Goblin extends Entity {
+
+ RaxenEntity goblin;
+
+ public Goblin(Raxen main) {
+ super("Goblin", 1, 100.0, 10.0, 0.0, 50.0, true);
+ this.goblin = new RaxenEntity(main, "Goblin", 1, 100.0, 10.0);
+ register(main);
+ }
+
+ public String getName() {
+ return "" + goblin.getName();
+ }
+
+ public String getFullName(Entity e) {
+ return "⚔️" + getName() + "" + getHealth() + "/" + getMaxHealth();
+ }
+}
diff --git a/src/main/java/gq/unurled/raxen/components/gui/ItemListGui.java b/src/main/java/gq/unurled/raxen/components/gui/ItemListGui.java
index a6012ac..e2ce168 100644
--- a/src/main/java/gq/unurled/raxen/components/gui/ItemListGui.java
+++ b/src/main/java/gq/unurled/raxen/components/gui/ItemListGui.java
@@ -1,6 +1,7 @@
package gq.unurled.raxen.components.gui;
import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.player.PlayerUtils;
import lombok.Getter;
import net.kyori.adventure.text.Component;
import org.bukkit.Bukkit;
@@ -38,7 +39,7 @@ public class ItemListGui implements Listener {
public ItemListGui(Raxen main) {
this.main = main;
- this.itlist = this.main.getItemManager().getList();
+ this.itlist = this.main.getManager().getItemManager().getList();
this.inv = getInventories();
}
@@ -215,7 +216,7 @@ public class ItemListGui implements Listener {
//add to stash
//}
player.getInventory().addItem(e.getCurrentItem());
- gq.unurled.raxen.utils.Skills.updateSkills(main, player);
+ PlayerUtils.updateSkills(main, player);
}
}
}
diff --git a/src/main/java/gq/unurled/raxen/components/items/custom/weapon/Dager.java b/src/main/java/gq/unurled/raxen/components/items/custom/weapon/Dager.java
index 64f624c..d67b344 100644
--- a/src/main/java/gq/unurled/raxen/components/items/custom/weapon/Dager.java
+++ b/src/main/java/gq/unurled/raxen/components/items/custom/weapon/Dager.java
@@ -47,7 +47,7 @@ public class Dager {
* need Raxen main to be set before calling this method.
*/
public void register() {
- main.getItemManager().registerItem(dager);
+ main.getManager().getItemManager().registerItem(dager);
}
}
diff --git a/src/main/java/gq/unurled/raxen/components/lootchest/GUI.java b/src/main/java/gq/unurled/raxen/components/lootchest/GUI.java
index 745792e..8e9f05b 100644
--- a/src/main/java/gq/unurled/raxen/components/lootchest/GUI.java
+++ b/src/main/java/gq/unurled/raxen/components/lootchest/GUI.java
@@ -1,7 +1,7 @@
package gq.unurled.raxen.components.lootchest;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.manager.PlayerManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
import lombok.Getter;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -13,7 +13,7 @@ public class GUI {
private static PlayerManager playerManager;
public GUI(Raxen main) {
- this.playerManager = main.getPlayerManager();
+ this.playerManager = main.getManager().getPlayerManager();
}
public static Inventory addItems(Player player) {
diff --git a/src/main/java/gq/unurled/raxen/components/lootchest/loots/CustomLoot.java b/src/main/java/gq/unurled/raxen/components/lootchest/loots/CustomLoot.java
index 1448be5..d7741bb 100644
--- a/src/main/java/gq/unurled/raxen/components/lootchest/loots/CustomLoot.java
+++ b/src/main/java/gq/unurled/raxen/components/lootchest/loots/CustomLoot.java
@@ -36,7 +36,7 @@ public class CustomLoot {
}
public void tryDropLoot(Location location) {
- for (LootItem item : main.getLootManager().getLootTable()) {
+ for (LootItem item : main.getManager().getLootManager().getLootTable()) {
item.tryDropItem(location);
}
}
diff --git a/src/main/java/gq/unurled/raxen/components/lootchest/loots/test/TestSword.java b/src/main/java/gq/unurled/raxen/components/lootchest/loots/test/TestSword.java
index 991397c..da41a6d 100644
--- a/src/main/java/gq/unurled/raxen/components/lootchest/loots/test/TestSword.java
+++ b/src/main/java/gq/unurled/raxen/components/lootchest/loots/test/TestSword.java
@@ -6,7 +6,7 @@ import gq.unurled.raxen.components.lootchest.loots.CustomLoot;
public class TestSword extends CustomLoot {
public TestSword(Raxen main) {
- this.itlist = main.getItemManager().getList();
+ this.itlist = main.getManager().getItemManager().getList();
this.ID = "BEST_NEW_ITEM";
this.drop_rate = getDrop_rate();
this.item = registerItem();
diff --git a/src/main/java/gq/unurled/raxen/utils/Skills.java b/src/main/java/gq/unurled/raxen/components/player/PlayerUtils.java
similarity index 93%
rename from src/main/java/gq/unurled/raxen/utils/Skills.java
rename to src/main/java/gq/unurled/raxen/components/player/PlayerUtils.java
index 944bf61..34de72c 100644
--- a/src/main/java/gq/unurled/raxen/utils/Skills.java
+++ b/src/main/java/gq/unurled/raxen/components/player/PlayerUtils.java
@@ -1,29 +1,29 @@
-package gq.unurled.raxen.utils;
-
-import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.components.player.attributes.Attributes;
-import org.bukkit.attribute.Attribute;
-import org.bukkit.entity.Player;
-
-import static gq.unurled.raxen.utils.Utils.msgPlayer;
-
-public class Skills {
-
- public static void updateSkills(Raxen main, Player player) {
- Attributes attributes = new Attributes(main);
- int health, itemHealth, defense, itemDefense, speed, itemSpeed, strength, itemDmg;
- health = attributes.getHealth(player);
- itemHealth = attributes.getItemHealth(player);
- defense = attributes.getDefense(player);
- itemDefense = attributes.getItemDefense(player);
- speed = attributes.getSpeed(player);
- itemSpeed = attributes.getItemSpeed(player);
- strength = attributes.getStrength(player);
- itemDmg = attributes.getItemStrength(player);
- player.getAttribute(Attribute.GENERIC_MAX_HEALTH).setBaseValue(20D + (health + itemHealth) / 100);
- player.setWalkSpeed((float) (0.0 + ((speed + itemSpeed) / 100) * 0.2));
- player.setFlySpeed((float) (0.0 + ((speed + itemSpeed) / 100) * 0.2));
- msgPlayer(player, "Speed " + (speed + itemSpeed), "Health " + (health + itemHealth), "Defense " + (defense+itemDefense), "Strength " + (strength+itemDmg));
- }
-
-}
+package gq.unurled.raxen.components.player;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.player.attributes.Attributes;
+import org.bukkit.attribute.Attribute;
+import org.bukkit.entity.Player;
+
+import static gq.unurled.raxen.utils.Utils.msgPlayer;
+
+public class PlayerUtils {
+
+ public static void updateSkills(Raxen main, Player player) {
+ Attributes attributes = new Attributes(main);
+ int health, itemHealth, defense, itemDefense, speed, itemSpeed, strength, itemDmg;
+ health = attributes.getHealth(player);
+ itemHealth = attributes.getItemHealth(player);
+ defense = attributes.getDefense(player);
+ itemDefense = attributes.getItemDefense(player);
+ speed = attributes.getSpeed(player);
+ itemSpeed = attributes.getItemSpeed(player);
+ strength = attributes.getStrength(player);
+ itemDmg = attributes.getItemStrength(player);
+ player.getAttribute(Attribute.GENERIC_MAX_HEALTH).setBaseValue(20D + (health + itemHealth) / 100);
+ player.setWalkSpeed((float) (0.0 + ((speed + itemSpeed) / 100) * 0.2));
+ player.setFlySpeed((float) (0.0 + ((speed + itemSpeed) / 100) * 0.2));
+ msgPlayer(player, "Speed " + (speed + itemSpeed), "Health " + (health + itemHealth), "Defense " + (defense+itemDefense), "Strength " + (strength+itemDmg));
+ }
+
+}
diff --git a/src/main/java/gq/unurled/raxen/components/player/Scoreboard.java b/src/main/java/gq/unurled/raxen/components/player/Scoreboard.java
index ba0bc61..0d09129 100644
--- a/src/main/java/gq/unurled/raxen/components/player/Scoreboard.java
+++ b/src/main/java/gq/unurled/raxen/components/player/Scoreboard.java
@@ -1,7 +1,7 @@
package gq.unurled.raxen.components.player;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.utils.Vault;
+import gq.unurled.raxen.utils.libs.Vault;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.scoreboard.DisplaySlot;
@@ -18,7 +18,7 @@ public class Scoreboard {
public Scoreboard(Raxen main) {
this.main = main;
- this.vault = main.getVault();
+ this.vault = main.getManager().getLibsManager().getVault();
}
public void createScorebord(Player player) {
diff --git a/src/main/java/gq/unurled/raxen/components/player/classes/Classes.java b/src/main/java/gq/unurled/raxen/components/player/classes/Classes.java
index d450e0f..9893a62 100644
--- a/src/main/java/gq/unurled/raxen/components/player/classes/Classes.java
+++ b/src/main/java/gq/unurled/raxen/components/player/classes/Classes.java
@@ -1,7 +1,7 @@
package gq.unurled.raxen.components.player.classes;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.manager.PlayerManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
import lombok.Getter;
import lombok.Setter;
import org.bukkit.Bukkit;
@@ -29,7 +29,7 @@ public class Classes {
public void register() {
File folder = new File(main.getDataFolder() + "/Class/");
File[] listFile = folder.listFiles();
- PlayerManager pm = main.getPlayerManager();
+ PlayerManager pm = main.getManager().getPlayerManager();
for (int i = 0; i < listFile.length; i++) {
if (listFile[i].isFile()) {
FileConfiguration customClass = new YamlConfiguration();
diff --git a/src/main/java/gq/unurled/raxen/components/resourcepack/ResourcePack.java b/src/main/java/gq/unurled/raxen/components/resourcepack/ResourcePack.java
index d2e6966..74f8f90 100644
--- a/src/main/java/gq/unurled/raxen/components/resourcepack/ResourcePack.java
+++ b/src/main/java/gq/unurled/raxen/components/resourcepack/ResourcePack.java
@@ -1,7 +1,7 @@
package gq.unurled.raxen.components.resourcepack;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.manager.ResourcePackManager;
+import gq.unurled.raxen.manager.server.ResourcePackManager;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.scheduler.BukkitRunnable;
diff --git a/src/main/java/gq/unurled/raxen/config/PlayerConfig.java b/src/main/java/gq/unurled/raxen/config/PlayerConfig.java
index 09f805e..113b590 100644
--- a/src/main/java/gq/unurled/raxen/config/PlayerConfig.java
+++ b/src/main/java/gq/unurled/raxen/config/PlayerConfig.java
@@ -7,10 +7,10 @@ import gq.unurled.raxen.components.player.Inventories;
import gq.unurled.raxen.components.player.Storage;
import gq.unurled.raxen.components.player.attributes.Attributes;
import gq.unurled.raxen.components.player.storages.EnderChest;
-import gq.unurled.raxen.manager.PlayerManager;
-import gq.unurled.raxen.manager.StorageManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
+import gq.unurled.raxen.manager.entity.StorageManager;
import gq.unurled.raxen.utils.Items;
-import gq.unurled.raxen.utils.MongoDB;
+import gq.unurled.raxen.utils.libs.MongoDB;
import net.kyori.adventure.text.Component;
import org.bson.Document;
import org.bukkit.Bukkit;
@@ -42,10 +42,10 @@ public class PlayerConfig {
public PlayerConfig(Raxen main) {
PlayerConfig.main = main;
- sto = Raxen.getStorageManager();
- this.mongoDB = StorageManager.getMongo();
+ sto = main.getManager().getStorageManager();
+ this.mongoDB = main.getManager().getLibsManager().getMongoDB();
this.mongoCollection = mongoDB.getMongoCollection();
- playerManager = Raxen.getPlayerManager();
+ playerManager = main.getManager().getPlayerManager();
this.attributes = new Attributes(main);
}
diff --git a/src/main/java/gq/unurled/raxen/listener/entity/DamageEntity.java b/src/main/java/gq/unurled/raxen/listener/entity/DamageEntity.java
index 7812265..5c1e8aa 100644
--- a/src/main/java/gq/unurled/raxen/listener/entity/DamageEntity.java
+++ b/src/main/java/gq/unurled/raxen/listener/entity/DamageEntity.java
@@ -29,82 +29,87 @@ public class DamageEntity implements Listener {
@EventHandler
public void entityDamageByEntity(EntityDamageByEntityEvent e) {
- e.setDamage(0);
- Integer damage = 1;
- Integer strength = 0;
- Integer itemDmg = 0;
- Integer defense = 0;
- Integer itemDefense = 0;
- Integer health = 0;
- Integer itemHealth = 0;
- Integer initDamage = 0;
- debug(main, e.getEntity().getName(), e.getEntity().getType().toString(), e.getDamager().getType().toString(), e.getDamager().getName());
- if (e.getDamager() instanceof Player) {
- Player playerDamager = (Player) e.getDamager();
- gq.unurled.raxen.components.player.attributes.Attributes attributes = new gq.unurled.raxen.components.player.attributes.Attributes(main);
- strength = attributes.getStrength(playerDamager);
- itemDmg = attributes.getItemStrength(playerDamager);
+ if (!(e.getEntity() instanceof LivingEntity)) {
+ debug("Not Living Entity, Some block falling shit or block entities");
} else {
- Entity entityDamager = e.getDamager();
- PersistentDataContainer data = entityDamager.getPersistentDataContainer();
- if (data.has(entityNamespacedKey.strengthKey, PersistentDataType.INTEGER)) {
- strength = data.get(entityNamespacedKey.strengthKey, PersistentDataType.INTEGER);
- }
- Attributes attributes = Items.getNbtFromEntity((LivingEntity) entityDamager);
- itemDmg = attributes.getStrength();
- }
- if (e.getEntity() instanceof Player) {
- Player playerVictim = (Player) e.getEntity();
- gq.unurled.raxen.components.player.attributes.Attributes attributes = new gq.unurled.raxen.components.player.attributes.Attributes(main);
- defense = attributes.getDefense(playerVictim);
- health = attributes.getHealth(playerVictim);
- itemDefense = attributes.getItemDefense(playerVictim);
- itemHealth = attributes.getItemHealth(playerVictim);
- } else {
- Entity entityVictim = e.getEntity();
- PersistentDataContainer data = entityVictim.getPersistentDataContainer();
- if (data.has(entityNamespacedKey.defenseKey, PersistentDataType.INTEGER)) {
- defense = data.get(entityNamespacedKey.defenseKey, PersistentDataType.INTEGER);
- }
- if (data.has(entityNamespacedKey.healthKey, PersistentDataType.INTEGER)) {
- health = data.get(entityNamespacedKey.healthKey, PersistentDataType.INTEGER);
- }
- Attributes attributes = Items.getNbtFromEntity((LivingEntity) entityVictim);
- itemDefense = attributes.getDefense();
- itemHealth = attributes.getHealth();
- }
- debug(main, initDamage.toString(), itemDefense.toString(), strength.toString());
- initDamage = (5+ itemDmg) * (1+ (strength/100));
- damage = initDamage;
- defense = defense + itemDefense;
- debug(main, String.valueOf(damage));
- defense = defense/(defense+100);
- debug(main, String.valueOf(damage));
- debug(main, String.valueOf(defense));
- Integer health_with_defense = health * (1+ (defense/100));
- debug(main, String.valueOf(damage));
- debug(main, String.valueOf(health));
- debug(main, String.valueOf(health_with_defense));
- if (damage >= health_with_defense) {
- debug(main, "Killed entity normally.");
- e.setDamage(e.getEntity().getType().getDefaultAttributes().getAttribute(Attribute.GENERIC_MAX_HEALTH).getDefaultValue());
- } else {
- debug(main, "Applying damage to entity.");
- if (defense == 0) {
- health = health_with_defense - damage;
+ e.setDamage(0);
+ Integer damage = 1;
+ Integer strength = 0;
+ Integer itemDmg = 0;
+ Integer defense = 0;
+ Integer itemDefense = 0;
+ Integer health = 0;
+ Integer itemHealth = 0;
+ Integer initDamage = 0;
+ debug(main, e.getEntity().getName(), e.getEntity().getType().toString(), e.getDamager().getType().toString(), e.getDamager().getName());
+ if (e.getDamager() instanceof Player) {
+ Player playerDamager = (Player) e.getDamager();
+ gq.unurled.raxen.components.player.attributes.Attributes attributes = new gq.unurled.raxen.components.player.attributes.Attributes(main);
+ strength = attributes.getStrength(playerDamager);
+ itemDmg = attributes.getItemStrength(playerDamager);
} else {
- health = health_with_defense - health - damage;
+ Entity entityDamager = e.getDamager();
+ PersistentDataContainer data = entityDamager.getPersistentDataContainer();
+ if (data.has(entityNamespacedKey.strengthKey, PersistentDataType.INTEGER)) {
+ strength = data.get(entityNamespacedKey.strengthKey, PersistentDataType.INTEGER);
+ }
+ Attributes attributes = Items.getNbtFromEntity((LivingEntity) entityDamager);
+ itemDmg = attributes.getStrength();
}
if (e.getEntity() instanceof Player) {
Player playerVictim = (Player) e.getEntity();
gq.unurled.raxen.components.player.attributes.Attributes attributes = new gq.unurled.raxen.components.player.attributes.Attributes(main);
- attributes.setHealth(playerVictim, health);
+ defense = attributes.getDefense(playerVictim);
+ health = attributes.getHealth(playerVictim);
+ itemDefense = attributes.getItemDefense(playerVictim);
+ itemHealth = attributes.getItemHealth(playerVictim);
} else {
Entity entityVictim = e.getEntity();
PersistentDataContainer data = entityVictim.getPersistentDataContainer();
- data.set(entityNamespacedKey.healthKey, PersistentDataType.INTEGER, health);
+ if (data.has(entityNamespacedKey.defenseKey, PersistentDataType.INTEGER)) {
+ defense = data.get(entityNamespacedKey.defenseKey, PersistentDataType.INTEGER);
+ }
+ if (data.has(entityNamespacedKey.healthKey, PersistentDataType.INTEGER)) {
+ health = data.get(entityNamespacedKey.healthKey, PersistentDataType.INTEGER);
+ }
+ Attributes attributes = Items.getNbtFromEntity((LivingEntity) entityVictim);
+ itemDefense = attributes.getDefense();
+ itemHealth = attributes.getHealth();
+ }
+ debug(main, initDamage.toString(), itemDefense.toString(), strength.toString());
+ initDamage = (5+ itemDmg) * (1+ (strength/100));
+ damage = initDamage;
+ defense = defense + itemDefense;
+ debug(main, String.valueOf(damage));
+ defense = defense/(defense+100);
+ debug(main, String.valueOf(damage));
+ debug(main, String.valueOf(defense));
+ Integer health_with_defense = health * (1+ (defense/100));
+ debug(main, String.valueOf(damage));
+ debug(main, String.valueOf(health));
+ debug(main, String.valueOf(health_with_defense));
+ if (damage >= health_with_defense) {
+ debug(main, "Killed entity normally.");
+ e.setDamage(e.getEntity().getType().getDefaultAttributes().getAttribute(Attribute.GENERIC_MAX_HEALTH).getDefaultValue());
+ } else {
+ debug(main, "Applying damage to entity.");
+ if (defense == 0) {
+ health = health_with_defense - damage;
+ } else {
+ health = health_with_defense - health - damage;
+ }
+ if (e.getEntity() instanceof Player) {
+ Player playerVictim = (Player) e.getEntity();
+ gq.unurled.raxen.components.player.attributes.Attributes attributes = new gq.unurled.raxen.components.player.attributes.Attributes(main);
+ attributes.setHealth(playerVictim, health);
+ playerVictim.setHealth(health.doubleValue()/5);
+ } else {
+ Entity entityVictim = e.getEntity();
+ PersistentDataContainer data = entityVictim.getPersistentDataContainer();
+ data.set(entityNamespacedKey.healthKey, PersistentDataType.INTEGER, health);
+ }
+ debug(main, health.toString());
}
- debug(main, health.toString());
}
}
diff --git a/src/main/java/gq/unurled/raxen/listener/player/ArmorEvent.java b/src/main/java/gq/unurled/raxen/listener/player/ArmorEvent.java
index e2cbbcf..4a86741 100644
--- a/src/main/java/gq/unurled/raxen/listener/player/ArmorEvent.java
+++ b/src/main/java/gq/unurled/raxen/listener/player/ArmorEvent.java
@@ -3,6 +3,7 @@ package gq.unurled.raxen.listener.player;
import com.destroystokyo.paper.event.player.PlayerArmorChangeEvent;
import de.tr7zw.nbtapi.NBTItem;
import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.player.PlayerUtils;
import gq.unurled.raxen.components.player.attributes.Attributes;
import org.bukkit.Material;
import org.bukkit.entity.Player;
@@ -54,6 +55,6 @@ public class ArmorEvent implements Listener {
attributes.addStrength(player, nbti.getInteger("STRENGTH"));
}
}
- gq.unurled.raxen.utils.Skills.updateSkills(main, player);
+ PlayerUtils.updateSkills(main, player);
}
}
diff --git a/src/main/java/gq/unurled/raxen/listener/player/CloseInventoryEvent.java b/src/main/java/gq/unurled/raxen/listener/player/CloseInventoryEvent.java
index d52083a..6e35ecb 100644
--- a/src/main/java/gq/unurled/raxen/listener/player/CloseInventoryEvent.java
+++ b/src/main/java/gq/unurled/raxen/listener/player/CloseInventoryEvent.java
@@ -1,8 +1,9 @@
package gq.unurled.raxen.listener.player;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.manager.PlayerManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
import net.kyori.adventure.text.Component;
+import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
@@ -12,13 +13,14 @@ import static gq.unurled.raxen.utils.Utils.log;
public class CloseInventoryEvent implements Listener {
- private PlayerManager playerManager = Raxen.getPlayerManager();
+ private PlayerManager playerManager;
@EventHandler
public void InventoryCloseEvent(InventoryCloseEvent e) {
Player player = (Player) e.getPlayer();
Component title = e.getView().title();
if (title.toString().contains("Ender Chest")) {
+ playerManager = ((Raxen) Bukkit.getPluginManager().getPlugin("Raxen")).getManager().getPlayerManager();
playerManager.getRaxenPlayer(player).setStorage(e.getInventory());
}
log(player.getName() + " " + title.toString());
diff --git a/src/main/java/gq/unurled/raxen/listener/player/ItemHandEvent.java b/src/main/java/gq/unurled/raxen/listener/player/ItemHandEvent.java
index a786a9c..d57768f 100644
--- a/src/main/java/gq/unurled/raxen/listener/player/ItemHandEvent.java
+++ b/src/main/java/gq/unurled/raxen/listener/player/ItemHandEvent.java
@@ -2,6 +2,7 @@ package gq.unurled.raxen.listener.player;
import de.tr7zw.nbtapi.NBTItem;
import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.player.PlayerUtils;
import gq.unurled.raxen.components.player.attributes.Attributes;
import org.bukkit.Material;
import org.bukkit.entity.Player;
@@ -54,6 +55,6 @@ public class ItemHandEvent implements Listener {
attributes.addItemStrength(player, nbti.getInteger("STRENGTH"));
}
}
- gq.unurled.raxen.utils.Skills.updateSkills(main, player);
+ PlayerUtils.updateSkills(main, player);
}
}
diff --git a/src/main/java/gq/unurled/raxen/listener/player/JoinEvent.java b/src/main/java/gq/unurled/raxen/listener/player/JoinEvent.java
index 47e2fb2..96e3fce 100644
--- a/src/main/java/gq/unurled/raxen/listener/player/JoinEvent.java
+++ b/src/main/java/gq/unurled/raxen/listener/player/JoinEvent.java
@@ -4,7 +4,7 @@ import gq.unurled.raxen.Raxen;
import gq.unurled.raxen.components.player.Scoreboard;
import gq.unurled.raxen.components.resourcepack.ResourcePack;
import gq.unurled.raxen.config.PlayerConfig;
-import gq.unurled.raxen.manager.PlayerManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
@@ -22,8 +22,8 @@ public class JoinEvent implements Listener {
this.main = main;
this.playerConfig = main.getPlayerConfig();
this.scoreboard = new Scoreboard(main);
- this.resourcePack = main.getResourcePackManager().getResourcePack();
- this.playerManager = main.getPlayerManager();
+ this.resourcePack = main.getManager().getResourcePackManager().getResourcePack();
+ this.playerManager = main.getManager().getPlayerManager();
}
@EventHandler
diff --git a/src/main/java/gq/unurled/raxen/listener/player/LeaveEvent.java b/src/main/java/gq/unurled/raxen/listener/player/LeaveEvent.java
index fa6cb04..dd74822 100644
--- a/src/main/java/gq/unurled/raxen/listener/player/LeaveEvent.java
+++ b/src/main/java/gq/unurled/raxen/listener/player/LeaveEvent.java
@@ -2,7 +2,7 @@ package gq.unurled.raxen.listener.player;
import gq.unurled.raxen.Raxen;
import gq.unurled.raxen.config.PlayerConfig;
-import gq.unurled.raxen.manager.PlayerManager;
+import gq.unurled.raxen.manager.entity.PlayerManager;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
@@ -17,7 +17,7 @@ public class LeaveEvent implements Listener {
public LeaveEvent(Raxen main) {
this.playerConfig = main.getPlayerConfig();
- this.playerManager = main.getPlayerManager();
+ this.playerManager = main.getManager().getPlayerManager();
}
diff --git a/src/main/java/gq/unurled/raxen/listener/player/TransactionEvent.java b/src/main/java/gq/unurled/raxen/listener/player/TransactionEvent.java
index b3fc0f2..2908b77 100644
--- a/src/main/java/gq/unurled/raxen/listener/player/TransactionEvent.java
+++ b/src/main/java/gq/unurled/raxen/listener/player/TransactionEvent.java
@@ -2,7 +2,7 @@ package gq.unurled.raxen.listener.player;
import gq.unurled.raxen.Raxen;
import gq.unurled.raxen.components.player.Scoreboard;
-import gq.unurled.raxen.utils.Vault;
+import gq.unurled.raxen.utils.libs.Vault;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@@ -17,7 +17,7 @@ public class TransactionEvent implements Listener {
public TransactionEvent(Raxen main) {
this.main = main;
this.scoreboard = new Scoreboard(main);
- this.vault = main.getVault();
+ this.vault = main.getManager().getLibsManager().getVault();
}
@EventHandler
diff --git a/src/main/java/gq/unurled/raxen/manager/Manager.java b/src/main/java/gq/unurled/raxen/manager/Manager.java
new file mode 100644
index 0000000..396ee68
--- /dev/null
+++ b/src/main/java/gq/unurled/raxen/manager/Manager.java
@@ -0,0 +1,46 @@
+package gq.unurled.raxen.manager;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.manager.entity.*;
+import gq.unurled.raxen.manager.server.*;
+import lombok.Getter;
+
+public class Manager {
+
+ @Getter
+ private static WorldManager worldManager;
+ @Getter
+ private static StorageManager storageManager;
+ @Getter
+ private static PlayerManager playerManager;
+ @Getter
+ private static ListenerManager listenerManager;
+ @Getter
+ private static CommandManager commandManager;
+ @Getter
+ private ItemManager itemManager;
+ @Getter
+ private ResourcePackManager resourcePackManager;
+ @Getter
+ private EntityManager entityManager;
+ @Getter
+ private LootManager lootManager;
+ @Getter
+ private LibsManager libsManager;
+
+ public void set(Raxen main) {
+ libsManager = new LibsManager(main);
+
+ worldManager = new WorldManager(main);
+ storageManager = new StorageManager(main);
+
+ //Managers
+ itemManager = new ItemManager(main);
+ playerManager = new PlayerManager(main);
+ listenerManager = new ListenerManager(main);
+ commandManager = new CommandManager(main);
+ resourcePackManager = new ResourcePackManager(main);
+ entityManager = new EntityManager(main);
+ lootManager = new LootManager(main);
+ }
+}
diff --git a/src/main/java/gq/unurled/raxen/manager/EntityManager.java b/src/main/java/gq/unurled/raxen/manager/entity/EntityManager.java
similarity index 73%
rename from src/main/java/gq/unurled/raxen/manager/EntityManager.java
rename to src/main/java/gq/unurled/raxen/manager/entity/EntityManager.java
index 838a863..d751d1a 100644
--- a/src/main/java/gq/unurled/raxen/manager/EntityManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/entity/EntityManager.java
@@ -1,4 +1,4 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.entity;
import gq.unurled.raxen.Raxen;
import lombok.Getter;
@@ -6,20 +6,28 @@ import lombok.Setter;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.configuration.file.FileConfiguration;
+import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.UUID;
import static gq.unurled.raxen.utils.Utils.debug;
public class EntityManager {
private Raxen main;
+
@Getter
@Setter
public List list = new ArrayList<>();
+ public HashMap entities = new HashMap<>();
+
+ public HashMap livingEntities = new HashMap<>();
+
public EntityManager(Raxen main) {
this.main = main;
}
diff --git a/src/main/java/gq/unurled/raxen/manager/ItemManager.java b/src/main/java/gq/unurled/raxen/manager/entity/ItemManager.java
similarity index 99%
rename from src/main/java/gq/unurled/raxen/manager/ItemManager.java
rename to src/main/java/gq/unurled/raxen/manager/entity/ItemManager.java
index 6061877..8ad6db7 100644
--- a/src/main/java/gq/unurled/raxen/manager/ItemManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/entity/ItemManager.java
@@ -1,4 +1,4 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.entity;
import de.tr7zw.nbtapi.NBTItem;
import gq.unurled.raxen.Raxen;
diff --git a/src/main/java/gq/unurled/raxen/manager/LootManager.java b/src/main/java/gq/unurled/raxen/manager/entity/LootManager.java
similarity index 88%
rename from src/main/java/gq/unurled/raxen/manager/LootManager.java
rename to src/main/java/gq/unurled/raxen/manager/entity/LootManager.java
index da46a26..19d71dd 100644
--- a/src/main/java/gq/unurled/raxen/manager/LootManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/entity/LootManager.java
@@ -1,4 +1,4 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.entity;
import gq.unurled.raxen.Raxen;
import gq.unurled.raxen.components.lootchest.loots.LootItem;
diff --git a/src/main/java/gq/unurled/raxen/manager/PlayerManager.java b/src/main/java/gq/unurled/raxen/manager/entity/PlayerManager.java
similarity index 95%
rename from src/main/java/gq/unurled/raxen/manager/PlayerManager.java
rename to src/main/java/gq/unurled/raxen/manager/entity/PlayerManager.java
index 0e5dd48..e0c64ce 100644
--- a/src/main/java/gq/unurled/raxen/manager/PlayerManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/entity/PlayerManager.java
@@ -1,75 +1,75 @@
-package gq.unurled.raxen.manager;
-
-import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.components.player.RaxenPlayer;
-import gq.unurled.raxen.components.player.attributes.Attribute;
-import gq.unurled.raxen.components.player.classes.Class;
-import net.kyori.adventure.text.Component;
-import org.bukkit.entity.Player;
-import org.bukkit.scheduler.BukkitRunnable;
-import org.bukkit.scheduler.BukkitTask;
-
-import java.util.HashMap;
-import java.util.UUID;
-
-public class PlayerManager {
-
- private Raxen main;
- private HashMap actionBar = new HashMap<>();
- private HashMap classes = new HashMap<>();
-
- public PlayerManager(Raxen main) {
- this.main = main;
- }
-
- public RaxenPlayer getRaxenPlayer(Player player) {
- return new RaxenPlayer(main, player);
- }
-
- public void registerActionBar(Player player) {
- Attribute attributes = getRaxenPlayer(player).getAttributes().getAttribute(player);
- BukkitTask task = new BukkitRunnable() {
- @Override
- public void run() {
- player.sendActionBar(Component.text(attributes.getHealth() + "/" + attributes.getMaxHealth() + "❤ " + attributes.getMana() + "/" + attributes.getMaxMana()));
- }
- }.runTaskTimer(main, 0L, 20L);
- if(actionBar.containsKey(player.getUniqueId())) {
- actionBar.replace(player.getUniqueId(), task);
- } else {
- actionBar.put(player.getUniqueId(), task);
- }
- }
-
- public void unRegisterActionBar(Player player) {
- if(actionBar.containsKey(player.getUniqueId())) {
- BukkitTask task = actionBar.get(player.getUniqueId());
- task.cancel();
- actionBar.remove(player.getUniqueId());
- }
- }
-
- public void unRegisterRaxenPlayer(Player player) {
- }
-
- public void registerClasses() {
-
- }
-
- /**
- * getClasses
- * @return the classes HashMap
- */
- public HashMap getClasses() {
- return classes;
- }
-
- /**
- * add @param to hashmap of classes
- * @param clas a class instance
- * @param id the id of the class
- */
- public void addClasses(Class clas, String id) {
- classes.put(id, clas);
- }
-}
+package gq.unurled.raxen.manager.entity;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.components.player.RaxenPlayer;
+import gq.unurled.raxen.components.player.attributes.Attribute;
+import gq.unurled.raxen.components.player.classes.Class;
+import net.kyori.adventure.text.Component;
+import org.bukkit.entity.Player;
+import org.bukkit.scheduler.BukkitRunnable;
+import org.bukkit.scheduler.BukkitTask;
+
+import java.util.HashMap;
+import java.util.UUID;
+
+public class PlayerManager {
+
+ private Raxen main;
+ private HashMap actionBar = new HashMap<>();
+ private HashMap classes = new HashMap<>();
+
+ public PlayerManager(Raxen main) {
+ this.main = main;
+ }
+
+ public RaxenPlayer getRaxenPlayer(Player player) {
+ return new RaxenPlayer(main, player);
+ }
+
+ public void registerActionBar(Player player) {
+ Attribute attributes = getRaxenPlayer(player).getAttributes().getAttribute(player);
+ BukkitTask task = new BukkitRunnable() {
+ @Override
+ public void run() {
+ player.sendActionBar(Component.text(attributes.getHealth() + "/" + attributes.getMaxHealth() + "❤ " + attributes.getMana() + "/" + attributes.getMaxMana()));
+ }
+ }.runTaskTimer(main, 0L, 20L);
+ if(actionBar.containsKey(player.getUniqueId())) {
+ actionBar.replace(player.getUniqueId(), task);
+ } else {
+ actionBar.put(player.getUniqueId(), task);
+ }
+ }
+
+ public void unRegisterActionBar(Player player) {
+ if(actionBar.containsKey(player.getUniqueId())) {
+ BukkitTask task = actionBar.get(player.getUniqueId());
+ task.cancel();
+ actionBar.remove(player.getUniqueId());
+ }
+ }
+
+ public void unRegisterRaxenPlayer(Player player) {
+ }
+
+ public void registerClasses() {
+
+ }
+
+ /**
+ * getClasses
+ * @return the classes HashMap
+ */
+ public HashMap getClasses() {
+ return classes;
+ }
+
+ /**
+ * add @param to hashmap of classes
+ * @param clas a class instance
+ * @param id the id of the class
+ */
+ public void addClasses(Class clas, String id) {
+ classes.put(id, clas);
+ }
+}
diff --git a/src/main/java/gq/unurled/raxen/manager/StorageManager.java b/src/main/java/gq/unurled/raxen/manager/entity/StorageManager.java
similarity index 82%
rename from src/main/java/gq/unurled/raxen/manager/StorageManager.java
rename to src/main/java/gq/unurled/raxen/manager/entity/StorageManager.java
index cebc75e..2ddfdf7 100644
--- a/src/main/java/gq/unurled/raxen/manager/StorageManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/entity/StorageManager.java
@@ -1,19 +1,21 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.entity;
import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.utils.MongoDB;
-import gq.unurled.raxen.utils.Mysql;
+import gq.unurled.raxen.utils.libs.MongoDB;
+import gq.unurled.raxen.utils.libs.Mysql;
import lombok.Getter;
import org.bukkit.Bukkit;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
+import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.io.IOException;
-import static gq.unurled.raxen.utils.Utils.*;
+import static gq.unurled.raxen.utils.Utils.debug;
+import static gq.unurled.raxen.utils.Utils.error;
public class StorageManager {
@@ -22,31 +24,28 @@ public class StorageManager {
private static FileConfiguration config;
@Getter
- private static MongoDB mongo;
+ private static MongoDB mongodb;
@Getter
private static Mysql mysql;
public StorageManager(Raxen main) {
- this.main = main.getPlugin();
+ this.main = main;
this.config = main.getConfig();
- this.mongo = new MongoDB();
this.connect();
}
public static void connect() {
String s = (String) config.get("storage");
debug(main, s);
+ mongodb = main.getManager().getLibsManager().getMongoDB();
if(s.equalsIgnoreCase("MONGODB")) {
- mongo.connect();
- warn(main, "'" + s + "'");
- }
-
- if(s.equalsIgnoreCase("MYSQL")) {
+ mongodb.connect();
+ debug(main, "'" + s + "'");
+ } else if(s.equalsIgnoreCase("MYSQL")) {
error((Raxen) Bukkit.getPluginManager().getPlugin("Raxen"),"Currently not implemented, switching to YML");
- warn(main, "'" + s + "'");
- }
- else {
- warn(main, "'" + s + "'");
+ debug(main, "'" + s + "'");
+ } else {
+ debug(main, "'" + s + "'");
}
}
@@ -54,7 +53,7 @@ public class StorageManager {
mysql.disconnect();
}
- public static FileConfiguration createYml(Player player) {
+ public static @NotNull FileConfiguration createYml(@NotNull Player player) {
File customFile;
FileConfiguration customConfig;
customFile = new File(main.getDataFolder() + "/playerInfo/" + player.getUniqueId(), "/playerInfo.yml");
@@ -98,7 +97,7 @@ public class StorageManager {
return customConfig;
}
- public static FileConfiguration createYml(File file) {
+ public static @NotNull FileConfiguration createYml(@NotNull File file) {
FileConfiguration customConfig;
@@ -121,7 +120,7 @@ public class StorageManager {
return customConfig;
}
- public static FileConfiguration createYml(String path) {
+ public static @NotNull FileConfiguration createYml(String path) {
File customFile;
FileConfiguration customConfig;
customFile = new File(path);
diff --git a/src/main/java/gq/unurled/raxen/manager/CommandManager.java b/src/main/java/gq/unurled/raxen/manager/server/CommandManager.java
similarity index 90%
rename from src/main/java/gq/unurled/raxen/manager/CommandManager.java
rename to src/main/java/gq/unurled/raxen/manager/server/CommandManager.java
index f73a57e..a9ff63f 100644
--- a/src/main/java/gq/unurled/raxen/manager/CommandManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/server/CommandManager.java
@@ -1,64 +1,66 @@
-package gq.unurled.raxen.manager;
-
-import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.commands.RaxenCommand;
-import gq.unurled.raxen.commands.admin.*;
-import gq.unurled.raxen.commands.player.ClassCommand;
-import gq.unurled.raxen.commands.player.SkillsCommand;
-import gq.unurled.raxen.commands.player.StorageCommand;
-import lombok.Getter;
-
-
-public class CommandManager {
-
- private Raxen main;
- @Getter
- private ItemListCommand itemListCommand;
- private ReloadCommand reloadComand = new ReloadCommand();
- private NbtCommand nbtCommand;
- private TestGuiCommand testGuiCommand = new TestGuiCommand();
- private StorageCommand storageCommand = new StorageCommand();
- private SkillsCommand skillsCommand = new SkillsCommand(main);
- private RaxenCommand raxenCommand = new RaxenCommand(main);
- private SpawnEntity entityspawn;
- private ClassCommand classCommand;
-
- public CommandManager(Raxen main) {
- this.main = main;
- this.itemListCommand = new ItemListCommand(this.main);
- this.nbtCommand = new NbtCommand(this.main);
- this.entityspawn = new SpawnEntity(this.main);
- this.classCommand = new ClassCommand(this.main);
- }
-
- public void register() {
- main.getCommand("reloadplugin").setExecutor(reloadComand);
- main.getCommand("reloadplugin").setTabCompleter(reloadComand);
-
- main.getCommand("nbt").setExecutor(nbtCommand);
- main.getCommand("nbt").setTabCompleter(nbtCommand);
-
- main.getCommand("testgui").setExecutor(testGuiCommand);
- main.getCommand("testgui").setTabCompleter(testGuiCommand);
-
- main.getCommand("storage").setExecutor(storageCommand);
- main.getCommand("storage").setTabCompleter(storageCommand);
-
-
- main.getCommand("skills").setTabCompleter(skillsCommand);
- main.getCommand("skills").setExecutor(skillsCommand);
-
- main.getCommand("raxen").setTabCompleter(raxenCommand);
- main.getCommand("raxen").setExecutor(raxenCommand);
-
- main.getCommand("itemlist").setExecutor(itemListCommand);
- main.getCommand("itemlist").setTabCompleter(itemListCommand);
-
- main.getCommand("entityspawn").setTabCompleter(entityspawn);
- main.getCommand("entityspawn").setExecutor(entityspawn);
-
- main.getCommand("class").setTabCompleter(classCommand);
- main.getCommand("class").setExecutor(classCommand);
- }
-
-}
+package gq.unurled.raxen.manager.server;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.commands.RaxenCommand;
+import gq.unurled.raxen.commands.admin.*;
+import gq.unurled.raxen.commands.player.ClassCommand;
+import gq.unurled.raxen.commands.player.SkillsCommand;
+import gq.unurled.raxen.commands.player.StorageCommand;
+import lombok.Getter;
+
+
+public class CommandManager {
+
+ private Raxen main;
+ @Getter
+ private ItemListCommand itemListCommand;
+ private ReloadCommand reloadComand = new ReloadCommand();
+ private NbtCommand nbtCommand;
+ private TestGuiCommand testGuiCommand = new TestGuiCommand();
+ private StorageCommand storageCommand = new StorageCommand();
+ private SkillsCommand skillsCommand;
+ private RaxenCommand raxenCommand;
+ private SpawnEntity entityspawn;
+ private ClassCommand classCommand;
+
+ public CommandManager(Raxen main) {
+ this.main = main;
+ this.itemListCommand = new ItemListCommand(this.main);
+ this.nbtCommand = new NbtCommand(this.main);
+ this.entityspawn = new SpawnEntity(this.main);
+ this.classCommand = new ClassCommand(this.main);
+ this.skillsCommand = new SkillsCommand(main);
+ this.raxenCommand = new RaxenCommand(main);
+ }
+
+ public void register() {
+ main.getCommand("reloadplugin").setExecutor(reloadComand);
+ main.getCommand("reloadplugin").setTabCompleter(reloadComand);
+
+ main.getCommand("nbt").setExecutor(nbtCommand);
+ main.getCommand("nbt").setTabCompleter(nbtCommand);
+
+ main.getCommand("testgui").setExecutor(testGuiCommand);
+ main.getCommand("testgui").setTabCompleter(testGuiCommand);
+
+ main.getCommand("storage").setExecutor(storageCommand);
+ main.getCommand("storage").setTabCompleter(storageCommand);
+
+
+ main.getCommand("skills").setTabCompleter(skillsCommand);
+ main.getCommand("skills").setExecutor(skillsCommand);
+
+ main.getCommand("raxen").setTabCompleter(raxenCommand);
+ main.getCommand("raxen").setExecutor(raxenCommand);
+
+ main.getCommand("itemlist").setExecutor(itemListCommand);
+ main.getCommand("itemlist").setTabCompleter(itemListCommand);
+
+ main.getCommand("entityspawn").setTabCompleter(entityspawn);
+ main.getCommand("entityspawn").setExecutor(entityspawn);
+
+ main.getCommand("class").setTabCompleter(classCommand);
+ main.getCommand("class").setExecutor(classCommand);
+ }
+
+}
diff --git a/src/main/java/gq/unurled/raxen/manager/server/LibsManager.java b/src/main/java/gq/unurled/raxen/manager/server/LibsManager.java
new file mode 100644
index 0000000..e01b9d9
--- /dev/null
+++ b/src/main/java/gq/unurled/raxen/manager/server/LibsManager.java
@@ -0,0 +1,32 @@
+package gq.unurled.raxen.manager.server;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.utils.libs.*;
+import lombok.Getter;
+
+public class LibsManager {
+ @Getter
+ private final ProtocolManager protocolManager;
+ @Getter
+ private final LuckPerm luckPerm;
+ @Getter
+ private final Vault vault;
+ @Getter
+ private final MongoDB mongoDB;
+ @Getter
+ private static Mysql mysql;
+ @Getter
+ private PlaceHolderAPI placeHolderAPI;
+ @Getter
+ private Citizens citizens;
+
+ public LibsManager(Raxen main) {
+ this.luckPerm = new LuckPerm(main);
+ this.luckPerm.register();
+ this.vault = new Vault(main);
+ this.protocolManager = new ProtocolManager(main);
+ this.mongoDB = new MongoDB();
+ this.placeHolderAPI = new PlaceHolderAPI(main);
+ this.citizens = new Citizens(main);
+ }
+}
diff --git a/src/main/java/gq/unurled/raxen/manager/ListenerManager.java b/src/main/java/gq/unurled/raxen/manager/server/ListenerManager.java
similarity index 88%
rename from src/main/java/gq/unurled/raxen/manager/ListenerManager.java
rename to src/main/java/gq/unurled/raxen/manager/server/ListenerManager.java
index c560e4b..9431a81 100644
--- a/src/main/java/gq/unurled/raxen/manager/ListenerManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/server/ListenerManager.java
@@ -1,39 +1,39 @@
-package gq.unurled.raxen.manager;
-
-import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.listener.entity.DamageEntity;
-import gq.unurled.raxen.listener.entity.SpawnEvent;
-import gq.unurled.raxen.listener.player.*;
-import gq.unurled.raxen.utils.Reload;
-import lombok.Getter;
-import org.bukkit.plugin.PluginManager;
-
-public class ListenerManager {
-
- private final Raxen main;
- private final PluginManager pm;
- @Getter
- private ServerPingEvent serverPingEvent;
-
- public ListenerManager(Raxen main) {
- this.main = main;
- this.pm = main.getPm();
- this.serverPingEvent = new ServerPingEvent(main);
- }
-
- public void register() {
- this.pm.registerEvents(new JoinEvent(main), main);
- this.pm.registerEvents(new LeaveEvent(main), main);
- this.pm.registerEvents(new ArmorEvent(main), main);
- this.pm.registerEvents(new ItemHandEvent(main), main);
- this.pm.registerEvents(new Reload(), main);
- this.pm.registerEvents(new TransactionEvent(main), main);
- this.pm.registerEvents(main.getCommandManager().getItemListCommand().getItemListGui(), main);
- this.pm.registerEvents(new DamageEntity(main), main);
- this.pm.registerEvents(new SpawnEvent(main), main);
- this.pm.registerEvents(new ClickBlockEvent(main), main);
- this.pm.registerEvents(serverPingEvent, main);
- this.pm.registerEvents(new CloseInventoryEvent(), main);
-
- }
-}
+package gq.unurled.raxen.manager.server;
+
+import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.listener.entity.DamageEntity;
+import gq.unurled.raxen.listener.entity.SpawnEvent;
+import gq.unurled.raxen.listener.player.*;
+import gq.unurled.raxen.utils.Reload;
+import lombok.Getter;
+import org.bukkit.plugin.PluginManager;
+
+public class ListenerManager {
+
+ private final Raxen main;
+ private final PluginManager pm;
+ @Getter
+ private ServerPingEvent serverPingEvent;
+
+ public ListenerManager(Raxen main) {
+ this.main = main;
+ this.pm = main.getPm();
+ this.serverPingEvent = new ServerPingEvent(main);
+ }
+
+ public void register() {
+ this.pm.registerEvents(new JoinEvent(main), main);
+ this.pm.registerEvents(new LeaveEvent(main), main);
+ this.pm.registerEvents(new ArmorEvent(main), main);
+ this.pm.registerEvents(new ItemHandEvent(main), main);
+ this.pm.registerEvents(new Reload(), main);
+ this.pm.registerEvents(new TransactionEvent(main), main);
+ this.pm.registerEvents(main.getManager().getCommandManager().getItemListCommand().getItemListGui(), main);
+ this.pm.registerEvents(new DamageEntity(main), main);
+ this.pm.registerEvents(new SpawnEvent(main), main);
+ this.pm.registerEvents(new ClickBlockEvent(main), main);
+ this.pm.registerEvents(serverPingEvent, main);
+ this.pm.registerEvents(new CloseInventoryEvent(), main);
+
+ }
+}
diff --git a/src/main/java/gq/unurled/raxen/manager/ProtocolManager.java b/src/main/java/gq/unurled/raxen/manager/server/ProtocolManager.java
similarity index 95%
rename from src/main/java/gq/unurled/raxen/manager/ProtocolManager.java
rename to src/main/java/gq/unurled/raxen/manager/server/ProtocolManager.java
index cad78da..1fef008 100644
--- a/src/main/java/gq/unurled/raxen/manager/ProtocolManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/server/ProtocolManager.java
@@ -1,4 +1,4 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.server;
import com.comphenix.protocol.PacketType;
import com.comphenix.protocol.events.ListenerPriority;
@@ -9,6 +9,7 @@ import gq.unurled.raxen.Raxen;
import org.bukkit.entity.Player;
public class ProtocolManager {
+
private final Raxen main;
private com.comphenix.protocol.ProtocolManager manager;
diff --git a/src/main/java/gq/unurled/raxen/manager/ResourcePackManager.java b/src/main/java/gq/unurled/raxen/manager/server/ResourcePackManager.java
similarity index 97%
rename from src/main/java/gq/unurled/raxen/manager/ResourcePackManager.java
rename to src/main/java/gq/unurled/raxen/manager/server/ResourcePackManager.java
index dfd0b70..fb17278 100644
--- a/src/main/java/gq/unurled/raxen/manager/ResourcePackManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/server/ResourcePackManager.java
@@ -1,4 +1,4 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.server;
import gq.unurled.raxen.Raxen;
import gq.unurled.raxen.components.resourcepack.ResourcePack;
diff --git a/src/main/java/gq/unurled/raxen/manager/WorldManager.java b/src/main/java/gq/unurled/raxen/manager/server/WorldManager.java
similarity index 93%
rename from src/main/java/gq/unurled/raxen/manager/WorldManager.java
rename to src/main/java/gq/unurled/raxen/manager/server/WorldManager.java
index fcfe42f..44be053 100644
--- a/src/main/java/gq/unurled/raxen/manager/WorldManager.java
+++ b/src/main/java/gq/unurled/raxen/manager/server/WorldManager.java
@@ -1,6 +1,7 @@
-package gq.unurled.raxen.manager;
+package gq.unurled.raxen.manager.server;
import gq.unurled.raxen.Raxen;
+import gq.unurled.raxen.manager.entity.StorageManager;
import lombok.Getter;
import org.bukkit.Bukkit;
import org.bukkit.World;
@@ -23,7 +24,7 @@ public class WorldManager {
public WorldManager(Raxen main) {
this.main = main;
- this.sto = main.getStorageManager();
+ this.sto = main.getManager().getStorageManager();
if(!(new File(main.getDataFolder() + "/Worlds/").exists())) {
new File(main.getDataFolder() + "/Worlds/").mkdirs();
}
diff --git a/src/main/java/gq/unurled/raxen/utils/LuckPerm.java b/src/main/java/gq/unurled/raxen/utils/LuckPerm.java
deleted file mode 100644
index f790235..0000000
--- a/src/main/java/gq/unurled/raxen/utils/LuckPerm.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package gq.unurled.raxen.utils;
-
-import gq.unurled.raxen.Raxen;
-import lombok.Getter;
-import net.luckperms.api.LuckPerms;
-import org.bukkit.Bukkit;
-import org.bukkit.plugin.RegisteredServiceProvider;
-
-public class LuckPerm {
-
- private static RegisteredServiceProvider provider;
- @Getter
- private static LuckPerms api;
-
- public LuckPerm(Raxen main) {
- provider = Bukkit.getServicesManager().getRegistration(LuckPerms.class);
- }
-
- public static void register() {
- if (provider != null) {
- api = provider.getProvider();
- }
- }
-}
diff --git a/src/main/java/gq/unurled/raxen/utils/MongoDB.java b/src/main/java/gq/unurled/raxen/utils/MongoDB.java
deleted file mode 100644
index cb03bf1..0000000
--- a/src/main/java/gq/unurled/raxen/utils/MongoDB.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package gq.unurled.raxen.utils;
-
-import com.mongodb.ConnectionString;
-import com.mongodb.client.MongoClient;
-import com.mongodb.client.MongoClients;
-import com.mongodb.client.MongoCollection;
-import com.mongodb.client.MongoDatabase;
-import lombok.Getter;
-import org.bson.Document;
-import org.bukkit.Bukkit;
-
-import static gq.unurled.raxen.utils.Utils.colorTextComp;
-
-public class MongoDB {
- @Getter
- private MongoClient mongoClient;
- @Getter
- private MongoDatabase mongoDatabase;
- @Getter
- private MongoCollection mongoCollection;
- @Getter
- private MongoCollection mongoConfigs;
-
- public void connect() {
- ConnectionString connectionString = new ConnectionString("mongodb://localhost:27017");
- mongoClient = MongoClients.create(connectionString);
- mongoDatabase = mongoClient.getDatabase("Raxen");
- mongoCollection = mongoDatabase.getCollection("player");
- mongoConfigs = mongoDatabase.getCollection("config");
-
- Bukkit.getConsoleSender().sendMessage(colorTextComp("MongoDB connected!"));
- }
-
- public void close() {
- mongoClient.close();
-
- Bukkit.getConsoleSender().sendMessage(colorTextComp("MongoDB disconnected!"));
- }
-}
diff --git a/src/main/java/gq/unurled/raxen/utils/Mysql.java b/src/main/java/gq/unurled/raxen/utils/Mysql.java
deleted file mode 100644
index e59d448..0000000
--- a/src/main/java/gq/unurled/raxen/utils/Mysql.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package gq.unurled.raxen.utils;
-
-import gq.unurled.raxen.Raxen;
-import gq.unurled.raxen.config.Config;
-import gq.unurled.raxen.manager.StorageManager;
-import org.bukkit.entity.Player;
-
-import java.sql.SQLException;
-
-public class Mysql {
-
- private static String username;
- private static String password;
- private static String url;
-
- private Raxen main;
- private StorageManager sto;
- private Config config;
-
- public Mysql(Raxen main) {
- this.main = main;
- this.sto = main.getStorageManager();
- this.config = main.getConf();
- this.username = (String) config.getConfig().get("username");
- this.url = (String) config.getConfig().get("url");
- this.password = (String) config.getConfig().get("password");
-
- }
-
- public static void init() {
-
- }
-
- public static String get(Player player, String str) throws SQLException {
- return "False";
- }
-
- public static void connect() {
-
- }
-
- public static void disconnect() {
-
- }
-
-}
diff --git a/src/main/java/gq/unurled/raxen/utils/Utils.java b/src/main/java/gq/unurled/raxen/utils/Utils.java
index b4421d1..f9866d1 100644
--- a/src/main/java/gq/unurled/raxen/utils/Utils.java
+++ b/src/main/java/gq/unurled/raxen/utils/Utils.java
@@ -4,14 +4,19 @@ import gq.unurled.raxen.Raxen;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.TextComponent;
import net.kyori.adventure.text.minimessage.MiniMessage;
+import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
+import net.kyori.adventure.text.minimessage.tag.standard.StandardTags;
+import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
+import org.jetbrains.annotations.NotNull;
public class Utils {
@@ -20,12 +25,28 @@ public class Utils {
* @param stringToComponent a string
* @return a component
*/
- public static Component colorComp(String stringToComponent) {
- return MiniMessage.miniMessage().deserialize(stringToComponent);
+ public static @NotNull Component colorComp(String stringToComponent) {
+ MiniMessage minimessage = MiniMessage.builder()
+ .tags(TagResolver.builder()
+ .resolver(StandardTags.color())
+ .resolver(StandardTags.decorations())
+ .resolver(StandardTags.reset())
+ .build()
+ )
+ .build();
+ return minimessage.deserialize(stringToComponent);
}
- public static TextComponent colorTextComp(String stringToComponent) {
- return (TextComponent) MiniMessage.miniMessage().deserialize(stringToComponent);
+ public static @NotNull TextComponent colorTextComp(String stringToComponent) {
+ MiniMessage minimessage = MiniMessage.builder()
+ .tags(TagResolver.builder()
+ .resolver(StandardTags.color())
+ .resolver(StandardTags.decorations())
+ .resolver(StandardTags.reset())
+ .build()
+ )
+ .build();
+ return (TextComponent) minimessage.deserialize(stringToComponent);
}
/**
@@ -33,8 +54,29 @@ public class Utils {
* @param string a string
* @return a colored string
*/
- public static String colorString(String string) {
- return PlainTextComponentSerializer.plainText().serialize(MiniMessage.miniMessage().deserialize(string));
+ public static @NotNull String colorString(String string) {
+ MiniMessage minimessage = MiniMessage.builder()
+ .tags(TagResolver.builder()
+ .resolver(StandardTags.color())
+ .resolver(StandardTags.decorations())
+ .resolver(StandardTags.reset())
+ .build()
+ )
+ .build();
+ return LegacyComponentSerializer.legacyAmpersand().serialize(minimessage.deserialize(string));
+ }
+
+ public static String coloredString(String string) {
+ MiniMessage minimessage = MiniMessage.builder()
+ .tags(TagResolver.builder()
+ .resolver(StandardTags.color())
+ .resolver(StandardTags.decorations())
+ .resolver(StandardTags.reset())
+ .build()
+ )
+ .build();
+ return ChatColor.translateAlternateColorCodes('&', LegacyComponentSerializer.legacyAmpersand()
+ .serialize(minimessage.deserialize(string)));
}
public static String decolor(String string) {
@@ -61,6 +103,7 @@ public class Utils {
*/
public static void debug(String... strings) {
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
+ assert main != null;
FileConfiguration config = main.getConfig();
if(config.getBoolean("debug")) {
for(String string : strings) {
@@ -76,6 +119,7 @@ public class Utils {
*/
public static void debug(FileConfiguration config, String... strings) {
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
+ assert main != null;
if(config.getBoolean("debug")) {
for(String string : strings) {
main.getLogger().info(string);
diff --git a/src/main/java/gq/unurled/raxen/utils/Vault.java b/src/main/java/gq/unurled/raxen/utils/Vault.java
deleted file mode 100644
index 8f97219..0000000
--- a/src/main/java/gq/unurled/raxen/utils/Vault.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package gq.unurled.raxen.utils;
-
-import gq.unurled.raxen.Raxen;
-import lombok.Getter;
-import net.milkbowl.vault.economy.Economy;
-import org.bukkit.Bukkit;
-import org.bukkit.entity.Player;
-import org.bukkit.plugin.RegisteredServiceProvider;
-
-import java.text.DecimalFormat;
-
-import static gq.unurled.raxen.utils.Utils.error;
-
-public class Vault {
- @Getter
- private Economy econ = null;
- //econ.depositPlayer(player,amount)
- //econ.withdrawPlayer(player,amount)
- //econ.getBalance(player);
-
-
- private static Raxen main;
-
- public Vault(Raxen main) {
- this.main = main;
- setupEconomy();
- }
-
- private void setupEconomy() {
- if (main.getServer().getPluginManager().getPlugin("Vault") == null) {
- error((Raxen) Bukkit.getPluginManager().getPlugin("Raxen"),"Need to install plugin Vault. (https://github.com/milkbowl/Vault)");
- return;
- }
- RegisteredServiceProvider rsp = main.getServer().getServicesManager().getRegistration(Economy.class);
- if (rsp == null) {
- error((Raxen) Bukkit.getPluginManager().getPlugin("Raxen"),"Some bug happend in the initialisation of Vault and Raxen.");
- return;
- }
- econ = rsp.getProvider();
- return;
- }
-
- public String getBalanceString(Player player) {
- double bal = econ.getBalance(player);
- DecimalFormat format = new DecimalFormat("#,###.00");
- return format.format(bal);
- }
-}
diff --git a/src/main/java/gq/unurled/raxen/utils/WorldEdit.java b/src/main/java/gq/unurled/raxen/utils/WorldEdit.java
deleted file mode 100644
index 3bf3bcd..0000000
--- a/src/main/java/gq/unurled/raxen/utils/WorldEdit.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package gq.unurled.raxen.utils;
-
-public class WorldEdit {
-
-}
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 0a6ee89..ce65f50 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -3,7 +3,7 @@ version: '${version}'
main: gq.unurled.raxen.Raxen
author: unurled
api-version: 1.18
-depend: [ProtocolLib]
+depend: [ProtocolLib, PlaceholderAPI]
softdepend: [AureliumSkills, LuckPerms]
commands: