Przejdź do głównej zawartości

Developer API

Ten poradnik opisuje sposób korzystania z API Goxy, które umożliwia tworzenie własnych pluginów integrujących się z siecią Goxy i jej funkcjami.

⚙️Rozszerz swoje możliwości

Dzięki API Goxy możesz tworzyć własne pluginy, które komunikują się z siecią i rozszerzają jej funkcjonalność.

Dodanie zależności

Pierwszym krokiem jest dodanie goxy-api jako zależności do Twojego projektu pluginu.

repositories {
maven {
url "https://repo.goxy.pl"
}
}

dependencies {
compileOnly "pl.goxy.minecraft:goxy-api:1.11.4"
}

Konfiguracja plugin.yml

Aby upewnić się, że Twój plugin wczytuje się po Goxy, dodaj zależność w pliku plugin.yml:

softdepend:
- "goxy"

lub jeśli Goxy jest wymagane do działania Twojego pluginu:

depend:
- "goxy"
ℹ️Wskazówka

Użyj softdepend, jeśli plugin może działać bez Goxy, lub depend, jeśli wymaga Goxy do poprawnego działania.

Dokumentacja i kod źródłowy

Kod źródłowy pluginu Goxy jest open source i dostępny publicznie. Możesz przejrzeć jego strukturę oraz wykorzystać gotowe przykłady użycia.

📚Repozytorium kodu

Zobacz kod i dokumentację API tutaj: 👉 https://gitlab.com/goxy.pl/minecraft/goxy-plugin

Przykładowe możliwości API

Z pomocą Goxy API możesz:

  • przenosić graczy między serwerami,
  • sprawdzać status serwerów w sieci,
  • wysyłać i odbierać dane pomiędzy pluginami,
  • reagować na zdarzenia w czasie rzeczywistym.
🚀Zaawansowane możliwości

API Goxy pozwala tworzyć złożone systemy komunikacji i automatyzacji w Twojej sieci Minecraft.

Przykładowe użycie kodu

Poniższy przykład pokazuje, jak przenieść gracza na inny serwer za pomocą API Goxy:


public final class GoxyTransfer extends JavaPlugin implements CommandExecutor {

@Override
public void onEnable() {
getCommand("goxytransfer").setExecutor(this);
getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
getLogger().info("GoxyTransfer włączony! Użyj /goxytransfer <gracz> <serwer_id>");
}

@Override
public void onDisable() {
getServer().getMessenger().unregisterOutgoingPluginChannel(this, "BungeeCord");
getLogger().info("GoxyTransfer wyłączony!");
}

@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
if (args.length != 2) {
sender.sendMessage("Użycie: /goxytransfer <gracz> <serwer_id>");
return true;
}

Player targetPlayer = Bukkit.getPlayer(args[0]);
if (targetPlayer == null) {
sender.sendMessage("Gracz " + args[0] + " nie jest online!");
return true;
}
String serverId = args[1];
ByteArrayOutputStream b = new ByteArrayOutputStream();
DataOutputStream out = new DataOutputStream(b);
try {
out.writeUTF("Connect");
out.writeUTF(serverId);
} catch (IOException e) {
sender.sendMessage("Błąd podczas przygotowania transferu: " + e.getMessage());
return true;
}

targetPlayer.sendPluginMessage(this, "BungeeCord", b.toByteArray());
sender.sendMessage("Przenoszę gracza " + targetPlayer.getName() + " na serwer " + serverId + "...");

return true;
}
}
💡Działa z Paper, Spigot i Velocity

API Goxy jest kompatybilne z większością popularnych silników Minecraft.

⚡ Łatwe połączenie

Dodaj API Goxy do swojego pluginu i połącz się z siecią w kilka sekund.

🔧 Pełna kontrola

Uzyskaj dostęp do metod pozwalających zarządzać graczami i serwerami.

🚀 Open Source

Przeglądaj kod źródłowy i korzystaj z gotowych przykładów.

Linki i zasoby

🔗Wszystko w jednym miejscu

Najważniejsze linki dla deweloperów Goxy.

ZasóbLink
Repozytorium APIGoxy API Repo
Strona Głównagoxy.io
Panel Administracyjnydashboard.goxy.io
DiscordDołącz do społeczności
Status usługstatus.goxy.io

🎉 Stwórz własny plugin z Goxy API!

Rozszerz możliwości swojej sieci Minecraft i zautomatyzuj zarządzanie serwerami!

ZAREJESTRUJ SIĘ ZA DARMO