Skip to content

API Quickstart

Eisi05 edited this page May 2, 2026 · 2 revisions

1) Initialize NpcAPI in your plugin (Only when shading the API!)

Call NpcApi.createInstance(...) in onEnable(). Call NpcApi.disable() in onDisable().

import de.eisi05.npc.api.NpcApi;
import de.eisi05.npc.api.objects.NpcConfig;
import org.bukkit.plugin.java.JavaPlugin;

public final class MyPlugin extends JavaPlugin {
  @Override
  public void onEnable() {
    NpcApi.createInstance(this, new NpcConfig()
      .debug(false)
      .autoUpdate(false)
    );
  }

  @Override
  public void onDisable() {
    NpcApi.disable();
  }
}

2) Create and show an NPC

import de.eisi05.npc.api.objects.NPC;
import de.eisi05.npc.api.objects.NpcName;
import org.bukkit.Location;

Location spawn = player.getLocation();
NPC npc = new NPC(spawn, NpcName.ofLegacy("&aHello"));

npc.setEnabled(true);

// If you want it visible immediately for online players:
npc.showNpcToAllPlayers();

3) React to clicks

npc.setClickEvent(event -> {
  event.getPlayer().sendMessage("You clicked NPC " + event.getNpc().getUUID());
});

Next steps

Clone this wiki locally