mirror of
https://github.com/BentoBoxWorld/Level.git
synced 2024-11-23 18:45:17 +01:00
Uses a trial generic event to expose add-on data as K,V pairs.
This commit is contained in:
parent
413887d31f
commit
5eea419746
2
pom.xml
2
pom.xml
@ -86,7 +86,7 @@
|
||||
<dependency>
|
||||
<groupId>world.bentobox</groupId>
|
||||
<artifactId>bentobox</artifactId>
|
||||
<version>0.12.0-SNAPSHOT</version>
|
||||
<version>0.15.0-SNAPSHOT</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
@ -19,10 +19,10 @@ import com.google.common.collect.Multiset;
|
||||
import com.google.common.collect.Multiset.Entry;
|
||||
import com.google.common.collect.Multisets;
|
||||
|
||||
import world.bentobox.level.Level;
|
||||
import world.bentobox.bentobox.database.objects.Island;
|
||||
import world.bentobox.bentobox.util.Pair;
|
||||
import world.bentobox.bentobox.util.Util;
|
||||
import world.bentobox.level.Level;
|
||||
|
||||
|
||||
public class CalcIslandLevel {
|
||||
@ -345,5 +345,16 @@ public class CalcIslandLevel {
|
||||
return pointsToNextLevel;
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see java.lang.Object#toString()
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Results [report=" + report + ", mdCount=" + mdCount + ", uwCount=" + uwCount + ", ncCount="
|
||||
+ ncCount + ", ofCount=" + ofCount + ", rawBlockCount=" + rawBlockCount + ", underWaterBlockCount="
|
||||
+ underWaterBlockCount + ", level=" + level + ", deathHandicap=" + deathHandicap
|
||||
+ ", pointsToNextLevel=" + pointsToNextLevel + "]";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,18 @@
|
||||
package world.bentobox.level.calculators;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
import org.bukkit.World;
|
||||
|
||||
import world.bentobox.bentobox.api.events.addon.AddonEvent;
|
||||
import world.bentobox.bentobox.api.user.User;
|
||||
import world.bentobox.bentobox.database.objects.Island;
|
||||
import world.bentobox.level.Level;
|
||||
import world.bentobox.level.calculators.CalcIslandLevel.Results;
|
||||
import world.bentobox.level.event.IslandLevelCalculatedEvent;
|
||||
import world.bentobox.level.event.IslandPreLevelEvent;
|
||||
import world.bentobox.bentobox.api.user.User;
|
||||
import world.bentobox.bentobox.database.objects.Island;
|
||||
|
||||
|
||||
/**
|
||||
@ -53,6 +56,13 @@ public class PlayerLevel {
|
||||
// Fire post calculation event
|
||||
IslandLevelCalculatedEvent ilce = new IslandLevelCalculatedEvent(targetPlayer, island, calc.getResult());
|
||||
addon.getServer().getPluginManager().callEvent(ilce);
|
||||
Map<String, Object> keyValues = new HashMap<>();
|
||||
keyValues.put("targetPlayer", targetPlayer);
|
||||
keyValues.put("islandUUID", island.getUniqueId());
|
||||
keyValues.put("level", calc.getResult().getLevel());
|
||||
keyValues.put("pointsToNextLevel", calc.getResult().getPointsToNextLevel());
|
||||
keyValues.put("deathHandicap", calc.getResult().getDeathHandicap());
|
||||
addon.getServer().getPluginManager().callEvent(new AddonEvent().builder().addon(addon).keyValues(keyValues).build());
|
||||
Results results = ilce.getResults();
|
||||
// Save the results
|
||||
island.getMemberSet().forEach(m -> addon.setIslandLevel(world, m, results.getLevel()));
|
||||
|
Loading…
Reference in New Issue
Block a user