fix: more fixes and adjustements
This commit is contained in:
parent
fd6e76ad8f
commit
046f0ed9dc
8 changed files with 147 additions and 23 deletions
|
@ -41,8 +41,10 @@ class RunnerDragon : JavaPlugin() {
|
|||
val TITLE = MiniMessage.miniMessage()
|
||||
.deserialize("<gradient:#8045ff:#cd59ff><b>Runner</b></gradient><gradient:#e9f1b0:#ffbd80>Dragon</gradient>")
|
||||
|
||||
val PREFIX = MiniMessage.miniMessage()
|
||||
.deserialize("<gradient:#235ddd:#6e4bf9><b>Met@</b></gradient><gradient:#04e9e3:#93e2c8>Gaming</gradient>")
|
||||
val PREFIX = Component.text()
|
||||
.append(TITLE)
|
||||
.appendSpace()
|
||||
.append(Component.text("/", NamedTextColor.DARK_GRAY, TextDecoration.BOLD))
|
||||
|
||||
val LAST_BED_INTERACT: Cache<UUID, Instant> = CacheBuilder.newBuilder()
|
||||
.expireAfterWrite(Duration.ofSeconds(10))
|
||||
|
@ -76,7 +78,7 @@ class RunnerDragon : JavaPlugin() {
|
|||
override fun onEnable() {
|
||||
instance = this
|
||||
|
||||
val previousWorldFolder = File("outerlands")
|
||||
val previousWorldFolder = File("runnerdragon")
|
||||
val previousEndFolder = File("world_the_end")
|
||||
val previousNetherFolder = File("world_nether")
|
||||
if (previousWorldFolder.exists()) {
|
||||
|
@ -92,7 +94,7 @@ class RunnerDragon : JavaPlugin() {
|
|||
PreviousWorldUtils.resetNether()
|
||||
}
|
||||
|
||||
val creator = WorldCreator("outerlands")
|
||||
val creator = WorldCreator("runnerdragon")
|
||||
creator.environment(World.Environment.NORMAL)
|
||||
creator.generateStructures(true)
|
||||
creator.type(WorldType.NORMAL)
|
||||
|
@ -138,6 +140,7 @@ class RunnerDragon : JavaPlugin() {
|
|||
val resetComponent: Component = Component
|
||||
.text()
|
||||
.append(PREFIX)
|
||||
.appendSpace()
|
||||
.append(Component.text("Mise à zéro du jeu !", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
|
@ -190,6 +193,7 @@ class RunnerDragon : JavaPlugin() {
|
|||
val launchComponent: Component = Component
|
||||
.text()
|
||||
.append(PREFIX)
|
||||
.appendSpace()
|
||||
.append(Component.text("Lancement de la partie !", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
|
|
|
@ -31,7 +31,7 @@ class MainCommand : CommandExecutor {
|
|||
"teams" -> TeamsSubCommand().run(dragonPlayer, args.drop(1).toTypedArray())
|
||||
"say" -> {
|
||||
if (args.drop(1).isEmpty()) {
|
||||
player.sendMessage(
|
||||
dragonPlayer.sendMessage(
|
||||
Component
|
||||
.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package xyz.ineanto.dragon.event
|
||||
|
||||
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.Sound
|
||||
import org.bukkit.event.EventHandler
|
||||
|
@ -17,7 +18,17 @@ class DimensionEntranceListener : Listener {
|
|||
when (event.cause) {
|
||||
PlayerTeleportEvent.TeleportCause.NETHER_PORTAL -> if (RunnerDragon.NETHER_PORTAL_ENTERED.not()) {
|
||||
RunnerDragon.NETHER_PORTAL_ENTERED = true
|
||||
Bukkit.broadcastMessage("${RunnerDragon.PREFIX} ${ChatColor.GOLD}Le portail du Nether a été franchi pour la première fois !")
|
||||
|
||||
val dimensionComponent = Component.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
.appendSpace()
|
||||
.append(
|
||||
MiniMessage.miniMessage()
|
||||
.deserialize("<gradient:#7a59ff:#da8aff>Le portail du Nether a été franchi pour la première fois !</gradient>")
|
||||
)
|
||||
.build()
|
||||
|
||||
Bukkit.broadcast(dimensionComponent)
|
||||
Bukkit.getOnlinePlayers().forEach {
|
||||
it.playSound(it.location, Sound.ENTITY_VILLAGER_CELEBRATE, 1f, 0.3f)
|
||||
}
|
||||
|
@ -27,7 +38,17 @@ class DimensionEntranceListener : Listener {
|
|||
event.player.teleport(RunnerDragon.WORLD_END.spawnLocation)
|
||||
if (RunnerDragon.END_PORTAL_ENTERED.not()) {
|
||||
RunnerDragon.END_PORTAL_ENTERED = true
|
||||
Bukkit.broadcastMessage("${RunnerDragon.PREFIX} ${ChatColor.GOLD}Le portail de l'End a été franchi pour la première fois !")
|
||||
|
||||
val dimensionComponent = Component.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
.appendSpace()
|
||||
.append(
|
||||
MiniMessage.miniMessage()
|
||||
.deserialize("<gradient:#ffea4d:#ffa46b>Le portail de l'End a été franchi pour la première fois !</gradient>")
|
||||
)
|
||||
.build()
|
||||
|
||||
Bukkit.broadcast(dimensionComponent)
|
||||
Bukkit.getOnlinePlayers().forEach {
|
||||
it.playSound(it.location, Sound.ENTITY_VILLAGER_CELEBRATE, 1f, 0.3f)
|
||||
}
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
package xyz.ineanto.dragon.event.end
|
||||
|
||||
import net.kyori.adventure.text.Component
|
||||
import net.kyori.adventure.text.format.NamedTextColor
|
||||
import net.kyori.adventure.text.format.TextDecoration
|
||||
import net.kyori.adventure.text.minimessage.MiniMessage
|
||||
import org.bukkit.Bukkit
|
||||
import org.bukkit.ChatColor
|
||||
import org.bukkit.Sound
|
||||
import org.bukkit.World.Environment
|
||||
import org.bukkit.entity.EnderDragon
|
||||
|
@ -37,7 +40,6 @@ class EnderDragonListener : Listener {
|
|||
if (entity is Projectile) {
|
||||
player = entity.shooter as Player
|
||||
} else if (entity is Player) {
|
||||
Bukkit.broadcastMessage("Last damage dealt by ${entity.name}")
|
||||
player = entity
|
||||
}
|
||||
}
|
||||
|
@ -53,8 +55,38 @@ class EnderDragonListener : Listener {
|
|||
it.playSound(it.location, Sound.ENTITY_ENDER_DRAGON_DEATH, 1f, 0.5f)
|
||||
}
|
||||
}
|
||||
Bukkit.broadcastMessage("${RunnerDragon.PREFIX} ${ChatColor.GOLD}${ChatColor.BOLD}VICTOIRE !")
|
||||
Bukkit.broadcastMessage("${RunnerDragon.PREFIX} ${ChatColor.GOLD}${ChatColor.BOLD}LE DRAGON A ÉTÉ TUÉ PAR L'ÉQUIPE ${team?.displayName}${ChatColor.GOLD}${ChatColor.BOLD}!")
|
||||
|
||||
val victoryComponent: Component = Component.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
.appendSpace()
|
||||
.append(
|
||||
MiniMessage.miniMessage().deserialize("<gradient:#ff8b26:#ff6193><b>VICTOIRE !</b></gradient>")
|
||||
)
|
||||
.build()
|
||||
|
||||
|
||||
val teamComponent = Component.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
.appendSpace()
|
||||
.append(
|
||||
Component.text(
|
||||
"Le dragon a été tué par l'équipe :",
|
||||
NamedTextColor.WHITE
|
||||
)
|
||||
)
|
||||
.appendSpace()
|
||||
|
||||
team?.let {
|
||||
teamComponent.append(team.displayName)
|
||||
} ?: {
|
||||
teamComponent.append(Component.text("???", NamedTextColor.RED, TextDecoration.OBFUSCATED))
|
||||
}
|
||||
|
||||
teamComponent.appendSpace()
|
||||
teamComponent.append(Component.text("!", NamedTextColor.WHITE, TextDecoration.BOLD))
|
||||
|
||||
Bukkit.broadcast(victoryComponent)
|
||||
Bukkit.broadcast(teamComponent.build())
|
||||
}
|
||||
|
||||
SecondFight.start(dragon)
|
||||
|
|
|
@ -3,6 +3,7 @@ package xyz.ineanto.dragon.player
|
|||
import net.kyori.adventure.text.Component
|
||||
import net.kyori.adventure.text.format.NamedTextColor
|
||||
import net.kyori.adventure.text.format.TextDecoration
|
||||
import net.kyori.adventure.text.minimessage.MiniMessage
|
||||
import org.bukkit.Bukkit
|
||||
import org.bukkit.GameMode
|
||||
import org.bukkit.Material
|
||||
|
@ -23,10 +24,13 @@ class DragonPlayer(uuid: UUID) {
|
|||
}
|
||||
|
||||
fun updateHeaderFooter() {
|
||||
val header = RunnerDragon.TITLE
|
||||
val header = Component.text()
|
||||
.append(RunnerDragon.TITLE)
|
||||
.appendNewline()
|
||||
.append(Component.text("Met@", NamedTextColor.DARK_PURPLE))
|
||||
.append(Component.text("Gaming", NamedTextColor.DARK_AQUA))
|
||||
.append(
|
||||
MiniMessage.miniMessage()
|
||||
.deserialize("<gradient:#235ddd:#6e4bf9><b>Met@</b></gradient><gradient:#04e9e3:#93e2c8>Gaming</gradient>")
|
||||
)
|
||||
.appendNewline()
|
||||
.append(Component.text("Temps:", NamedTextColor.GOLD))
|
||||
.appendSpace()
|
||||
|
@ -38,6 +42,7 @@ class DragonPlayer(uuid: UUID) {
|
|||
.appendSpace()
|
||||
.append(Component.text("(c'est horrible)", NamedTextColor.GRAY, TextDecoration.ITALIC))
|
||||
.appendNewline()
|
||||
.build()
|
||||
|
||||
val footer = Component
|
||||
.text()
|
||||
|
@ -51,6 +56,7 @@ class DragonPlayer(uuid: UUID) {
|
|||
.append(Component.text("Concept:", NamedTextColor.GOLD, TextDecoration.ITALIC))
|
||||
.appendSpace()
|
||||
.append(Component.text("Linkxss", NamedTextColor.BLUE))
|
||||
.build()
|
||||
|
||||
player.sendPlayerListHeader(header)
|
||||
player.sendPlayerListFooter(footer)
|
||||
|
|
|
@ -4,6 +4,7 @@ import org.bukkit.Bukkit
|
|||
import org.bukkit.scoreboard.Scoreboard
|
||||
import org.bukkit.scoreboard.Team
|
||||
import xyz.ineanto.dragon.RunnerDragon
|
||||
import xyz.ineanto.dragon.player.DragonPlayer
|
||||
|
||||
/**
|
||||
* TeamScoreboard
|
||||
|
@ -29,8 +30,15 @@ class ScoreboardTeams {
|
|||
}
|
||||
}
|
||||
|
||||
fun addPlayer() {
|
||||
fun addPlayer(player: DragonPlayer) {
|
||||
player.getTeam()?.let {
|
||||
val team = scoreboard!!.getTeam(it.teamColor.displayName)
|
||||
team?.addPlayer(player.player)
|
||||
}
|
||||
}
|
||||
|
||||
fun removePlayer() {
|
||||
|
||||
}
|
||||
|
||||
fun reset() {
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
package xyz.ineanto.dragon.tasks
|
||||
|
||||
import net.kyori.adventure.text.Component
|
||||
import net.kyori.adventure.text.format.NamedTextColor
|
||||
import org.bukkit.Bukkit
|
||||
import org.bukkit.ChatColor
|
||||
import org.bukkit.scheduler.BukkitRunnable
|
||||
import xyz.ineanto.dragon.GameState
|
||||
import xyz.ineanto.dragon.RunnerDragon
|
||||
|
@ -11,12 +12,52 @@ class GracePeriodTask : BukkitRunnable() {
|
|||
|
||||
override fun run() {
|
||||
counter--
|
||||
val base = "${ChatColor.GOLD}Activation du PVP dans"
|
||||
|
||||
val pvpComponent: Component = Component
|
||||
.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
.appendSpace()
|
||||
.append(Component.text("Activation du PVP dans", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
when (counter) {
|
||||
600 -> Bukkit.broadcastMessage("${RunnerDragon.PREFIX} $base ${ChatColor.AQUA}10 ${ChatColor.GOLD}minutes.")
|
||||
600 -> {
|
||||
val timeComponent = Component.text()
|
||||
.append(pvpComponent)
|
||||
.appendSpace()
|
||||
.append(Component.text("10", NamedTextColor.AQUA))
|
||||
.appendSpace()
|
||||
.append(Component.text("minutes.", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
Bukkit.broadcast(timeComponent)
|
||||
}
|
||||
|
||||
580 -> RunnerDragon.instance.switchState(GameState.GRACE_PERIOD)
|
||||
300 -> Bukkit.broadcastMessage("${RunnerDragon.PREFIX} $base ${ChatColor.AQUA}5 ${ChatColor.GOLD}minutes.")
|
||||
in 1..5, 60 -> Bukkit.broadcastMessage("${RunnerDragon.PREFIX} $base ${ChatColor.AQUA}$counter ${ChatColor.GOLD}secondes.")
|
||||
300 -> {
|
||||
val timeComponent = Component.text()
|
||||
.append(pvpComponent)
|
||||
.appendSpace()
|
||||
.append(Component.text("5", NamedTextColor.AQUA))
|
||||
.appendSpace()
|
||||
.append(Component.text("minutes.", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
Bukkit.broadcast(timeComponent)
|
||||
}
|
||||
|
||||
in 1..5, 60 -> {
|
||||
val timeComponent = Component.text()
|
||||
.append(pvpComponent)
|
||||
.appendSpace()
|
||||
.append(Component.text(counter, NamedTextColor.AQUA))
|
||||
.appendSpace()
|
||||
.append(Component.text("minutes.", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
Bukkit.broadcast(timeComponent)
|
||||
}
|
||||
|
||||
0 -> RunnerDragon.instance.switchState(GameState.GAME)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
package xyz.ineanto.dragon.tasks
|
||||
|
||||
import net.kyori.adventure.text.Component
|
||||
import net.kyori.adventure.text.format.NamedTextColor
|
||||
import org.bukkit.Bukkit
|
||||
import org.bukkit.ChatColor
|
||||
import org.bukkit.scheduler.BukkitRunnable
|
||||
import xyz.ineanto.dragon.GameState
|
||||
import xyz.ineanto.dragon.RunnerDragon
|
||||
|
@ -12,8 +13,19 @@ class StartGameTask : BukkitRunnable() {
|
|||
override fun run() {
|
||||
counter--
|
||||
|
||||
val counterComponent: Component = Component
|
||||
.text()
|
||||
.append(RunnerDragon.PREFIX)
|
||||
.appendSpace()
|
||||
.append(Component.text("Départ dans", NamedTextColor.GOLD))
|
||||
.appendSpace()
|
||||
.append(Component.text(counter, NamedTextColor.AQUA))
|
||||
.appendSpace()
|
||||
.append(Component.text("secondes.", NamedTextColor.GOLD))
|
||||
.build()
|
||||
|
||||
when (counter) {
|
||||
in 1..5, 10 -> Bukkit.broadcastMessage("${RunnerDragon.PREFIX} ${ChatColor.GOLD}Départ dans ${ChatColor.AQUA}$counter ${ChatColor.GOLD}secondes.")
|
||||
in 1..5, 10 -> Bukkit.broadcast(counterComponent)
|
||||
0 -> RunnerDragon.instance.switchState(GameState.LAUNCH)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue