init 14
This commit is contained in:
@@ -11,6 +11,7 @@ import org.bukkit.Location
|
|||||||
import org.bukkit.Material
|
import org.bukkit.Material
|
||||||
import org.bukkit.enchantments.Enchantment
|
import org.bukkit.enchantments.Enchantment
|
||||||
import org.bukkit.entity.Player
|
import org.bukkit.entity.Player
|
||||||
|
import org.bukkit.event.inventory.InventoryType
|
||||||
import org.bukkit.inventory.ItemStack
|
import org.bukkit.inventory.ItemStack
|
||||||
import org.bukkit.inventory.meta.CompassMeta
|
import org.bukkit.inventory.meta.CompassMeta
|
||||||
import org.bukkit.scheduler.BukkitRunnable
|
import org.bukkit.scheduler.BukkitRunnable
|
||||||
@@ -31,6 +32,8 @@ class Console {
|
|||||||
*/
|
*/
|
||||||
val gameRules = GameRules()
|
val gameRules = GameRules()
|
||||||
|
|
||||||
|
val ruleBook = Bukkit.createInventory(null, InventoryType.HOPPER, Component.text("Game Rules"))
|
||||||
|
|
||||||
var stage: GameStage = GameStage.PREPARING
|
var stage: GameStage = GameStage.PREPARING
|
||||||
private set
|
private set
|
||||||
|
|
||||||
|
|||||||
40
src/main/kotlin/xyz/fortern/minehunt/rule/RuleBook.kt
Normal file
40
src/main/kotlin/xyz/fortern/minehunt/rule/RuleBook.kt
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
package xyz.fortern.minehunt.rule
|
||||||
|
|
||||||
|
import net.kyori.adventure.text.Component
|
||||||
|
import org.bukkit.Bukkit
|
||||||
|
import org.bukkit.Material
|
||||||
|
import org.bukkit.inventory.ItemFlag
|
||||||
|
import org.bukkit.inventory.ItemStack
|
||||||
|
import xyz.fortern.minehunt.util.Util
|
||||||
|
|
||||||
|
// TODO 使用物品栏修改游戏规则
|
||||||
|
class RuleBook {
|
||||||
|
val rootInventory = Bukkit.createInventory(null, 9, Component.text("点击任意一个规则项进行设置")).also {
|
||||||
|
Util.fillItem(it, filler)
|
||||||
|
val rule1 = ItemStack(Material.CLOCK)
|
||||||
|
val itemMeta1 = rule1.itemMeta
|
||||||
|
itemMeta1.customName(Component.text(RuleKey.HUNTER_READY_CD.info))
|
||||||
|
itemMeta1.lore(listOf(Component.text(RuleKey.HUNTER_READY_CD.name)))
|
||||||
|
it.setItem(1, rule1)
|
||||||
|
val rule2 = ItemStack(Material.CLOCK)
|
||||||
|
val itemMeta2 = rule2.itemMeta
|
||||||
|
itemMeta2.customName(Component.text(RuleKey.HUNTER_RESPAWN_CD.info))
|
||||||
|
itemMeta2.lore(listOf(Component.text(RuleKey.HUNTER_RESPAWN_CD.name)))
|
||||||
|
it.setItem(5, rule2)
|
||||||
|
val rule3 = ItemStack(Material.CLOCK)
|
||||||
|
val itemMeta3 = rule3.itemMeta
|
||||||
|
itemMeta3.customName(Component.text(RuleKey.FRIENDLY_FIRE.info))
|
||||||
|
itemMeta3.lore(listOf(Component.text(RuleKey.FRIENDLY_FIRE.name)))
|
||||||
|
it.setItem(9, rule3)
|
||||||
|
}
|
||||||
|
|
||||||
|
private val filler = ItemStack(Material.BLACK_STAINED_GLASS_PANE).also {
|
||||||
|
it.addItemFlags(
|
||||||
|
ItemFlag.HIDE_ATTRIBUTES,
|
||||||
|
ItemFlag.HIDE_DESTROYS,
|
||||||
|
ItemFlag.HIDE_ENCHANTS,
|
||||||
|
ItemFlag.HIDE_PLACED_ON,
|
||||||
|
ItemFlag.HIDE_UNBREAKABLE
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
12
src/main/kotlin/xyz/fortern/minehunt/util/Util.kt
Normal file
12
src/main/kotlin/xyz/fortern/minehunt/util/Util.kt
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
package xyz.fortern.minehunt.util
|
||||||
|
|
||||||
|
import org.bukkit.inventory.Inventory
|
||||||
|
import org.bukkit.inventory.ItemStack
|
||||||
|
|
||||||
|
object Util {
|
||||||
|
fun fillItem(inventory: Inventory, itemStack: ItemStack) {
|
||||||
|
for (i in 0 until inventory.size) {
|
||||||
|
inventory.setItem(i, itemStack)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user