9
0
mirror of https://gitlab.com/SamB440/rpgregions-2.git synced 2025-12-27 18:59:10 +00:00

Document API events

This commit is contained in:
SamB440
2021-06-27 21:20:27 +01:00
parent 487bb3e690
commit da7853a8cc
6 changed files with 62 additions and 4 deletions

View File

@@ -1,28 +1,49 @@
package net.islandearth.rpgregions.api.events;
import net.islandearth.rpgregions.managers.data.region.Discovery;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import java.util.List;
public class RegionDiscoverEvent extends Event {
private static final HandlerList HANDLER_LIST = new HandlerList();
private final Player player;
private final String region;
private final Discovery discovery;
public RegionDiscoverEvent(Player player, String region) {
public RegionDiscoverEvent(Player player, String region, Discovery discovery) {
this.player = player;
this.region = region;
this.discovery = discovery;
}
/**
* The player involved in this event.
* @return the player involved
*/
public Player getPlayer() {
return player;
}
/**
* Gets the region that has been discovered.
* @return {@link List} of regions
*/
public String getRegion() {
return region;
}
/**
* Gets the discovery involved. Contains useful information such as the date.
* @return the region {@link Discovery}
*/
public Discovery getDiscovery() {
return discovery;
}
@Override
public HandlerList getHandlers() {
return HANDLER_LIST;

View File

@@ -17,10 +17,18 @@ public class RegionsEffectEvent extends Event {
this.regions = regions;
}
/**
* The player involved in this event.
* @return the player involved
*/
public Player getPlayer() {
return player;
}
/**
* Gets a list of all regions that will give effects to the player.
* @return {@link List} of regions
*/
public List<String> getRegions() {
return regions;
}

View File

@@ -30,14 +30,27 @@ public class RegionsEnterEvent extends Event {
return player;
}
/**
* Gets a list of all regions that have been entered.
* @return {@link List} of regions
*/
public List<String> getRegions() {
return regions;
}
/**
* Gets the prioritised region. This will be the first element in the regions array.
* This is the region that will be prioritised for particles. Effects etc will stack.
* @return the region at the start of the regions array
*/
public String getPriority() {
return regions.get(0);
}
/**
* Returns whether the player has truly moved into a new region.
* @return whether player has truly moved into a new region
*/
public boolean hasChanged() {
return hasChanged;
}

View File

@@ -44,8 +44,19 @@ public interface IntegrationManager {
*/
Optional<ConfiguredRegion> getPrioritisedRegion(Location location);
/**
* Checks whether this region exists within the world specified
* @param location {@link World} to check
* @param region the region id
* @return true if region exists in world, false otherwise
*/
boolean exists(World location, String region);
/**
* Gets an immutable set of all region names in the specified world.
* @param world {@link World} to check
* @return set of all region names
*/
Set<String> getAllRegionNames(World world);
default boolean checkRequirements(PlayerMoveEvent event, String region) {