Skip to content

Using events

koca2000 edited this page Jun 12, 2019 · 5 revisions

NoteBlockAPI provides several event you can handle.

SongEndEvent

Fired when SongPlayer goes to end of song.

@EventHandler
public void onSongEnd(SongEndEvent e){
SongPlayer sp = e.getSongPlayer(); //Gives you SongPlayer
Song s = sp.getSong(); //Gives you player Song
}

SongStoppedEvent

Fired when SongPlayersetPlaying(false) is executed.

@EventHandler
public void onSongStopped(SongStoppedEvent e){
SongPlayer sp = e.getSongPlayer(); //Gives you SongPlayer
Song s = sp.getSong(); //Gives you player Song
}

SongDestroyingEvent

Fired when SongPlayerdestroy() is executed or after SongEndEvent when autodestroy is set to true.

@EventHandler
public void onSongDestroying(SongDestroyingEvent e){
SongPlayer sp = e.getSongPlayer(); //Gives you SongPlayer
Song s = sp.getSong(); //Gives you player Song
boolean cancelled = e.isCancelled(); //Check if is event cancelled
sp.setCancelled(true) //Cancel event
}

PlayerRangeStateChangeEvent

Fired when Player enter/leaves area in which PositionSongPlayer or NoteBlockSongPlayer is hearable.

@EventHandler
public void onPlayerRangeStateChange(PlayerRangeStateChangeEvent e){
SongPlayer sp = e.getSongPlayer(); //Gives you SongPlayer
Song s = sp.getSong(); //Gives you player Song
Player p = e.getPlayer(); //Gives you Player
boolean isInRange = e.isInRange(); //Returns true if player enter SongPlayer area, false if player leaves SongPlayer area
}

SongLoopEvent (since 1.2.1)

Fired when SongPlayer finish playing Song and is starting the Song again.

@EventHandler
public void onSongLoopEvent(SongLoopEvent e){
SongPlayer sp = e.getSongPlayer(); //Gives you SongPlayer
Song s = sp.getSong(); //Gives you player Song
boolean cancelled = e.isCancelled(); //Check if is event cancelled
sp.setCancelled(true) //Cancel event
}

SongNextEvent (since 1.2.2)

Fired when next Song from Playlist starts.

@EventHandler
public void onSongNext(SongNextEvent e){
SongPlayer sp = e.getSongPlayer(); //Gives you SongPlayer
Song s = sp.getSong(); //Gives you player Song
}

Clone this wiki locally