· 6 years ago · Mar 05, 2019, 04:36 PM
1package pl.klaudiusz.core;
2
3import org.bukkit.Bukkit;
4import org.bukkit.plugin.Plugin;
5import org.bukkit.plugin.java.JavaPlugin;
6import pl.klaudiusz.core.cmds.player.*;
7import pl.klaudiusz.core.listeners.*;
8import pl.klaudiusz.core.managers.*;
9import pl.klaudiusz.core.mysql.Store;
10import pl.klaudiusz.core.mysql.modelist.StoreMode;
11import pl.klaudiusz.core.mysql.modelist.StoreMySQL;
12import pl.klaudiusz.core.mysql.modelist.StoreSQLITE;
13import pl.klaudiusz.core.ranked.*;
14import pl.klaudiusz.core.tasks.*;
15import pl.klaudiusz.core.utils.Logger;
16import pl.klaudiusz.core.yml.Config;
17import pl.klaudiusz.core.yml.Fileconf;
18
19public class Main extends JavaPlugin {
20
21 public static Main plugin;
22 private static Store store;
23
24 public static Main getPlugin(){
25 return plugin;
26 }
27
28 public static Store getStore() {
29 return Main.store;
30 }
31
32 public void onLoad(){
33 Main.plugin = this;
34 }
35
36 @Override
37 public void onEnable() {
38 Config.load();
39 this.commands();
40 this.listeners();
41 this.managers();
42 this.database();
43 this.tasks();
44 }
45
46 @Override
47 public void onDisable() {
48
49 }
50
51 public void managers(){
52 UserManager.loadUsers();
53 Fileconf.saveDefaultConfig();
54 }
55
56 public void tasks(){
57 new ProtectionTask().runTaskTimerAsynchronously((Plugin)this, 1200L, 1200L);
58 new AutomsgTask().runTaskTimerAsynchronously((Plugin)this, 2500L, 2500L);
59 new Automsgnext().runTaskTimerAsynchronously((Plugin)this, 5000L, 5000L);
60 ScoreBoardTask.start();
61 }
62
63 public void listeners(){
64 Bukkit.getPluginManager().registerEvents(new ChatAsync(), this);
65 Bukkit.getPluginManager().registerEvents(new onPlayerJoin(), this);
66 Bukkit.getPluginManager().registerEvents(new OldListeners(), this);
67 Bukkit.getPluginManager().registerEvents(new PlayerQuitEvent(), this);
68 Bukkit.getPluginManager().registerEvents(new EntityDamageListener(), this);
69 Bukkit.getPluginManager().registerEvents(new SignChangeListener(), this);
70 Bukkit.getPluginManager().registerEvents(new BlockCmdListener(), this);
71 Bukkit.getPluginManager().registerEvents(new PlayerBlacklistEvent(), this);
72 }
73
74 protected boolean database() {
75 switch (StoreMode.getByName(Config.DATABASE_MODE)) {
76 case MYSQL: {
77 Main.store = new StoreMySQL(Config.DATABASE_MYSQL_HOST, Config.DATABASE_MYSQL_PORT, Config.DATABASE_MYSQL_USER, Config.DATABASE_MYSQL_PASS, Config.DATABASE_MYSQL_NAME, Config.DATABASE_TABLEPREFIX);
78 break;
79 }
80 case SQLITE: {
81 Main.store = new StoreSQLITE(Config.DATABASE_SQLITE_NAME, Config.DATABASE_TABLEPREFIX);
82 break;
83 }
84 default: {
85 Logger.warning("Value of databse mode is not valid! Using SQLITE as database!");
86 Main.store = new StoreSQLITE(Config.DATABASE_SQLITE_NAME, Config.DATABASE_TABLEPREFIX);
87 break;
88 }
89 }
90 final boolean conn = Main.store.connect();
91 if (conn) {
92 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}users` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`name` varchar(32) NOT NULL,`points` int(11) NOT NULL,`coins` int(11) NOT NULL, `kills` int(11) NOT NULL, `deaths` int(11) NOT NULL, `asyst` int(11) NOT NULL, `logout` int(11) NOT NULL, `kox` int(11) NOT NULL, `koxeat` int(11) NOT NULL, `refil` int(11) NOT NULL, `refileat` int(11) NOT NULL, `perly` int(11) NOT NULL, `perlycyk` int(11) NOT NULL, `strzaly` int(11) NOT NULL, `caseopen` int(11) NOT NULL, `breakstone` int(11) NOT NULL, `cobblexopen` int(11) NOT NULL, `join` int(11) NOT NULL, `time` bigint(22) NOT NULL, `timelast` bigint(22) NOT NULL, `firstIP` varchar(64), `firstJoin` bigint(22) NOT NULL, `kit_start` bigint(64) NOT NULL, `kit_gamer` bigint(22) NOT NULL, `kit_yt` bigint(22) NOT NULL, `kit_tw` bigint(22) NOT NULL, `kit_vip` bigint(22) NOT NULL, `kit_svip` bigint(22) NOT NULL, `turboDrop` bigint(22) NOT NULL, `turboExp` bigint(22) NOT NULL, `home` varchar(255) NOT NULL, `lastKill` varchar(32) NOT NULL, `lastKillTime` bigint(22) NOT NULL, `god` int(1) NOT NULL, `lvl` int(11) NOT NULL, `exp` int(11) NOT NULL, `permLevel` text NOT NULL);");
93 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}guilds` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`tag` varchar(5) NOT NULL, `name` varchar(32) NOT NULL, `description` varchar(64) NOT NULL, `owner` varchar(64) NOT NULL, `leader` varchar(64) NOT NULL, `cuboidX` int(11) NOT NULL, `cuboidZ` int(11) NOT NULL, `cuboidSize` int(11) NOT NULL, `hp` int(11) NOT NULL, `hpLastAttack` bigint(22) NOT NULL, `life` int(11) NOT NULL, `lifeLastAttack` bigint(22) NOT NULL, `prolong` bigint(22) NOT NULL, `pvp` int(2) NOT NULL, `createTime` bigint(22) NOT NULL, `homeX` double NOT NULL, `homeY` double NOT NULL, `homeZ` double NOT NULL, `ally` varchar(255) NOT NULL, `points` int(11) NOT NULL, `sojusz` int(11) NOT NULL, `coins` int(11) NOT NULL, `kills` int(11) NOT NULL, `deaths` int(11) NOT NULL, `turboDrop` bigint(22) NOT NULL, `turboExp` bigint(22) NOT NULL, `exp` int(11) NOT NULL, `pvpAlly` int(1) NOT NULL);");
94 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}members` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`name` varchar(32) NOT NULL,`tag` varchar(5) NOT NULL);");
95 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}bans` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`name` varchar(32) NOT NULL,`time` bigint(22) NOT NULL, `reason` text NOT NULL, `admin` varchar(32) NOT NULL, `start` BIGINT(22) NOT NULL);");
96 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}bansip` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`ip` varchar(32) NOT NULL,`time` bigint(22) NOT NULL, `reason` text NOT NULL, `admin` varchar(32) NOT NULL, `start` BIGINT(22) NOT NULL);");
97 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}mutes` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`name` varchar(32) NOT NULL,`time` bigint(22) NOT NULL, `reason` text NOT NULL, `admin` varchar(32) NOT NULL, `start` BIGINT(22) NOT NULL);");
98 Main.store.update(true, "CREATE TABLE IF NOT EXISTS `{P}backups` (" + ((Main.store.getStoreMode() == StoreMode.MYSQL) ? "`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT," : "`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,") + "`name` varchar(32) NOT NULL,`time` bigint(22) NOT NULL, `killer` varchar(32) NOT NULL, `ping` int(11) NOT NULL, `inventory` text NOT NULL, `armor` text NOT NULL, `enderchest` text NOT NULL);");
99 return conn;
100 }
101 return conn;
102 }
103
104 public void commands(){
105 new TellCommand();
106 new SocialspyCommand();
107 new SetSpawnCommand();
108 new SpeedCommand();
109 new ReplyCommand();
110 new SideBarCommand();
111 new SocialAdminCommand();
112 new HelpCommand();
113 new EnderchestCommand();
114 new IsCommand();
115 new VipCommand();
116 new GamerCommand();
117 new HatCommand();
118 new DayCommand();
119 new NightCommand();
120 new SVipCommand();
121 new GiveCommand();
122 new GodCommand();
123 new YtCommand();
124 new ListCommand();
125 new SetHomeCommand();
126 new TpdenyCommand();
127 new SmietnikCommand();
128 new GroupCommand();
129 new TpaCommand();
130 new TpdenyCommand();
131 new HelpopCommand();
132 new ClearCommand();
133 new HealCommand();
134 new HeadCommand();
135 new InvCommand();
136 new RankingCommand();
137 new BroadcastCommand();
138 new StpCommand();
139 new ChatCommand();
140 new FlyingCommand();
141 new TpCommand();
142 }
143
144}