AdvanceMMO Wiki

Ultimate RPG Documentation

API Documentation

Welcome to the AdvanceMMO API documentation. This section provides information for developers who want to integrate with or extend AdvanceMMO.

Getting Started

To use the AdvanceMMO API in your plugin:

  1. Add AdvanceMMO as a dependency in your plugin.yml
  2. Get the plugin instance
  3. Access the API through the plugin instance

Adding as Dependency

depend: [AdvanceMMO]

Or use soft dependency:

softdepend: [AdvanceMMO]

Getting the Plugin Instance

Plugin advanceMMO = Bukkit.getPluginManager().getPlugin("AdvanceMMO");
if (advanceMMO != null && advanceMMO.isEnabled()) {
    AdvanceMMO plugin = (AdvanceMMO) advanceMMO;
    // Use the API
}

API Components

Events

Listen to AdvanceMMO events to react to plugin actions:

  • Player level ups
  • Class/race selections
  • Quest completions
  • Profession actions
  • And more...

View Events Documentation →

Methods

Use public API methods to interact with the plugin:

  • Get player data
  • Modify player stats
  • Access systems
  • Manage data

View Methods Documentation →

Main API Classes

  • AdvanceMMO - Main plugin class
  • PlayerDataManager - Player data management
  • SystemManager - Access to all systems
  • LanguageManager - Language and messages

Example Usage

// Get player data
PlayerData data = plugin.getPlayerDataManager().getPlayerData(player.getUniqueId());
int level = data.getLevel();
long xp = data.getXp();

// Access systems
ClassSystem classSystem = plugin.getSystemManager().getClassSystem();
PlayerClass playerClass = classSystem.getClass(data.getClassId());

// Listen to events
@EventHandler
public void onPlayerLevelUp(PlayerLevelUpEvent event) {
    Player player = event.getPlayer();
    int newLevel = event.getNewLevel();
    // Your code here
}
Note: Always check if the plugin is enabled before using the API to avoid errors.