Plugin-Erstellung/Java/SoundAsset: Unterschied zwischen den Versionen

Aus Rising World Wiki
Zeile 42: Zeile 42:


== Java Override Annotation ==
== Java Override Annotation ==
Mit der Java <code> @Override </code>  Annotation können wir dem Compiler mitteilen das wir absichtlich die Methode der '''Plugin''' Oberklasse überschreiben wollen.
Mit der Java <code> @Override </code>  Annotation können wir dem Compiler mitteilen das wir absichtlich die Methode der '''[https://javadoc.rising-world.net/latest/net/risingworld/api/Plugin.html Plugin]''' Oberklasse überschreiben wollen.
 


== Siehe auch ==
== Siehe auch ==

Version vom 10. Mai 2023, 09:08 Uhr

Stellt eine benutzerdefinierte Audiodatei dar (dies kann entweder ein Soundeffekt oder ein Musiktitel sein).
Unterstützte Dateiformate: ogg, mp2, mp3, midi/mid, wav, flac

Erstellt ein SoundAsset und spielt es für jeden Spieler nach dem Beitritt ab.
Die Klasse MyPlugin erbt von Plugin.

public class MyPlugin extends Plugin implements Listener
{
    //Our reusable sound asset
    public SoundAsset welcomeSound;

    @Override
    public void onEnable()
    {
       //Create a SoundAsset once and reuse it for every player (not necessary)
       welcomeSound = SoundAsset.loadFromFile(getPath() + "/welcome.ogg");

       //Remember to register the event listener
       registerEventListener(this);
    }

    @Override
    public void onDisable()
    {
        //...
    }

    @EventMethod
    public void onPlayerSpawn(PlayerSpawnEvent event)
    {
        Player player = event.getPlayer();
        player.playSound(welcomeSound, player.getPosition());
    }
}

Methoden der Oberklasse

Unsere Klasse erbt von der Plugin Oberklasse die zu API gehört.
Die Methode onEnable() wird aufgerufen, wenn das Plugin aktiviert wird. Zu diesem Zeitpunkt sind alle anderen Plugins bereits geladen. Die Methode onDisable() wird aufgerufen, wenn das Plugin deaktiviert und entladen wird.

Java Override Annotation

Mit der Java @Override Annotation können wir dem Compiler mitteilen das wir absichtlich die Methode der Plugin Oberklasse überschreiben wollen.

Siehe auch