//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package me.gromfake.prison;
//import com.sainttx.holograms.api.HologramManager;
//import com.sainttx.holograms.api.HologramPlugin;
import me.gromfake.API.RegionEnter;
import me.gromfake.commands.*;
import me.gromfake.customs.JoinExit;
import me.gromfake.locations.Bonus;
import me.gromfake.locations.City;
import me.gromfake.menus.*;
import me.gromfake.mines.MineMenu;
import me.gromfake.passport.OpenGuiCMD;
import me.gromfake.passport.ShowPass;
import me.gromfake.shop.BoostersMenu;
import me.gromfake.shop.GlobalBoosters;
import me.gromfake.shop.PersonalBoosters;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitScheduler;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
public class Main extends JavaPlugin implements Listener {
public Map<String, Integer> Mregions;
public static Economy econ = null;
public File levels = new File(this.getDataFolder() + "/levels.yml");
public File friends = new File(this.getDataFolder() + "/friends.yml");
public FileConfiguration levelsConfig;
public FileConfiguration friendsConfig;
public File items;
public FileConfiguration itemsConfig;
public File blocks;
public FileConfiguration blocksConfig;
public static Main instance;
static int ScoreboardUpdater;
public static Main getInstance()
{
return instance;
}
public Main() {
this.levelsConfig = YamlConfiguration.loadConfiguration(this.levels);
this.friendsConfig = YamlConfiguration.loadConfiguration(this.friends);
this.items = new File(this.getDataFolder() + "/items.yml");
this.itemsConfig = YamlConfiguration.loadConfiguration(this.items);
this.blocks = new File(this.getDataFolder() + "/blocks.yml");
this.blocksConfig = YamlConfiguration.loadConfiguration(this.blocks);
}
private boolean setupEconomy() {
if (this.getServer().getPluginManager().getPlugin("Vault") == null) {
return false;
} else {
RegisteredServiceProvider rsp = this.getServer().getServicesManager().getRegistration(Economy.class);
if (rsp == null) {
return false;
} else {
econ = (Economy) rsp.getProvider();
return econ != null;
}
}
}
public void saveCustomYml(FileConfiguration ymlConfig, File ymlFile) {
try {
ymlConfig.save(ymlFile);
} catch (IOException var4) {
var4.printStackTrace();
}
}
//public HologramManager hologramManager;
public void onEnable() {
instance = this;
Mregions = new HashMap<String, Integer>();
if (!this.setupEconomy()) {
Bukkit.getLogger().severe(String.format("[%s] - Disabled due to no Vault dependency found!", new Object[]{this.getDescription().getName()}));
this.getServer().getPluginManager().disablePlugin(this);
} else {
//this.hologramManager = JavaPlugin.getPlugin(HologramPlugin.class).getHologramManager();
this.getConfig().options().copyDefaults(true);
this.itemsConfig.options().copyDefaults(true);
this.saveConfig();
this.ScoreboardUpdater();
//this.ScoreboardUpdate();
Bukkit.getPluginManager().registerEvents(new Levels(), this);
Bukkit.getPluginManager().registerEvents(new Factions(), this);
Bukkit.getPluginManager().registerEvents(new PrisonScoreBoard(), this);
Bukkit.getPluginManager().registerEvents(new Blocks(), this);
Bukkit.getPluginManager().registerEvents(new Upgrade(), this);
Bukkit.getPluginManager().registerEvents(new Staff(), this);
Bukkit.getPluginManager().registerEvents(new Mobs(), this);
Bukkit.getPluginManager().registerEvents(new City(), this);
Bukkit.getPluginManager().registerEvents(new Bonus(), this);
Bukkit.getPluginManager().registerEvents(new Information(), this);
Bukkit.getPluginManager().registerEvents(new Alcohol(), this);
//GUI
Bukkit.getPluginManager().registerEvents(new GUIprofile(), this);
Bukkit.getPluginManager().registerEvents(new GUIcustom(), this);
Bukkit.getPluginManager().registerEvents(new GUIquests(), this);
Bukkit.getPluginManager().registerEvents(new GUIjobs(), this);
Bukkit.getPluginManager().registerEvents(new PersonalBoosters(), this);
Bukkit.getPluginManager().registerEvents(new GlobalBoosters(), this);
Bukkit.getPluginManager().registerEvents(new BoostersMenu(), this);
Bukkit.getPluginManager().registerEvents(new MineMenu(), this);
//Passport
Bukkit.getPluginManager().registerEvents(new OpenGuiCMD(), this);
//Custom
Bukkit.getPluginManager().registerEvents(new JoinExit(), this);
Bukkit.getPluginManager().registerEvents(new GUIcustom2(), this);
/////////////////////////////////////////////////////////////////////
Bukkit.getPluginManager().registerEvents(new ReportCMD(), this);
Bukkit.getPluginManager().registerEvents(new AskCMD(), this);
Bukkit.getPluginManager().registerEvents(new SpectatorCMD(), this);
Bukkit.getPluginManager().registerEvents(new AdminCMD(), this);
Bukkit.getPluginManager().registerEvents(new GompCMD(), this);
Bukkit.getPluginManager().registerEvents(new FreezeCMD(), this);
//////////////////////////
for (String region : getConfig().getConfigurationSection("regions").getKeys(false)) {
int value = getConfig().getInt("regions." + region);
Mregions.put(region, value);
}
//////////////////////////////
Bukkit.getPluginManager().registerEvents(new RegionEnter(Mregions), this);
/////////////////////////////////////////////////////////////////////
this.getCommand("level").setExecutor(new Levels());
this.getCommand("mine").setExecutor(new Mines());
this.getCommand("base").setExecutor(new Factions());
this.getCommand("faction").setExecutor(new Factions());
this.getCommand("upgrade").setExecutor(new Upgrade());
this.getCommand("fleave").setExecutor(new Factions());
this.getCommand("pinfo").setExecutor(new Staff());
this.getCommand("sc").setExecutor(new Staff());
this.getCommand("sct").setExecutor(new Staff());
this.getCommand("deaths").setExecutor(new Blocks());
this.getCommand("kills").setExecutor(new Blocks());
this.getCommand("block").setExecutor(new Blocks());
this.getCommand("ublock").setExecutor(new Blocks());
this.getCommand("donatemoney").setExecutor(new Blocks());
this.getCommand("drugs").setExecutor(new Blocks());
this.getCommand("city").setExecutor(new City());
this.getCommand("citybuy").setExecutor(new City());
this.getCommand("bonus").setExecutor(new Bonus());
this.getCommand("profile").setExecutor(this);
this.getCommand("information").setExecutor(new Information());
this.getCommand("sb").setExecutor(new Blocks());
this.getCommand("passport").setExecutor(new OpenGuiCMD());
this.getCommand("showpass").setExecutor(new ShowPass());
this.getCommand("pass").setExecutor(new Blocks());
this.getCommand("report").setExecutor(new ReportCMD());
this.getCommand("donate").setExecutor(new ReportCMD());
this.getCommand("ask").setExecutor(new AskCMD());
this.getCommand("otvet").setExecutor(new AskCMD());
this.getCommand("spec").setExecutor(new SpectatorCMD());
this.getCommand("specoff").setExecutor(new SpectatorCMD());
this.getCommand("achat").setExecutor(new AdminCMD());
this.getCommand("mp").setExecutor(new GompCMD());
this.getCommand("freeze").setExecutor(new FreezeCMD());
this.autoSave();
}
}
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if (cmd.getName().equalsIgnoreCase("profile")) {
if (!(sender instanceof Player)){
sender.sendMessage("You not Player");
return true;
}
Player p = (Player) sender;
GUIprofile.OpenGUI(p);
return true;
}
return true;
}
public void onDisable() {
Iterator var2 = Levels.levels.entrySet().iterator();
Entry w;
Entry v;
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".level", w.getValue());
}
var2 = Levels.blocks.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".blocks", w.getValue());
}
var2 = Levels.scoreboard.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".scoreboard", w.getValue());
}
var2 = Levels.drugs.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".drugs", w.getValue());
}
var2 = Levels.donatemoney.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".donatemoney", w.getValue());
}
var2 = Levels.passport.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".passport", w.getValue());
}
var2 = Levels.msg.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".msg", w.getValue());
}
var2 = Levels.faction.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".faction", w.getValue());
}
var2 = Levels.jobs.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".jobs", w.getValue());
}
var2 = Levels.city.entrySet().iterator();
while (var2.hasNext()) {
w = (Entry) var2.next();
this.levelsConfig.set((String) w.getKey() + ".city", w.getValue());
}
this.saveCustomYml(this.levelsConfig, this.levels);
this.saveCustomYml(this.friendsConfig, this.friends);
var2 = Bukkit.getWorlds().iterator();
while (var2.hasNext()) {
World w1 = (World) var2.next();
Iterator var4 = w1.getEntities().iterator();
}
this.saveCustomYml(this.blocksConfig, this.blocks);
this.saveCustomYml(this.itemsConfig, this.items);
}
public void ScoreboardUpdater() {
BukkitScheduler updater = Bukkit.getServer().getScheduler();
ScoreboardUpdater = updater.scheduleSyncRepeatingTask(this, new Runnable() {
public void run() {
Iterator var2 = Bukkit.getOnlinePlayers().iterator();
while(var2.hasNext()) {
Player p = (Player)var2.next();
PrisonScoreBoard.updateScoreboard(p);
}
}
}, 0L, 200L);
}
public void autoSave() {
Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
public void run() {
Main.this.saveCustomYml(Main.this.levelsConfig, Main.this.levels);
Main.this.saveCustomYml(Main.this.friendsConfig, Main.this.friends);
Main.this.saveCustomYml(Main.this.blocksConfig, Main.this.blocks);
}
}, 36000L, 36000L);
}
/*public void ScoreboardUpdate() {
Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
@Override
public void run() {
List<String> list = getConfig().getStringList("ScoreBoardUpdateName");
for (Player player: Bukkit.getOnlinePlayers()) {
if (player.getScoreboard() != null && player.getScoreboard().getObjective(DisplaySlot.SIDEBAR)!=null && !Levels.faction.containsKey(player.getName())) {
for (int i = 0; i < list.size() ; i++) {
String s = list.get(i);
if (s.equals(player.getScoreboard().getObjective(DisplaySlot.SIDEBAR).getDisplayName())){
if (i == list.size()-1){
player.getScoreboard().getObjective(DisplaySlot.SIDEBAR).setDisplayName(list.get(0));
}
else
{
player.getScoreboard().getObjective(DisplaySlot.SIDEBAR).setDisplayName(list.get(i+1));
}
break;
}
}
}
}
}
},20,5);
}
*/
}