Skip to content
P03W edited this page Apr 11, 2021 · 5 revisions

Getting and setting XP or levels

id - Component id such as rpgstats:melee
player - A ServerPlayerEntity
  • Add XP and handle leveling up - RPGStats.addXpAndLevelUp(id, player, addedXP)
  • Get XP - RPGStats.getComponentXP(id, player)
  • Set XP - RPGStats.setComponentXP(id, player, xp)
  • Get Level - RPGStats.getComponentLevel(id, player)
  • Set Level - RPGStats.setComponentLevel(id, player, level)
  • Calculate XP to reach level - RPGStats.calculateXpNeededToReachLevel(level)

Events

Level up

LevelUpCallback.EVENT.register((player, type, newLevel, hideMessages) -> {
    System.out.println("Level Up Event");
    System.out.println(player);
    System.out.println(type);
    System.out.println(newLevel);
});

Through advancements

Advancements can be triggered by adding a levelup criterion

Use the identifier rpgstats:_any to match any stat

Examples here

Adding skills

  1. Create a data folder with the name rpgstats
  2. Add a file called <lowercase_name>.stat
  3. Add a stat by adding a line with example:identifier>example name

Example here