Class BroadcastContext

java.lang.Object
fr.luc.crcore.broadcast.BroadcastContext

public final class BroadcastContext extends Object
Contexte d'un broadcast : team concernée (optionnelle), joueur impliqué (optionnel) et placeholders pour la substitution dans le template message.

Builder fluide :

BroadcastContext.of(team)
    .involving(player.getUniqueId())
    .with("name", team.getName())
    .with("tag", team.getTag());

Utilisé par BroadcastService.broadcast(String, BroadcastContext) pour résoudre les audiences (BroadcastAudience.LEADER, BroadcastAudience.TEAM) et alimenter les placeholders du template.

  • Method Details

    • of

      public static BroadcastContext of(Team team)
      Contexte centré sur une équipe (le cas le plus courant).
    • empty

      public static BroadcastContext empty()
      Contexte sans équipe (events purement player, ex. PlayerProfileCreateEvent).
    • involving

      public BroadcastContext involving(UUID playerId)
      Précise le joueur impliqué dans l'event (ajouté, retiré, qui a rejoint, etc.).
    • with

      public BroadcastContext with(String key, String value)
      Ajoute un placeholder {key}value pour la substitution dans le template.
    • getTeam

      public Optional<Team> getTeam()
    • getInvolvedPlayerId

      public Optional<UUID> getInvolvedPlayerId()
    • getPlaceholders

      public Map<String,String> getPlaceholders()
      Map immuable des placeholders accumulés.
    • toPlaceholderPairs

      public Object[] toPlaceholderPairs()
      Convertit les placeholders en varargs pour messages.get(key, ...).