public abstract class Multification<VIEWER, TRANSLATION>
Abstract methods (must override):
Optional overrides:
// Static factories
Notice.chat(String... messages)
Notice.title(String title, String subtitle)
Notice.actionbar(String message)
Notice.sound(String key, float volume, float pitch)
Notice.bossBar(BossBar.Color color, Duration duration, String message)
Notice.empty()
// Builder
Notice.builder()
.chat("...")
.title("...", "...")
.actionBar("...")
.sound("...")
.bossBar(...)
.build()
multification.create()
// Target
.player(UUID)
.players(Iterable<UUID>)
.viewer(VIEWER)
.console()
.all()
.onlinePlayers()
.onlinePlayers(String permission)
// Notice
.notice(Notice)
.notice(config -> config.message)
// Placeholders
.placeholder("{key}", "value")
// Formatters
.formatter(Formatter...)
// Send
.send()
.sendAsync()
// Extract notice from config
NoticeProvider<T> = translation -> Notice
// Format text
Formatter = (viewer, text) -> String
// Replace text globally
Replacer<V> = (viewer, text) -> String
// Get locale for viewer
LocaleProvider<V> = viewer -> Locale
// Convert viewer to Audience
AudienceConverter<V> = viewer -> Audience
// Get config for locale
TranslationProvider<T> = locale -> T
// CDN
new MultificationNoticeCdnComposer(multification)
new MultificationNoticeCdnComposer(noticeRegistry)
// Okaeri
new MultificationSerdesPack(multification)
new MultificationSerdesPack(noticeRegistry)