forked from SteamWar/SteamWar
Fix TNTLeague
This commit is contained in:
@@ -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")
|
||||||
|
|||||||
Reference in New Issue
Block a user