mirror of
https://github.com/alexcrea/CustomAnvil.git
synced 2026-06-23 08:14:00 +02:00
dissalow use of gui and add warning for folia.
This commit is contained in:
parent
80aeb165cc
commit
1ec4bc27f2
3 changed files with 22 additions and 7 deletions
|
|
@ -6,7 +6,7 @@ import org.bukkit.entity.Entity
|
|||
import org.bukkit.plugin.Plugin
|
||||
import java.util.function.Consumer
|
||||
|
||||
class PaperScheduler : TaskScheduler {
|
||||
class FoliaScheduler : TaskScheduler {
|
||||
override fun scheduleGlobally(plugin: Plugin, task: Runnable, time: Long): Any? {
|
||||
if(time < 1){
|
||||
return Bukkit.getGlobalRegionScheduler().run(
|
||||
|
|
@ -39,11 +39,11 @@ class PaperScheduler : TaskScheduler {
|
|||
}
|
||||
|
||||
companion object {
|
||||
fun isPaper(): Boolean {
|
||||
fun isFolia(): Boolean {
|
||||
try {
|
||||
Bukkit::class.java.getDeclaredMethod("getGlobalRegionScheduler")
|
||||
Class.forName("io.papermc.paper.threadedregions.RegionizedServer")
|
||||
return true
|
||||
} catch (e: NoSuchMethodException) {
|
||||
} catch (e: ClassNotFoundException) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
|
@ -5,6 +5,7 @@ import org.bukkit.command.Command
|
|||
import org.bukkit.command.CommandExecutor
|
||||
import org.bukkit.command.CommandSender
|
||||
import org.bukkit.entity.HumanEntity
|
||||
import xyz.alexcrea.cuanvil.dependency.DependencyManager
|
||||
import xyz.alexcrea.cuanvil.gui.config.MainConfigGui
|
||||
import xyz.alexcrea.cuanvil.gui.util.GuiGlobalActions
|
||||
|
||||
|
|
@ -15,6 +16,15 @@ class EditConfigExecutor : CommandExecutor {
|
|||
sender.sendMessage(GuiGlobalActions.NO_EDIT_PERM)
|
||||
return false
|
||||
}
|
||||
if(DependencyManager.isFolia){
|
||||
sender.sendMessage("§cIt look like you are using Folia. Sadly Custom Anvil do not support Config gui for Folia.")
|
||||
sender.sendMessage("§eIt is may come in a future version.")
|
||||
sender.sendMessage("")
|
||||
sender.sendMessage("§eCurrently you need to edit manually the config or copy from another server (spigot or better)")
|
||||
sender.sendMessage("§eThen /anvilconfigreload after config file is edited")
|
||||
return false
|
||||
}
|
||||
|
||||
if (sender !is HumanEntity) return false
|
||||
MainConfigGui.getInstance().show(sender)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package xyz.alexcrea.cuanvil.dependency
|
||||
|
||||
import io.delilaheve.CustomAnvil
|
||||
import org.bukkit.Bukkit
|
||||
import org.bukkit.event.inventory.InventoryClickEvent
|
||||
import org.bukkit.event.inventory.PrepareAnvilEvent
|
||||
|
|
@ -8,11 +9,12 @@ import xyz.alexcrea.cuanvil.config.ConfigHolder
|
|||
import xyz.alexcrea.cuanvil.dependency.packet.PacketManager
|
||||
import xyz.alexcrea.cuanvil.dependency.packet.PacketManagerSelector
|
||||
import xyz.alexcrea.cuanvil.dependency.scheduler.BukkitScheduler
|
||||
import xyz.alexcrea.cuanvil.dependency.scheduler.PaperScheduler
|
||||
import xyz.alexcrea.cuanvil.dependency.scheduler.FoliaScheduler
|
||||
import xyz.alexcrea.cuanvil.dependency.scheduler.TaskScheduler
|
||||
|
||||
object DependencyManager {
|
||||
|
||||
var isFolia: Boolean = false
|
||||
lateinit var scheduler: TaskScheduler
|
||||
lateinit var packetManager: PacketManager
|
||||
var enchantmentSquaredCompatibility: EnchantmentSquaredDependency? = null
|
||||
|
|
@ -23,9 +25,12 @@ object DependencyManager {
|
|||
val pluginManager = Bukkit.getPluginManager()
|
||||
|
||||
// Bukkit or Paper scheduler ?
|
||||
scheduler = if(PaperScheduler.isPaper()) PaperScheduler()
|
||||
else BukkitScheduler()
|
||||
isFolia = FoliaScheduler.isFolia()
|
||||
scheduler = if(isFolia) {
|
||||
CustomAnvil.instance.logger.info("Folia detected... Custom Anvil Folia support is experimental. issues are more likely to happens.")
|
||||
|
||||
FoliaScheduler()
|
||||
} else BukkitScheduler()
|
||||
|
||||
// Packet Manager
|
||||
val forceProtocolib = ConfigHolder.DEFAULT_CONFIG.config.getBoolean("force_protocolib", false)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue