Class MiniGameWorld

java.lang.Object
com.minigameworld.api.MiniGameWorld

public class MiniGameWorld extends Object
MiniGameWorld plugin API
  • Field Details

    • API_VERSION

      public static final String API_VERSION
      MiniGameWorld API version
  • Method Details

    • create

      public static MiniGameWorld create(String version)
      MiniGameWorld singleton instance

      Version format: <MAJOR>.<MINOR>.<PATCH>
      MAJOR: not change
      MINOR: API changed
      PATCH: logic, bug, error fixed

      Version is only compatible with the same "MINOR" version, different "PATCH" version is permit
      - "1.0.0" and 1.0.5" is compatible for different "PATCH"
      - "1.0.0" and 1.1.5" is NOT compatible for different "MINOR"

      Current API version: MiniGameWorld.VERSION
      Parameters:
      version - Using version
      Returns:
      True if version is compatible
    • checkVersion

      public static boolean checkVersion(String version)
      Check version is compatible with API
      Parameters:
      version - Using version
      Returns:
      True if compatible
    • setMiniGameManager

      public void setMiniGameManager(MiniGameManager minigameM)
      Set MiniGameManager only once when plugin loaded automatically by MiniGameWorld plugin
      Parameters:
      minigameM - MiniGameManager
    • joinGame

      public boolean joinGame(org.bukkit.entity.Player p, String title)
      Join a minigame with party members who are available to join with
      - Join into already waiting instance game or create new game instance if need
      Parameters:
      p - Player who tries to join
      title - MiniGame title
      Returns:
      False if player failed to join
    • joinGame

      public boolean joinGame(org.bukkit.entity.Player p, String title, String id)
      Join into minigame instance already created
      (NEVER create new game instance)
      Parameters:
      p - Player who tries to join
      title - MiniGame title
      id - Minigame id
      Returns:
      False if player failed to join
    • leaveGame

      public boolean leaveGame(org.bukkit.entity.Player p)
      Leave player from playing minigame
      Parameters:
      p - Player who tries to leave
      Returns:
      False if player failed to leave
    • viewGame

      public boolean viewGame(org.bukkit.entity.Player p, String title)
      Make the player view random minigame
      Parameters:
      p - Player who tries to view
      title - MiniGame title
      Returns:
      False if player failed to view
    • viewGame

      public boolean viewGame(org.bukkit.entity.Player p, String title, String id)
      Make the player view minigame
      Parameters:
      p - Player who tries to view
      title - MiniGame title
      id - Minigame id
      Returns:
      False if player failed to view
    • unviewGame

      public boolean unviewGame(org.bukkit.entity.Player p)
      Unview(leave) player from viewing minigame
      Parameters:
      p - Player who tries to unview
      Returns:
      False if player failed to unview
    • startGame

      public boolean startGame(String title, String id)
      Start minigame
      Parameters:
      title - Minigame title
      id - instance id
      Returns:
      False if minigame failed to start
    • eventDetector

      public MiniGameEventDetector eventDetector()
      Gets MiniGameEventDetector
      Can check specific event can be detected
      Returns:
      Instance
    • templateGames

      public List<MiniGameAccessor> templateGames()
      Gets template minigame list
      Returns:
      MiniGameAccessor list
    • instanceGames

      public List<MiniGameAccessor> instanceGames()
      Get instance minigame list
      Returns:
      MiniGameAccessor list
    • registerGame

      public boolean registerGame(MiniGame newGame)
      Registers new template minigame to MiniGameWorld plugin
      The Same class name minigame can't be registered in the same server
      Parameters:
      newGame - Minigame to register
      Returns:
      False if same class name minigame already exists
    • unregisterGame

      public boolean unregisterGame(MiniGame minigame)
      Unregisters template minigame from server
      Parameters:
      minigame - Minigame to unregister
      Returns:
      False if not exist
    • registerObserver

      public void registerObserver(MiniGameObserver observer)
      Registers minigame observer
      [IMPORTANT] Observer must be registered with MiniGameManager, not directly with MiniGame (only MiniGameManager can register to all minigames)
      Parameters:
      observer - Observer to register
      See Also:
      MiniGameTimingNotifier, MiniGameObserver
    • unregisterObserver

      public void unregisterObserver(MiniGameObserver observer)
      Unregisters minigame observer
      [IMPORTANT] Observer must be unregistered from MiniGameManager, not directly from MiniGame (only MiniGameManager can unregister from all minigames)
      Parameters:
      observer - Observer to unregister
      See Also:
      MiniGameTimingNotifier, MiniGameObserver
    • openMenu

      public org.bukkit.inventory.Inventory openMenu(org.bukkit.entity.Player p)
      Opens Menu GUI
      - Can edit Menu with returned inventory instance
      Parameters:
      p - Player to show menu
      Returns:
      Menu GUI invenotry instance
    • partyManager

      public PartyManager partyManager()
      Gets Party Manager
      - Can change party access methods (e.g. Right-Click player to ask)
      Returns:
      PartyManager
    • manager

      public MiniGameManager manager()
      Returns:
      MiniGameManager
    • settings

      public Map<String,​Object> settings()
      Get MiniGameWorld API setting data of settings.yml
      Returns:
      Setting data
    • registerExternalEventDetector

      public void registerExternalEventDetector(MiniGameExternalEventDetector detector)
      Registers custom minigame event external detector
      Event detected by detector will be able to be passed onEvent() of minigame
      Parameters:
      detector - Registering Detector
      See Also:
      MiniGameExternalEventDetector
    • unregisterExternalEventDetector

      public void unregisterExternalEventDetector(MiniGameExternalEventDetector detector)
      Unregisters custom minigame event external detector
      Parameters:
      detector - Unregistering Detector
      See Also:
      MiniGameExternalEventDetector
    • updateInstanceGameData

      public void updateInstanceGameData(MiniGame instance)
      Update instance minigame data with template minigame data
      Parameters:
      instance - Minigame which will be updated