mirror of
https://github.com/RonanPlugins/BetterRTP.git
synced 2025-08-17 17:15:47 +00:00
Location defaults fix + Rtp now requires rtp setup info + Location implemented into rtp'ing
This commit is contained in:
parent
f52adfddbf
commit
7ecf1cd1a9
@ -2,6 +2,7 @@ package me.SuperRonanCraft.BetterRTP.player.commands;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTPCooldown;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTPSetupInformation;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_TYPE;
|
||||
import me.SuperRonanCraft.BetterRTP.references.customEvents.RTP_CommandEvent;
|
||||
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
||||
@ -148,7 +149,8 @@ public class Commands {
|
||||
if (pl.getSettings().delayEnabled && delayTimer > 0) //Delay enabled?
|
||||
if (!pl.getPerms().getBypassDelay(player)) //Can bypass?
|
||||
delay = true;
|
||||
pl.getRTP().start(player, sendi, world, biomes, delay, rtpType);
|
||||
RTPSetupInformation setup_info = new RTPSetupInformation(world, sendi, player, true, biomes, delay, rtpType, null);
|
||||
pl.getRTP().start(setup_info);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -4,6 +4,7 @@ import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommandHelpable;
|
||||
import me.SuperRonanCraft.BetterRTP.player.commands.RTP_SETUP_TYPE;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTPParticles;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTPSetupInformation;
|
||||
import me.SuperRonanCraft.BetterRTP.references.worlds.WorldDefault;
|
||||
import me.SuperRonanCraft.BetterRTP.references.worlds.WorldLocations;
|
||||
import me.SuperRonanCraft.BetterRTP.references.worlds.WorldPlayer;
|
||||
@ -117,30 +118,30 @@ public class CmdInfo implements RTPCommand, RTPCommandHelpable {
|
||||
List<String> info = new ArrayList<>();
|
||||
BetterRTP pl = BetterRTP.getInstance();
|
||||
String _true = "&aTrue", _false = "&bFalse";
|
||||
info.add("&eWorld: &7" + w.getName() + (personal ? " &7(personalized)" : ""));
|
||||
info.add("&eWorld Name: &7" + w.getName() + (personal ? " &7(personalized)" : ""));
|
||||
if (personal)
|
||||
info.add("&7- &6Allowed: " + (pl.getPerms().getAWorld(sendi, w.getName()) ? _true : _false));
|
||||
if (pl.getRTP().getDisabledWorlds().contains(w.getName())) //DISABLED
|
||||
if (pl.getRTP().getDisabledWorlds().contains(w.getName())) //World disabled
|
||||
info.add("&7- &6Disabled: " + _true);
|
||||
else {
|
||||
info.add("&7- &6Disabled: " + _false);
|
||||
if (pl.getRTP().overriden.containsKey(w.getName()))
|
||||
info.add("&7- &6Overriden: " + _true + " &7 target world `" + pl.getRTP().overriden.get(w.getName()) + "`");
|
||||
if (pl.getRTP().overriden.containsKey(w.getName())) //World Overriden
|
||||
info.add("&7- &6Overriden: " + _true + " &7- target `" + pl.getRTP().overriden.get(w.getName()) + "`");
|
||||
else {
|
||||
info.add("&7- &6Overriden&7: " + _false);
|
||||
WorldPlayer _rtpworld = BetterRTP.getInstance().getRTP().getPlayerWorld(sendi, w.getName(), null, personal);
|
||||
WorldPlayer _rtpworld = BetterRTP.getInstance().getRTP().getPlayerWorld(new RTPSetupInformation(w.getName(), sendi, null, personal));
|
||||
WorldDefault worldDefault = BetterRTP.getInstance().getRTP().defaultWorld;
|
||||
info.add("&7- &6Setup Type&7: " + _rtpworld.setup_type.name() + (_rtpworld.setup_type == RTP_SETUP_TYPE.LOCATION ? "&7(" + _rtpworld.setup_name + ")" : ""));
|
||||
info.add("&7- &6Setup Type&7: " + _rtpworld.setup_type.name() + getInfo(_rtpworld, worldDefault, "setup"));
|
||||
info.add("&7- &6Use World Border&7: " + (_rtpworld.getUseWorldborder() ? _true : _false));
|
||||
info.add("&7- &6Permission Group&7: " + (_rtpworld.getConfig() != null ? "&e" + _rtpworld.getConfig().name : "&cN/A"));
|
||||
info.add("&7- &6World Type&7: &f" + _rtpworld.getWorldtype().name());
|
||||
info.add("&7- &6Center X&7: &f" + _rtpworld.getCenterX() + getInfo(_rtpworld, worldDefault, "centerx"));
|
||||
info.add("&7- &6Center Z&7: &f" + _rtpworld.getCenterZ() + getInfo(_rtpworld, worldDefault, "centerz"));
|
||||
info.add("&7- &6Maximum Radius&7: &f" + _rtpworld.getMaxRad() + getInfo(_rtpworld, worldDefault, "max"));
|
||||
info.add("&7- &6Minimum Radius&7: &f" + _rtpworld.getMinRad() + getInfo(_rtpworld, worldDefault, "min"));
|
||||
info.add("&7- &6Max Radius&7: &f" + _rtpworld.getMaxRad() + getInfo(_rtpworld, worldDefault, "max"));
|
||||
info.add("&7- &6Min Radius&7: &f" + _rtpworld.getMinRad() + getInfo(_rtpworld, worldDefault, "min"));
|
||||
info.add("&7- &6Price&7: &f" + _rtpworld.getPrice() + getInfo(_rtpworld, worldDefault, "price"));
|
||||
info.add("&7- &6World Type&7: &f" + _rtpworld.getWorldtype().name());
|
||||
info.add("&7- &6Biomes&7: &f" + _rtpworld.getBiomes().toString());
|
||||
info.add("&7- &6Shape&7: &f" + _rtpworld.getShape().toString());
|
||||
info.add("&7- &6Shape&7: &f" + _rtpworld.getShape().toString() + getInfo(_rtpworld, worldDefault, "shape"));
|
||||
info.add("&7- &6Permission Group&7: " + (_rtpworld.getConfig() != null ? "&e" + _rtpworld.getConfig().name : "&cN/A"));
|
||||
}
|
||||
}
|
||||
return info;
|
||||
@ -150,15 +151,19 @@ public class CmdInfo implements RTPCommand, RTPCommandHelpable {
|
||||
private String getInfo(WorldPlayer worldPlayer, WorldDefault worldDefault, String type) {
|
||||
switch (type) {
|
||||
case "centerx":
|
||||
return worldPlayer.getUseWorldborder() || worldPlayer.getCenterX() != worldDefault.getCenterX() ? worldPlayer.getUseWorldborder() ? " &8(worldborder)" : "&a*" : "";
|
||||
return worldPlayer.getUseWorldborder() || worldPlayer.getCenterX() == worldDefault.getCenterX() ? worldPlayer.getUseWorldborder() ? " &8(worldborder)" : " &8(default)" : "";
|
||||
case "centerz":
|
||||
return worldPlayer.getUseWorldborder() || worldPlayer.getCenterX() != worldDefault.getCenterZ() ? worldPlayer.getUseWorldborder() ? " &8(worldborder)" : "&a*" : "";
|
||||
return worldPlayer.getUseWorldborder() || worldPlayer.getCenterZ() == worldDefault.getCenterZ() ? worldPlayer.getUseWorldborder() ? " &8(worldborder)" : " &8(default)" : "";
|
||||
case "max":
|
||||
return worldPlayer.getUseWorldborder() || worldPlayer.getMaxRad() != worldDefault.getMaxRad() ? worldPlayer.getUseWorldborder() ? " &8(worldborder)" : "&a*" : "";
|
||||
return worldPlayer.getUseWorldborder() || worldPlayer.getMaxRad() == worldDefault.getMaxRad() ? worldPlayer.getUseWorldborder() ? " &8(worldborder)" : " &8(default)" : "";
|
||||
case "min":
|
||||
return worldPlayer.getMinRad() != worldDefault.getMinRad() ? "&a*" : "";
|
||||
return worldPlayer.getMinRad() == worldDefault.getMinRad() ? " &8(default)" : "";
|
||||
case "price":
|
||||
return worldPlayer.getPrice() != worldDefault.getPrice() ? "&a*" : "";
|
||||
return worldPlayer.getPrice() == worldDefault.getPrice() ? " &8(default)" : "";
|
||||
case "shape":
|
||||
return worldPlayer.getShape() == worldDefault.getShape() ? " &8(default)" : "";
|
||||
case "setup":
|
||||
return worldPlayer.setup_type == RTP_SETUP_TYPE.LOCATION ? " &7(" + worldPlayer.setup_name + ")" : "";
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
@ -9,10 +9,7 @@ import org.bukkit.World;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
public class RTP {
|
||||
|
||||
@ -149,35 +146,55 @@ public class RTP {
|
||||
return disabledWorlds;
|
||||
}
|
||||
|
||||
public WorldPlayer getPlayerWorld(CommandSender sendi, String world_name, List<String> biomes, boolean personal) {
|
||||
WorldPlayer pWorld = new WorldPlayer(sendi, Bukkit.getWorld(world_name));
|
||||
public WorldPlayer getPlayerWorld(RTPSetupInformation setup_info) {
|
||||
WorldPlayer pWorld = new WorldPlayer(setup_info.sender, Bukkit.getWorld(setup_info.world));
|
||||
|
||||
//Locations
|
||||
for (Map.Entry<String, RTPWorld> location_set : worldLocations.entrySet()) {
|
||||
RTPWorld location = location_set.getValue();
|
||||
if (location.getWorld().getName().equals(world_name)) {
|
||||
pWorld.setup(location_set.getKey(), location, location.getBiomes(), personal);
|
||||
if (setup_info.location == null) {
|
||||
List<RTPWorld> locationsList = new ArrayList<>();
|
||||
for (Map.Entry<String, RTPWorld> location_set : worldLocations.entrySet()) {
|
||||
RTPWorld location = location_set.getValue();
|
||||
if (location.getWorld().getName().equals(setup_info.world))
|
||||
locationsList.add(location_set.getValue());
|
||||
}
|
||||
if (!locationsList.isEmpty()) {
|
||||
RTPWorld location = locationsList.size() > 1 ? locationsList.get((new Random()).nextInt(locationsList.size() - 1)) : locationsList.get(0);
|
||||
|
||||
setup_info.location = (WorldLocations) location;
|
||||
}
|
||||
}
|
||||
|
||||
if (setup_info.location != null) {
|
||||
String setup_name = null;
|
||||
for (Map.Entry<String, RTPWorld> location_set : worldLocations.entrySet()) {
|
||||
RTPWorld location = location_set.getValue();
|
||||
if (location == setup_info.location) {
|
||||
setup_name = location_set.getKey();
|
||||
break;
|
||||
}
|
||||
}
|
||||
pWorld.setup(setup_name, setup_info.location, setup_info.location.getBiomes(), setup_info.personalized);
|
||||
}
|
||||
|
||||
|
||||
if (!pWorld.isSetup()) {
|
||||
//Custom World
|
||||
if (customWorlds.containsKey(world_name)) {
|
||||
if (customWorlds.containsKey(setup_info.world)) {
|
||||
RTPWorld cWorld = customWorlds.get(pWorld.getWorld().getName());
|
||||
pWorld.setup(null, cWorld, biomes, personal);
|
||||
pWorld.setup(null, cWorld, setup_info.biomes, setup_info.personalized);
|
||||
}
|
||||
//Default World
|
||||
else
|
||||
pWorld.setup(null, defaultWorld, biomes, personal);
|
||||
pWorld.setup(null, defaultWorld, setup_info.biomes, setup_info.personalized);
|
||||
}
|
||||
//World type
|
||||
WORLD_TYPE world_type; //World rtp type
|
||||
if (this.world_type.containsKey(world_name))
|
||||
world_type = this.world_type.get(world_name);
|
||||
if (this.world_type.containsKey(setup_info.world))
|
||||
world_type = this.world_type.get(setup_info.world);
|
||||
else {
|
||||
world_type = WORLD_TYPE.NORMAL;
|
||||
this.world_type.put(world_name, world_type); //Defaults this so the error message isn't spammed
|
||||
getPl().getLogger().warning("Seems like the world `" + world_name + "` does not have a `WorldType` declared. " +
|
||||
this.world_type.put(setup_info.world, world_type); //Defaults this so the error message isn't spammed
|
||||
getPl().getLogger().warning("Seems like the world `" + setup_info.world + "` does not have a `WorldType` declared. " +
|
||||
"Please add/fix this in the config.yml file! " +
|
||||
"This world will be treated as an overworld!");
|
||||
}
|
||||
@ -189,42 +206,11 @@ public class RTP {
|
||||
return BetterRTP.getInstance();
|
||||
}
|
||||
|
||||
public void start(Player p, CommandSender sendi, String world_name, List<String> biomes, boolean delay, RTP_TYPE rtpType) {
|
||||
// Check overrides
|
||||
if (world_name == null) {
|
||||
world_name = p.getWorld().getName();
|
||||
} else { // Check if nulled or world doesnt exist
|
||||
World _world = Bukkit.getWorld(world_name);
|
||||
if (_world == null) { //Check if world has spaces instead of underscores
|
||||
_world = Bukkit.getWorld(world_name.replace("_", " "));
|
||||
world_name = world_name.replace("_", "");
|
||||
}
|
||||
if (_world == null) {
|
||||
getPl().getText().getNotExist(sendi, world_name);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (overriden.containsKey(world_name))
|
||||
world_name = overriden.get(world_name);
|
||||
// Not forced and has 'betterrtp.world.<world>'
|
||||
if (sendi == p && !getPl().getPerms().getAWorld(sendi, world_name)) {
|
||||
getPl().getText().getNoPermissionWorld(p, world_name);
|
||||
return;
|
||||
}
|
||||
// Check disabled worlds
|
||||
if (disabledWorlds.contains(world_name)) {
|
||||
getPl().getText().getDisabledWorld(sendi, world_name);
|
||||
return;
|
||||
}
|
||||
WorldPlayer pWorld = getPlayerWorld(p, world_name, biomes, true);
|
||||
// Economy
|
||||
if (!getPl().getEco().hasBalance(sendi, pWorld))
|
||||
return;
|
||||
//BetterRTP.getInstance().getpInfo().setRTPType(p, rtpType);
|
||||
rtp(sendi, pWorld, delay, rtpType);
|
||||
}
|
||||
public void start(RTPSetupInformation setup_info) {
|
||||
String world_name = setup_info.world;
|
||||
Player p = setup_info.player;
|
||||
CommandSender sendi = setup_info.sender;
|
||||
|
||||
public void start(Player p, CommandSender sendi, String world_name, List<String> biomes, boolean delay, RTP_TYPE rtpType, String location_name) {
|
||||
// Check overrides
|
||||
if (world_name == null) {
|
||||
world_name = p.getWorld().getName();
|
||||
@ -251,12 +237,12 @@ public class RTP {
|
||||
getPl().getText().getDisabledWorld(sendi, world_name);
|
||||
return;
|
||||
}
|
||||
WorldPlayer pWorld = getPlayerWorld(p, world_name, biomes, true);
|
||||
WorldPlayer pWorld = getPlayerWorld(setup_info);
|
||||
// Economy
|
||||
if (!getPl().getEco().hasBalance(sendi, pWorld))
|
||||
return;
|
||||
//BetterRTP.getInstance().getpInfo().setRTPType(p, rtpType);
|
||||
rtp(sendi, pWorld, delay, rtpType);
|
||||
rtp(sendi, pWorld, setup_info.delay, setup_info.rtp_type);
|
||||
}
|
||||
|
||||
private void rtp(CommandSender sendi, WorldPlayer pWorld, boolean delay, RTP_TYPE type) {
|
||||
|
@ -0,0 +1,46 @@
|
||||
package me.SuperRonanCraft.BetterRTP.player.rtp;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.references.worlds.WorldLocations;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class RTPSetupInformation {
|
||||
//Will provide information to setup an RTP attempt
|
||||
public String world;
|
||||
public CommandSender sender;
|
||||
public Player player;
|
||||
public boolean personalized;
|
||||
public List<String> biomes;
|
||||
public WorldLocations location;
|
||||
public boolean delay;
|
||||
public RTP_TYPE rtp_type;
|
||||
|
||||
public RTPSetupInformation(String world, CommandSender sender, Player player, boolean personalized) {
|
||||
this.world = world;
|
||||
this.sender = sender;
|
||||
this.player = player;
|
||||
this.personalized = personalized;
|
||||
}
|
||||
|
||||
public RTPSetupInformation(String world, CommandSender sender, Player player, boolean personalized, List<String> biomes) {
|
||||
this.world = world;
|
||||
this.sender = sender;
|
||||
this.player = player;
|
||||
this.personalized = personalized;
|
||||
this.biomes = biomes;
|
||||
}
|
||||
|
||||
public RTPSetupInformation(String world, CommandSender sender, Player player, boolean personalized, List<String> biomes,
|
||||
boolean delay, RTP_TYPE rtp_type, WorldLocations location) {
|
||||
this.world = world;
|
||||
this.sender = sender;
|
||||
this.player = player;
|
||||
this.personalized = personalized;
|
||||
this.biomes = biomes;
|
||||
this.delay = delay;
|
||||
this.rtp_type = rtp_type;
|
||||
this.location = location;
|
||||
}
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
package me.SuperRonanCraft.BetterRTP.references.worlds;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_SHAPE;
|
||||
import org.bukkit.World;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface RTPWorld_Defaulted {
|
||||
|
||||
void setUseWorldBorder(boolean value);
|
||||
|
||||
void setCenterX(int value);
|
||||
|
||||
void setCenterZ(int value);
|
||||
|
||||
void setMaxRad(int value);
|
||||
|
||||
void setMinRad(int value);
|
||||
|
||||
void setPrice(int value);
|
||||
|
||||
void setBiomes(List<String> value);
|
||||
|
||||
void setWorld(String value);
|
||||
|
||||
void setShape(RTP_SHAPE value);
|
||||
|
||||
default void setupDefaults() {
|
||||
WorldDefault worldDefault = BetterRTP.getInstance().getRTP().defaultWorld;
|
||||
setMaxRad(worldDefault.getMaxRad());
|
||||
setMinRad(worldDefault.getMinRad());
|
||||
setUseWorldBorder(worldDefault.getUseWorldborder());
|
||||
setCenterX(worldDefault.getCenterX());
|
||||
setCenterZ(worldDefault.getCenterZ());
|
||||
setPrice(worldDefault.getPrice());
|
||||
setBiomes(worldDefault.getBiomes());
|
||||
setShape(worldDefault.getShape());
|
||||
}
|
||||
}
|
@ -10,11 +10,11 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class WorldCustom implements RTPWorld {
|
||||
public class WorldCustom implements RTPWorld, RTPWorld_Defaulted {
|
||||
public String world;
|
||||
private boolean useWorldborder;
|
||||
private int CenterX, CenterZ, maxBorderRad, minBorderRad, price;
|
||||
private List<String> Biomes;
|
||||
private int centerX, centerZ, maxBorderRad, minBorderRad, price;
|
||||
private List<String> biomes;
|
||||
private RTP_SHAPE shape;
|
||||
|
||||
public WorldCustom(String world) {
|
||||
@ -24,15 +24,7 @@ public class WorldCustom implements RTPWorld {
|
||||
this.world = world;
|
||||
|
||||
//Set Defaults
|
||||
WorldDefault worldDefault = BetterRTP.getInstance().getRTP().defaultWorld;
|
||||
maxBorderRad = worldDefault.getMaxRad();
|
||||
minBorderRad = worldDefault.getMinRad();
|
||||
useWorldborder = worldDefault.getUseWorldborder();
|
||||
CenterX = worldDefault.getCenterX();
|
||||
CenterZ = worldDefault.getCenterZ();
|
||||
price = worldDefault.getPrice();
|
||||
Biomes = worldDefault.getBiomes();
|
||||
shape = worldDefault.getShape();
|
||||
setupDefaults();
|
||||
|
||||
//Find Custom World and cache values
|
||||
for (Map<?, ?> m : map) {
|
||||
@ -49,11 +41,11 @@ public class WorldCustom implements RTPWorld {
|
||||
}
|
||||
if (test.get("CenterX") != null) {
|
||||
if (test.get("CenterX").getClass() == Integer.class)
|
||||
CenterX = Integer.parseInt((test.get("CenterX")).toString());
|
||||
centerX = Integer.parseInt((test.get("CenterX")).toString());
|
||||
}
|
||||
if (test.get("CenterZ") != null) {
|
||||
if (test.get("CenterZ").getClass() == Integer.class) {
|
||||
CenterZ = Integer.parseInt((test.get("CenterZ")).toString());
|
||||
centerZ = Integer.parseInt((test.get("CenterZ")).toString());
|
||||
}
|
||||
}
|
||||
if (test.get("MaxRadius") != null) {
|
||||
@ -78,16 +70,16 @@ public class WorldCustom implements RTPWorld {
|
||||
}
|
||||
if (test.get("Biomes") != null) {
|
||||
if (test.get("Biomes").getClass() == ArrayList.class)
|
||||
this.Biomes = new ArrayList<String>((ArrayList) test.get("Biomes"));
|
||||
this.biomes = new ArrayList<String>((ArrayList) test.get("Biomes"));
|
||||
}
|
||||
if (BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getBoolean("Economy.Enabled"))
|
||||
if (test.get("Price") != null) {
|
||||
if (test.get("Price").getClass() == Integer.class)
|
||||
this.price = Integer.parseInt(test.get("Price").toString());
|
||||
else
|
||||
price = worldDefault.getPrice(world);
|
||||
} else
|
||||
price = worldDefault.getPrice(world);
|
||||
//else
|
||||
//price = worldDefault.getPrice(world);
|
||||
} //else
|
||||
//price = worldDefault.getPrice(world);
|
||||
if (test.get("Shape") != null) {
|
||||
if (test.get("Shape").getClass() == String.class) {
|
||||
try {
|
||||
@ -141,12 +133,12 @@ public class WorldCustom implements RTPWorld {
|
||||
|
||||
@Override
|
||||
public int getCenterX() {
|
||||
return CenterX;
|
||||
return centerX;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCenterZ() {
|
||||
return CenterZ;
|
||||
return centerZ;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -166,7 +158,7 @@ public class WorldCustom implements RTPWorld {
|
||||
|
||||
@Override
|
||||
public List<String> getBiomes() {
|
||||
return Biomes;
|
||||
return biomes;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -178,4 +170,50 @@ public class WorldCustom implements RTPWorld {
|
||||
public RTP_SHAPE getShape() {
|
||||
return shape;
|
||||
}
|
||||
|
||||
//Setters
|
||||
@Override
|
||||
public void setUseWorldBorder(boolean value) {
|
||||
this.useWorldborder = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCenterX(int value) {
|
||||
this.centerX = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCenterZ(int value) {
|
||||
this.centerZ = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMaxRad(int value) {
|
||||
this.maxBorderRad = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMinRad(int value) {
|
||||
this.minBorderRad = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPrice(int value) {
|
||||
this.price = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBiomes(List<String> value) {
|
||||
this.biomes = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWorld(String value) {
|
||||
this.world = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setShape(RTP_SHAPE value) {
|
||||
this.shape = value;
|
||||
}
|
||||
}
|
||||
|
@ -1,32 +1,28 @@
|
||||
package me.SuperRonanCraft.BetterRTP.references.worlds;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTPPermissionGroup;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_SHAPE;
|
||||
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.WorldBorder;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
|
||||
public class WorldLocations implements RTPWorld {
|
||||
public class WorldLocations implements RTPWorld, RTPWorld_Defaulted {
|
||||
private boolean useWorldborder;
|
||||
private int CenterX, CenterZ, maxBorderRad, minBorderRad, price;
|
||||
private List<String> Biomes;
|
||||
private int centerX, centerZ, maxBorderRad, minBorderRad, price;
|
||||
private List<String> biomes;
|
||||
private String world;
|
||||
private RTP_SHAPE shape;
|
||||
|
||||
public WorldLocations(String location_name) {
|
||||
FileBasics.FILETYPE config = BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.LOCATIONS);
|
||||
List<Map<?, ?>> map = config.getMapList("Locations");
|
||||
WorldDefault worldDefault = BetterRTP.getInstance().getRTP().defaultWorld;
|
||||
//WorldDefault worldDefault = BetterRTP.getInstance().getRTP().defaultWorld;
|
||||
|
||||
setupDefaults();
|
||||
|
||||
//Find Location and cache its values
|
||||
for (Map<?, ?> m : map) {
|
||||
@ -50,11 +46,11 @@ public class WorldLocations implements RTPWorld {
|
||||
}
|
||||
if (test.get("CenterX") != null) {
|
||||
if (test.get("CenterX").getClass() == Integer.class)
|
||||
CenterX = Integer.parseInt((test.get("CenterX")).toString());
|
||||
centerX = Integer.parseInt((test.get("CenterX")).toString());
|
||||
}
|
||||
if (test.get("CenterZ") != null) {
|
||||
if (test.get("CenterZ").getClass() == Integer.class) {
|
||||
CenterZ = Integer.parseInt((test.get("CenterZ")).toString());
|
||||
centerZ = Integer.parseInt((test.get("CenterZ")).toString());
|
||||
}
|
||||
}
|
||||
if (test.get("MaxRadius") != null) {
|
||||
@ -79,16 +75,16 @@ public class WorldLocations implements RTPWorld {
|
||||
}
|
||||
if (test.get("Biomes") != null) {
|
||||
if (test.get("Biomes").getClass() == ArrayList.class)
|
||||
this.Biomes = new ArrayList<String>((ArrayList) test.get("Biomes"));
|
||||
this.biomes = new ArrayList<String>((ArrayList) test.get("Biomes"));
|
||||
}
|
||||
if (BetterRTP.getInstance().getFiles().getType(FileBasics.FILETYPE.ECO).getBoolean("Economy.Enabled"))
|
||||
if (test.get("Price") != null) {
|
||||
if (test.get("Price").getClass() == Integer.class)
|
||||
this.price = Integer.parseInt(test.get("Price").toString());
|
||||
else
|
||||
price = worldDefault.getPrice(world);
|
||||
} else
|
||||
price = worldDefault.getPrice(world);
|
||||
//else
|
||||
// price = worldDefault.getPrice(world);
|
||||
} //else
|
||||
//price = worldDefault.getPrice(world);
|
||||
if (test.get("Shape") != null) {
|
||||
if (test.get("Shape").getClass() == String.class) {
|
||||
try {
|
||||
@ -113,17 +109,17 @@ public class WorldLocations implements RTPWorld {
|
||||
|
||||
@Override
|
||||
public boolean getUseWorldborder() {
|
||||
return useWorldborder;
|
||||
return false;//useWorldborder;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCenterX() {
|
||||
return CenterX;
|
||||
return centerX;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCenterZ() {
|
||||
return CenterZ;
|
||||
return centerZ;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -143,11 +139,58 @@ public class WorldLocations implements RTPWorld {
|
||||
|
||||
@Override
|
||||
public List<String> getBiomes() {
|
||||
return Biomes;
|
||||
return biomes;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RTP_SHAPE getShape() {
|
||||
return shape;
|
||||
}
|
||||
|
||||
//Setters
|
||||
|
||||
@Override
|
||||
public void setUseWorldBorder(boolean value) {
|
||||
this.useWorldborder = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCenterX(int value) {
|
||||
this.centerX = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCenterZ(int value) {
|
||||
this.centerZ = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMaxRad(int value) {
|
||||
this.maxBorderRad = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMinRad(int value) {
|
||||
this.minBorderRad = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPrice(int value) {
|
||||
this.price = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBiomes(List<String> value) {
|
||||
this.biomes = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setWorld(String value) {
|
||||
this.world = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setShape(RTP_SHAPE value) {
|
||||
this.shape = value;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user