What's new in 1.1.0 - Team Invite API
New: TeamsInviteService interface
An optional, independent service interface for team invitation flows.
Providers that support invitations register an implementation separately via
TeamsAPI.registerInviteProvider(). Existing
TeamsService implementations are not required to support it. The API degrades gracefully when no invite provider is registered.
Methods
| invitePlayer(UUID teamId, UUID inviterUUID, UUID inviteeUUID) |
boolean |
Invites a player to join a team |
| acceptInvite(UUID teamId, UUID playerUUID) |
Optional<Team> |
Accepts a pending team invitation |
| declineInvite(UUID teamId, UUID playerUUID) |
boolean |
Declines a pending team invitation |
New: invite provider management on TeamsAPI
| TeamsAPI.getInviteService() |
Returns the registered TeamsInviteService, or null |
| TeamsAPI.isInviteAvailable() |
Returns true if an invite provider is registered |
| TeamsAPI.registerInviteProvider(Plugin, TeamsInviteService) |
Registers an invite provider at Normal priority |
| TeamsAPI.registerInviteProvider(Plugin, TeamsInviteService, ServicePriority) |
Registers an invite provider at a custom priority |
| TeamsAPI.unregisterInviteProvider(TeamsInviteService) |
Unregisters the invite provider on plugin disable |
All methods follow the existing null-safety contract. Null arguments are silently ignored.
New events
| TeamInviteEvent |
Yes |
Before an invitation is recorded. Cancel to block it. |
| TeamInviteAcceptEvent |
No |
After the player has joined the team. |
| TeamInviteDeclineEvent |
No |
After the pending invitation has been removed. |