mirror of
https://github.com/RonanPlugins/BetterRTP.git
synced 2025-08-18 01:25:45 +00:00
2.10.0
This commit is contained in:
parent
3399eafa04
commit
07dae8fbc5
@ -1,6 +1,6 @@
|
|||||||
package me.SuperRonanCraft.BetterRTP;
|
package me.SuperRonanCraft.BetterRTP;
|
||||||
|
|
||||||
import me.SuperRonanCraft.BetterRTP.player.Commands;
|
import me.SuperRonanCraft.BetterRTP.player.commands.Commands;
|
||||||
import me.SuperRonanCraft.BetterRTP.player.RTP;
|
import me.SuperRonanCraft.BetterRTP.player.RTP;
|
||||||
import me.SuperRonanCraft.BetterRTP.player.events.Listener;
|
import me.SuperRonanCraft.BetterRTP.player.events.Listener;
|
||||||
import me.SuperRonanCraft.BetterRTP.references.Econ;
|
import me.SuperRonanCraft.BetterRTP.references.Econ;
|
||||||
|
@ -1,291 +0,0 @@
|
|||||||
package me.SuperRonanCraft.BetterRTP.player;
|
|
||||||
|
|
||||||
import me.SuperRonanCraft.BetterRTP.Main;
|
|
||||||
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.block.Biome;
|
|
||||||
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.UUID;
|
|
||||||
|
|
||||||
public class Commands {
|
|
||||||
|
|
||||||
private Main pl;
|
|
||||||
HashMap<UUID, Long> cooldowns = new HashMap<>();
|
|
||||||
public HashMap<UUID, Boolean> rtping = new HashMap<>();
|
|
||||||
private boolean cooldownTimer;
|
|
||||||
private int timer, cooldown;
|
|
||||||
public static String[] cmds = {"help", "player", "world", "version", "reload", "biome"};
|
|
||||||
|
|
||||||
public Commands(Main pl) {
|
|
||||||
this.pl = pl;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void load() {
|
|
||||||
FileBasics.FILETYPE config = pl.getFiles().getType(FileBasics.FILETYPE.CONFIG);
|
|
||||||
timer = config.getInt("Settings.Delay.Time");
|
|
||||||
cooldownTimer = config.getBoolean("Settings.Cooldown.Enabled");
|
|
||||||
cooldown = config.getInt("Settings.Cooldown.Time");
|
|
||||||
cooldowns.clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void commandExecuted(CommandSender sendi, String cmd, String[] args) {
|
|
||||||
if (pl.getPerms().getUse(sendi))
|
|
||||||
if (args == null)
|
|
||||||
rtp(sendi, cmd, null, null);
|
|
||||||
else if (args.length == 1) {
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[0]))
|
|
||||||
help(sendi, cmd);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[1]))
|
|
||||||
player(sendi, cmd, args);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[2]))
|
|
||||||
world(sendi, cmd, args);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[3]))
|
|
||||||
version(sendi);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[4]))
|
|
||||||
reload(sendi);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[5]))
|
|
||||||
biome(sendi, cmd, args);
|
|
||||||
else
|
|
||||||
invalid(sendi, cmd);
|
|
||||||
} else if (args.length >= 2 && args.length <= 3) {
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[1]))
|
|
||||||
player(sendi, cmd, args);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[2]))
|
|
||||||
world(sendi, cmd, args);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[5]))
|
|
||||||
biome(sendi, cmd, args);
|
|
||||||
else
|
|
||||||
invalid(sendi, cmd);
|
|
||||||
} else if (args.length > 3) {
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[5]))
|
|
||||||
biome(sendi, cmd, args);
|
|
||||||
else if (args[0].equalsIgnoreCase(cmds[1]))
|
|
||||||
player(sendi, cmd, args);
|
|
||||||
else
|
|
||||||
invalid(sendi, cmd);
|
|
||||||
} else
|
|
||||||
rtp(sendi, cmd, null, null);
|
|
||||||
else
|
|
||||||
noPerm(sendi);
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<String> onTabComplete(CommandSender sendi, String[] args) {
|
|
||||||
List<String> list = new ArrayList<>();
|
|
||||||
if (args.length == 1) {
|
|
||||||
for (String s : cmds)
|
|
||||||
if (s.startsWith(args[0]) && permOf(sendi, s))
|
|
||||||
list.add(s);
|
|
||||||
} else if (args.length == 2) {
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[1]) && permOf(sendi, cmds[1])) {
|
|
||||||
for (Player p : Bukkit.getOnlinePlayers())
|
|
||||||
if (p.getDisplayName().startsWith(args[1]))
|
|
||||||
list.add(p.getDisplayName());
|
|
||||||
} else if (args[0].equalsIgnoreCase(cmds[2]) && permOf(sendi, cmds[2]))
|
|
||||||
for (World w : Bukkit.getWorlds())
|
|
||||||
if (w.getName().startsWith(args[1]) && !pl.getRTP().disabledWorlds().contains(w.getName()) && pl
|
|
||||||
.getPerms().getAWorld(sendi, w.getName()))
|
|
||||||
list.add(w.getName());
|
|
||||||
} else if (args.length == 3) {
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[1]) && permOf(sendi, cmds[1])) {
|
|
||||||
for (World w : Bukkit.getWorlds())
|
|
||||||
if (w.getName().startsWith(args[2]))
|
|
||||||
list.add(w.getName());
|
|
||||||
} else if (args[0].equalsIgnoreCase(cmds[2]) && permOf(sendi, cmds[2]) && permOf(sendi, cmds[5]))
|
|
||||||
addBiomes(list, args);
|
|
||||||
} else if (args.length > 3) {
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[2]) && permOf(sendi, cmds[2]) && permOf(sendi, cmds[5])) {
|
|
||||||
addBiomes(list, args);
|
|
||||||
} else if (args[0].equalsIgnoreCase(cmds[1]) && permOf(sendi, cmds[1]) && permOf(sendi, cmds[5]))
|
|
||||||
addBiomes(list, args);
|
|
||||||
}
|
|
||||||
if (args[0].equalsIgnoreCase(cmds[5]) && permOf(sendi, cmds[5]))
|
|
||||||
addBiomes(list, args);
|
|
||||||
return list;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addBiomes(List<String> list, String[] args) {
|
|
||||||
try {
|
|
||||||
for (Biome b : Biome.values())
|
|
||||||
if (b.name().toUpperCase().replaceAll("minecraft:", "").startsWith(args[args.length - 1].toUpperCase()))
|
|
||||||
list.add(b.name().replaceAll("minecraft:", ""));
|
|
||||||
} catch (NoSuchMethodError e) {
|
|
||||||
//Not in 1.14.X
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//COMMANDS
|
|
||||||
private void rtp(CommandSender sendi, String cmd, String world, List<String> biomes) {
|
|
||||||
if (sendi instanceof Player)
|
|
||||||
tp((Player) sendi, sendi, world, biomes);
|
|
||||||
else
|
|
||||||
sendi.sendMessage(pl.getText().colorPre("Must be a player to use this command! Try '/" + cmd + " help'"));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void help(CommandSender sendi, String cmd) {
|
|
||||||
pl.getText().getHelpList(sendi, cmd);
|
|
||||||
if (pl.getPerms().getRtpOther(sendi))
|
|
||||||
pl.getText().getHelpPlayer(sendi, cmd);
|
|
||||||
if (sendi instanceof Player) {
|
|
||||||
if (pl.getPerms().getAWorld(sendi, null))
|
|
||||||
pl.getText().getHelpWorld(sendi, cmd);
|
|
||||||
} else
|
|
||||||
pl.getText().getHelpWorld(sendi, cmd);
|
|
||||||
if (pl.getPerms().getReload(sendi))
|
|
||||||
pl.getText().getHelpReload(sendi, cmd);
|
|
||||||
}
|
|
||||||
|
|
||||||
@SuppressWarnings("all")
|
|
||||||
private void player(CommandSender sendi, String cmd, String[] args) {
|
|
||||||
if (permOf(sendi, args[0]))
|
|
||||||
if (args.length == 2)
|
|
||||||
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline())
|
|
||||||
tp(Bukkit.getPlayer(args[1]), sendi, Bukkit.getPlayer(args[1]).getWorld().getName(), null);
|
|
||||||
else if (Bukkit.getPlayer(args[1]) != null)
|
|
||||||
playerNotOnline(sendi, args[1]);
|
|
||||||
else
|
|
||||||
usage(sendi, cmd, args[0]);
|
|
||||||
else if (args.length >= 3)
|
|
||||||
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline())
|
|
||||||
tp(Bukkit.getPlayer(args[1]), sendi, Bukkit.getWorld(args[2]).getName(), getBiomes(args, 3, sendi));
|
|
||||||
else if (Bukkit.getPlayer(args[1]) != null)
|
|
||||||
playerNotOnline(sendi, args[1]);
|
|
||||||
else
|
|
||||||
usage(sendi, cmd, args[0]);
|
|
||||||
else
|
|
||||||
usage(sendi, cmd, args[0]);
|
|
||||||
else
|
|
||||||
noPerm(sendi);
|
|
||||||
}
|
|
||||||
|
|
||||||
//rtp world <world> <biome1, biome2...>
|
|
||||||
private void world(CommandSender sendi, String cmd, String[] args) {
|
|
||||||
if (permOf(sendi, args[0]))
|
|
||||||
if (args.length >= 2)
|
|
||||||
rtp(sendi, cmd, args[1], getBiomes(args, 2, sendi));
|
|
||||||
else
|
|
||||||
usage(sendi, cmd, args[0]);
|
|
||||||
else
|
|
||||||
noPerm(sendi);
|
|
||||||
}
|
|
||||||
|
|
||||||
//rtp biome <biome1, biome2...>
|
|
||||||
private void biome(CommandSender sendi, String cmd, String[] args) {
|
|
||||||
if (permOf(sendi, args[0]))
|
|
||||||
if (args.length >= 2)
|
|
||||||
rtp(sendi, cmd, null, getBiomes(args, 1, sendi));
|
|
||||||
else
|
|
||||||
usage(sendi, cmd, args[0]);
|
|
||||||
else
|
|
||||||
noPerm(sendi);
|
|
||||||
}
|
|
||||||
|
|
||||||
private List<String> getBiomes(String[] args, int start, CommandSender sendi) {
|
|
||||||
List<String> biomes = new ArrayList<>();
|
|
||||||
boolean error_sent = false;
|
|
||||||
if (permOf(sendi, cmds[5]))
|
|
||||||
for (int i = start; i < args.length; i++) {
|
|
||||||
String str = args[i];
|
|
||||||
try {
|
|
||||||
biomes.add(Biome.valueOf(str.replaceAll(",", "").toUpperCase()).name());
|
|
||||||
} catch (Exception e) {
|
|
||||||
if (!error_sent) {
|
|
||||||
pl.getText().getOtherBiome(sendi, str);
|
|
||||||
error_sent = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return biomes;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void reload(CommandSender sendi) {
|
|
||||||
if (pl.getPerms().getReload(sendi))
|
|
||||||
pl.reload(sendi);
|
|
||||||
else
|
|
||||||
noPerm(sendi);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void version(CommandSender sendi) {
|
|
||||||
sendi.sendMessage(pl.getText().colorPre("&aVersion #&e" + pl.getDescription().getVersion()));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void invalid(CommandSender sendi, String cmd) {
|
|
||||||
pl.getText().getInvalid(sendi, cmd);
|
|
||||||
}
|
|
||||||
|
|
||||||
//INFORMATION
|
|
||||||
private void usage(CommandSender sendi, String cmd, String arg) {
|
|
||||||
if (arg.equalsIgnoreCase(cmds[1]))
|
|
||||||
pl.getText().getUsageRTPOther(sendi, cmd);
|
|
||||||
else if (arg.equalsIgnoreCase(cmds[2]))
|
|
||||||
pl.getText().getUsageWorld(sendi, cmd);
|
|
||||||
else if (arg.equalsIgnoreCase(cmds[5]))
|
|
||||||
pl.getText().getUsageBiome(sendi, cmd);
|
|
||||||
else
|
|
||||||
pl.getText().sms(sendi, "&cSomething went wrong!");
|
|
||||||
}
|
|
||||||
|
|
||||||
private void playerNotOnline(CommandSender sendi, String player) {
|
|
||||||
pl.getText().getNotOnline(sendi, player);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void noPerm(CommandSender sendi) {
|
|
||||||
pl.getText().getNoPermission(sendi);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void tp(Player player, CommandSender sendi, String world, List<String> biomes) {
|
|
||||||
if (cooldown(sendi, player)) {
|
|
||||||
boolean delay = false;
|
|
||||||
if (!pl.getPerms().getBypassDelay(player))
|
|
||||||
if (timer != 0)
|
|
||||||
if (sendi == player)
|
|
||||||
delay = true;
|
|
||||||
pl.getRTP().start(player, sendi, world, biomes, delay);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean cooldown(CommandSender sendi, Player player) {
|
|
||||||
if (sendi != player || pl.getPerms().getBypassCooldown(player))
|
|
||||||
return true;
|
|
||||||
else if (rtping.containsKey(player.getUniqueId()))
|
|
||||||
if (rtping.get(player.getUniqueId())) {
|
|
||||||
pl.getText().getAlready(player);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (cooldownTimer) {
|
|
||||||
Player p = (Player) sendi;
|
|
||||||
if (cooldowns.containsKey(p.getUniqueId())) {
|
|
||||||
long Left = ((cooldowns.get(p.getUniqueId()) / 1000) + cooldown) - (System.currentTimeMillis() / 1000);
|
|
||||||
if (!pl.getPerms().getBypassDelay(p))
|
|
||||||
Left = Left + timer;
|
|
||||||
if (Left > 0) {
|
|
||||||
// Still cooling down
|
|
||||||
pl.getText().getCooldown(sendi, String.valueOf(Left));
|
|
||||||
return false;
|
|
||||||
} else {
|
|
||||||
cooldowns.remove(p.getUniqueId());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
cooldowns.put(p.getUniqueId(), System.currentTimeMillis());
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean permOf(CommandSender sendi, String cmd) {
|
|
||||||
if (cmd.equalsIgnoreCase(cmds[4]))
|
|
||||||
return pl.getPerms().getReload(sendi);
|
|
||||||
else if (cmd.equalsIgnoreCase(cmds[1]))
|
|
||||||
return pl.getPerms().getRtpOther(sendi);
|
|
||||||
else if (cmd.equalsIgnoreCase(cmds[2]))
|
|
||||||
return pl.getPerms().getWorld(sendi);
|
|
||||||
else if (cmd.equalsIgnoreCase(cmds[5]))
|
|
||||||
return pl.getPerms().getBiome(sendi);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
@ -26,8 +26,8 @@ public class RTP {
|
|||||||
|
|
||||||
private Main pl;
|
private Main pl;
|
||||||
//Cache
|
//Cache
|
||||||
private HashMap<String, RTPWorld> customWorlds = new HashMap<>();
|
public HashMap<String, RTPWorld> customWorlds = new HashMap<>();
|
||||||
private HashMap<String, String> overriden = new HashMap<>();
|
public HashMap<String, String> overriden = new HashMap<>();
|
||||||
public me.SuperRonanCraft.BetterRTP.references.worlds.Default Default = new Default();
|
public me.SuperRonanCraft.BetterRTP.references.worlds.Default Default = new Default();
|
||||||
private Random rn = new Random();
|
private Random rn = new Random();
|
||||||
private List<String> disabledWorlds, blockList;
|
private List<String> disabledWorlds, blockList;
|
||||||
@ -62,7 +62,7 @@ public class RTP {
|
|||||||
customWorlds.put(entry.getKey().toString(), new Custom(entry.getKey().toString()));
|
customWorlds.put(entry.getKey().toString(), new Custom(entry.getKey().toString()));
|
||||||
}
|
}
|
||||||
|
|
||||||
List<String> disabledWorlds() {
|
public List<String> disabledWorlds() {
|
||||||
return disabledWorlds;
|
return disabledWorlds;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ public class RTP {
|
|||||||
return disabledWorlds;
|
return disabledWorlds;
|
||||||
}
|
}
|
||||||
|
|
||||||
void start(Player p, CommandSender sendi, String worl, List<String> biomes, boolean delay) {
|
public void start(Player p, CommandSender sendi, String worl, List<String> biomes, boolean delay) {
|
||||||
// Check overrides
|
// Check overrides
|
||||||
String world = worl;
|
String world = worl;
|
||||||
if (world == null)
|
if (world == null)
|
||||||
@ -275,6 +275,13 @@ public class RTP {
|
|||||||
|
|
||||||
private Location getLocAtNormal(int x, int z, World world, Float yaw, Float pitch, PlayerWorld pWorld) {
|
private Location getLocAtNormal(int x, int z, World world, Float yaw, Float pitch, PlayerWorld pWorld) {
|
||||||
Block b = world.getHighestBlockAt(x, z);
|
Block b = world.getHighestBlockAt(x, z);
|
||||||
|
//System.out.println("-----------");
|
||||||
|
//System.out.println(b.getType().isSolid() + " " + b.getType().name());
|
||||||
|
if (b.getType() == Material.AIR || !b.getType().isSolid()) { //1.15.1 or less
|
||||||
|
int y = world.getHighestBlockYAt(x, z);
|
||||||
|
b = world.getBlockAt(x, y - 1, z);
|
||||||
|
}
|
||||||
|
//System.out.println(b.getType().isSolid() + " " + b.getType().name());
|
||||||
if (!badBlock(b.getType().name(), x, z, pWorld.getWorld(), pWorld.getBiomes()))
|
if (!badBlock(b.getType().name(), x, z, pWorld.getWorld(), pWorld.getBiomes()))
|
||||||
return new Location(world, (x + 0.5), b.getY() + 1, (z + 0.5), yaw, pitch);
|
return new Location(world, (x + 0.5), b.getY() + 1, (z + 0.5), yaw, pitch);
|
||||||
return null;
|
return null;
|
||||||
|
@ -0,0 +1,23 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.types.*;
|
||||||
|
|
||||||
|
public enum CommandTypes {
|
||||||
|
BIOME(new CmdBiome()),
|
||||||
|
HELP(new CmdHelp()),
|
||||||
|
INFO(new CmdInfo()),
|
||||||
|
PLAYER(new CmdPlayer()),
|
||||||
|
RELOAD(new CmdReload()),
|
||||||
|
VERSION(new CmdVersion()),
|
||||||
|
WORLD(new CmdWorld());
|
||||||
|
|
||||||
|
private RTPCommand cmd;
|
||||||
|
|
||||||
|
CommandTypes(RTPCommand cmd) {
|
||||||
|
this.cmd = cmd;
|
||||||
|
}
|
||||||
|
|
||||||
|
public RTPCommand getCmd() {
|
||||||
|
return cmd;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,159 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
||||||
|
import org.bukkit.block.Biome;
|
||||||
|
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.UUID;
|
||||||
|
|
||||||
|
public class Commands {
|
||||||
|
|
||||||
|
private Main pl;
|
||||||
|
public HashMap<UUID, Long> cooldowns = new HashMap<>();
|
||||||
|
public HashMap<UUID, Boolean> rtping = new HashMap<>();
|
||||||
|
private boolean cooldownTimer;
|
||||||
|
private int timer, cooldown;
|
||||||
|
public static String[] cmds = {"help", "player", "world", "version", "reload", "biome"};
|
||||||
|
|
||||||
|
public Commands(Main pl) {
|
||||||
|
this.pl = pl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void load() {
|
||||||
|
FileBasics.FILETYPE config = pl.getFiles().getType(FileBasics.FILETYPE.CONFIG);
|
||||||
|
timer = config.getInt("Settings.Delay.Time");
|
||||||
|
cooldownTimer = config.getBoolean("Settings.Cooldown.Enabled");
|
||||||
|
cooldown = config.getInt("Settings.Cooldown.Time");
|
||||||
|
cooldowns.clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void commandExecuted(CommandSender sendi, String label, String[] args) {
|
||||||
|
if (pl.getPerms().getUse(sendi)) {
|
||||||
|
if (args.length > 0) {
|
||||||
|
for (CommandTypes cmd : CommandTypes.values()) {
|
||||||
|
if (cmd.name().equalsIgnoreCase(args[0])) {
|
||||||
|
if (cmd.getCmd().permission(sendi))
|
||||||
|
cmd.getCmd().execute(sendi, label, args);
|
||||||
|
else
|
||||||
|
noPerm(sendi);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
invalid(sendi, label);
|
||||||
|
} else
|
||||||
|
rtp(sendi, label, null, null);
|
||||||
|
} else
|
||||||
|
noPerm(sendi);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void invalid(CommandSender sendi, String cmd) {
|
||||||
|
pl.getText().getInvalid(sendi, cmd);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> onTabComplete(CommandSender sendi, String[] args) {
|
||||||
|
List<String> list = new ArrayList<>();
|
||||||
|
if (args.length == 1) {
|
||||||
|
for (CommandTypes cmd : CommandTypes.values()) {
|
||||||
|
if (cmd.name().toLowerCase().startsWith(args[0].toLowerCase()) && cmd.getCmd().permission(sendi))
|
||||||
|
list.add(cmd.name().toLowerCase());
|
||||||
|
}
|
||||||
|
} else if (args.length > 1) {
|
||||||
|
for (CommandTypes cmd : CommandTypes.values()) {
|
||||||
|
if (cmd.name().equalsIgnoreCase(args[0]) && cmd.getCmd().permission(sendi)) {
|
||||||
|
List<String> _cmdlist = cmd.getCmd().tabComplete(sendi, args);
|
||||||
|
if (_cmdlist != null)
|
||||||
|
list.addAll(_cmdlist);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addBiomes(List<String> list, String[] args) {
|
||||||
|
try {
|
||||||
|
for (Biome b : Biome.values())
|
||||||
|
if (b.name().toUpperCase().replaceAll("minecraft:", "").startsWith(args[args.length - 1].toUpperCase()))
|
||||||
|
list.add(b.name().replaceAll("minecraft:", ""));
|
||||||
|
} catch (NoSuchMethodError e) {
|
||||||
|
//Not in 1.14.X
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void rtp(CommandSender sendi, String cmd, String world, List<String> biomes) {
|
||||||
|
if (sendi instanceof Player)
|
||||||
|
tp((Player) sendi, sendi, world, biomes);
|
||||||
|
else
|
||||||
|
sendi.sendMessage(pl.getText().colorPre("Must be a player to use this command! Try '/" + cmd + " help'"));
|
||||||
|
}
|
||||||
|
|
||||||
|
//Custom biomes
|
||||||
|
public List<String> getBiomes(String[] args, int start, CommandSender sendi) {
|
||||||
|
List<String> biomes = new ArrayList<>();
|
||||||
|
boolean error_sent = false;
|
||||||
|
if (Main.getInstance().getPerms().getBiome(sendi))
|
||||||
|
for (int i = start; i < args.length; i++) {
|
||||||
|
String str = args[i];
|
||||||
|
try {
|
||||||
|
biomes.add(Biome.valueOf(str.replaceAll(",", "").toUpperCase()).name());
|
||||||
|
} catch (Exception e) {
|
||||||
|
if (!error_sent) {
|
||||||
|
pl.getText().getOtherBiome(sendi, str);
|
||||||
|
error_sent = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return biomes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void playerNotOnline(CommandSender sendi, String player) {
|
||||||
|
pl.getText().getNotOnline(sendi, player);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void noPerm(CommandSender sendi) {
|
||||||
|
pl.getText().getNoPermission(sendi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void tp(Player player, CommandSender sendi, String world, List<String> biomes) {
|
||||||
|
if (cooldown(sendi, player)) {
|
||||||
|
boolean delay = false;
|
||||||
|
if (!pl.getPerms().getBypassDelay(player))
|
||||||
|
if (timer != 0)
|
||||||
|
if (sendi == player)
|
||||||
|
delay = true;
|
||||||
|
pl.getRTP().start(player, sendi, world, biomes, delay);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean cooldown(CommandSender sendi, Player player) {
|
||||||
|
if (sendi != player || pl.getPerms().getBypassCooldown(player))
|
||||||
|
return true;
|
||||||
|
else if (rtping.containsKey(player.getUniqueId()))
|
||||||
|
if (rtping.get(player.getUniqueId())) {
|
||||||
|
pl.getText().getAlready(player);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (cooldownTimer) {
|
||||||
|
Player p = (Player) sendi;
|
||||||
|
if (cooldowns.containsKey(p.getUniqueId())) {
|
||||||
|
long Left = ((cooldowns.get(p.getUniqueId()) / 1000) + cooldown) - (System.currentTimeMillis() / 1000);
|
||||||
|
if (!pl.getPerms().getBypassDelay(p))
|
||||||
|
Left = Left + timer;
|
||||||
|
if (Left > 0) {
|
||||||
|
// Still cooling down
|
||||||
|
pl.getText().getCooldown(sendi, String.valueOf(Left));
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
cooldowns.remove(p.getUniqueId());
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
cooldowns.put(p.getUniqueId(), System.currentTimeMillis());
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands;
|
||||||
|
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface RTPCommand {
|
||||||
|
|
||||||
|
void execute(CommandSender sendi, String label, String[] args);
|
||||||
|
|
||||||
|
List<String> tabComplete(CommandSender sendi, String[] args);
|
||||||
|
|
||||||
|
boolean permission(CommandSender sendi);
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdBiome implements RTPCommand {
|
||||||
|
|
||||||
|
//rtp biome <biome1, biome2...>
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
if (args.length >= 2)
|
||||||
|
Main.getInstance().getCmd().rtp(sendi, label, null, Main.getInstance().getCmd().getBiomes(args, 1, sendi));
|
||||||
|
else
|
||||||
|
usage(sendi, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return Main.getInstance().getPerms().getBiome(sendi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void usage(CommandSender sendi, String label) {
|
||||||
|
Main.getInstance().getText().getUsageBiome(sendi, label);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdHelp implements RTPCommand {
|
||||||
|
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
Main pl = Main.getInstance();
|
||||||
|
pl.getText().getHelpList(sendi, label);
|
||||||
|
if (pl.getPerms().getRtpOther(sendi))
|
||||||
|
pl.getText().getHelpPlayer(sendi, label);
|
||||||
|
if (sendi instanceof Player) {
|
||||||
|
if (pl.getPerms().getAWorld(sendi, null))
|
||||||
|
pl.getText().getHelpWorld(sendi, label);
|
||||||
|
} else
|
||||||
|
pl.getText().getHelpWorld(sendi, label);
|
||||||
|
if (pl.getPerms().getReload(sendi))
|
||||||
|
pl.getText().getHelpReload(sendi, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,68 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.references.worlds.RTPWorld;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.WorldBorder;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdInfo implements RTPCommand {
|
||||||
|
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
List<String> info = new ArrayList<>();
|
||||||
|
info.add("&6BetterRTP Info");
|
||||||
|
for (World w : Bukkit.getWorlds()) {
|
||||||
|
info.add("&aWorld: &7" + w.getName());
|
||||||
|
if (Main.getInstance().getRTP().getDisabledWorlds().contains(w.getName())) //DISABLED
|
||||||
|
info.add("&7- &6Disabled: &bTrue");
|
||||||
|
else {
|
||||||
|
info.add("&7- &6Disabled: &cFalse");
|
||||||
|
if (Main.getInstance().getRTP().overriden.containsKey(w.getName()))
|
||||||
|
info.add("&7- &6Overriden: &bTrue");
|
||||||
|
else {
|
||||||
|
info.add("&7- &6Overriden: &cFalse");
|
||||||
|
RTPWorld _rtpworld = Main.getInstance().getRTP().Default;
|
||||||
|
for (RTPWorld __rtpworld : Main.getInstance().getRTP().customWorlds.values()) {
|
||||||
|
if (__rtpworld.getWorld().equals(w.getName())) {
|
||||||
|
_rtpworld = __rtpworld;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (_rtpworld == Main.getInstance().getRTP().Default)
|
||||||
|
info.add("&7- &6Custom: &cFalse");
|
||||||
|
else
|
||||||
|
info.add("&7- &6Custom: &bTrue");
|
||||||
|
if (_rtpworld.getUseWorldborder()) {
|
||||||
|
info.add("&7- &6UseWorldborder: &bTrue");
|
||||||
|
WorldBorder border = w.getWorldBorder();
|
||||||
|
info.add("&7- &6Center X: &7" + border.getCenter().getBlockX());
|
||||||
|
info.add("&7- &6Center Z: &7" + border.getCenter().getBlockZ());
|
||||||
|
info.add("&7- &6MaxRad: &7" + (border.getSize() / 2));
|
||||||
|
} else {
|
||||||
|
info.add("&7- &6UseWorldborder: &cFalse");
|
||||||
|
info.add("&7- &6Center X: &7" + _rtpworld.getCenterX());
|
||||||
|
info.add("&7- &6Center Z: &7" + _rtpworld.getCenterZ());
|
||||||
|
info.add("&7- &6MaxRad: &7" + _rtpworld.getMaxRad());
|
||||||
|
}
|
||||||
|
info.add("&7- &6MinRad: &7" + _rtpworld.getMinRad());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
info.forEach(str ->
|
||||||
|
info.set(info.indexOf(str), Main.getInstance().getText().color(str)));
|
||||||
|
sendi.sendMessage(info.toArray(new String[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return Main.getInstance().getPerms().getInfo(sendi);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.CommandTypes;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.Commands;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdPlayer implements RTPCommand {
|
||||||
|
|
||||||
|
//rtp player <world> <biome1> <biome2...>
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
if (args.length == 2)
|
||||||
|
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline())
|
||||||
|
getCmd().tp(Bukkit.getPlayer(args[1]), sendi, Bukkit.getPlayer(args[1]).getWorld().getName(), null);
|
||||||
|
else if (Bukkit.getPlayer(args[1]) != null)
|
||||||
|
getCmd().playerNotOnline(sendi, args[1]);
|
||||||
|
else
|
||||||
|
usage(sendi, label);
|
||||||
|
else if (args.length >= 3)
|
||||||
|
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline())
|
||||||
|
getCmd().tp(Bukkit.getPlayer(args[1]), sendi, Bukkit.getWorld(args[2]).getName(), getCmd().getBiomes(args, 3, sendi));
|
||||||
|
else if (Bukkit.getPlayer(args[1]) != null)
|
||||||
|
getCmd().playerNotOnline(sendi, args[1]);
|
||||||
|
else
|
||||||
|
usage(sendi, label);
|
||||||
|
else
|
||||||
|
usage(sendi, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
List<String> list = new ArrayList<>();
|
||||||
|
System.out.println(this.toString());
|
||||||
|
if (args.length == 2) {
|
||||||
|
for (Player p : Bukkit.getOnlinePlayers())
|
||||||
|
if (p.getDisplayName().toLowerCase().startsWith(args[1].toLowerCase()))
|
||||||
|
list.add(p.getDisplayName());
|
||||||
|
} else if (args.length == 3) {
|
||||||
|
for (World w : Bukkit.getWorlds())
|
||||||
|
if (w.getName().startsWith(args[2]) && !Main.getInstance().getRTP().disabledWorlds().contains(w.getName()))
|
||||||
|
list.add(w.getName());
|
||||||
|
} else if (args.length > 3) {
|
||||||
|
if (CommandTypes.BIOME.getCmd().permission(sendi))
|
||||||
|
getCmd().addBiomes(list, args);
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return Main.getInstance().getPerms().getRtpOther(sendi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void usage(CommandSender sendi, String label) {
|
||||||
|
Main.getInstance().getText().getUsageRTPOther(sendi, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Commands getCmd() {
|
||||||
|
return Main.getInstance().getCmd();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdReload implements RTPCommand {
|
||||||
|
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
Main.getInstance().reload(sendi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return Main.getInstance().getPerms().getReload(sendi);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdVersion implements RTPCommand {
|
||||||
|
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
sendi.sendMessage(Main.getInstance().getText().colorPre("&aVersion #&e" + Main.getInstance().getDescription().getVersion()));
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,49 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.CommandTypes;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.Commands;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class CmdWorld implements RTPCommand {
|
||||||
|
|
||||||
|
//rtp world <world> <biome1, biome2...>
|
||||||
|
public void execute(CommandSender sendi, String label, String[] args) {
|
||||||
|
if (args.length >= 2)
|
||||||
|
Main.getInstance().getCmd().rtp(sendi, label, args[1], Main.getInstance().getCmd().getBiomes(args, 2, sendi));
|
||||||
|
else
|
||||||
|
usage(sendi, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||||
|
List<String> list = new ArrayList<>();
|
||||||
|
if (args.length == 2) {
|
||||||
|
for (World w : Bukkit.getWorlds())
|
||||||
|
if (w.getName().startsWith(args[1]) && !Main.getInstance().getRTP().disabledWorlds().contains(w.getName()) &&
|
||||||
|
Main.getInstance().getPerms().getAWorld(sendi, w.getName()))
|
||||||
|
list.add(w.getName());
|
||||||
|
} else if (args.length >= 3) {
|
||||||
|
if (CommandTypes.BIOME.getCmd().permission(sendi))
|
||||||
|
getCmd().addBiomes(list, args);
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean permission(CommandSender sendi) {
|
||||||
|
return Main.getInstance().getPerms().getWorld(sendi);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void usage(CommandSender sendi, String label) {
|
||||||
|
Main.getInstance().getText().getUsageWorld(sendi, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Commands getCmd() {
|
||||||
|
return Main.getInstance().getCmd();
|
||||||
|
}
|
||||||
|
}
|
@ -2,7 +2,7 @@ package me.SuperRonanCraft.BetterRTP.player.events;
|
|||||||
|
|
||||||
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
||||||
import me.SuperRonanCraft.BetterRTP.Main;
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
import me.SuperRonanCraft.BetterRTP.player.Commands;
|
import me.SuperRonanCraft.BetterRTP.player.commands.Commands;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.block.Sign;
|
import org.bukkit.block.Sign;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
@ -28,6 +28,10 @@ public class Permissions {
|
|||||||
return perm(pre + "reload", sendi);
|
return perm(pre + "reload", sendi);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean getInfo(CommandSender sendi) {
|
||||||
|
return perm(pre + "info", sendi);
|
||||||
|
}
|
||||||
|
|
||||||
public boolean getUpdate(CommandSender sendi) {
|
public boolean getUpdate(CommandSender sendi) {
|
||||||
return perm(pre + "updater", sendi);
|
return perm(pre + "updater", sendi);
|
||||||
}
|
}
|
||||||
|
@ -3,14 +3,13 @@ package me.SuperRonanCraft.BetterRTP.references.worlds;
|
|||||||
import me.SuperRonanCraft.BetterRTP.Main;
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.World;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public class Custom implements RTPWorld {
|
public class Custom implements RTPWorld {
|
||||||
public World world;
|
public String world;
|
||||||
private boolean useWorldborder = false;
|
private boolean useWorldborder = false;
|
||||||
private int CenterX, CenterZ, maxBorderRad, minBorderRad, price;
|
private int CenterX, CenterZ, maxBorderRad, minBorderRad, price;
|
||||||
private List<String> Biomes;
|
private List<String> Biomes;
|
||||||
@ -19,7 +18,7 @@ public class Custom implements RTPWorld {
|
|||||||
String pre = "CustomWorlds.";
|
String pre = "CustomWorlds.";
|
||||||
FileBasics.FILETYPE config = Main.getInstance().getFiles().getType(FileBasics.FILETYPE.CONFIG);
|
FileBasics.FILETYPE config = Main.getInstance().getFiles().getType(FileBasics.FILETYPE.CONFIG);
|
||||||
List<Map<?, ?>> map = config.getMapList("CustomWorlds");
|
List<Map<?, ?>> map = config.getMapList("CustomWorlds");
|
||||||
this.world = Bukkit.getWorld(world);
|
this.world = world;
|
||||||
|
|
||||||
//Find Custom World and cache values
|
//Find Custom World and cache values
|
||||||
for (Map<?, ?> m : map) {
|
for (Map<?, ?> m : map) {
|
||||||
@ -140,4 +139,9 @@ public class Custom implements RTPWorld {
|
|||||||
public List<String> getBiomes() {
|
public List<String> getBiomes() {
|
||||||
return Biomes;
|
return Biomes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getWorld() {
|
||||||
|
return world;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
package me.SuperRonanCraft.BetterRTP.references.worlds;
|
package me.SuperRonanCraft.BetterRTP.references.worlds;
|
||||||
|
|
||||||
|
|
||||||
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
|
||||||
import me.SuperRonanCraft.BetterRTP.Main;
|
import me.SuperRonanCraft.BetterRTP.Main;
|
||||||
|
import me.SuperRonanCraft.BetterRTP.references.file.FileBasics;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -73,4 +73,9 @@ public class Default implements RTPWorld {
|
|||||||
public List<String> getBiomes() {
|
public List<String> getBiomes() {
|
||||||
return Biomes;
|
return Biomes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getWorld() {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,4 +17,6 @@ public interface RTPWorld {
|
|||||||
int getPrice();
|
int getPrice();
|
||||||
|
|
||||||
List<String> getBiomes();
|
List<String> getBiomes();
|
||||||
|
|
||||||
|
String getWorld();
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
main: me.SuperRonanCraft.BetterRTP.Main
|
main: me.SuperRonanCraft.BetterRTP.Main
|
||||||
version: 2.9.4
|
version: 2.10.0
|
||||||
name: BetterRTP
|
name: BetterRTP
|
||||||
author: SuperRonanCraft
|
author: SuperRonanCraft
|
||||||
softdepend: [Vault, WorldGuard, GriefPrevention, Factions]
|
softdepend: [Vault, WorldGuard, GriefPrevention, Factions]
|
||||||
@ -48,4 +48,7 @@ permissions:
|
|||||||
default: op
|
default: op
|
||||||
betterrtp.updater:
|
betterrtp.updater:
|
||||||
description: Get notification on new updates
|
description: Get notification on new updates
|
||||||
|
default: op
|
||||||
|
betterrtp.info:
|
||||||
|
description: View info about all worlds rtp will work in
|
||||||
default: op
|
default: op
|
Loading…
x
Reference in New Issue
Block a user