Backup before major refactor of AdminMode based on user feedback

This commit is contained in:
2026-03-26 22:38:29 +07:00
parent b439a42134
commit ef128cc08d
25 changed files with 2130 additions and 582 deletions

View File

@@ -3,15 +3,23 @@ package org.blz.adminmode;
import org.blz.adminmode.commands.AdminModeCommand;
import org.blz.adminmode.config.ConfigManager;
import org.blz.adminmode.dialog.AdminDialogService;
import org.blz.adminmode.integrations.CoreProtectIntegration;
import org.blz.adminmode.integrations.LuckPermsIntegration;
import org.blz.adminmode.listeners.AdminModeListener;
import org.blz.adminmode.listeners.GameModeChangeListener;
import org.blz.adminmode.listeners.MobTargetListener;
import org.blz.adminmode.listeners.PlayerDeathListener;
import org.blz.adminmode.listeners.PlayerSessionListener;
import org.blz.adminmode.moderation.ModeManager;
import org.blz.adminmode.moderation.ModeSessionLogger;
import org.blz.adminmode.session.SessionStorage;
import org.bukkit.plugin.java.JavaPlugin;
public class AdminMode extends JavaPlugin {
private static AdminMode instance;
private ConfigManager configManager;
private ModeManager modeManager;
private AdminModeCommand adminModeCommand;
private AdminDialogService dialogService;
@@ -21,29 +29,40 @@ public class AdminMode extends JavaPlugin {
saveDefaultConfig();
configManager = new ConfigManager(this);
adminModeCommand = new AdminModeCommand(this, configManager);
SessionStorage sessionStorage = new SessionStorage(this);
LuckPermsIntegration luckPermsIntegration = new LuckPermsIntegration(this, configManager);
CoreProtectIntegration coreProtectIntegration = new CoreProtectIntegration(this, configManager);
ModeSessionLogger sessionLogger = new ModeSessionLogger(this, configManager);
modeManager = new ModeManager(this, configManager, luckPermsIntegration, sessionStorage, sessionLogger);
adminModeCommand = new AdminModeCommand(configManager, modeManager, coreProtectIntegration);
dialogService = new AdminDialogService(this, configManager, adminModeCommand);
adminModeCommand.setDialogService(dialogService);
getCommand("adminmode").setExecutor(adminModeCommand);
getCommand("admfix").setExecutor(new org.blz.adminmode.commands.AdminFixCommand(adminModeCommand));
getServer().getPluginManager().registerEvents(new AdminModeListener(this, adminModeCommand, configManager),
getServer().getPluginManager().registerEvents(new AdminModeListener(adminModeCommand, configManager, modeManager, dialogService),
this);
getServer().getPluginManager().registerEvents(new MobTargetListener(adminModeCommand, configManager), this);
getServer().getPluginManager().registerEvents(new GameModeChangeListener(adminModeCommand, configManager),
this);
getServer().getPluginManager().registerEvents(new PlayerSessionListener(adminModeCommand, modeManager), this);
getServer().getPluginManager().registerEvents(new PlayerDeathListener(modeManager), this);
for (org.bukkit.entity.Player onlinePlayer : getServer().getOnlinePlayers()) {
if (modeManager.hasSession(onlinePlayer.getUniqueId())) {
getServer().getScheduler().runTaskLater(this, () -> adminModeCommand.recoverSession(onlinePlayer), 1L);
}
}
// Load Pocket Dimension World
new org.blz.adminmode.utils.WorldLoader(this, "pocket_dimension").loadWorld();
// Register Abilities
belzeManager = new org.blz.adminmode.managers.BelzeBoolManager(this);
new org.blz.adminmode.managers.BelzeBoolManager(this);
getLogger().info("AdminMode успешно включен!");
}
private org.blz.adminmode.managers.BelzeBoolManager belzeManager; // Field to store manager
@Override
public void onDisable() {
getLogger().info("AdminMode отключен!");
@@ -57,6 +76,10 @@ public class AdminMode extends JavaPlugin {
return configManager;
}
public ModeManager getModeManager() {
return modeManager;
}
public AdminModeCommand getAdminModeCommand() {
return adminModeCommand;
}