Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package de.niklas409.griefergames.features.main;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import org.bukkit.Bukkit;
- import org.bukkit.Effect;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.configuration.file.FileConfiguration;
- import org.bukkit.configuration.file.YamlConfiguration;
- import org.bukkit.entity.Player;
- import org.bukkit.plugin.Plugin;
- import org.bukkit.plugin.java.JavaPlugin;
- import de.niklas409.griefergames.features.blocklog.BlockLogCMD;
- import de.niklas409.griefergames.features.blocklog.BlockLogListener;
- import de.niklas409.griefergames.features.blocklog.MySQL;
- import de.niklas409.griefergames.features.clans.ClanCMD;
- import de.niklas409.griefergames.features.clans.ClanListener;
- import de.niklas409.griefergames.features.cmds.AntiBotCMD;
- import de.niklas409.griefergames.features.cmds.BanCMD;
- import de.niklas409.griefergames.features.cmds.BankCMD;
- import de.niklas409.griefergames.features.cmds.BoldCMD;
- import de.niklas409.griefergames.features.cmds.BoosterCMD;
- import de.niklas409.griefergames.features.cmds.ClearchatCMD;
- import de.niklas409.griefergames.features.cmds.FeuerwerkCMD;
- import de.niklas409.griefergames.features.cmds.GGRLCMD;
- import de.niklas409.griefergames.features.cmds.GrieferBoostCMD;
- import de.niklas409.griefergames.features.cmds.GunCMD;
- import de.niklas409.griefergames.features.cmds.JaCMD;
- import de.niklas409.griefergames.features.cmds.KopfCMD;
- import de.niklas409.griefergames.features.cmds.LuckyBlockCMD;
- import de.niklas409.griefergames.features.cmds.MeldungCMD;
- import de.niklas409.griefergames.features.cmds.MutepCMD;
- import de.niklas409.griefergames.features.cmds.NeinCMD;
- import de.niklas409.griefergames.features.cmds.PerkCMD;
- import de.niklas409.griefergames.features.cmds.PingCMD;
- import de.niklas409.griefergames.features.cmds.PortalCMD;
- import de.niklas409.griefergames.features.cmds.PrefixCMD;
- import de.niklas409.griefergames.features.cmds.SignCMD;
- import de.niklas409.griefergames.features.cmds.SkinCMD;
- import de.niklas409.griefergames.features.cmds.SlowchatCMD;
- import de.niklas409.griefergames.features.cmds.StartKickCMD;
- import de.niklas409.griefergames.features.cmds.StatusCMD;
- import de.niklas409.griefergames.features.cmds.UnStartKickCMD;
- import de.niklas409.griefergames.features.cmds.UnbanCMD;
- import de.niklas409.griefergames.features.cmds.UnmuteCMD;
- import de.niklas409.griefergames.features.cmds.UnmutepCMD;
- import de.niklas409.griefergames.features.cmds.VanishCMD;
- import de.niklas409.griefergames.features.cmds.ViewarmorCMD;
- import de.niklas409.griefergames.features.listeners.MainListener;
- import de.niklas409.griefergames.features.only.api.cmds.BreakBlockCMD;
- import de.niklas409.griefergames.features.only.api.cmds.MenuCMD;
- import de.niklas409.griefergames.features.only.api.cmds.MergeCMD;
- import de.niklas409.griefergames.features.only.api.cmds.PlayerholoCMD;
- import de.niklas409.griefergames.features.only.api.cmds.PremiumCMD;
- import de.niklas409.griefergames.features.only.api.cmds.RandCMD;
- import de.niklas409.griefergames.features.only.api.cmds.SchildCMD;
- public class Main extends JavaPlugin {
- public static String Version = "v2.9";
- static Main instance;
- public static Main getInstance() {
- return instance;
- }
- public static MySQL mysql;
- public void onEnable() {
- Main.instance = this;
- LuckyBlockEffekte();
- loadConfig();
- loadSBConfig();
- loadMySQLFile();
- SBUpdate();
- String Prefix = getConfig().getString("Prefix").replace("&", "§");
- Bukkit.getConsoleSender().sendMessage(Prefix + "§aDas Plugin wurde erfolgreich gestartet!");
- Bukkit.getConsoleSender().sendMessage(Prefix + "§6" + Version + " by §2Niklas409");
- if(isVersionOld(this)) {
- Bukkit.getConsoleSender().sendMessage(Prefix + "§cDu benutzt eine §4§lalte §cVersion vom Plugin!");
- } else {
- Bukkit.getConsoleSender().sendMessage(Prefix + "§aDu benutzt die §2§lneuste §aVersion vom Plugin!");
- }
- init();
- LoadPlayerHolo();
- LoadBlockLog();
- LoadBank();
- LoadPortal();
- LoadPremium();
- FlyChecker();
- LoadMenu();
- }
- public void onDisable() {
- String Prefix = getConfig().getString("Prefix").replace("&", "§");
- Bukkit.getConsoleSender().sendMessage(Prefix + "§aDas Plugin wurde erfolgreich beendet!");
- Bukkit.getConsoleSender().sendMessage(Prefix + "§6" + Version + " by §2Niklas409");
- }
- public void init() {
- new SlowchatCMD(this);
- new ClearchatCMD(this);
- new MutepCMD(this);
- new StartKickCMD(this);
- new JaCMD(this);
- new NeinCMD(this);
- new KopfCMD(this);
- new PrefixCMD(this);
- new BoldCMD(this);
- new ViewarmorCMD(this);
- new UnmutepCMD(this);
- new UnStartKickCMD(this);
- new RandCMD(this);
- new GGRLCMD(this);
- new LuckyBlockCMD(this);
- new PingCMD(this);
- new BanCMD(this);
- new UnbanCMD(this);
- new UnmuteCMD(this);
- new VanishCMD(this);
- new ClanCMD(this);
- new BreakBlockCMD(this);
- new MeldungCMD(this);
- new AntiBotCMD(this);
- new PerkCMD(this);
- new StatusCMD(this);
- new FeuerwerkCMD(this);
- new GunCMD(this);
- new SkinCMD(this);
- new MergeCMD(this);
- new GrieferBoostCMD(this);
- new BoosterCMD(this);
- new SignCMD(this);
- new SchildCMD(this);
- new MainListener(this);
- new ClanListener(this);
- }
- public void LoadPlayerHolo() {
- if(this.getConfig().getString("/Playerholo").equalsIgnoreCase("true")) {
- new PlayerholoCMD(this);
- }
- }
- public void LoadBlockLog() {
- if(this.getConfig().getString("BlockLog").equalsIgnoreCase("true")) {
- ConnectMySQLBlockLog();
- if(MySQL.con != null) {
- new BlockLogCMD(this);
- new BlockLogListener(this);
- }
- }
- }
- public void LoadBank() {
- if(this.getConfig().getString("BankSettings false/File/MySQL").equalsIgnoreCase("MySQL")) {
- ConnectMySQLBank();
- if(MySQL.con != null) {
- new BankCMD(this);
- }
- } else if(this.getConfig().getString("BankSettings false/File/MySQL").equalsIgnoreCase("File")) {
- new BankCMD(this);
- }
- }
- public void LoadPortal() {
- if(this.getConfig().getString("PortalSettings false/Server/Map").equalsIgnoreCase("Server") || this.getConfig().getString("PortalSettings false/Server/Map").equalsIgnoreCase("Map")) {
- new PortalCMD(this);
- }
- }
- public void LoadPremium() {
- if(this.getConfig().getString("/Premium").equalsIgnoreCase("true")) {
- new PremiumCMD(this);
- }
- }
- public void LoadMenu() {
- if(this.getConfig().getString("/Menu").equalsIgnoreCase("true")) {
- new MenuCMD(this);
- }
- }
- public void loadConfig() {
- getConfig().addDefault("Prefix", "&8[&4&lGG Features&8] &r");
- getConfig().addDefault("NoPerms", "&cDazu hast du keine Rechte!");
- getConfig().addDefault("Servername", "Server.de");
- getConfig().addDefault("UnbanAntragIp", "Server.de");
- getConfig().addDefault("StartKickPrefix", "&7[&4&lStart&e&lKick&7] &r");
- getConfig().addDefault("NoPermsStartKick", "&cDazu hast du keine Rechte!");
- getConfig().addDefault("Shop", "&7Dein Link zum Shop -> &2Vernikt.de");
- getConfig().addDefault("WerbungBeimJoinen", "true");
- getConfig().addDefault("UpdaterBeimJoinen", "true");
- getConfig().addDefault("ClearChatWaitTimeInMinutes", "60");
- getConfig().addDefault("KopfWaitTimeInMinutes", "20160");
- getConfig().addDefault("MutepWaitTimeInMinutes", "60");
- getConfig().addDefault("MutepTime", "15");
- getConfig().addDefault("SlowChatWaitTimeInMinutes", "10");
- getConfig().addDefault("StartKickWaitTimeInMinutes", "1440");
- getConfig().addDefault("PremiumWaitTimeInMinutes", "10080");
- getConfig().addDefault("/p", "false");
- getConfig().addDefault("/Rand", "false");
- getConfig().addDefault("/Menu", "false");
- getConfig().addDefault("/Premium", "false");
- getConfig().addDefault("PremiumRangName", "Premium");
- getConfig().addDefault("PremiumLaengeInTage", "7");
- getConfig().addDefault("PlotPreise", 10000);
- getConfig().addDefault("NoFallPerk", 500000);
- getConfig().addDefault("NoHungerPerk", 250000);
- getConfig().addDefault("MutepPerk", 1000000);
- getConfig().addDefault("ClearChatPerk", 250000);
- getConfig().addDefault("SlowChatPerk", 250000);
- getConfig().addDefault("StartKickPerk", 750000);
- getConfig().addDefault("ChatSystem[Deaktivieren, wenn es Bugs mit dem Chat gibt]", "true");
- getConfig().addDefault("GruenerChatFuerOp", "true");
- getConfig().addDefault("ChatPfeile(AK)", "true");
- getConfig().addDefault("/Playerholo", "true");
- getConfig().addDefault("WieVieleHolosProSpieler", "3");
- getConfig().addDefault("ChatLog", "true");
- getConfig().addDefault("CommandLog", "true");
- getConfig().addDefault("BlockLog", "false");
- getConfig().addDefault("PortalSettings false/Server/Map", "false");
- getConfig().addDefault("Servername[Bungee-Config] vom PortalServer", "false");
- getConfig().addDefault("BankSettings false/File/MySQL", "File");
- FileConfiguration cfg = this.getConfig();
- cfg.options().copyDefaults(true);
- saveConfig();
- }
- public void loadSBConfig() {
- File SB = new File("plugins/GrieferGames/Scoreboard.yml");
- YamlConfiguration ySB = YamlConfiguration.loadConfiguration(SB);
- ySB.addDefault("Info", "Der Titel darf nicht mehr als 16 Zeichen haben! %ONPLAYER% bedeutet wie viele online sind, %MAXPLAYER% bedeutet wie viele maximal auf denn Server duerfen, %ESSENTIALSMONEY% ist das GeldSystem von Essentials, %WORLD% zeigt die Welt an wo man selber ist und %NULL% bedeutet das die Line nicht angezeigt wird.");
- ySB.addDefault("Scoreboard", "true");
- ySB.addDefault("Sekunden fuer Update", "5");
- ySB.addDefault("Titel", "&6Server.de");
- ySB.addDefault("Line13", "&1 ");
- ySB.addDefault("Line12", "&7> &3&lServer");
- ySB.addDefault("Line11", "&fCB1");
- ySB.addDefault("Line10", "&2 ");
- ySB.addDefault("Line9", "&7> &3&lOnline");
- ySB.addDefault("Line8", "&f%ONPLAYER%/%MAXPLAYER%");
- ySB.addDefault("Line7", "&3 ");
- ySB.addDefault("Line6", "&7> &3&lKontostand");
- ySB.addDefault("Line5", "&f%ESSENTIALSMONEY%");
- ySB.addDefault("Line4", "&4 ");
- ySB.addDefault("Line3", "&7> &3&lShop");
- ySB.addDefault("Line2", "&fServer.de");
- ySB.addDefault("Line1", "&5 ");
- ySB.options().copyDefaults(true);
- try {
- ySB.save(SB);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- public void loadMySQLFile() {
- File MySQL = new File("plugins/GrieferGames/MySQL.yml");
- YamlConfiguration yMySQL = YamlConfiguration.loadConfiguration(MySQL);
- yMySQL.addDefault("Info", "Die MySQL wird derzeit fuer BlockLog und der Bank benoetigt, solltest du dies nicht brauchen kannst du das einfach in der Config ausstellen.");
- yMySQL.addDefault("MySQL" + ".Host", "localhost");
- yMySQL.addDefault("MySQL" + ".Port", "3306");
- yMySQL.addDefault("MySQL" + ".Database", "gg");
- yMySQL.addDefault("MySQL" + ".User", "root");
- yMySQL.addDefault("MySQL" + ".Password", "123");
- yMySQL.options().copyDefaults(true);
- try {
- yMySQL.save(MySQL);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- public static void reload() {
- Bukkit.getPluginManager().getPlugin("GrieferGames").getConfig();
- Bukkit.getPluginManager().getPlugin("GrieferGames").reloadConfig();
- }
- public void LuckyBlockEffekte() {
- Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
- @Override
- public void run() {
- try {
- for(Location loc : MainListener.LuckyBlockSaver) {
- if(loc.getBlock().getType() == Material.SPONGE) {
- loc.getWorld().playEffect(new Location(loc.getWorld(), loc.getX()+1, loc.getY(), loc.getZ()), Effect.MOBSPAWNER_FLAMES, 1);
- loc.getWorld().playEffect(new Location(loc.getWorld(), loc.getX()-1, loc.getY(), loc.getZ()), Effect.MOBSPAWNER_FLAMES, 1);
- loc.getWorld().playEffect(new Location(loc.getWorld(), loc.getX(), loc.getY(), loc.getZ()+1), Effect.MOBSPAWNER_FLAMES, 1);
- loc.getWorld().playEffect(new Location(loc.getWorld(), loc.getX(), loc.getY(), loc.getZ()-1), Effect.MOBSPAWNER_FLAMES, 1);
- } else {
- MainListener.LuckyBlockSaver.remove(loc);
- }
- }
- } catch(Exception e1) {}
- }
- }, 0, 18);
- }
- private void SBUpdate() {
- File SB = new File("plugins/GrieferGames/Scoreboard.yml");
- YamlConfiguration ySB = YamlConfiguration.loadConfiguration(SB);
- if(ySB.getString("Scoreboard").equalsIgnoreCase("true")) {
- Integer Zahl = Integer.valueOf(ySB.getString("Sekunden fuer Update"));
- Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
- @Override
- public void run() {
- for(Player all : Bukkit.getOnlinePlayers()) {
- Scoreboard.sendScoreboard(all);
- }
- }
- }, 0, 20*Zahl);
- }
- }
- private void ConnectMySQLBlockLog() {
- File MySQL = new File("plugins/GrieferGames/MySQL.yml");
- YamlConfiguration yMySQL = YamlConfiguration.loadConfiguration(MySQL);
- String Host = yMySQL.getString("MySQL" + ".Host");
- String Port = yMySQL.getString("MySQL" + ".Port");
- String Database = yMySQL.getString("MySQL" + ".Database");
- String User = yMySQL.getString("MySQL" + ".User");
- String Password = yMySQL.getString("MySQL" + ".Password");
- mysql = new MySQL(Host, Port, Database, User, Password);
- mysql.update("CREATE TABLE IF NOT EXISTS BlöckeAbbauen(Location varchar(1000),Block varchar(1000), SpielerUUID varchar(1000),Datum varchar(1000), Uhrzeit varchar(1000));");
- mysql.update("CREATE TABLE IF NOT EXISTS BlöckeBauen(Location varchar(1000),Block varchar(1000), SpielerUUID varchar(1000),Datum varchar(1000), Uhrzeit varchar(1000));");
- }
- private void ConnectMySQLBank() {
- File MySQL = new File("plugins/GrieferGames/MySQL.yml");
- YamlConfiguration yMySQL = YamlConfiguration.loadConfiguration(MySQL);
- String Host = yMySQL.getString("MySQL" + ".Host");
- String Port = yMySQL.getString("MySQL" + ".Port");
- String Database = yMySQL.getString("MySQL" + ".Database");
- String User = yMySQL.getString("MySQL" + ".User");
- String Password = yMySQL.getString("MySQL" + ".Password");
- mysql = new MySQL(Host, Port, Database, User, Password);
- mysql.update("CREATE TABLE IF NOT EXISTS Bank(UUID varchar(1000), Geld Int(16));");
- }
- public static boolean isVersionOld(Plugin pl) {
- String Prefix = pl.getConfig().getString("Prefix").replace("&", "§");
- String newVersion = "";
- String oldVersion = "";
- try {
- HttpURLConnection c = (HttpURLConnection)new URL("https://api.spigotmc.org/legacy/update.php?resource=46956").openConnection();
- c.setDoOutput(true);
- c.setRequestMethod("POST");
- c.getOutputStream().write(("key=98BE0FE67F88AB82B4C197FAF1DC3B69206EFDCC4D3B80FC83A00037510B99B4&resource=46956").getBytes("UTF-8"));
- oldVersion = Version.substring(1);
- newVersion = new BufferedReader(new InputStreamReader(c.getInputStream())).readLine().replaceAll("[a-zA-Z ]", "");
- newVersion = newVersion.substring(1);
- }
- catch(Exception e) {
- Bukkit.getConsoleSender().sendMessage(Prefix + "§4§lFehler: §a" + e.getMessage());
- }
- if(newVersion.equals(oldVersion)) {
- return false;
- } else {
- return true;
- }
- }
- public static String getNewVersion() {
- String newVersion = "";
- try {
- HttpURLConnection c = (HttpURLConnection)new URL("https://api.spigotmc.org/legacy/update.php?resource=46956").openConnection();
- c.setDoOutput(true);
- c.setRequestMethod("POST");
- c.getOutputStream().write(("key=98BE0FE67F88AB82B4C197FAF1DC3B69206EFDCC4D3B80FC83A00037510B99B4&resource=46956").getBytes("UTF-8"));
- newVersion = new BufferedReader(new InputStreamReader(c.getInputStream())).readLine().replaceAll("[a-zA-Z ]", "");
- newVersion = newVersion.substring(1);
- } catch(Exception e) {
- }
- return newVersion;
- }
- public void FlyChecker() {
- Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
- @Override
- public void run() {
- if(BoosterCMD.FlyB != 0) {
- for(Player all : Bukkit.getOnlinePlayers()) {
- all.setAllowFlight(true);
- }
- }
- }
- }, 0, 20*10);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement