Add Feast, Pit modules and Discord webhook

Introduce two new game modules (FeastManager and PitManager) to handle timed endgame events: announcements, world edits, loot generation, teleportation and escape-prevention logic. Add DiscordWebhookManager to send asynchronous webhook messages (embeds/text) and wire it into SpeedHG and GameManager to broadcast game start/end events. Integrate managers into the game loop and reset lifecycle (startGame), add config entries for Discord, and add corresponding language strings. Also include small tweaks (killer XP reward, minor formatting) and updated resource files.
This commit is contained in:
TDSTOS
2026-03-27 02:15:44 +01:00
parent 72a58fdd9c
commit 07c2963e71
7 changed files with 741 additions and 11 deletions

View File

@@ -16,6 +16,7 @@ import club.mcscrims.speedhg.listener.GameStateListener
import club.mcscrims.speedhg.listener.SoupListener
import club.mcscrims.speedhg.listener.StatsListener
import club.mcscrims.speedhg.scoreboard.ScoreboardManager
import club.mcscrims.speedhg.webhook.DiscordWebhookManager
import org.bukkit.Bukkit
import org.bukkit.plugin.java.JavaPlugin
@@ -49,6 +50,9 @@ class SpeedHG : JavaPlugin() {
lateinit var statsManager: StatsManager
private set
lateinit var discordWebhookManager: DiscordWebhookManager
private set
override fun onEnable()
{
instance = this
@@ -67,11 +71,12 @@ class SpeedHG : JavaPlugin() {
statsManager = StatsManager( this )
statsManager.initialize()
languageManager = LanguageManager( this )
gameManager = GameManager( this )
antiRunningManager = AntiRunningManager( this )
scoreboardManager = ScoreboardManager( this )
kitManager = KitManager( this )
languageManager = LanguageManager( this )
gameManager = GameManager( this )
antiRunningManager = AntiRunningManager( this )
scoreboardManager = ScoreboardManager( this )
kitManager = KitManager( this )
discordWebhookManager = DiscordWebhookManager( this )
registerKits()
registerCommands()