Was bedeutet bei Java Spigot Craftplayer und Handle?

2 Antworten

Spigot bzw. Bukkit maskiert letztendlich die Klassen, die du je Minecraft-Version hast, in einer API.

Normalerweise brauchst du nur die Interfaces aus der Spigot-API, beispielsweise das Player-Interface. Dort findest du die wichtigsten Methoden bereits.

Sobald dein Plugin aber etwas machen will, wozu die API nicht ausreicht, kannst du das Player-Objekt casten. Zu einem Craft-Player Objekt. Mit getHandle kommst du schließlich an die Original-Objekte vom Mohjang heran.

Ein Beispiel, wo man das braucht ist, wenn du spezielle Befehle über das Netzwerk schicken willst. Das ist in der Spigot-API nicht vollständig verfügbar. Dafür musst du dich dann durchhangeln zum Minecraft-Objekt und es dort machen. Dabei muss du aber beachten, dass du dann eine harte Abhängigkeit zur Minecraft-Version hast. Was der Hauptgrund ist, warum viele in ihren Plugins entsprechend Reflection machen. Das nun im Detail zu erklären, würde etwas weit führen.

Hey,

ich verstehe deine Frage leider nicht so ganz, wenn du möchtest kann ich dir dabei aber gerne helfen.

Kurz als Info, ein Craftplayer ist eine Variable.

Bei Interesse kannst du mich ja einfach mal privat anschreiben.

Woher ich das weiß:Hobby – Mehrere Online-Kurse, das Buch "Java ist auch eine Insel"

Ich meinten z. B. : getHandle habe ich bei einem Nick Plugin Code gesehen

1
@MapHD

Hey,

ich weiss selbst nicht genau, wozu diese Methode dient, jedoch braucht man die eigentlich auch nie.

Was programmierst du eigentlich so für Plugins und hast du eventuell mal lust ein bisschen auf TS zu talken?

0

Kompletter Schwachsinn, was du da von dir gegeben hast

0

Was möchtest Du wissen?