MessageThrottler

public final class MessageThrottler

Aggregates bursty plugin messages so players receive one summary chat line after a quiet period instead of a flood. Cooldown window is getNotificationThrottleSeconds. Policies: CURRENCY — sum amounts; flushed message uses existing chatCurrencyShowerMessage template. NO_XP — count occurrences; flushed message is the latest rendered message, suffixed with " (xN)" when N >1. QUEST_PROGRESS — keep latest rendered message; keyed per objective so concurrent quests don't clobber each other.

Functions

Link copied to clipboard
public static double pushCurrency(Player player, double amount)
Records a currency pickup for the player and returns the new running total of the pending batch.
Link copied to clipboard
public static void pushNoXp(Player player, String renderedMessage)
Link copied to clipboard
public static void pushQuestProgress(Player player, Objective objective, String renderedMessage)
Link copied to clipboard
public static void shutdown()
Link copied to clipboard
public static void start()