forked from SteamWar/SteamWar
Add Some Fixes and Improvements
This commit is contained in:
@@ -19,14 +19,14 @@
|
||||
|
||||
package de.steamwar.tntleague.events
|
||||
|
||||
import de.steamwar.kotlin.inventory.SWInventoryHolder
|
||||
import de.steamwar.message.SubMessage
|
||||
import de.steamwar.tntleague.colorByTeam
|
||||
import de.steamwar.tntleague.config.TNTLeagueWorldConfig
|
||||
import de.steamwar.tntleague.game.TNTLeagueGame
|
||||
import de.steamwar.tntleague.game.TNTLeagueTeam
|
||||
import de.steamwar.kotlin.inventory.SWInventoryHolder
|
||||
import de.steamwar.tntleague.message
|
||||
import de.steamwar.tntleague.plugin
|
||||
import org.bukkit.Bukkit
|
||||
import org.bukkit.GameMode
|
||||
import org.bukkit.Material
|
||||
import org.bukkit.event.EventHandler
|
||||
@@ -35,10 +35,8 @@ import org.bukkit.event.Listener
|
||||
import org.bukkit.event.entity.PlayerDeathEvent
|
||||
import org.bukkit.event.inventory.CraftItemEvent
|
||||
import org.bukkit.event.inventory.InventoryClickEvent
|
||||
import org.bukkit.event.player.PlayerJoinEvent
|
||||
import org.bukkit.event.player.PlayerMoveEvent
|
||||
import org.bukkit.event.player.PlayerQuitEvent
|
||||
import org.bukkit.event.player.PlayerRespawnEvent
|
||||
import org.bukkit.event.player.*
|
||||
import java.util.logging.Level
|
||||
|
||||
object GlobalListener: Listener {
|
||||
|
||||
@@ -48,7 +46,6 @@ object GlobalListener: Listener {
|
||||
with(e.player) {
|
||||
teleport(TNTLeagueWorldConfig.lobby)
|
||||
inventory.clear()
|
||||
message.broadcast("JOIN", name)
|
||||
isOp = false
|
||||
gameMode = GameMode.SPECTATOR
|
||||
respawnLocation = TNTLeagueWorldConfig.lobby
|
||||
@@ -58,7 +55,6 @@ object GlobalListener: Listener {
|
||||
@EventHandler(priority = EventPriority.HIGHEST)
|
||||
fun onPlayerQuit(e: PlayerQuitEvent) {
|
||||
e.quitMessage(null)
|
||||
message.broadcast("QUIT", e.player.name.colorByTeam(TNTLeagueGame.getTeam(e.player)))
|
||||
TNTLeagueGame.playerLeave(e.player)
|
||||
|
||||
if (plugin.server.onlinePlayers.size == 1 && plugin.server.onlinePlayers.first() == e.player) {
|
||||
@@ -109,4 +105,20 @@ object GlobalListener: Listener {
|
||||
null -> e.respawnLocation = TNTLeagueWorldConfig.lobby
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@EventHandler
|
||||
fun handlePlayerChat(event: AsyncPlayerChatEvent) {
|
||||
val player = event.player
|
||||
val msg = event.message
|
||||
|
||||
val fightTeam = TNTLeagueGame.getTeam(player)
|
||||
if (fightTeam != null) {
|
||||
message.broadcastPrefixless("PARTICIPANT_CHAT", SubMessage(fightTeam.name), player.name, msg)
|
||||
} else {
|
||||
message.broadcastPrefixless("SPECTATOR_CHAT", player.name, msg)
|
||||
}
|
||||
|
||||
event.isCancelled = true
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ object LobbyListener: Listener {
|
||||
|
||||
@EventHandler
|
||||
fun onPlayerJoin(e: PlayerJoinEvent) {
|
||||
TNTLeagueGame.getFreeTeam()?.run {
|
||||
TNTLeagueGame.getFreeTeam(e.player)?.run {
|
||||
join(e.player)
|
||||
TNTLeagueGame.checkStart()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user