xTeamsxTeams

xTeams API 🛠️

💻 xTeams API

The xTeamsAPI provides static methods to interact programmatically with xTeams. You can manage teams, their members, priorities, and check team membership directly from your code without creating an instance.


🛠 Installation

Add the repository and dependency for xTeams.

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependency>
    <groupId>com.github.xDrygo</groupId>
    <artifactId>xTeams</artifactId>
    <version>1.3.1</version>
    <scope>provided</scope>
</dependency>

After adding the dependency, add xTeams as dependency in your plugin.

name: MyPlugin
main: com.example.MyPlugin.MyPlugin
version: 1.0
depend: # depend if API is required, soft-depend if optional
  - xTeams

📋 XTeamsAPI Methods

Click to expand
  • Team getTeam(String name)

    Returns a team by its name.
Team myTeam = XTeamsAPI.getTeam("Red");
  • Set<Team> getAllTeams()

    Returns all existing teams.
Set<Team> teams = XTeamsAPI.getAllTeams();
  • void createTeam(String name, String displayName, int priority, Set<String> members)

    Creates a new team.
XTeamsAPI.createTeam("Red", "Red Team", 1, new HashSet<>(Arrays.asList("Steve", "Alex")));
  • void deleteTeam(Team team)

    Deletes a specific team.
XTeamsAPI.deleteTeam(myTeam);
  • Map<String, Object> getTeamInfo(Team team)

    Returns information about a team.
Map<String, Object> info = XTeamsAPI.getTeamInfo(myTeam);
  • void joinTeam(String player, Team team)

    Adds a player to a team.
XTeamsAPI.joinTeam("Steve", myTeam);
  • void leaveTeam(String player, Team team)

    Removes a player from a team.
XTeamsAPI.leaveTeam("Steve", myTeam);
  • void joinAllTeams(String player)

    Adds a player to all teams.
XTeamsAPI.joinAllTeams("Alex");
  • void leaveAllTeams(String player)

    Removes a player from all teams.
XTeamsAPI.leaveAllTeams("Alex");
  • boolean isInTeam(String player, Team team)

    Checks if a player is in a specific team.
boolean inTeam = XTeamsAPI.isInTeam("Steve", myTeam);
  • boolean isInAnyTeam(String player)

    Checks if a player is in any team.
boolean inAnyTeam = XTeamsAPI.isInAnyTeam("Steve");
  • List<Team> getPlayerTeams(String player)

    Returns a list of teams the player belongs to.
List<Team> playerTeams = XTeamsAPI.getPlayerTeams("Steve");
  • Team getPlayerTeam(String player)

    Returns the primary team of a player.
Team primaryTeam = XTeamsAPI.getPlayerTeam("Steve");
  • List<String> listTeamNames()

    Returns a list of all team names.
List<String> teamNames = XTeamsAPI.listTeamNames();

🎉 XTeams Events

Click to expand

Events:

  • TeamCreateEvent - Fired when a team is created.

  • TeamDeleteEvent - Fired when a team is deleted.

  • TeamJoinEvent - Fired when a player joins a team.

  • TeamLeaveEvent - Fired when a player leaves a team.

Each event extends org.bukkit.event.Event and can be listened to using normal Bukkit event listeners.

@EventHandler
public void onTeamCreate(TeamCreateEvent event) {
    Bukkit.getLogger().info("Team created: " + event.getTeam().getName());
}

💡 Notes

  • All API methods are static, so you do not need to instantiate XTeamsAPI.
  • Team methods handle creation, deletion, membership, and priority automatically.
  • Events allow you to react to team changes in real time.

🔗 References