feat: BlackKnife DeltaMine v1.0.0 - Paper 1.21.1 SWOON/Stars/Sword/Diamond/Lunge/Snipe/Tri/Overhead + Magic 4commons Parry chat 400words +12h updates
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
package me.sashegdev.blackknife;
|
||||
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
public class BlackKnifePlugin extends JavaPlugin {
|
||||
private TensionManager tension;
|
||||
private MagicManager magicManager;
|
||||
private MagicListener magicListener;
|
||||
private ChatConfig chatConfig;
|
||||
private ChatHandler chatHandler;
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
tension = new TensionManager();
|
||||
magicManager = new MagicManager(this);
|
||||
magicListener = new MagicListener(this, magicManager);
|
||||
chatConfig = new ChatConfig(this);
|
||||
chatHandler = new ChatHandler(this, chatConfig);
|
||||
getServer().getPluginManager().registerEvents(tension, this);
|
||||
getServer().getPluginManager().registerEvents(new BlackKnifeListener(this), this);
|
||||
getServer().getPluginManager().registerEvents(new SwoonHandler(this), this);
|
||||
getServer().getPluginManager().registerEvents(new AttackTpListener(tension), this);
|
||||
getServer().getPluginManager().registerEvents(new KnockedHandler(this), this);
|
||||
getServer().getPluginManager().registerEvents(new ParryHandler(this), this);
|
||||
getServer().getPluginManager().registerEvents(magicListener, this);
|
||||
getServer().getPluginManager().registerEvents(chatHandler, this);
|
||||
getCommand("blackknife").setExecutor(new BlackKnifeCommand(this, chatConfig, chatHandler));
|
||||
getCommand("magic").setExecutor(new MagicCommand(magicManager, this));
|
||||
getServer().getScheduler().runTaskTimer(this, () -> tension.tickShield(), 20L, 1L);
|
||||
getLogger().info("BlackKnife 1.0.0 enabled - Paper 1.21.1");
|
||||
}
|
||||
|
||||
public TensionManager getTension() { return tension; }
|
||||
public MagicManager getMagicManager() { return magicManager; }
|
||||
public MagicListener getMagicListener() { return magicListener; }
|
||||
|
||||
@Override
|
||||
public void onDisable() {
|
||||
getServer().getScheduler().cancelTasks(this);
|
||||
if (tension != null) {
|
||||
tension.hideAll();
|
||||
for (var p : getServer().getOnlinePlayers()) {
|
||||
var copy = new java.util.ArrayList<net.kyori.adventure.bossbar.BossBar>();
|
||||
for (var b : p.activeBossBars()) copy.add(b);
|
||||
for (var bar : copy) p.hideBossBar(bar);
|
||||
}
|
||||
}
|
||||
if (magicManager != null) magicManager.saveAll();
|
||||
int removed = EntityTracker.cleanup(this);
|
||||
getLogger().info("BlackKnife disabled, cleaned " + removed + " entities");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user