custom world prices fix

This commit is contained in:
SuperRonanCraft 2020-12-13 11:55:30 -05:00
parent 2f218707a5
commit 536218ebe1
4 changed files with 9 additions and 5 deletions

View File

@ -2,6 +2,7 @@ package me.SuperRonanCraft.BetterRTP.player.rtp;
import br.net.fabiozumbi12.RedProtect.Bukkit.RedProtect;
import com.bekvon.bukkit.residence.Residence;
import com.bekvon.bukkit.residence.commands.set;
import com.massivecraft.factions.Board;
import com.massivecraft.factions.FLocation;
import com.massivecraft.factions.Faction;
@ -9,11 +10,11 @@ import com.palmergames.bukkit.towny.TownyAPI;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldguard.WorldGuard;
import com.sk89q.worldguard.protection.ApplicableRegionSet;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import com.sk89q.worldguard.protection.regions.RegionContainer;
import com.sk89q.worldguard.protection.regions.RegionQuery;
import me.SuperRonanCraft.BetterRTP.BetterRTP;
import me.angeschossen.lands.api.integration.LandsIntegration;
import me.angeschossen.lands.api.land.Land;
import me.ryanhamshire.GriefPrevention.GriefPrevention;
import org.bukkit.Location;
@ -48,6 +49,9 @@ public class RTPPluginValidation { //Safe locations depending on enabled depende
RegionContainer container = WorldGuard.getInstance().getPlatform().getRegionContainer();
RegionQuery query = container.createQuery();
ApplicableRegionSet set = query.getApplicableRegions(BukkitAdapter.adapt(loc));
//for (ProtectedRegion region : set.getRegions()) {
// region.getId()
//}
result = set.size() == 0;
} catch (Exception e) {
e.printStackTrace();

View File

@ -15,7 +15,7 @@ public class WorldDefault implements RTPWorld {
private boolean useWorldborder;
private int CenterX, CenterZ, maxBorderRad, minBorderRad, price;
private List<String> Biomes;
private HashMap<String, Integer> prices = new HashMap<>();
private final HashMap<String, Integer> prices = new HashMap<>();
public void setup() {
//Setups
@ -42,7 +42,7 @@ public class WorldDefault implements RTPWorld {
if (BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getBoolean("Economy.Enabled")) {
price = BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getInt("Economy.Price");
if (BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getBoolean("CustomWorlds.Enabled")) {
List<Map<?, ?>> world_map = BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getMapList("CustomWorlds.Worlds");
List<Map<?, ?>> world_map = BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getMapList("CustomWorlds.Prices");
for (Map<?, ?> m : world_map)
for (Map.Entry<?, ?> entry : m.entrySet()) {
String _world = entry.getKey().toString();

View File

@ -35,7 +35,7 @@ public class WorldPlayer implements RTPWorld {
setMaxRad(world.getMaxRad());
setMinRad(world.getMinRad());
if (world instanceof WorldDefault)
setPrice(((WorldDefault) world).getPrice(world.getWorld().getName()));
setPrice(((WorldDefault) world).getPrice(getWorld().getName()));
else
setPrice(world.getPrice());
List<String> list = new ArrayList<>(world.getBiomes());

View File

@ -12,7 +12,7 @@ Hunger: #Make rtp'ing take up hunger to avoid exploits
CustomWorlds:
## Enable custom world charging
Enabled: true
Worlds:
Prices:
## PlayerWorld will be charged "5" when typing /rtp, if they do not have "betterrtp.eco.bypass"
- world: 50
## Setting the price to "0" will make the "Success.Bypass" message show