Fix TNTLeague

This commit is contained in:
2025-01-20 16:46:53 +01:00
parent 747bb1055d
commit eacae09e4f
3 changed files with 5 additions and 7 deletions
@@ -22,14 +22,13 @@ package de.steamwar.kotlin
import de.steamwar.inventory.SWInventory import de.steamwar.inventory.SWInventory
import org.bukkit.entity.Player import org.bukkit.entity.Player
import org.bukkit.event.inventory.InventoryClickEvent import org.bukkit.event.inventory.InventoryClickEvent
import org.bukkit.inventory.Inventory
import org.bukkit.inventory.ItemStack import org.bukkit.inventory.ItemStack
abstract class KotlinInventory(val player: Player) { abstract class KotlinInventory(val player: Player) {
private val inv: SWInventory by lazy { SWInventory(player) { createInventory() } } private val inv: SWInventory by lazy { createInventory() }
abstract fun createInventory(): Inventory abstract fun createInventory(): SWInventory
fun open() = inv.open() fun open() = inv.open()
@@ -19,6 +19,7 @@
package de.steamwar.tntleague.inventory package de.steamwar.tntleague.inventory
import de.steamwar.inventory.SWInventory
import de.steamwar.kotlin.KotlinInventory import de.steamwar.kotlin.KotlinInventory
import de.steamwar.tntleague.config.TNTLeagueConfig import de.steamwar.tntleague.config.TNTLeagueConfig
import de.steamwar.tntleague.inventory.DealerInventory.Companion.buyItem import de.steamwar.tntleague.inventory.DealerInventory.Companion.buyItem
@@ -30,7 +31,7 @@ import org.bukkit.entity.Player
import org.bukkit.inventory.Inventory import org.bukkit.inventory.Inventory
class CategoryInventory(player: Player, category: TNTLeagueConfig.ItemCategory): KotlinInventory(player) { class CategoryInventory(player: Player, category: TNTLeagueConfig.ItemCategory): KotlinInventory(player) {
override fun createInventory(): Inventory = Bukkit.createInventory(null, 9 * 6, Component.text(message.parse("DEALER", player))) override fun createInventory() = SWInventory(player, 9 * 6, message.parse("DEALER", player))
init { init {
itemsByCategory[category]!!.forEachIndexed { index, item -> itemsByCategory[category]!!.forEachIndexed { index, item ->
@@ -41,8 +41,6 @@ import java.util.*
class DealerInventory(player: Player): KotlinInventory(player) { class DealerInventory(player: Player): KotlinInventory(player) {
private val inv: SWInventory = SWInventory(player) { createInventory() }
init { init {
this[10] = SWItem(Material.REDSTONE_BLOCK, message.parse("DEALER_REDSTONE", player)).itemStack to openCategory(TNTLeagueConfig.ItemCategory.REDSTONE) this[10] = SWItem(Material.REDSTONE_BLOCK, message.parse("DEALER_REDSTONE", player)).itemStack to openCategory(TNTLeagueConfig.ItemCategory.REDSTONE)
this[12] = SWItem(Material.END_STONE, message.parse("DEALER_BLOCKS", player)).itemStack to openCategory(TNTLeagueConfig.ItemCategory.BLOCKS) this[12] = SWItem(Material.END_STONE, message.parse("DEALER_BLOCKS", player)).itemStack to openCategory(TNTLeagueConfig.ItemCategory.BLOCKS)
@@ -56,7 +54,7 @@ class DealerInventory(player: Player): KotlinInventory(player) {
private fun openCategory(cat: TNTLeagueConfig.ItemCategory): (e: InventoryClickEvent) -> Unit = { CategoryInventory(player, cat).open() } private fun openCategory(cat: TNTLeagueConfig.ItemCategory): (e: InventoryClickEvent) -> Unit = { CategoryInventory(player, cat).open() }
override fun createInventory(): Inventory = plugin.server.createInventory(null, 6 * 9, Component.text(message.parse("DEALER", player))) override fun createInventory() = SWInventory(player, 9 * 6, message.parse("DEALER", player))
companion object { companion object {
private val priceKey = NamespacedKey(plugin, "price") private val priceKey = NamespacedKey(plugin, "price")