package tc.oc.pgm.match; import tc.oc.commons.core.inject.Facet; /** * A facet that shares the lifecycle of a single player session and match (i.e. a {@link MatchPlayer}). * * Player facets are loaded when a player joins the match, and unloaded when they leave the match. * If the same player later rejoins the match, they will get a completely new set of facets. * * Player facets can inject several player-specific things, like {@link tc.oc.api.docs.User}, * {@link org.bukkit.entity.Player}, or {@link MatchPlayer}. * * {@link tc.oc.commons.bukkit.event.targeted.TargetedEventHandler}s can be used to receive * events only for the respective player. * * Player facets are registered with a {@link MatchPlayerFacetBinder}, inside a module which * must be installed through {@link tc.oc.pgm.match.inject.MatchBinders#installPlayerModule}. * * @see MatchPlayerFacetBinder * @see MatchUserFacet */ public interface MatchPlayerFacet extends Facet {}