diff --git a/.gitignore b/.gitignore index cc0779f..f4a3165 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ api/ libs/ *.iml +gradle-wrapper.properties .gradle/ *.lock @@ -125,3 +126,4 @@ buildNumber.properties # Common working directory run/ /.gradle/ +/gradle/ diff --git a/README.md b/README.md index bbc5824..07cc400 100644 --- a/README.md +++ b/README.md @@ -5,9 +5,9 @@ Minecraft Plugin that do multiple stuff. ## Future of the Plugin/to do -![Schema of Raxen](./main.svg) +![Schema of Raxen](docs/main.svg) -[FUTURE.md](/FUTURE.md) +[FUTURE.md](/docs/FUTURE.md) ## Installing diff --git a/FUTURE.md b/docs/FUTURE.md similarity index 100% rename from FUTURE.md rename to docs/FUTURE.md diff --git a/main.drawio b/docs/main.drawio similarity index 100% rename from main.drawio rename to docs/main.drawio diff --git a/main.png b/docs/main.png similarity index 100% rename from main.png rename to docs/main.png diff --git a/main.svg b/docs/main.svg similarity index 100% rename from main.svg rename to docs/main.svg diff --git a/main1.drawio b/docs/main1.drawio similarity index 100% rename from main1.drawio rename to docs/main1.drawio 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 new file mode 100644 index 0000000..55178fe --- /dev/null +++ b/src/main/java/gq/unurled/raxen/components/items/custom/weapon/Dager.java @@ -0,0 +1,54 @@ +package gq.unurled.raxen.components.items.custom.weapon; + +import de.tr7zw.nbtapi.NBTItem; +import gq.unurled.raxen.Raxen; +import lombok.Getter; +import net.kyori.adventure.text.Component; +import org.bukkit.Material; +import org.bukkit.attribute.Attribute; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.inventory.ItemFlag; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; + +import java.util.ArrayList; +import java.util.List; + +import static gq.unurled.raxen.components.items.NBT.*; +import static gq.unurled.raxen.utils.Utils.color; + +public class Dager { + + private Raxen main; + + @Getter + ItemStack dager; + + public void buildItem() { + dager = new ItemStack(Material.IRON_SWORD); + ItemMeta itm = dager.getItemMeta(); + itm.displayName(Component.text(color("&bDager"))); + itm.addEnchant(Enchantment.PROTECTION_ENVIRONMENTAL, 1, false); + itm.addItemFlags(ItemFlag.HIDE_ATTRIBUTES, ItemFlag.HIDE_ENCHANTS); + itm.setUnbreakable(true); + List lore = new ArrayList<>(); + lore.add(Component.text("hallooo")); + itm.lore(lore); + dager.setItemMeta(itm); + NBTItem nbti = new NBTItem(dager); + nbti.setString(ID, "DAGER"); + nbti.setInteger(SPEED, 100); + nbti.setInteger(STRENGTH, 50); + nbti.setString(CUSTOM_ABILITY, "throwing_dager"); + nbti.setDouble(DROP_RATE, 50.0); + dager = nbti.getItem(); + } + + /** + * need Raxen main to be set before calling this method. + */ + public void register() { + main.getItemManager().registerItem(dager); + } + +} diff --git a/src/main/java/gq/unurled/raxen/components/player/classes/Class.java b/src/main/java/gq/unurled/raxen/components/player/classes/Class.java index 94e2183..d7a0421 100644 --- a/src/main/java/gq/unurled/raxen/components/player/classes/Class.java +++ b/src/main/java/gq/unurled/raxen/components/player/classes/Class.java @@ -17,11 +17,14 @@ public class Class { String ID; @Getter ItemStack placeHolder; + @Getter + Integer max_level; - public Class(String name, String colorName, String ID, String itemPlaceHolder) { + public Class(String name, String colorName, String ID, String itemPlaceHolder, Integer max_level) { this.name = name; this.ID = ID; this.placeHolder = new ItemStack(Material.getMaterial(itemPlaceHolder)); this.placeHolder.getItemMeta().displayName(Component.text(color(colorName))); + this.max_level = max_level; } } 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 40a2d1e..14aeab3 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 @@ -75,6 +75,12 @@ public class Classes { public resultClass registerClass(FileConfiguration file) { String id = file.getString("id"); debug(id); - return new resultClass(new Class(file.getString("name"), file.getString("color-name"), id, file.getString("item_placeholder")), id); + return new resultClass(new Class(file.getString("name"), file.getString("color-name"), id, file.getString("item_placeholder"), file.getInt("max_level")), id); + } + + public void registerClass(Class clas) { + debug(clas.getID()); + resultClass result = new resultClass(clas, clas.getID()); + classes.put(result.getId(), result.getClas()); } } diff --git a/src/main/java/gq/unurled/raxen/components/player/classes/list/Assassin.java b/src/main/java/gq/unurled/raxen/components/player/classes/list/Assassin.java new file mode 100644 index 0000000..2323b77 --- /dev/null +++ b/src/main/java/gq/unurled/raxen/components/player/classes/list/Assassin.java @@ -0,0 +1,19 @@ +package gq.unurled.raxen.components.player.classes.list; + +import gq.unurled.raxen.components.items.custom.weapon.Dager; +import org.bukkit.inventory.ItemStack; + +public class Assassin { + String ID = "ASSASSIN"; + String name = "Assassin"; + String colorName = "&cAssassin"; + Integer max_level = 100; + + ItemStack placeHolder; + + public Assassin() { + Dager dager = new Dager(); + dager.buildItem(); + placeHolder = dager.getDager(); + } +} diff --git a/src/main/java/gq/unurled/raxen/manager/ItemManager.java b/src/main/java/gq/unurled/raxen/manager/ItemManager.java index f544625..0f35115 100644 --- a/src/main/java/gq/unurled/raxen/manager/ItemManager.java +++ b/src/main/java/gq/unurled/raxen/manager/ItemManager.java @@ -132,4 +132,14 @@ public class ItemManager { it = setLoreFromNBT(it); list.put(file.getString("customId"), it); } + + /** + * register Item into the custom item list + * Need that the Itm is already set with custom nbt! + * @param itm an ItemStack with already set custom nbt using NBTapi + */ + public void registerItem(ItemStack itm) { + NBTItem it = new NBTItem(itm); + list.put(it.getString("ID"), itm); + } } diff --git a/src/main/java/gq/unurled/raxen/manager/ProtocolManager.java b/src/main/java/gq/unurled/raxen/manager/ProtocolManager.java index b4af713..cad78da 100644 --- a/src/main/java/gq/unurled/raxen/manager/ProtocolManager.java +++ b/src/main/java/gq/unurled/raxen/manager/ProtocolManager.java @@ -23,7 +23,7 @@ public class ProtocolManager { public void onPacketReceiving(PacketEvent event) { Player player = event.getPlayer(); PacketContainer packet = event.getPacket(); - //if(player.) + // if(player.) } }); }