package com.softwarerat; import org.bukkit.Bukkit; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.java.JavaPlugin; import com.softwarerat.API.GameData; import com.softwarerat.API.data.entity.EntityFlagAPI; import com.softwarerat.API.data.location.LocationAPI; import com.softwarerat.API.data.npc.NPCAPI; import com.softwarerat.API.data.player.kit.KitAPI; import com.softwarerat.API.data.prefix.PrefixAPI; import com.softwarerat.API.data.scoreboard.ScoreAPI; import com.softwarerat.API.data.world.WorldAPI; import com.softwarerat.API.event.listener.NPCInteractListener; import lombok.Getter; import lombok.Setter; @Getter @Setter public class GameAPI { JavaPlugin javaPlugin; GameData gameData; WorldAPI worldAPI; LocationAPI locationAPI; PrefixAPI prefixAPI; KitAPI kitAPI; EntityFlagAPI entityFlagAPI; NPCAPI npcAPI; ScoreAPI scoreAPI; public void enableAPI(JavaPlugin jPlugin){ javaPlugin = jPlugin; gameData = new GameData(this); worldAPI = new WorldAPI(); System.out.println("Enabled GameAPI"); PluginManager pluginManager = Bukkit.getPluginManager(); locationAPI = new LocationAPI(gameData); kitAPI = new KitAPI(gameData); prefixAPI = new PrefixAPI(gameData.getScoreboard()); scoreAPI = new ScoreAPI(gameData); entityFlagAPI = new EntityFlagAPI(); npcAPI = new NPCAPI(entityFlagAPI); pluginManager.registerEvents(new NPCInteractListener(npcAPI), jPlugin); //javaPlugin.getCommand("getNavigator").setExecutor(new Navigator(this)); //if (gameData.getGameType().equals(GameType.GAME_TYPE_TYPELESS) || gameData.getCurrentGameState().equals(GameState.GAME_STATE_LOBBY)){ // pluginManager.registerEvents(new BuildBreakListener(),jPlugin); // pluginManager.registerEvents(new LobbyJoinListener(),jPlugin); //} } }