diff --git a/src/main/java/me/fivevl/itemadder/Item.kt b/src/main/java/me/fivevl/itemadder/Item.kt new file mode 100644 index 0000000..51822bb --- /dev/null +++ b/src/main/java/me/fivevl/itemadder/Item.kt @@ -0,0 +1,21 @@ +package me.fivevl.itemadder + +import net.kyori.adventure.text.Component +import org.bukkit.Material +import org.bukkit.inventory.ItemStack + +class Item(uniqueName: String, name: Component, rarity: Rarity, material: Material, type: Type, vararg lore: String) { + object Items { + val items = HashMap() + } + + lateinit var finalItem: ItemStack + + init { + val item = ItemStack(material) + val meta = item.itemMeta + meta.displayName(name) + meta.lore(Utils.loreBuilder()) + Items.items[uniqueName] = this + } +} \ No newline at end of file diff --git a/src/main/java/me/fivevl/itemadder/Main.kt b/src/main/java/me/fivevl/itemadder/Main.kt index eec1cdc..7139c22 100644 --- a/src/main/java/me/fivevl/itemadder/Main.kt +++ b/src/main/java/me/fivevl/itemadder/Main.kt @@ -1,9 +1,10 @@ package me.fivevl.itemadder +import org.bukkit.Material import org.bukkit.plugin.java.JavaPlugin class Main : JavaPlugin() { override fun onEnable() { - + Item("TEST_ITEM", Utils.color("Test Item"), Rarity.EPIC, Material.STONE_SWORD, Type.SWORD, Utils.loreBuilder("Test Lore")) } } \ No newline at end of file diff --git a/src/main/java/me/fivevl/itemadder/Rarity.kt b/src/main/java/me/fivevl/itemadder/Rarity.kt index 8b014af..5b366dd 100644 --- a/src/main/java/me/fivevl/itemadder/Rarity.kt +++ b/src/main/java/me/fivevl/itemadder/Rarity.kt @@ -1,13 +1,11 @@ package me.fivevl.itemadder -import net.kyori.adventure.text.Component - -enum class Rarity(val formatted: Component) { - COMMON(Utils.color("COMMON")), - UNCOMMON(Utils.color("UNCOMMON")), - RARE(Utils.color("RARE")), - EPIC(Utils.color("EPIC")), - LEGENDARY(Utils.color("LEGENDARY")), - MYTHIC(Utils.color("MYTHIC")), - SPECIAL(Utils.color("SPECIAL")) +enum class Rarity(val formatted: String) { + COMMON("COMMON"), + UNCOMMON("UNCOMMON"), + RARE("RARE"), + EPIC("EPIC"), + LEGENDARY("LEGENDARY"), + MYTHIC("MYTHIC"), + SPECIAL("SPECIAL") } \ No newline at end of file diff --git a/src/main/java/me/fivevl/itemadder/Type.kt b/src/main/java/me/fivevl/itemadder/Type.kt new file mode 100644 index 0000000..7acc6bb --- /dev/null +++ b/src/main/java/me/fivevl/itemadder/Type.kt @@ -0,0 +1,8 @@ +package me.fivevl.itemadder + +enum class Type(type: String) { + SWORD("SWORD"), + PICKAXE("PICKAXE"), + AXE("AXE"), + ITEM("ITEM") +} \ No newline at end of file diff --git a/src/main/java/me/fivevl/itemadder/Utils.kt b/src/main/java/me/fivevl/itemadder/Utils.kt index 9ec647d..d9dd59a 100644 --- a/src/main/java/me/fivevl/itemadder/Utils.kt +++ b/src/main/java/me/fivevl/itemadder/Utils.kt @@ -7,4 +7,11 @@ object Utils { fun color(s: String): Component { return MiniMessage.miniMessage().deserialize(s) } + fun loreBuilder(vararg arr: String): ArrayList { + val lore = ArrayList() + for (s in arr) { + lore.add(color(s)) + } + return lore + } } \ No newline at end of file