Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions src/main/java/fr/openmc/core/ListenersManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import fr.openmc.core.features.cube.listeners.CubeListener;
import fr.openmc.core.features.cube.listeners.RepulseEffectListener;
import fr.openmc.core.features.cube.multiblocks.MultiBlocksListeners;
import fr.openmc.core.features.displays.bossbar.listeners.BossbarListener;
import fr.openmc.core.features.itemsadder.SpawnerExtractorListener;
import fr.openmc.core.features.settings.PlayerSettingsManager;
import fr.openmc.core.features.tickets.TicketListener;
Expand Down Expand Up @@ -34,7 +33,6 @@ public static void init() {
new SleepListener(),
new PlayerDeathListener(),
new AsyncChatListener(OMCPlugin.getInstance()),
new BossbarListener(),
new PlayerSettingsManager(),
new InteractListener(),
new AywenCapListener(),
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/fr/openmc/core/OMCPlugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import fr.openmc.core.features.cube.multiblocks.MultiBlockManager;
import fr.openmc.core.features.displays.TabList;
import fr.openmc.core.features.displays.bossbar.BossbarManager;
import fr.openmc.core.features.displays.bossbar.contents.HelpConfigManager;
import fr.openmc.core.features.displays.holograms.HologramLoader;
import fr.openmc.core.features.displays.scoreboards.ScoreboardManager;
import fr.openmc.core.features.dream.DreamManager;
Expand Down Expand Up @@ -133,6 +134,7 @@ public void onEnable() {
QuestProgressSaveManager.init();
TabList.init();
AdminShopManager.init();
HelpConfigManager.init();
BossbarManager.init();
AnimationsManager.init();
HalloweenManager.init();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
package fr.openmc.core.features.displays.bossbar;

import net.kyori.adventure.bossbar.BossBar;
import org.bukkit.boss.BarColor;
import org.bukkit.entity.Player;

public abstract class BaseBossbar {
/**
* Initialise la boss bar pour un joueur
*
* @param player Le joueur
*/
public void init(Player player, BossBar bar) {
update(player, bar);
}

protected abstract String id();

/**
* Met à jour la boss bar
*
* @param player Le joueur
*/
protected abstract void update(Player player, BossBar bar);

/**
* Détermine la couleur de la boss bar
* @param player Le joueur
* @return La couleur de la boss bar
*/
protected abstract BossBar.Color color(Player player);

/**
* Détermine le style de la boss bar
* @param player Le joueur
* @return Le style de la boss bar
*/
protected abstract BossBar.Overlay style(Player player);

/**
* Détermine si le boss bar doit être affiché pour un joueur
*
* @param player Le joueur à vérifier
* @return true si la boss bar doit être affiché, false sinon
*/
protected abstract boolean shouldDisplay(Player player);

/**
* @return Le poids de la boss bar (plus la valeur est haute, plus la position de la boss bar sera haute).
*/
protected abstract int weight();

/**
* @return L'intervalle de mise à jour en secondes
*/
protected abstract Integer updateInterval();
}
Loading
Loading