33import be4rjp .blockstudio .BlockStudio ;
44import be4rjp .blockstudio .api .BlockStudioAPI ;
55import be4rjp .dadadachecker .DADADACheckerAPI ;
6- import be4rjp .sclat .api .Sclat ;
6+ import be4rjp .sclat .api .Plugins ;
7+ import be4rjp .sclat .api .SclatUtil ;
78import be4rjp .sclat .api .ServerType ;
89import be4rjp .sclat .api .async .AsyncPlayerListener ;
910import be4rjp .sclat .api .async .AsyncThreadManager ;
11+ import be4rjp .sclat .api .color .TeamColorSets ;
1012import be4rjp .sclat .api .config .CustomConfig ;
11- import be4rjp .sclat .commands .sclatCommandExecutor ;
13+ import be4rjp .sclat .api .enchant .GlowEnchant ;
14+ import be4rjp .sclat .api .equipment .EquipmentServer ;
15+ import be4rjp .sclat .api .holo .PlayerHolograms ;
16+ import be4rjp .sclat .api .rank .RankingUpdater ;
17+ import be4rjp .sclat .api .status .StatusServer ;
18+ import be4rjp .sclat .api .wiremesh .Wiremesh ;
19+ import be4rjp .sclat .commands .SclatCommand ;
1220import be4rjp .sclat .config .Config ;
1321import be4rjp .sclat .data .DataMgr ;
1422import be4rjp .sclat .data .MapData ;
1523import be4rjp .sclat .data .Match ;
1624import be4rjp .sclat .data .PaintData ;
17- import be4rjp .sclat .data .Wiremesh ;
1825import be4rjp .sclat .gui .ClickListener ;
1926import be4rjp .sclat .listener .SquidListener ;
2027import be4rjp .sclat .lunachat .LunaChatListener ;
2128import be4rjp .sclat .manager .ArmorStandMgr ;
22- import be4rjp .sclat .manager .ColorMgr ;
2329import be4rjp .sclat .manager .GameMgr ;
2430import be4rjp .sclat .manager .MainWeaponMgr ;
2531import be4rjp .sclat .manager .MapDataMgr ;
2632import be4rjp .sclat .manager .MatchMgr ;
2733import be4rjp .sclat .manager .NoteBlockAPIMgr ;
2834import be4rjp .sclat .manager .PlayerReturnManager ;
29- import be4rjp .sclat .manager .RankMgr ;
3035import be4rjp .sclat .manager .ServerStatusManager ;
3136import be4rjp .sclat .manager .WeaponClassMgr ;
3237import be4rjp .sclat .protocollib .SclatPacketListener ;
33- import be4rjp .sclat .server .EquipmentServer ;
34- import be4rjp .sclat .server .StatusServer ;
3538import be4rjp .sclat .tutorial .Tutorial ;
36- import be4rjp .sclat .weapon .SnowballListener ;
39+ import be4rjp .sclat .weapon .listener .MainWeapon ;
40+ import be4rjp .sclat .weapon .listener .SPWeapon ;
41+ import be4rjp .sclat .weapon .listener .SnowballListener ;
42+ import be4rjp .sclat .weapon .listener .SubWeapon ;
43+ import co .aikar .commands .PaperCommandManager ;
3744import com .comphenix .protocol .ProtocolLibrary ;
3845import com .comphenix .protocol .ProtocolManager ;
3946import com .google .common .io .ByteArrayDataInput ;
5057import org .bukkit .scoreboard .NameTagVisibility ;
5158import org .bukkit .scoreboard .Scoreboard ;
5259import org .bukkit .scoreboard .ScoreboardManager ;
60+ import org .slf4j .Logger ;
61+ import org .slf4j .LoggerFactory ;
5362
5463import java .util .ArrayList ;
5564import java .util .List ;
5867 *
5968 * @author Be4rJP
6069 */
61- public class Main extends JavaPlugin implements PluginMessageListener {
70+ public class Sclat extends JavaPlugin implements PluginMessageListener {
71+ public static final Logger logger = LoggerFactory .getLogger (Sclat .class );
6272
6373 public static Config conf ;
6474
65- private static Main plugin ;
75+ private static Sclat plugin ;
6676
6777 public static Location lobby ;
6878
69- public static Glow glow ;
79+ public static GlowEnchant glowEnchant ;
7080
7181 public static List <Player > pdspList ;
7282
@@ -90,10 +100,6 @@ public class Main extends JavaPlugin implements PluginMessageListener {
90100 // EquipmentShare
91101 public static EquipmentServer es = null ;
92102
93- // API
94- public static boolean NoteBlockAPI = true ;
95- public static boolean LunaChat = true ;
96-
97103 // 重複しない数字
98104 // ボム等で使用
99105 private static int NDNumber = 0 ;
@@ -111,46 +117,29 @@ public class Main extends JavaPlugin implements PluginMessageListener {
111117 public static double PARTICLE_RENDER_DISTANCE = 0 ;
112118 public static double PARTICLE_RENDER_DISTANCE_SQUARED ;
113119
120+ public static final PlayerHolograms playerHolograms = new PlayerHolograms ();
121+
122+ private static PaperCommandManager commandManager ;
123+
114124 @ Override
115125 public void onEnable () {
116126 plugin = this ;
117- glow = new Glow ();
127+ glowEnchant = new GlowEnchant ();
118128
119129 pdspList = new ArrayList <>();
120130
121131 // Setup async tick thread
122132 AsyncThreadManager .setup (1 );
123133
124134 // ----------------------------APICheck-------------------------------
125- NoteBlockAPI = true ;
126- if (!Bukkit .getPluginManager ().isPluginEnabled ("NoteBlockAPI" )) {
127- getLogger ().severe ("*** NoteBlockAPI is not installed or not enabled. ***" );
128- NoteBlockAPI = false ;
135+ if (!Plugins .onInit (logger ))
129136 return ;
130- }
137+ logger . info ( "API check was complted." );
131138
132- // LunaChat
133- if (!Bukkit .getPluginManager ().isPluginEnabled ("LunaChat" )) {
134- getLogger ().severe ("*** LunaChat is not installed or not enabled. ***" );
135- LunaChat = false ;
136- }
139+ protocolManager = ProtocolLibrary .getProtocolManager ();
140+ SclatPacketListener .init ();
137141
138- // ProtocolLib
139- if (!Bukkit .getPluginManager ().isPluginEnabled ("ProtocolLib" )) {
140- getLogger ().severe ("*** ProtocolLib is not installed or not enabled. ***" );
141- return ;
142- } else {
143- protocolManager = ProtocolLibrary .getProtocolManager ();
144- new SclatPacketListener ();
145- }
146-
147- // DADADAChecker
148- if (!Bukkit .getPluginManager ().isPluginEnabled ("DADADAChecker" )) {
149- getLogger ().severe ("*** DADADAChecker is not installed or not enabled. ***" );
150- return ;
151- } else {
152- dadadaCheckerAPI = new DADADACheckerAPI (this );
153- }
142+ dadadaCheckerAPI = new DADADACheckerAPI (this );
154143 // -------------------------------------------------------------------
155144
156145 // --------------------------Load config------------------------------
@@ -190,25 +179,26 @@ public void onEnable() {
190179 pm .registerEvents (new GameMgr (), this );
191180 pm .registerEvents (new SquidListener (), this );
192181 pm .registerEvents (new ClickListener (), this );
193- pm .registerEvents (new be4rjp . sclat . weapon . MainWeapon (), this );
194- pm .registerEvents (new be4rjp . sclat . weapon . SubWeapon (), this );
195- pm .registerEvents (new be4rjp . sclat . weapon . SPWeapon (), this );
182+ pm .registerEvents (new MainWeapon (), this );
183+ pm .registerEvents (new SubWeapon (), this );
184+ pm .registerEvents (new SPWeapon (), this );
196185 pm .registerEvents (new SnowballListener (), this );
197186 pm .registerEvents (new AsyncPlayerListener (), this );
198187
199- if (LunaChat )
188+ if (Plugins . LUNACHAT . isLoaded () )
200189 pm .registerEvents (new LunaChatListener (), this );
201190 // -------------------------------------------------------------------
202191
203192 // ------------------------RegisteringCommands------------------------
204193 getLogger ().info ("Registering Commands..." );
205- getCommand ("sclat" ).setExecutor (new sclatCommandExecutor ());
206- getCommand ("sclat" ).setTabCompleter (new sclatCommandExecutor ());
194+ commandManager = new PaperCommandManager (this );
195+ // commandManager.enableUnstableAPI("help");
196+ commandManager .registerCommand (new SclatCommand (this ), true );
207197 // -------------------------------------------------------------------
208198
209199 // ------------------------Setup from config--------------------------
210200 getLogger ().info ("SetupColor..." );
211- ColorMgr .SetupColor ();
201+ TeamColorSets .SetupColor ();
212202 getLogger ().info ("SetupMainWeapon..." );
213203 MainWeaponMgr .SetupMainWeapon ();
214204 getLogger ().info ("WeaponClassSetup..." );
@@ -277,7 +267,7 @@ public void onEnable() {
277267 // -------------------------------------------------------------------
278268
279269 // ------------------------Load NBS songs-----------------------------
280- if (NoteBlockAPI )
270+ if (Plugins . NOTEBLOCKAPI . isLoaded () )
281271 NoteBlockAPIMgr .LoadSongFiles ();
282272 // -------------------------------------------------------------------
283273
@@ -324,7 +314,7 @@ public void onEnable() {
324314
325315 // --------------------Send restarted server info---------------------
326316 if (conf .getConfig ().contains ("RestartMatchCount" ))
327- Sclat .sendRestartedServerInfo ();
317+ SclatUtil .sendRestartedServerInfo ();
328318 // -------------------------------------------------------------------
329319
330320 // -----------------------------Shop----------------------------------
@@ -350,7 +340,7 @@ public void onEnable() {
350340
351341 // -----------------------Ranking Holograms---------------------------
352342 if (type == ServerType .LOBBY ) {
353- RankMgr .makeRankingTask ();
343+ RankingUpdater .makeRankingTask ();
354344 }
355345 // -------------------------------------------------------------------
356346
@@ -369,7 +359,7 @@ public void onEnable() {
369359 // -------------------------------------------------------------------
370360
371361 // ------------------------Tutorial wire mesh-------------------------
372- if (Main .tutorial ) {
362+ if (Sclat .tutorial ) {
373363 for (MapData mData : DataMgr .maplist ) {
374364 for (Wiremesh wiremesh : mData .getWiremeshListTask ().getWiremeshsList ()) {
375365 wiremesh .startTask ();
@@ -406,6 +396,8 @@ public void onDisable() {
406396 e .printStackTrace ();
407397 }
408398
399+ commandManager .unregisterCommands ();
400+
409401 // -----------------------Tutorial server list------------------------
410402 if (type == ServerType .LOBBY ) {
411403 tutorialServers = new CustomConfig (this , "tutorial.yml" );
@@ -442,7 +434,7 @@ public void onDisable() {
442434 as .remove ();
443435
444436 // Worldが保存される前にアンロードして塗られた状態で保存されるのを防ぐ
445- if (Main .type == ServerType .LOBBY ) {
437+ if (Sclat .type == ServerType .LOBBY ) {
446438 for (String mapname : conf .getMapConfig ().getConfigurationSection ("Maps" ).getKeys (false )) {
447439 String worldName = conf .getMapConfig ().getString ("Maps." + mapname + ".WorldName" );
448440 Bukkit .unloadWorld (worldName , false );
@@ -454,7 +446,7 @@ public void onDisable() {
454446 }
455447 }
456448
457- public static Main getPlugin () {
449+ public static Sclat getPlugin () {
458450 return plugin ;
459451 }
460452
0 commit comments