Change VolcanoAPI to McScrimsAPI
This commit is contained in:
@@ -35,7 +35,7 @@ dependencies {
|
||||
compileOnly("com.lunarclient:apollo-api:1.2.4")
|
||||
compileOnly("com.lunarclient:apollo-extra-adventure4:1.2.4")
|
||||
|
||||
compileOnly(files( "${rootProject.projectDir}/libs/VolcanoAPI.jar" ))
|
||||
compileOnly(files( "${rootProject.projectDir}/libs/McScrims-CoreSystem-1.0.0.jar" ))
|
||||
|
||||
compileOnly("io.papermc.paper:paper-api:1.21.1-R0.1-SNAPSHOT")
|
||||
compileOnly("com.sk89q.worldedit:worldedit-core:7.2.17-SNAPSHOT")
|
||||
|
||||
@@ -46,9 +46,9 @@ import club.mcscrims.speedhg.perk.impl.ScavengerPerk
|
||||
import club.mcscrims.speedhg.perk.impl.VampirePerk
|
||||
import club.mcscrims.speedhg.perk.listener.PerkEventDispatcher
|
||||
import club.mcscrims.speedhg.ranking.RankingManager
|
||||
import club.mcscrims.speedhg.scoreboard.McScrimsRankProvider
|
||||
import club.mcscrims.speedhg.scoreboard.ScoreboardManager
|
||||
import club.mcscrims.speedhg.scoreboard.TablistManager
|
||||
import club.mcscrims.speedhg.scoreboard.VolcanoServerRankProvider
|
||||
import club.mcscrims.speedhg.team.gui.PresetTeamManager
|
||||
import club.mcscrims.speedhg.team.gui.TeamSelectionListener
|
||||
import club.mcscrims.speedhg.webhook.DiscordWebhookManager
|
||||
@@ -189,7 +189,7 @@ class SpeedHG : JavaPlugin() {
|
||||
discordWebhookManager = DiscordWebhookManager( this )
|
||||
lunarClientManager = LunarClientManager( this )
|
||||
lobbyItemManager = LobbyItemManager( this )
|
||||
tablistManager = TablistManager( this, VolcanoServerRankProvider() )
|
||||
tablistManager = TablistManager( this, McScrimsRankProvider() )
|
||||
presetTeamManager = PresetTeamManager( this )
|
||||
|
||||
perkManager = PerkManager( this )
|
||||
@@ -310,7 +310,7 @@ class SpeedHG : JavaPlugin() {
|
||||
pm.registerEvents( MenuListener(), this )
|
||||
pm.registerEvents(PerkEventDispatcher( this, perkManager ), this )
|
||||
pm.registerEvents( lobbyItemManager, this )
|
||||
pm.registerEvents(ChatListener( this, VolcanoServerRankProvider() ), this )
|
||||
pm.registerEvents(ChatListener( this, McScrimsRankProvider() ), this )
|
||||
pm.registerEvents(KnockbackListener( this ), this )
|
||||
pm.registerEvents(TeamSelectionListener( this ), this )
|
||||
pm.registerEvents( HungerListener(), this )
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package club.mcscrims.speedhg.scoreboard
|
||||
|
||||
import me.zowpy.core.api.CoreAPI
|
||||
import me.zowpy.core.api.rank.Rank
|
||||
import club.mcscrims.core.api.McScrimsAPI
|
||||
import club.mcscrims.core.rank.model.Rank
|
||||
import net.kyori.adventure.text.Component
|
||||
import net.kyori.adventure.text.minimessage.MiniMessage
|
||||
import org.bukkit.entity.Player
|
||||
@@ -16,7 +16,7 @@ interface ServerRankProvider {
|
||||
* in [TablistManager.WEIGHT_MAP] zeigt.
|
||||
* Muss einer der Keys sein: `"admin"`, `"mod"`, `"helper"`, `"player"`.
|
||||
*/
|
||||
fun getRankWeight( player: Player ): String
|
||||
fun getRankWeight( player: Player): String
|
||||
|
||||
/**
|
||||
* Gibt die formatierte Prefix-Komponente zurück, die VOR dem
|
||||
@@ -34,50 +34,19 @@ interface ServerRankProvider {
|
||||
*/
|
||||
fun getRankColor( player: Player ): String
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Einfache Implementierung auf Basis von Bukkit-Permissions.
|
||||
/**
|
||||
* Gibt den Namen vom Rang zurück
|
||||
*/
|
||||
class DefaultServerRankProvider : ServerRankProvider {
|
||||
|
||||
private val mm = MiniMessage.miniMessage()
|
||||
|
||||
override fun getRankWeight(
|
||||
player: Player
|
||||
): String = when {
|
||||
player.hasPermission( "group.admin" ) -> "admin"
|
||||
player.hasPermission( "group.mod" ) -> "mod"
|
||||
player.hasPermission( "group.helper" ) -> "helper"
|
||||
else -> "player"
|
||||
}
|
||||
|
||||
override fun getRankPrefix(
|
||||
player: Player
|
||||
): Component = when {
|
||||
player.hasPermission( "group.admin" ) -> mm.deserialize( "<red><bold>[Admin]</bold></red>" )
|
||||
player.hasPermission( "group.mod" ) -> mm.deserialize( "<green><bold>[Mod]</bold></green>" )
|
||||
player.hasPermission( "group.helper" ) -> mm.deserialize( "<aqua><bold>[Helper]</bold></aqua>" )
|
||||
else -> Component.empty()
|
||||
}
|
||||
|
||||
override fun getRankColor(
|
||||
player: Player
|
||||
): String = when {
|
||||
player.hasPermission( "group.admin" ) -> "<red>"
|
||||
player.hasPermission( "group.mod" ) -> "<green>"
|
||||
player.hasPermission( "group.helper" ) -> "<aqua>"
|
||||
else -> "<gray>"
|
||||
}
|
||||
fun getRankName( player: Player ): String
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Volcano Implementierung
|
||||
* McScrimsAPI Implementierung
|
||||
*/
|
||||
class VolcanoServerRankProvider : ServerRankProvider {
|
||||
class McScrimsRankProvider : ServerRankProvider {
|
||||
|
||||
private val coreAPI get() = CoreAPI.getInstance()
|
||||
private val mcScrimsAPI get() = McScrimsAPI.get()
|
||||
private val mm = MiniMessage.miniMessage()
|
||||
|
||||
override fun getRankWeight(
|
||||
@@ -100,16 +69,22 @@ class VolcanoServerRankProvider : ServerRankProvider {
|
||||
player: Player
|
||||
): String
|
||||
{
|
||||
val rawColor = getRank( player ).displayColor
|
||||
val rawColor = getRank( player ).prefix
|
||||
return convertLegacyToMiniMessage( rawColor )
|
||||
}
|
||||
|
||||
override fun getRankName(
|
||||
player: Player
|
||||
): String
|
||||
{
|
||||
return getRank( player ).id
|
||||
}
|
||||
|
||||
private fun getRank(
|
||||
player: Player
|
||||
): Rank
|
||||
{
|
||||
val rank = coreAPI.profileManager.getByUUID( player.uniqueId ).realRank
|
||||
return coreAPI.rankManager.getByUUID( rank.uuid )
|
||||
return mcScrimsAPI.getRank( player.uniqueId )
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -58,7 +58,7 @@ import java.util.concurrent.ConcurrentHashMap
|
||||
*/
|
||||
class TablistManager(
|
||||
private val plugin: SpeedHG,
|
||||
val rankProvider: ServerRankProvider = DefaultServerRankProvider()
|
||||
val rankProvider: ServerRankProvider = McScrimsRankProvider()
|
||||
) : Listener {
|
||||
|
||||
// =========================================================================
|
||||
|
||||
Reference in New Issue
Block a user