All Classes

Class
Description
 
 
 
[Info]
- Fake minigame frame
- Player can NOT join
- Can be used for any purpose (e.g.
 
 
 
 
 
 
 
[Rules]
- Must register instance which processes playing game player's only (not about viewers and outers)
- If event is detectable with players by MiniGameEventDetector, the event will be only passed to the player's playing game listeners.
- If event is not detectable with players by MiniGameEventDetector, the event will be passed to all listeners related with event.
In this GameListenerManager class, use GameListenerManager.getListeners(Class) to get listeners with event

[Listener registration tutorial]
If listener related with minigame needs to handle events
1.
If player can be checked with event, use GameViewEventListener.getViewingManager(Player) and pass event.
If player can not be checked, just pass to the all minigame view managers
 
 
 
 
Called when menu is clicked
Called when a player closes menu
 
Called when a player opens menu
[IMPORTANT] When "prefix == null" and "usePrefix == true", Utils prefix will be added
MiniGame class of all minigames
- Custom minigame frame can be made with extending this class
- Message only send to same minigame players
MiniGameWorld plugin "MiniGame" wrapper api
 
 
Below custom options are created in `custom-data` section by default
Must serialize/deserialize value of each options in get(), set() method
 
 
Event related with minigame
Event detector to send Minigames

[IMPORTANT]
Detectable event means can get player from "Default event list" or "Detailed event list"

[Default Event List]
- PlayerEvent
- EntityEvent
- HangingEvent
- InventoryEvent
- InventoryMoveItemEvent
- PlayerLeashEntityEvent
- TabCompleteEvent

[Detailed Event list]
- Some of BlockEvent
- Some of VehicleEvent
 
Called when a exception related minigame has occurred
[IMPORTANT] This event is passed to a only minigame which is passed with argument in this constructor
[IMPORTANT] Other plugin has to call this event to pass exception to a minigame

Custom event external detector
Called when a minigame finished
[IMPORTANT] players are already out of the minigame
 
 
Called before the instance is created
 
Called after the instance is removed
 
 
[IMPORTANT]
- (Only for MiniGameWorld) Menu icon must be executed with command, because of command permission (Join-Game menu = make player run "/minigame join <title>")
 
 
MiniGame timing observer
- Usage: 3rd-party wiki
 
Player data with score, live
[IMPORTANT] live is only valid in the minigame play (not related with player's health)
[IMPORTANT] Player state will be saved when a instance is created (in constructor)
Playing minigame player event
Called when a player playing minigame exception has occured

Defined reason
player-quit-server: when a player quit the server
Called when a player try to join a minigame
Called when a player try to leave a minigame
[Managed list]
joined location, health scale, health, food level, exhaustion, saturation, level, exp, inventory, potion effects, glowing, hide, game mode, fire ticks, invulnerable, silent, gravity, allow flight, flying, velocity, walk speed, fly speed, scoreboard, held item slot, bed spawn location, ender chest, cooldown items, portal cooldown
Manage player's everything
- When join the game: save state and make pure state
- When quit the game: restore saved state
[IMPORATNT]
- If add a element, check that affects to viewer MiniGameViewManager
Called when a player try to unview a minigame
Called when a player try to view a minigame
 
Interface for rank data
Scoreboard manager
- Waiting scoreboard
- Play scoreboard

Manage only one scoreboard instance
Current scoreboard type
 
Called when a scoreboard of minigame is updated
 
Called when a server exception has occured
[IMPORTANT] all minigames will be finished
[Setting default values]
creationTime = on game creation time
startTime = LocalDateTime.MIN
finishTime = LocalDateTime.MIN
id = hash value of current nano time
started = false
title = title
location = location
instances = 1
instanceWorld = false
locations = location
minPlayers = minPlayers
maxPlayers = maxPlayers
waitingTime = waitingTime
playTime = playTime
finishDelay = 10
active = true
settingFixed = false
tutorial = tutorial
customData = new Map
icon = Material.STONE
gameFinishCondition = MiniGameSetting.GameFinishCondition.LESS_THAN_PLAYERS_LIVE
gameFinishConditionPlayerCount = 2
view = true
scoreboard = true
Check game finish condition
 
 
Called when a minigame starts
 
Timing notifier for minigame
MiniGame timing
 
 
MiniGameWorld plugin API
 
MiniGameWorld Utility API
Party which manage members, invitees, askers
[Party System]
- All member have equal permission (i.e.
Party member which have data related with party
 
[Info]
- Minigame frame several players can battle individually like FFA
- min player count: 2 or more

[Rule]
- nothing
[Info]
- Minigame frame only 1 player can play
- solo play
- min player count: 1
- solo util methods

[Rule]
- nothing
[Info]
- Minigame frame players battle with each teams
- min team count: 2 or more
- all teams have the same score
- team util class, methods

[Custom Option]
- group-chat: If true, send message only to team members (default: true)
- team-pvp: If true, team members can not attack each other(pvp option have to be set to true), (default: false)
- team-size: Related with MiniGameSetting.getMaxPlayers(), if "max-players" is 12 and "team-size" is 4 then 3 teams will be created.
Team register mode
- Participants divied into teams when game starts with mode
- If use TeamRegisterMode.NONE, should register players to team with registerPlayersToTeam()

[Team Register Mode]
- NONE, FAIR, FILL, FAIR_FILL, RANDOM or can divide overriding "registerPlayersToTeam()"

- e.g.
 
[Info]
- Minigame frame players cooperate with each other
- min player count: 1 or more
- all players have the same score
- team util methods
[Rule]
- must use "plusEveryoneScore()" or "minusEveryoneScore()" for team score
 
 
Check for updates with Github latest release tag