-
Notifications
You must be signed in to change notification settings - Fork 5
API
MathiasMC edited this page Dec 9, 2020
·
47 revisions
- Getting the instance
- Methods
- PlayerConnect
- Events
- PlayerDeathEvent
- PlayerGetXPEvent
- PlayerKillEvent
- PlayerKillStreakEvent
- PlayerKillStreakTopEvent
- PlayerLevelDownEvent
- PlayerLevelUPEvent
- PlayerLostKillStreakEvent
- PlayerLostXPEvent
You can get the api by using
PvPLevelsAPI api = PvPLevelsAPI.getInstance();
All methods
api.getPlayerConnect(uuid); # Returns a PlayerConnect and create one if no one found
Will save before removing or updating
api.unloadPlayerConnect(uuid); # Remove a PlayerConnect and PvPlevels will create a new one from the database, when requesting
api.updatePlayerConnect(uuid); # Remove and create new cached PlayerConnect with data from database.
api.removePlayerConnect(uuid); # Remove PlayerConnect from cache without save
api.deletePlayerConnect(uuid); # Deleting the data from the database and unload everything about this player.
api.listPlayerConnect(); # List of PlayerConnect
Managers:
api.getFileUtils(); # File Utils
api.getXPManager(); # XP Manager
api.getActionBarManager(); # ActionBar Manager
api.getKillSessionManager(); # KillSession Manager
api.getStatsManager(); # Stats Manager get stats with PlayerConnect
api.getPlaceholderManager(); # Placeholder Manager
api.getCalculateManager(); # Calculate Manager
api.getStartLevel(); # Returns start level
api.isDebug(); # Returns boolean (if debug enabled)
api.setDebug(boolean);
api.getVersion(); # Returns version of PvPLevels
api.unregisterAll(); # Unregister all events except required Level System Listeners
api.unregisterPlayerJoin(); # Unregister PlayerJoin Listener (used by starting multiplier again)
api.unregisterEntityDeath(); # Unregister EntityDeath Listener (used by the system to get and lose stats)
api.unregisterEntityDamageByEntity(); # Unregister EntityDamageByEntity Listener (used to keep track of hit entity (if thrown in void))
api.unregisterCreatureSpawn(); # Unregister CreatureSpawn Listener (used by spawners section in config.yml)
api.unregisterBlockBreak(); # Unregister BlockBreak Listener (used by get xp from blocks feature)
api.unregisterBlockPlace(); # Unregister BlockPlace Listener (used by get xp from blocks feature (fix duplicate xp by place and break block))
api.unregisterPlayerMove(); # Unregister PlayerMove Listener (used by instant death feature)
This class holds all information about the player and can be created or get by using
PlayerConnect playerConnect = PvPLevelsAPI.getInstance().getPlayerConnect(uuid);
getGroup();
getKills();
getDeaths();
getXp();
getLevel();
getKillstreak();
getKillstreakTop();
getMultiplier();
getMultiplierTime();
getMultiplierTimeLeft();
getTime();
getXpType();
getXpLast();
getXpLost();
getXpItem();
getSave();
setGroup(String);
setKills(long);
setDeaths(long);
setXp(long);
setLevel(long);
setKillstreak(long);
setKillstreakTop(long);
setMultiplier(double);
setMultiplierTime(long);
setMultiplierTimeLeft(long);
setTime();
setSave(long);
setXpType(String);
setXpLast(long);
setXpLost(long);
setXpItem(long);
save();
PlayerDeathEvent
PlayerGetXPEvent
PlayerKillEvent
PlayerKillStreakEvent
PlayerKillStreakTopEvent
PlayerLevelDownEvent
PlayerLevelUPEvent
PlayerLostKillStreakEvent
playerLostXPEvent
Every event created you must use the execute(); to execute the event (dont do that if you listen on the event)
## Create
PlayerDeathEvent playerDeathEvent = new PlayerDeathEvent(player, entity or null, playerConnect, deathsToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerDeathEvent.setCommands(list);
playerDeathEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerDeathEvent e) {
final long deaths = e.getDeaths();
if (deaths == 10) {
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
final Entity entity = e.getEntity(); //Will return null if not death by an entity
//You can change the deaths, if you want by using e.setDeaths(11);
player.sendMessage("You have 10 deaths now");
}
}
## Create
PlayerGetXPEvent playerGetXPEvent = new PlayerGetXPEvent(player, entity or null, playerConnect, xpToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerGetXPEvent.setCommands(list);
playerGetXPEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerGetXPEvent e) {
final long xp = e.getXp();
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
//You can change the xp,if you want by using e.setXp(xp + 10); or e.setXp(playerConnect.getXp() + 10);
player.sendMessage("You have got " + xp + " xp ( + 10 ) == " + e.getXp());
}
## Create
PlayerKillEvent playerKillEvent = new PlayerKillEvent(player, killed, playerConnect(player), killsToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerKillEvent.setCommands(list);
playerKillEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerKillEvent e) {
final long kills = e.getKills();
if (kills == 10) {
final Player player = e.getPlayer();
final Player killed = e.getKilled();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands for this level up
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
//You can change the kills, if you want by using e.setKills(11);
player.sendMessage("You have 10 kills now");
}
}
## Create
PlayerKillStreakEvent playerKillStreakEvent = new PlayerKillStreakEvent(player, killed, playerConnect(player), killstreakToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerKillStreakEvent.setCommands(list);
playerKillStreakEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerKillStreakEvent e) {
final long killstreak = e.getKillstreak();
if (killstreak == 5) {
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
//You can change the killstreak, if you want by using e.setKillstreak(5);
player.sendMessage("You have got a kill streak of " + killstreak);
}
}
## Create
PlayerKillStreakTopEvent playerKillStreakTopEvent = new PlayerKillStreakTopEvent(player, killed, playerConnect(player), killstreakToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerKillStreakTopEvent.setCommands(list);
playerKillStreakTopEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerKillStreakTopEvent e) {
final long killstreak = e.getKillstreak();
if (killstreak == 6) {
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
//You can change the killstreak, if you want by using e.setKillstreak(7);
player.sendMessage("You have got a top kill streak of " + killstreak);
}
}
## Create
PlayerLevelDownEvent playerLevelDownEvent = new PlayerLevelDownEvent(player, entity or null, playerConnect, levelToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerLevelDownEvent.setCommands(list);
playerLevelDownEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerLevelDownEvent e) {
final long level = e.getLevel();
if (level == 9) {
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} HEY");
e.setCommands(list);
player.sendMessage("You have got to level " + level); // return 9
player.sendMessage("Last level was " + playerConnect.getLevel()); // return 10
}
}
## Create
PlayerLevelUPEvent playerLevelUPEvent = new PlayerLevelUPEvent(player, entity or null, playerConnect, levelToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerLevelUPEvent.setCommands(list);
playerLevelUPEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerLevelUPEvent e) {
final long level = e.getLevel();
if (level == 10) {
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} HEY");
e.setCommands(list);
player.sendMessage("You have got to level " + level); // return 10
player.sendMessage("Last level was " + playerConnect.getLevel()); // return 9
}
}
## Create
PlayerLostKillStreakEvent playerLostKillStreakEvent = new PlayerLostKillStreakEvent(player, playerConnect, killstreakToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerLostKillStreakEvent.setCommands(list);
playerLostKillStreakEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerLostKillStreakEvent e) {
final long killstreak = e.getKillstreak();
if (killstreak == 6) {
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
//You can change the killstreak, if you want by using e.setKillstreak(7);
player.sendMessage("You have lost a kill streak of " + killstreak);
}
}
## Create
PlayerLostXPEvent playerLostXPEvent = new PlayerLostXPEvent(player, entity or null, playerConnect, xpToSet);
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
playerLostXPEvent.setCommands(list);
playerLostXPEvent.execute();
## Listen
@EventHandler
public void onEvent(PlayerLostXPEvent e) {
final long xp = e.getXp();
final Player player = e.getPlayer();
final PlayerConnect playerConnect = e.getPlayerConnect();
//You can run your own commands
final ArrayList<String> list = new ArrayList<>();
list.add("pvplevels message {player} Hey");
e.setCommands(list);
//You can change the xp, if you want by using e.setXp(xp - 10); or e.setXp(playerConnect.getXp() - 10);
player.sendMessage("You have lost " + xp + " xp");
}