Replace TeamManager with PresetTeam GUI system
Replace the old dynamic /team invite system with a fixed GUI-based preset team implementation. Removes TeamManager, Team, TeamListener and the TeamCommand, and introduces PresetTeam, PresetTeamManager and GUI listeners/menus (TeamSelectionMenu/TeamSelectionListener). Codepaths that referenced teamManager were migrated to presetTeamManager (GameManager win/compass logic, Lunar rich presence, Oracle perk, scoreboards, tablist, lobby items). Lobby now shows a team wool item when teams are enabled and the tablist/scoreboard display and prefix logic were adapted to reflect preset teams. Configuration supports teams.enabled, teams.preset-count and teams.max-size; scheduled invite cleanup and old team-reset logic were removed accordingly.
This commit is contained in:
@@ -295,7 +295,7 @@ class GameManager(
|
||||
private fun checkWin() {
|
||||
if (currentState != GameState.INGAME && currentState != GameState.INVINCIBILITY) return
|
||||
|
||||
val teamManager = plugin.teamManager
|
||||
val teamManager = plugin.presetTeamManager
|
||||
|
||||
val roundOver = when {
|
||||
// Nur noch 0 oder 1 Spieler übrig → immer Ende
|
||||
@@ -326,8 +326,8 @@ class GameManager(
|
||||
|
||||
val winnerUUID = alivePlayers.firstOrNull()
|
||||
|
||||
val winnerTeam = if ( plugin.teamManager.isEnabled && winnerUUID != null )
|
||||
plugin.teamManager.getTeam( winnerUUID ) else null
|
||||
val winnerTeam = if ( plugin.presetTeamManager.isEnabled && winnerUUID != null )
|
||||
plugin.presetTeamManager.getTeam( winnerUUID ) else null
|
||||
|
||||
Bukkit.getOnlinePlayers().forEach { p ->
|
||||
val isWinner = winnerTeam?.contains( p.uniqueId ) ?: ( p.uniqueId == winnerUUID )
|
||||
@@ -364,7 +364,7 @@ class GameManager(
|
||||
private fun buildWinnerName(anyAliveUUID: UUID?): String {
|
||||
anyAliveUUID ?: return "N/A"
|
||||
|
||||
val teamManager = plugin.teamManager
|
||||
val teamManager = plugin.presetTeamManager
|
||||
if (!teamManager.isEnabled) {
|
||||
return Bukkit.getPlayer(anyAliveUUID)?.name ?: "N/A"
|
||||
}
|
||||
@@ -420,8 +420,8 @@ class GameManager(
|
||||
{
|
||||
if ( p == target ) continue
|
||||
|
||||
if ( plugin.teamManager.isEnabled &&
|
||||
plugin.teamManager.areInSameTeam( p, target ))
|
||||
if ( plugin.presetTeamManager.isEnabled &&
|
||||
plugin.presetTeamManager.areInSameTeam( p, target ))
|
||||
continue
|
||||
|
||||
val dist = p.location.distanceSquared( target.location )
|
||||
|
||||
Reference in New Issue
Block a user