Make "PluginInstance" available internally
This commit is contained in:
@@ -6,7 +6,7 @@ import net.axay.kspigot.event.listen
|
|||||||
import net.axay.kspigot.extensions.bukkit.content
|
import net.axay.kspigot.extensions.bukkit.content
|
||||||
import net.axay.kspigot.items.itemStack
|
import net.axay.kspigot.items.itemStack
|
||||||
import net.axay.kspigot.items.meta
|
import net.axay.kspigot.items.meta
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.Material
|
import org.bukkit.Material
|
||||||
import org.bukkit.NamespacedKey
|
import org.bukkit.NamespacedKey
|
||||||
import org.bukkit.entity.Player
|
import org.bukkit.entity.Player
|
||||||
@@ -67,7 +67,7 @@ internal abstract class PlayerInputBook<T>(
|
|||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
val idKey = NamespacedKey(KSpigotMainInstance, "kspigot_bookinput_id")
|
val idKey = NamespacedKey(PluginInstance, "kspigot_bookinput_id")
|
||||||
|
|
||||||
internal val usedIDs = ArrayList<Int>()
|
internal val usedIDs = ArrayList<Int>()
|
||||||
|
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
package net.axay.kspigot.config
|
package net.axay.kspigot.config
|
||||||
|
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
class PluginFile(path: String, child: String? = null) : File(
|
class PluginFile(path: String, child: String? = null) : File(
|
||||||
"${KSpigotMainInstance.dataFolder}",
|
"${PluginInstance.dataFolder}",
|
||||||
if (child == null) path else File(path, child).path
|
if (child == null) path else File(path, child).path
|
||||||
)
|
)
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
package net.axay.kspigot.event
|
package net.axay.kspigot.event
|
||||||
|
|
||||||
import net.axay.kspigot.extensions.pluginManager
|
import net.axay.kspigot.extensions.pluginManager
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.event.Event
|
import org.bukkit.event.Event
|
||||||
import org.bukkit.event.EventPriority
|
import org.bukkit.event.EventPriority
|
||||||
import org.bukkit.event.HandlerList
|
import org.bukkit.event.HandlerList
|
||||||
@@ -25,7 +25,7 @@ inline fun <reified T : Event> Listener.register(
|
|||||||
ignoreCancelled: Boolean = false,
|
ignoreCancelled: Boolean = false,
|
||||||
noinline executor: (Listener, Event) -> Unit,
|
noinline executor: (Listener, Event) -> Unit,
|
||||||
) {
|
) {
|
||||||
pluginManager.registerEvent(T::class.java, this, priority, executor, KSpigotMainInstance, ignoreCancelled)
|
pluginManager.registerEvent(T::class.java, this, priority, executor, PluginInstance, ignoreCancelled)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -52,7 +52,7 @@ inline fun <reified T : Event> SingleListener<T>.register() {
|
|||||||
this,
|
this,
|
||||||
priority,
|
priority,
|
||||||
{ _, event -> (event as? T)?.let { this.onEvent(it) } },
|
{ _, event -> (event as? T)?.let { this.onEvent(it) } },
|
||||||
KSpigotMainInstance,
|
PluginInstance,
|
||||||
ignoreCancelled
|
ignoreCancelled
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
package net.axay.kspigot.extensions
|
package net.axay.kspigot.extensions
|
||||||
|
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.Bukkit
|
import org.bukkit.Bukkit
|
||||||
import org.bukkit.NamespacedKey
|
import org.bukkit.NamespacedKey
|
||||||
import org.bukkit.command.CommandSender
|
import org.bukkit.command.CommandSender
|
||||||
@@ -46,4 +46,4 @@ val console get() = Bukkit.getConsoleSender()
|
|||||||
/**
|
/**
|
||||||
* Shortcut for creating a new [NamespacedKey]
|
* Shortcut for creating a new [NamespacedKey]
|
||||||
*/
|
*/
|
||||||
fun pluginKey(key: String) = NamespacedKey(KSpigotMainInstance, key)
|
fun pluginKey(key: String) = NamespacedKey(PluginInstance, key)
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
package net.axay.kspigot.extensions.bukkit
|
package net.axay.kspigot.extensions.bukkit
|
||||||
|
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.command.CommandExecutor
|
import org.bukkit.command.CommandExecutor
|
||||||
import org.bukkit.command.TabCompleter
|
import org.bukkit.command.TabCompleter
|
||||||
|
|
||||||
@@ -10,7 +10,7 @@ import org.bukkit.command.TabCompleter
|
|||||||
* @return If the command was registered successfully.
|
* @return If the command was registered successfully.
|
||||||
*/
|
*/
|
||||||
fun CommandExecutor.register(commandName: String): Boolean {
|
fun CommandExecutor.register(commandName: String): Boolean {
|
||||||
KSpigotMainInstance.getCommand(commandName)?.let {
|
PluginInstance.getCommand(commandName)?.let {
|
||||||
it.setExecutor(this)
|
it.setExecutor(this)
|
||||||
if (this is TabCompleter)
|
if (this is TabCompleter)
|
||||||
it.tabCompleter = this
|
it.tabCompleter = this
|
||||||
|
@@ -1,28 +1,28 @@
|
|||||||
package net.axay.kspigot.extensions.bukkit
|
package net.axay.kspigot.extensions.bukkit
|
||||||
|
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import net.md_5.bungee.api.ChatColor
|
import net.md_5.bungee.api.ChatColor
|
||||||
import org.bukkit.command.CommandSender
|
import org.bukkit.command.CommandSender
|
||||||
import org.bukkit.plugin.Plugin
|
import org.bukkit.plugin.Plugin
|
||||||
|
|
||||||
/** @see printColoredPrefix */
|
/** @see printColoredPrefix */
|
||||||
fun CommandSender.print(text: String, plugin: Plugin? = KSpigotMainInstance) =
|
fun CommandSender.print(text: String, plugin: Plugin? = PluginInstance) =
|
||||||
printColoredPrefix(text, ChatColor.RESET, plugin?.name ?: "INFO", ChatColor.GRAY)
|
printColoredPrefix(text, ChatColor.RESET, plugin?.name ?: "INFO", ChatColor.GRAY)
|
||||||
|
|
||||||
/** @see printColoredPrefix */
|
/** @see printColoredPrefix */
|
||||||
fun CommandSender.info(text: String, plugin: Plugin? = KSpigotMainInstance) =
|
fun CommandSender.info(text: String, plugin: Plugin? = PluginInstance) =
|
||||||
printColoredPrefix(text, ChatColor.WHITE, plugin?.name ?: "INFO", ChatColor.DARK_AQUA)
|
printColoredPrefix(text, ChatColor.WHITE, plugin?.name ?: "INFO", ChatColor.DARK_AQUA)
|
||||||
|
|
||||||
/** @see printColoredPrefix */
|
/** @see printColoredPrefix */
|
||||||
fun CommandSender.success(text: String, plugin: Plugin? = KSpigotMainInstance) =
|
fun CommandSender.success(text: String, plugin: Plugin? = PluginInstance) =
|
||||||
printColoredPrefix(text, ChatColor.GREEN, plugin?.name ?: "SUCCESS", ChatColor.DARK_AQUA)
|
printColoredPrefix(text, ChatColor.GREEN, plugin?.name ?: "SUCCESS", ChatColor.DARK_AQUA)
|
||||||
|
|
||||||
/** @see printColoredPrefix */
|
/** @see printColoredPrefix */
|
||||||
fun CommandSender.warn(text: String, plugin: Plugin? = KSpigotMainInstance) =
|
fun CommandSender.warn(text: String, plugin: Plugin? = PluginInstance) =
|
||||||
printColoredPrefix(text, ChatColor.WHITE, plugin?.name?.plus(" - WARN") ?: "WARN", ChatColor.YELLOW)
|
printColoredPrefix(text, ChatColor.WHITE, plugin?.name?.plus(" - WARN") ?: "WARN", ChatColor.YELLOW)
|
||||||
|
|
||||||
/** @see printColoredPrefix */
|
/** @see printColoredPrefix */
|
||||||
fun CommandSender.error(text: String, plugin: Plugin? = KSpigotMainInstance) =
|
fun CommandSender.error(text: String, plugin: Plugin? = PluginInstance) =
|
||||||
printColoredPrefix(text, ChatColor.RED, plugin?.name?.plus(" - ERROR") ?: "ERROR", ChatColor.DARK_RED)
|
printColoredPrefix(text, ChatColor.RED, plugin?.name?.plus(" - ERROR") ?: "ERROR", ChatColor.DARK_RED)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -3,7 +3,7 @@ package net.axay.kspigot.extensions.bukkit
|
|||||||
import net.axay.kspigot.annotations.NMS_General
|
import net.axay.kspigot.annotations.NMS_General
|
||||||
import net.axay.kspigot.chat.literalText
|
import net.axay.kspigot.chat.literalText
|
||||||
import net.axay.kspigot.extensions.onlinePlayers
|
import net.axay.kspigot.extensions.onlinePlayers
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import net.axay.kspigot.pluginmessages.PluginMessageConnect
|
import net.axay.kspigot.pluginmessages.PluginMessageConnect
|
||||||
import net.md_5.bungee.api.ChatMessageType
|
import net.md_5.bungee.api.ChatMessageType
|
||||||
import org.bukkit.Location
|
import org.bukkit.Location
|
||||||
@@ -73,28 +73,28 @@ fun Player.feedSaturate() {
|
|||||||
* Hides the player for all [onlinePlayers].
|
* Hides the player for all [onlinePlayers].
|
||||||
*/
|
*/
|
||||||
fun Player.disappear() {
|
fun Player.disappear() {
|
||||||
onlinePlayers.filter { it != this }.forEach { it.hidePlayer(KSpigotMainInstance, this) }
|
onlinePlayers.filter { it != this }.forEach { it.hidePlayer(PluginInstance, this) }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Shows the player for all [onlinePlayers].
|
* Shows the player for all [onlinePlayers].
|
||||||
*/
|
*/
|
||||||
fun Player.appear() {
|
fun Player.appear() {
|
||||||
onlinePlayers.filter { it != this }.forEach { it.showPlayer(KSpigotMainInstance, this) }
|
onlinePlayers.filter { it != this }.forEach { it.showPlayer(PluginInstance, this) }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Hides all online players from this player.
|
* Hides all online players from this player.
|
||||||
*/
|
*/
|
||||||
fun Player.hideOnlinePlayers() {
|
fun Player.hideOnlinePlayers() {
|
||||||
onlinePlayers.filter { it != this }.forEach { this.hidePlayer(KSpigotMainInstance, it) }
|
onlinePlayers.filter { it != this }.forEach { this.hidePlayer(PluginInstance, it) }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Shows all online players to this player.
|
* Shows all online players to this player.
|
||||||
*/
|
*/
|
||||||
fun Player.showOnlinePlayers() {
|
fun Player.showOnlinePlayers() {
|
||||||
onlinePlayers.filter { it != this }.forEach { this.showPlayer(KSpigotMainInstance, it) }
|
onlinePlayers.filter { it != this }.forEach { this.showPlayer(PluginInstance, it) }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -4,7 +4,7 @@ package net.axay.kspigot.gui
|
|||||||
|
|
||||||
import net.axay.kspigot.event.listen
|
import net.axay.kspigot.event.listen
|
||||||
import net.axay.kspigot.extensions.bukkit.closeForViewers
|
import net.axay.kspigot.extensions.bukkit.closeForViewers
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.entity.Player
|
import org.bukkit.entity.Player
|
||||||
import org.bukkit.event.inventory.InventoryCloseEvent
|
import org.bukkit.event.inventory.InventoryCloseEvent
|
||||||
import org.bukkit.event.player.PlayerQuitEvent
|
import org.bukkit.event.player.PlayerQuitEvent
|
||||||
@@ -194,7 +194,7 @@ class GUIInstance<T : ForInventory>(
|
|||||||
* (KSpigot will listen for actions in the inventory.)
|
* (KSpigot will listen for actions in the inventory.)
|
||||||
*/
|
*/
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
fun register() = KSpigotMainInstance.guiHolder.register(this as GUIInstance<ForInventory>)
|
fun register() = PluginInstance.guiHolder.register(this as GUIInstance<ForInventory>)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Stops KSpigot from listening to actions in this
|
* Stops KSpigot from listening to actions in this
|
||||||
@@ -202,7 +202,7 @@ class GUIInstance<T : ForInventory>(
|
|||||||
*/
|
*/
|
||||||
fun unregister() {
|
fun unregister() {
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
KSpigotMainInstance.guiHolder.unregister(this as GUIInstance<ForInventory>)
|
PluginInstance.guiHolder.unregister(this as GUIInstance<ForInventory>)
|
||||||
// unregister this inv from all elements
|
// unregister this inv from all elements
|
||||||
currentElements.forEach { it.stopUsing(this) }
|
currentElements.forEach { it.stopUsing(this) }
|
||||||
currentElements.clear()
|
currentElements.clear()
|
||||||
|
@@ -9,9 +9,14 @@ import net.axay.kspigot.runnables.KRunnableHolder
|
|||||||
import org.bukkit.plugin.java.JavaPlugin
|
import org.bukkit.plugin.java.JavaPlugin
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The main plugin instance.
|
* The main plugin instance. Available with public visibility.
|
||||||
*/
|
*/
|
||||||
lateinit var KSpigotMainInstance: KSpigot
|
val KSpigotMainInstance: KSpigot get() = PluginInstance
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The main plugin instance. Less complicated name for internal usage.
|
||||||
|
*/
|
||||||
|
internal lateinit var PluginInstance: KSpigot
|
||||||
private set
|
private set
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,10 +55,10 @@ abstract class KSpigot : JavaPlugin() {
|
|||||||
open fun shutdown() {}
|
open fun shutdown() {}
|
||||||
|
|
||||||
final override fun onLoad() {
|
final override fun onLoad() {
|
||||||
if (::KSpigotMainInstance.isInitialized) {
|
if (::PluginInstance.isInitialized) {
|
||||||
console.warn("The main instance of KSpigot has been modified, even though it has already been set by another plugin!")
|
console.warn("The main instance of KSpigot has been modified, even though it has already been set by another plugin!")
|
||||||
}
|
}
|
||||||
KSpigotMainInstance = this
|
PluginInstance = this
|
||||||
load()
|
load()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
package net.axay.kspigot.pluginmessages
|
package net.axay.kspigot.pluginmessages
|
||||||
|
|
||||||
import net.axay.kspigot.extensions.onlinePlayers
|
import net.axay.kspigot.extensions.onlinePlayers
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.entity.Player
|
import org.bukkit.entity.Player
|
||||||
import java.io.ByteArrayOutputStream
|
import java.io.ByteArrayOutputStream
|
||||||
import java.io.DataInputStream
|
import java.io.DataInputStream
|
||||||
@@ -61,5 +61,5 @@ fun sendPluginMessageToBungeeCord(
|
|||||||
if (onResponse != null)
|
if (onResponse != null)
|
||||||
BungeePluginMessageResponseCallback(subChannel, responseTimeout, onResponse)
|
BungeePluginMessageResponseCallback(subChannel, responseTimeout, onResponse)
|
||||||
|
|
||||||
player.sendPluginMessage(KSpigotMainInstance, "BungeeCord", msgbytes.toByteArray())
|
player.sendPluginMessage(PluginInstance, "BungeeCord", msgbytes.toByteArray())
|
||||||
}
|
}
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
package net.axay.kspigot.runnables
|
package net.axay.kspigot.runnables
|
||||||
|
|
||||||
import net.axay.kspigot.main.KSpigotMainInstance
|
import net.axay.kspigot.main.PluginInstance
|
||||||
import org.bukkit.Bukkit
|
import org.bukkit.Bukkit
|
||||||
import org.bukkit.scheduler.BukkitRunnable
|
import org.bukkit.scheduler.BukkitRunnable
|
||||||
|
|
||||||
@@ -77,21 +77,21 @@ fun task(
|
|||||||
|
|
||||||
if (isCancelled) {
|
if (isCancelled) {
|
||||||
if (safe || ranOut)
|
if (safe || ranOut)
|
||||||
KSpigotMainInstance.kRunnableHolder.activate(this)
|
PluginInstance.kRunnableHolder.activate(this)
|
||||||
else
|
else
|
||||||
KSpigotMainInstance.kRunnableHolder.remove(this)
|
PluginInstance.kRunnableHolder.remove(this)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (endCallback != null) KSpigotMainInstance.kRunnableHolder.add(bukkitRunnable, endCallback, safe)
|
if (endCallback != null) PluginInstance.kRunnableHolder.add(bukkitRunnable, endCallback, safe)
|
||||||
|
|
||||||
if (period != null)
|
if (period != null)
|
||||||
if (sync) bukkitRunnable.runTaskTimer(KSpigotMainInstance, delay, period)
|
if (sync) bukkitRunnable.runTaskTimer(PluginInstance, delay, period)
|
||||||
else bukkitRunnable.runTaskTimerAsynchronously(KSpigotMainInstance, delay, period)
|
else bukkitRunnable.runTaskTimerAsynchronously(PluginInstance, delay, period)
|
||||||
else
|
else
|
||||||
if (sync) bukkitRunnable.runTaskLater(KSpigotMainInstance, delay)
|
if (sync) bukkitRunnable.runTaskLater(PluginInstance, delay)
|
||||||
else bukkitRunnable.runTaskLaterAsynchronously(KSpigotMainInstance, delay)
|
else bukkitRunnable.runTaskLaterAsynchronously(PluginInstance, delay)
|
||||||
|
|
||||||
return bukkitRunnable
|
return bukkitRunnable
|
||||||
}
|
}
|
||||||
@@ -102,9 +102,9 @@ fun task(
|
|||||||
*/
|
*/
|
||||||
fun taskRunLater(delay: Long, sync: Boolean = true, runnable: () -> Unit) {
|
fun taskRunLater(delay: Long, sync: Boolean = true, runnable: () -> Unit) {
|
||||||
if (sync)
|
if (sync)
|
||||||
Bukkit.getScheduler().runTaskLater(KSpigotMainInstance, runnable, delay)
|
Bukkit.getScheduler().runTaskLater(PluginInstance, runnable, delay)
|
||||||
else
|
else
|
||||||
Bukkit.getScheduler().runTaskLaterAsynchronously(KSpigotMainInstance, runnable, delay)
|
Bukkit.getScheduler().runTaskLaterAsynchronously(PluginInstance, runnable, delay)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -122,9 +122,9 @@ fun taskRun(sync: Boolean = true, runnable: () -> Unit) {
|
|||||||
/**
|
/**
|
||||||
* Starts a synchronous task.
|
* Starts a synchronous task.
|
||||||
*/
|
*/
|
||||||
fun sync(runnable: () -> Unit) = Bukkit.getScheduler().runTask(KSpigotMainInstance, runnable)
|
fun sync(runnable: () -> Unit) = Bukkit.getScheduler().runTask(PluginInstance, runnable)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Starts an asynchronous task.
|
* Starts an asynchronous task.
|
||||||
*/
|
*/
|
||||||
fun async(runnable: () -> Unit) = Bukkit.getScheduler().runTaskAsynchronously(KSpigotMainInstance, runnable)
|
fun async(runnable: () -> Unit) = Bukkit.getScheduler().runTaskAsynchronously(PluginInstance, runnable)
|
||||||
|
Reference in New Issue
Block a user