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

Aus Rising World Wiki
Keine Bearbeitungszusammenfassung
Zeile 4: Zeile 4:


Erstellt ein SoundAsset und spielt es für jeden Spieler nach dem Beitritt ab. <br/>
Erstellt ein SoundAsset und spielt es für jeden Spieler nach dem Beitritt ab. <br/>
Die Klasse '''MyPlugin''' erbt von  '''Plugin'''.
Die Klasse '''MyPlugin''' erbt von  '''[https://javadoc.rising-world.net/latest/net/risingworld/api/Plugin.html Plugin]'''.
<syntaxhighlight lang="java" line start="1">
<syntaxhighlight lang="java" line start="1">
public class MyPlugin extends Plugin implements Listener
public class MyPlugin extends Plugin implements Listener

Version vom 10. Mai 2023, 09:09 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