1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-21 12:15:50 +00:00
Slimefun4/src/main/java/me/mrCookieSlime/Slimefun/api/GuideHandler.java

32 lines
827 B
Java
Raw Normal View History

2016-04-14 16:24:03 +00:00
package me.mrCookieSlime.Slimefun.api;
import java.util.List;
2019-06-20 07:50:59 +00:00
import org.bukkit.entity.Player;
2016-04-14 16:24:03 +00:00
import me.mrCookieSlime.CSCoreLibPlugin.PlayerRunnable;
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu;
2019-09-02 08:24:53 +00:00
public interface GuideHandler {
2016-04-14 16:24:03 +00:00
public abstract void addEntry(List<String> texts, List<String> tooltips);
public abstract PlayerRunnable getRunnable();
public abstract int getTier();
public abstract boolean trackHistory();
public abstract int next(Player p, int index, ChestMenu menu);
2017-01-18 14:47:51 +00:00
2019-09-02 08:24:53 +00:00
default PlayerRunnable getRunnable(boolean book) {
2017-01-18 14:47:51 +00:00
return this.getRunnable();
}
2016-04-14 16:24:03 +00:00
2019-09-02 08:24:53 +00:00
default void run(Player p, boolean survival, boolean book) {
2017-01-18 14:51:14 +00:00
this.getRunnable(book).run(p);
2016-04-14 16:24:03 +00:00
if (survival && this.trackHistory()) {
2019-10-16 23:08:14 +00:00
PlayerProfile.get(p, profile -> profile.getGuideHistory().add(this));
2016-04-14 16:24:03 +00:00
}
}
}