mirror of
https://github.com/BentoBoxWorld/Challenges.git
synced 2024-09-26 05:32:36 +02:00
3b74b17283
Compiles, but still a lot of functions need to be added.
83 lines
2.1 KiB
Java
83 lines
2.1 KiB
Java
package bskyblock.addin.challenges;
|
|
|
|
import java.util.UUID;
|
|
|
|
import org.bukkit.command.CommandSender;
|
|
import org.bukkit.plugin.java.JavaPlugin;
|
|
|
|
import bskyblock.addin.challenges.commands.ChallengesCommand;
|
|
import bskyblock.addin.challenges.config.LocaleManager;
|
|
import bskyblock.addin.challenges.config.PluginConfig;
|
|
import us.tastybento.bskyblock.BSkyBlock;
|
|
import us.tastybento.bskyblock.config.BSBLocale;
|
|
|
|
/**
|
|
* Addin to BSkyBlock that enables challenges
|
|
* @author tastybento
|
|
*
|
|
*/
|
|
public class Challenges extends JavaPlugin {
|
|
|
|
// The BSkyBlock plugin instance.
|
|
private BSkyBlock bSkyBlock;
|
|
|
|
// Locale manager for this plugin
|
|
private LocaleManager localeManager;
|
|
|
|
private ChallengesManager manager;
|
|
|
|
@Override
|
|
public void onEnable() {
|
|
// Load the plugin's config
|
|
new PluginConfig(this);
|
|
// Get the BSkyBlock plugin. This will be available because this plugin depends on it in plugin.yml.
|
|
bSkyBlock = BSkyBlock.getPlugin();
|
|
// Check if it is enabled - it might be loaded, but not enabled.
|
|
if (bSkyBlock == null || !bSkyBlock.isEnabled()) {
|
|
this.setEnabled(false);
|
|
return;
|
|
}
|
|
|
|
// Local locales
|
|
localeManager = new LocaleManager(this);
|
|
|
|
// Challenges Manager
|
|
manager = new ChallengesManager(this);
|
|
// Register commands
|
|
new ChallengesCommand(this);
|
|
// Register Listener
|
|
getServer().getPluginManager().registerEvents(manager.getChallengesPanels(), this);
|
|
// Done
|
|
}
|
|
|
|
@Override
|
|
public void onDisable(){
|
|
if (manager != null)
|
|
manager.save(false);
|
|
}
|
|
|
|
|
|
/**
|
|
* Get the locale for this player
|
|
* @param sender
|
|
* @return Locale object for sender
|
|
*/
|
|
public BSBLocale getLocale(CommandSender sender) {
|
|
return localeManager.getLocale(sender);
|
|
}
|
|
|
|
/**
|
|
* Get the locale for this UUID
|
|
* @param uuid
|
|
* @return Locale object for UUID
|
|
*/
|
|
public BSBLocale getLocale(UUID uuid) {
|
|
return localeManager.getLocale(uuid);
|
|
}
|
|
|
|
public ChallengesManager getManager() {
|
|
return manager;
|
|
}
|
|
|
|
}
|