changed stuff

This commit is contained in:
5vl 2022-04-16 13:04:11 +02:00
parent bdab267df1
commit ebdfe8ae1f
No known key found for this signature in database
GPG Key ID: DA8938F22548E4D5
7 changed files with 43 additions and 28 deletions

View File

@ -17,5 +17,5 @@ object Config {
put(it.toInt(), getConfig().getString("staffmode-hotbar.$it")!!)
}
}
val disableStaffmodeItem = getConfig().getString("disable-staffmode-item")!!
val disableStaffmodeItem = getConfig().getString("items.DISABLE_STAFFMODE")!!
}

View File

@ -14,6 +14,7 @@ enum class Items(val item: ItemStack) {
private fun getStaffmodeItem(): ItemStack {
val item = ItemStack(Material.LIME_DYE)
val meta = item.itemMeta
meta.setDisplayName(Utils.hex(Utils.getPlaceholders(null, Config.disableStaffmodeItem)))
meta.setDisplayName(Utils.color(Utils.getPlaceholders(null, Config.disableStaffmodeItem)))
item.itemMeta = meta
return item
}

View File

@ -1,30 +1,34 @@
package me.fivevl.staff
import me.clip.placeholderapi.PlaceholderAPI
import net.md_5.bungee.api.ChatColor
import net.kyori.adventure.text.Component
import net.kyori.adventure.text.minimessage.MiniMessage
import org.bukkit.Bukkit
import org.bukkit.ChatColor
import org.bukkit.Material
import org.bukkit.configuration.file.FileConfiguration
import org.bukkit.entity.Player
import org.bukkit.inventory.ItemStack
import org.bukkit.inventory.PlayerInventory
import java.util.regex.Pattern
object Utils {
var instance: Main? = null
val inStaffmode = HashMap<Player, PlayerInventory>()
val inVanish = ArrayList<Player>()
@Suppress("deprecation")
fun hex(s: String): String {
var s2 = s
val pattern = Pattern.compile("#[a-fA-F0-9]{6}")
fun mm(s: String): Component {
/*val pattern = Pattern.compile("#[a-fA-F0-9]{6}")
var match = pattern.matcher(s)
while (match.find()) {
val color = s.substring(match.start(), match.end())
s2 = s2.replace(color, ChatColor.of(color).toString())
match = pattern.matcher(s2)
}
return ChatColor.translateAlternateColorCodes('&', s2)
return ChatColor.translateAlternateColorCodes('&', s2)*/
return MiniMessage.miniMessage().deserialize(s)
}
fun color(s: String): String {
return ChatColor.translateAlternateColorCodes('&', s)
}
fun getPlaceholders(p: Player?, s: String): String {
return PlaceholderAPI.setPlaceholders(p, s)
@ -34,7 +38,7 @@ object Utils {
p.inventory.clear()
p.inventory.contents = inStaffmode[p]!!.contents
inStaffmode.remove(p)
p.sendMessage(hex(getPlaceholders(p, Config.toggleStaffmodeOff)))
p.sendMessage(mm(getPlaceholders(p, Config.toggleStaffmodeOff)))
} else {
inStaffmode[p] = p.inventory
p.inventory.clear()
@ -49,7 +53,7 @@ object Utils {
}
p.inventory.setItem(i - 1, item)
}
p.sendMessage(hex(getPlaceholders(p, Config.toggleStaffmodeOn)))
p.sendMessage(mm(getPlaceholders(p, Config.toggleStaffmodeOn)))
}
}
fun toggleVanish(p: Player) {
@ -58,13 +62,13 @@ object Utils {
ps.showPlayer(instance!!, p)
}
inVanish.remove(p)
p.sendMessage(hex(getPlaceholders(p, Config.toggleVanishOff)))
p.sendMessage(mm(getPlaceholders(p, Config.toggleVanishOff)))
} else {
for (ps in Bukkit.getOnlinePlayers()) {
ps.hidePlayer(instance!!, p)
}
inVanish.add(p)
p.sendMessage(hex(getPlaceholders(p, Config.toggleVanishOn)))
p.sendMessage(mm(getPlaceholders(p, Config.toggleVanishOn)))
}
}

View File

@ -10,12 +10,12 @@ import org.bukkit.entity.Player
class StaffModeCommand : CommandExecutor {
override fun onCommand(sender: CommandSender, command: Command, label: String, args: Array<out String>): Boolean {
if (sender !is Player) {
sender.sendMessage(Utils.hex(Utils.getPlaceholders(null, Config.mustBePlayer)))
sender.sendMessage(Utils.mm(Utils.getPlaceholders(null, Config.mustBePlayer)))
return true
}
val p = sender.player!!
if (!p.hasPermission("staff.staffmode")) {
p.sendMessage(Utils.hex(Utils.getPlaceholders(p, Config.noPermission)))
p.sendMessage(Utils.mm(Utils.getPlaceholders(p, Config.noPermission)))
return true
}
Utils.toggleStaffmode(p)

View File

@ -10,12 +10,12 @@ import org.bukkit.entity.Player
class VanishCommand : CommandExecutor {
override fun onCommand(sender: CommandSender, command: Command, label: String, args: Array<out String>): Boolean {
if (sender !is Player) {
sender.sendMessage(Utils.hex(Utils.getPlaceholders(null, Config.mustBePlayer)))
sender.sendMessage(Utils.mm(Utils.getPlaceholders(null, Config.mustBePlayer)))
return true
}
val p = sender.player!!
if (!p.hasPermission("staff.vanish")) {
p.sendMessage(Utils.hex(Utils.getPlaceholders(p, Config.noPermission)))
p.sendMessage(Utils.mm(Utils.getPlaceholders(p, Config.noPermission)))
return true
}
Utils.toggleVanish(p)

View File

@ -10,7 +10,6 @@ class JoinListener : Listener {
@Suppress("deprecation")
@EventHandler
fun onJoin(e: PlayerJoinEvent) {
e.joinMessage = null
val p = e.player
for (ps in Utils.inVanish) {
p.hidePlayer(Utils.instance!!, ps)
@ -19,7 +18,6 @@ class JoinListener : Listener {
@Suppress("deprecation")
@EventHandler
fun onLeave (e: PlayerQuitEvent) {
e.quitMessage = null
val p = e.player
if (Utils.inVanish.contains(p)) {
Utils.inVanish.remove(p)

View File

@ -1,14 +1,15 @@
# In this section of the config you can change all the messages in the plugin.
must-be-player: "&cYou must be a player to use this command!" # Message shown when a player tries to use a command that requires them to be a player
no-permission: "&cYou don't have permission to use this command!" # Message shown when a player tries to use a command that they don't have permission to use
toggle-staffmode-on: "&aToggled staffmode on!" # Message shown when a player toggles staffmode on
toggle-staffmode-off: "&cToggled staffmode off!" # Message shown when a player toggles staffmode off
toggle-vanish-on: "&aToggled vanish on!" # Message shown when a player toggles vanish on
toggle-vanish-off: "&cToggled vanish off!" # Message shown when a player toggles vanish off
toggle-fly-on: "&aToggled fly on!" # Message shown when a player toggles fly on
toggle-fly-off: "&cToggled fly off!" # Message shown when a player toggles fly off
# For messages please use the minimessage formatting, see https://docs.adventure.kyori.net/minimessage/format.html#minimessage-format
must-be-player: "<red>You must be a player to use this command!" # Message shown when a player tries to use a command that requires them to be a player
no-permission: "<red>You don't have permission to use this command!" # Message shown when a player tries to use a command that they don't have permission to use
toggle-staffmode-on: "<green>Toggled staffmode on!" # Message shown when a player toggles staffmode on
toggle-staffmode-off: "<red>Toggled staffmode off!" # Message shown when a player toggles staffmode off
toggle-vanish-on: "<green>Toggled vanish on!" # Message shown when a player toggles vanish on
toggle-vanish-off: "<red>Toggled vanish off!" # Message shown when a player toggles vanish off
toggle-fly-on: "<green>Toggled fly on!" # Message shown when a player toggles fly on
toggle-fly-off: "<red>Toggled fly off!" # Message shown when a player toggles fly off
# In this section of the config you can change the items given to you in staffmode.
# In this section of the config you can change the items given to you in staffmode. Please do not use colors here.
staffmode-hotbar: # List of items to give the player when they toggle staffmode, available items: "AIR", "DISABLE_STAFFMODE", "FREEZE_WAND", "INVENTORY_WAND", "KB_STICK", "VANISH_ITEM"
1: "DISABLE_STAFFMODE"
2: "AIR"
@ -19,4 +20,15 @@ staffmode-hotbar: # List of items to give the player when they toggle staffmode,
7: "KB_STICK"
8: "AIR"
9: "VANISH_ITEM"
disable-staffmode-item: "&aDisable staffmode" # Item name of the item that disables staffmode
# For items, please use & color codes.
items:
DISABLE_STAFFMODE:
name: "&cDisable Staffmode"
FREEZE_WAND:
name: "&cFreeze Wand"
INVENTORY_WAND:
name: "&cInventory Wand"
KB_STICK:
name: "&cKnockback Stick"
VANISH_ITEM:
name: "&cVanish"