9
0
mirror of https://gitlab.com/SamB440/rpgregions-2.git synced 2026-01-04 15:31:38 +00:00

Implements #16

This commit is contained in:
Sam
2020-06-15 15:09:56 +01:00
parent 5d84675b31
commit 7cf712c839
4 changed files with 113 additions and 14 deletions

View File

@@ -0,0 +1,47 @@
package net.islandearth.rpgregions.requirements;
import com.google.common.collect.ImmutableList;
import org.bukkit.entity.Player;
import java.util.Arrays;
import java.util.List;
public class DependencyRequirement extends RegionRequirement {
private final List<String> requiredRegions;
public DependencyRequirement(List<String> requiredRegions) {
this.requiredRegions = requiredRegions;
}
/**
* Returns an immutable list of required regions by their ID.
* @return immutable list of required regions
*/
public ImmutableList<String> getRequiredRegions() {
return ImmutableList.copyOf(requiredRegions);
}
public boolean meetsRequirements(Player player, List<String> discoveries) {
for (String discovery : discoveries) {
if (!requiredRegions.contains(discovery)) return false;
}
return true;
}
@Override
@Deprecated
public boolean meetsRequirements(Player player) {
return meetsRequirements(player, Arrays.asList());
}
@Override
public String getName() {
return "Dependency";
}
@Override
public String getText(Player player) {
return "regions " + String.join(", ", requiredRegions);
}
}