Feature Service Interfaces - UltrahardcoreStats/PVPManager GitHub Wiki

SpawnManager

Manages where players respawn.

respawn(Player)

Spawns a player at a random location, ready to fight. The implementation preferably consider players near the spawns.

LobbyManager

Manages players not in a PVP game

boolean enter(Player)

Clears and prepares the player for thug life in the lobby.

boolean leave(Player)

Unsets whatever needs to be unset.

PVPManager

Manages players in a PVP game. Initial specification will only support one instance of an arena.

boolean enter(Player)

Clears and prepares the player for joyful life in the arena.

boolean leave(Player)

Unsets whatever needs to be unset. Clears whatever needs to be cleared. Possibly checks for combat tagging.

Depends

  • SpawnManager
  • PVPRestrictionManager
  • CombatTagger

PVPRestrictionManager

Manages and restricts players. Gets some basic configuration marking bounds and limits, blocked items, blocked drops etc, and makes sure this is followed, Initial specification will only support one instance of an arena.

CombatTagger

Kills the player if he logs out in a certain time period after being involved in PVP.

tag(Player)

Tag a player

boolean isTagged(Player)

Whether a player is tagged.

subscribe(Player)

Subscribe a player for automatic tagging

unsubscribe(Player)

Unsubscribe a player for automatic tagging.

UserManager

Manages players in general. Moves them between the modes (lobby & pvp) and provides global help. Can be reached from other Features to get player status etc. Stats could hook into it, for example.

Depends

  • PVPManager
  • LobbyManager