Вопрос Помогите с печками

Версия Minecraft
1.17.X

BaNoF_

Пользователь
Сообщения
10
Веб-сайт
vitamark.pro
Пишу плагин на печку скорости но не получается ускорить плавку вот мой код ниже что с ним не так пишу на 1.17.1 ( kotlin )


Kotlin:
Код:
package ru.mine.bitem

import org.bukkit.Bukkit
import org.bukkit.Material
import org.bukkit.NamespacedKey
import org.bukkit.block.Furnace
import org.bukkit.command.*
import org.bukkit.entity.Entity
import org.bukkit.entity.Player
import org.bukkit.event.EventHandler
import org.bukkit.event.Listener
import org.bukkit.event.block.BlockPlaceEvent
import org.bukkit.event.inventory.FurnaceBurnEvent
import org.bukkit.event.inventory.FurnaceSmeltEvent
import org.bukkit.inventory.ItemStack
import org.bukkit.persistence.PersistentDataType
import org.bukkit.plugin.java.JavaPlugin
import sun.invoke.empty.Empty

class BItem : JavaPlugin(), Listener {

companion object {
lateinit var instance: BItem
    }

override fun onEnable() {
instance = this
        getCommand("givefastfurnance")!!.setExecutor(cmd())
getCommand("givefastfurnance")!!.setTabCompleter(cmd());
server.pluginManager.registerEvents(this, this)
    }


@EventHandler
    fun onFurnaceBurnEvent(event: FurnaceSmeltEvent) {
val block = event.block
        if (block.type == Material.FURNACE) {
val furnace = block.state as Furnace
val container = furnace.persistentDataContainer
            val key = NamespacedKey(instance, "fast_furnace")
furnace.burnTime/3
        }
    }
}
class cmd () : TabExecutor {
override fun onCommand(sender: CommandSender, command: Command, label: String, args: Array<out String>): Boolean {
if (sender is Player) {
val player = sender
val item = ItemStack(Material.FURNACE)
val meta = item.itemMeta
            val container = meta.persistentDataContainer
            val key = NamespacedKey(BItem.instance, "fast_furnace")
container.set(key, PersistentDataType.BYTE, 1)
item.itemMeta = meta
player.inventory.addItem(item)
player.sendMessage("Вы получили ускоренную печь!")
return true
        }
return false
    }

override fun onTabComplete(sender: CommandSender, command: Command, alias: String, args: Array<out String>): List<String> { // блять это то что такое
        return if (args.size > 0) {
emptyList();
} else emptyList()
    }
}
 
Последнее редактирование модератором:
не не снейро сети а с ориг спигота там писали это
Вам необходимо зарегистрироваться для просмотра изображений-вложений
вот ивент который отвечает за начинание плавления предмета, а ты обрабатываешь именно сжигание топлива
Вам необходимо зарегистрироваться для просмотра изображений-вложений

И вот метод изменения времени плавления

Код:
@EventHandler
fun onFurnaceBurnEvent(event: FurnaceStartSmeltEvent) {
    event.totalCookTime /= 2 // Во сколько раз быстрее
}
 
спа
вот ивент который отвечает за начинание плавления предмета, а ты обрабатываешь именно сжигание топлива
Вам необходимо зарегистрироваться для просмотра изображений-вложений

И вот метод изменения времени плавления

Код:
@EventHandler
fun onFurnaceBurnEvent(event: FurnaceStartSmeltEvent) {
    event.totalCookTime /= 2 // Во сколько раз быстрее
}
Спасибо тебе огромное, я когда искал проигнорил это
 
Назад
Сверху Снизу