[JAVA] Minecraft BE Tippe mit einem Holzschwert, um zu springen

Dieser Beitrag

――Dies ist eine Erklärung der Steckerleitung, die ich mit der Absicht gemacht habe, einen einfachen Stecker herzustellen, den selbst Anfänger herstellen können. Ich hoffe, es ist eine nützliche Referenz.

Einführung

Dies ist ein Artikel über das Nukkit-Plug-In, das beim Erstellen eines Servers mit Minecraft BE (ehemals PE) verwendet wird. Wenn Sie Java in gewissem Umfang verwenden können, können Sie es lesen. Ich denke, es wird hilfreich sein, wenn Sie es lesen können, während Sie es überprüfen, auch wenn Sie es nicht sind.

Was für eine Struktur ist das?

Zunächst werde ich vorstellen, wie das Plug-In aufgebaut ist. Im Plug-In wird die Ereignisverarbeitung gemäß Minecraft in Nukkit vorbereitet, und wir werden die Verarbeitung mit ihnen schreiben.

@EventHandler
public void onJoin(PlayerJoinEvent event){
    //Beschreibung
}

Im obigen Beispiel schreiben wir eine Funktion, die PlayerJoinEvent als Argument verwendet. Dies wird aufgerufen, wenn der Player dem Server beitritt.

Es gibt viele andere Arten von Ereignissen, und wir werden Plugins erstellen, während wir diese verwenden.

Erklärung, was erstellt wurde

Dieses Mal habe ich etwas gemacht, das, wenn Sie mit einem Holzschwert klopfen, in die Richtung springt, in die Sie schauen. Dies verwendet auch Ereignisse. Werfen wir einen Blick auf die Quelle.

@Override
public void onEnable(){
    this.getServer().getLogger().info("§b[TapFly]Gestartet");
    this.getServer().getPluginManager().registerEvents(this, this);
}

@EventHandler
public void onInteract(PlayerInteractEvent e){
    Player pl = e.getPlayer();
    Item item = pl.getInventory().getItemInHand();
    int itemid = item.getId();
    if(itemid == Item.WOODEN_SWORD) {
        double yaw = pl.getYaw();
        double pitch = pl.getPitch();
        double addX = -Math.sin(yaw * Math.PI / 180) * Math.cos(pitch * Math.PI / 180);
        double addY = -Math.sin(pitch * Math.PI / 180);
        double addZ = Math.cos(yaw * Math.PI / 180) * Math.cos(pitch * Math.PI / 180);
        pl.setMotion(new Vector3(addX, addY, addZ));
    }
}

Dies ist Teil der Plug-In-Quelle. Ich habe viel geschrieben, aber es gibt zwei Funktionen. Lassen Sie uns diese trennen.

Die erste Funktion namens onEnable.

@Override
public void onEnable()

Dies ist die erste Funktion, die im Plug-In aufgerufen wird. Manchmal am Anfang aufgerufen, wird es verwendet, um Werte zu initialisieren. In diesem Fall registrieren wir uns für das aufzurufende Ereignis und geben Zeichen an die Konsole aus.

Die zweite Funktion heißt onIteract.

@EventHandler
public void onInteract(PlayerInteractEvent e)

Dies ist ein Ereignis, das auftritt, wenn der Spieler auf etwas tippt. Von diesem Ereignis können Sie das Spielerobjekt erhalten, von dem Sie den Namen oder das Gegenstandsobjekt erhalten können, das Sie in Ihrer Hand haben. Dieses Mal beurteile ich, ob es sich um ein Holzschwert aus dem erworbenen Gegenstand handelt, und fliege es in die Richtung, in die es zeigt. Außerdem wird das Fliegen in die Richtung, in die Sie blicken, mithilfe eines Dreiecks berechnet. Es spielt jedoch keine Rolle, ob Sie in die Richtung fliegen, in die Sie blicken. Es ist wichtig, dass Sie mit Ereignissen umgehen können. Sie können verschiedene Dinge tun, indem Sie Ereignisse verwenden, um Dinge in Verbindung zu bringen, Entscheidungen zu treffen und sie zu verarbeiten.

Recommended Posts

Minecraft BE Tippe mit einem Holzschwert, um zu springen
Wie unterschreibe ich Minecraft MOD?
Um kein statischer Onkel zu sein
Es wurde behoben, dass eine bestimmte Spalte mit aktivem Datensatz leer gespeichert werden konnte
Es scheint ein Wort "de-Java" zu geben.
Ich möchte in der Lage sein, Dateien mit refile mit administrate [rails6] zu lesen.
Die Geschichte, dass der Umgang mit alten Daten ärgerlich ist
[Rails] Rails neu, um eine Datenbank mit PostgreSQL zu erstellen
Konvertieren Sie eine Zeichenfolge mit swift in ein zeichenweises Array
[Ruby] Ich möchte einen Methodensprung machen!
Übergang zu einem View Controller mit Swift WebKit
Rippen Sie eine CD mit Ubuntu 18.04 LTS auf MP3
Site-Zusammenfassung, die beim Minecraft-Modding 1.12.2 hilfreich sein wird
Minecraft BE Serverentwicklung von PHP nach Java
Ich habe versucht, den Block mit Java zu brechen (1)