Developer API Overview
Hook into the ShyamDuels API to fetch stats, listen to match events, manage queues, and start custom duels.
Maven Integration
To compile your plugin against ShyamDuels, declare the jar file as a dependency. Add the following to your pom.xml file:
xml<dependency>
<groupId>com.shyamstudio</groupId>
<artifactId>shyamduels</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
Declaring Soft-Dependencies
To ensure that your plugin enables after ShyamDuels on server startup, declare it in your plugin.yml configuration:
yamlname: MyIntegrationPlugin
version: 1.0
main: com.myname.integration.IntegrationPlugin
api-version: '1.21'
depend: [ShyamDuels] # Guarantees ShyamDuels enables first
Accessing the API
The public entry point is ShyamDuelsAPI. Resolve the interface instance during your plugin startup using the static provider:
javaimport com.shyamstudio.shyamduels.api.ShyamDuelsAPI;
import com.shyamstudio.shyamduels.api.ShyamDuelsProvider;
import org.bukkit.plugin.java.JavaPlugin;
public class IntegrationPlugin extends JavaPlugin {
private ShyamDuelsAPI api;
@Override
public void onEnable() {
// Resolve the API instance
this.api = ShyamDuelsProvider.get();
if (api == null) {
getLogger().severe("ShyamDuels was not found! Disabling integration.");
getServer().getPluginManager().disablePlugin(this);
return;
}
getLogger().info("Successfully hooked into ShyamDuels API!");
}
}