mirror of
https://github.com/RonanPlugins/BetterRTP.git
synced 2026-02-16 10:30:58 +00:00
RtpInfo checks + sudo command
This commit is contained in:
@@ -9,6 +9,7 @@ public enum RTPCommandType {
|
||||
INFO(new CmdInfo()),
|
||||
LOCATION(new CmdLocation()),
|
||||
PLAYER(new CmdPlayer()),
|
||||
PLAYERSUDO(new CmdPlayerSudo()),
|
||||
QUEUE(new CmdQueue(), true),
|
||||
RELOAD(new CmdReload()),
|
||||
//SETTINGS(new CmdSettings(), true),
|
||||
|
||||
@@ -26,7 +26,7 @@ public class CmdPlayer implements RTPCommand, RTPCommandHelpable {
|
||||
return "player";
|
||||
}
|
||||
|
||||
//rtp player <world> <biome1> <biome2...>
|
||||
//rtp player <player> <world> <RTP_PlayerInfo.RTP_PLAYERINFO_FLAG...>
|
||||
public void execute(CommandSender sendi, String label, String[] args) {
|
||||
if (args.length == 2)
|
||||
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline()) {
|
||||
@@ -44,7 +44,6 @@ public class CmdPlayer implements RTPCommand, RTPCommandHelpable {
|
||||
else if (args.length >= 3)
|
||||
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline()) {
|
||||
World world = Bukkit.getWorld(args[2]);
|
||||
RTP_PlayerInfo playerInfo = getFlags(args);
|
||||
if (world != null) {
|
||||
HelperRTP.tp(Bukkit.getPlayer(args[1]),
|
||||
sendi,
|
||||
@@ -52,7 +51,7 @@ public class CmdPlayer implements RTPCommand, RTPCommandHelpable {
|
||||
null,
|
||||
RTP_TYPE.FORCED,
|
||||
null,
|
||||
playerInfo);
|
||||
getFlags(args));
|
||||
} else
|
||||
MessagesCore.NOTEXIST.send(sendi, args[2]);
|
||||
} else if (Bukkit.getPlayer(args[1]) != null)
|
||||
@@ -76,8 +75,8 @@ public class CmdPlayer implements RTPCommand, RTPCommandHelpable {
|
||||
if (flag.name().equalsIgnoreCase(args[i])) {
|
||||
switch (flag) {
|
||||
case NODELAY: applyDelay = false; break;
|
||||
case NOCOOLDOWN: checkCooldown = false; break;
|
||||
case IGNORECOOLDOWN: applyCooldown = false; break;
|
||||
case NOCOOLDOWN: applyCooldown = false; break;
|
||||
case IGNORECOOLDOWN: checkCooldown = false; break;
|
||||
case IGNOREMONEY: takeMoney = false; break;
|
||||
case IGNOREHUNGER: takeHunger = false; break;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
package me.SuperRonanCraft.BetterRTP.player.commands.types;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommand;
|
||||
import me.SuperRonanCraft.BetterRTP.player.commands.RTPCommandHelpable;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_PlayerInfo;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_TYPE;
|
||||
import me.SuperRonanCraft.BetterRTP.references.PermissionNode;
|
||||
import me.SuperRonanCraft.BetterRTP.references.helpers.HelperRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.MessagesCore;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.MessagesHelp;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.MessagesUsage;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class CmdPlayerSudo implements RTPCommand {
|
||||
|
||||
public String getName() {
|
||||
return "player_sudo";
|
||||
}
|
||||
|
||||
//rtp sudoplayer <player> <world> <RTP_PlayerInfo.RTP_PLAYERINFO_FLAG...>
|
||||
public void execute(CommandSender sendi, String label, String[] args) {
|
||||
if (args.length == 2)
|
||||
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline()) {
|
||||
HelperRTP.tp(Bukkit.getPlayer(args[1]),
|
||||
sendi,
|
||||
Bukkit.getPlayer(args[1]).getWorld(),
|
||||
null,
|
||||
RTP_TYPE.FORCED,
|
||||
null,
|
||||
new RTP_PlayerInfo(false, true, false, false, false));
|
||||
} else if (Bukkit.getPlayer(args[1]) != null)
|
||||
MessagesCore.NOTONLINE.send(sendi, args[1]);
|
||||
else
|
||||
usage(sendi, label);
|
||||
else if (args.length >= 3)
|
||||
if (Bukkit.getPlayer(args[1]) != null && Bukkit.getPlayer(args[1]).isOnline()) {
|
||||
World world = Bukkit.getWorld(args[2]);
|
||||
if (world != null) {
|
||||
HelperRTP.tp(Bukkit.getPlayer(args[1]),
|
||||
sendi,
|
||||
world,
|
||||
null,
|
||||
RTP_TYPE.FORCED,
|
||||
null,
|
||||
new RTP_PlayerInfo(false, true, false, false, false));
|
||||
} else
|
||||
MessagesCore.NOTEXIST.send(sendi, args[2]);
|
||||
} else if (Bukkit.getPlayer(args[1]) != null)
|
||||
MessagesCore.NOTONLINE.send(sendi, args[1]);
|
||||
else
|
||||
usage(sendi, label);
|
||||
else
|
||||
usage(sendi, label);
|
||||
}
|
||||
|
||||
public List<String> tabComplete(CommandSender sendi, String[] args) {
|
||||
List<String> list = new ArrayList<>();
|
||||
if (args.length == 2) {
|
||||
for (Player p : Bukkit.getOnlinePlayers())
|
||||
if (p.getDisplayName().toLowerCase().startsWith(args[1].toLowerCase()))
|
||||
list.add(p.getName());
|
||||
} else if (args.length == 3) {
|
||||
for (World w : Bukkit.getWorlds())
|
||||
if (w.getName().startsWith(args[2]) && !BetterRTP.getInstance().getRTP().getDisabledWorlds().contains(w.getName()))
|
||||
list.add(w.getName());
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@NotNull public PermissionNode permission() {
|
||||
return PermissionNode.RTP_OTHER;
|
||||
}
|
||||
|
||||
public void usage(CommandSender sendi, String label) {
|
||||
MessagesUsage.RTP_OTHER.send(sendi, label);
|
||||
}
|
||||
}
|
||||
@@ -7,6 +7,7 @@ import me.SuperRonanCraft.BetterRTP.references.WarningHandler;
|
||||
import me.SuperRonanCraft.BetterRTP.references.customEvents.RTP_SettingUpEvent;
|
||||
import me.SuperRonanCraft.BetterRTP.references.file.FileOther;
|
||||
import me.SuperRonanCraft.BetterRTP.references.helpers.HelperRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.references.helpers.HelperRTP_Check;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.MessagesCore;
|
||||
import me.SuperRonanCraft.BetterRTP.references.rtpinfo.PermissionGroup;
|
||||
import me.SuperRonanCraft.BetterRTP.references.rtpinfo.worlds.*;
|
||||
@@ -82,12 +83,12 @@ public class RTP {
|
||||
if (setup.isCancelled())
|
||||
return;
|
||||
// Second Economy check
|
||||
if (pWorld.getPlayerInfo().takeMoney && !getPl().getEco().hasBalance(pWorld.getSendi(), pWorld)) {
|
||||
MessagesCore.FAILED_PRICE.send(pWorld.getSendi());
|
||||
if (pWorld.getPlayerInfo().takeMoney && !getPl().getEco().hasBalance(pWorld)) {
|
||||
MessagesCore.FAILED_PRICE.send(pWorld.getPlayer());
|
||||
return;
|
||||
}
|
||||
if (pWorld.getPlayerInfo().takeHunger && !getPl().getEco().hasHunger(pWorld.getSendi(), pWorld)) {
|
||||
MessagesCore.FAILED_HUNGER.send(pWorld.getSendi());
|
||||
if (pWorld.getPlayerInfo().takeHunger && !getPl().getEco().hasHunger(pWorld)) {
|
||||
MessagesCore.FAILED_HUNGER.send(pWorld.getPlayer());
|
||||
return;
|
||||
}
|
||||
rtp(pWorld.getSendi(), pWorld, pWorld.getRtp_type());
|
||||
@@ -103,7 +104,7 @@ public class RTP {
|
||||
//Setup player rtp methods
|
||||
RTPPlayer rtpPlayer = new RTPPlayer(p, this, pWorld, type);
|
||||
// Delaying? Else, just go
|
||||
if (pWorld.getPlayerInfo().isApplyDelay() && getPl().getSettings().isDelayEnabled()) {
|
||||
if (pWorld.getPlayerInfo().applyDelay && HelperRTP_Check.applyDelay(pWorld.getPlayer())) {
|
||||
new RTPDelay(sendi, rtpPlayer, delayTime, cancelOnMove, cancelOnDamage);
|
||||
} else {
|
||||
if (!teleport.beforeTeleportInstant(sendi, p))
|
||||
|
||||
@@ -64,7 +64,7 @@ class RTPDelay implements Listener {
|
||||
getPl().getRTP().getTeleport().cancelledTeleport(rtp.getPlayer());
|
||||
//getPl().getEco().unCharge(rtp.getPlayer(), rtp.pWorld);
|
||||
getPl().getCooldowns().removeCooldown(rtp.getPlayer(), rtp.worldPlayer.getWorld());
|
||||
getPl().getpInfo().getRtping().put(rtp.getPlayer(), false);
|
||||
getPl().getpInfo().getRtping().remove(rtp.getPlayer());
|
||||
Bukkit.getServer().getPluginManager().callEvent(new RTP_CancelledEvent(rtp.getPlayer()));
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ public class RTPPlayer {
|
||||
@Getter WorldPlayer worldPlayer;
|
||||
@Getter RTP_TYPE type;
|
||||
@Getter int attempts;
|
||||
List<Location> attemptedLocations = new ArrayList<>();
|
||||
//List<Location> attemptedLocations = new ArrayList<>();
|
||||
|
||||
RTPPlayer(Player player, RTP settings, WorldPlayer worldPlayer, RTP_TYPE type) {
|
||||
this.player = player;
|
||||
@@ -83,18 +83,19 @@ public class RTPPlayer {
|
||||
private void attempt(CommandSender sendi, Location loc) {
|
||||
Location tpLoc;
|
||||
tpLoc = RandomLocation.getSafeLocation(worldPlayer.getWorldtype(), worldPlayer.getWorld(), loc, worldPlayer.getMinY(), worldPlayer.getMaxY(), worldPlayer.getBiomes());
|
||||
attemptedLocations.add(loc);
|
||||
//attemptedLocations.add(loc);
|
||||
//Valid location?
|
||||
if (tpLoc != null && checkDepends(tpLoc)) {
|
||||
tpLoc.add(0.5, 0, 0.5); //Center location
|
||||
if (worldPlayer.getPlayerInfo().isTakeMoney() && getPl().getEco().charge(player, worldPlayer)) {
|
||||
if (getPl().getEco().charge(player, worldPlayer)) {
|
||||
//Successfully found a safe location, teleport player
|
||||
tpLoc.setYaw(player.getLocation().getYaw());
|
||||
tpLoc.setPitch(player.getLocation().getPitch());
|
||||
AsyncHandler.sync(() ->
|
||||
settings.teleport.sendPlayer(sendi, player, tpLoc, worldPlayer, attempts, type));
|
||||
AsyncHandler.sync(() -> settings.teleport.sendPlayer(sendi, player, tpLoc, worldPlayer, attempts, type));
|
||||
} else {
|
||||
getPl().getCooldowns().removeCooldown(player, worldPlayer.getWorld());
|
||||
getPl().getpInfo().getRtping().put(player, false);
|
||||
if (worldPlayer.getPlayerInfo().applyCooldown)
|
||||
getPl().getCooldowns().removeCooldown(player, worldPlayer.getWorld());
|
||||
getPl().getpInfo().getRtping().remove(player);
|
||||
}
|
||||
} else {
|
||||
randomlyTeleport(sendi);
|
||||
@@ -106,7 +107,7 @@ public class RTPPlayer {
|
||||
private void metMax(CommandSender sendi, Player p) {
|
||||
settings.teleport.failedTeleport(p, sendi);
|
||||
getPl().getCooldowns().removeCooldown(p, worldPlayer.getWorld());
|
||||
getPl().getpInfo().getRtping().put(p, false);
|
||||
getPl().getpInfo().getRtping().remove(p);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -115,15 +115,18 @@ public class RTPTeleport {
|
||||
|
||||
private void loadingTeleport(Player p, CommandSender sendi) {
|
||||
effects.getTitles().showTitle(RTPEffect_Titles.RTP_TITLE_TYPE.LOADING, p, p.getLocation(), 0, 0);
|
||||
if ((effects.getTitles().sendMsg(RTPEffect_Titles.RTP_TITLE_TYPE.LOADING) && sendStatusMessage()) || sendi != p) //Show msg if enabled or if not same player
|
||||
MessagesCore.SUCCESS_LOADING.send(sendi);
|
||||
if (effects.getTitles().sendMsg(RTPEffect_Titles.RTP_TITLE_TYPE.LOADING) && sendStatusMessage()) { //Show msg if enabled or if not same player
|
||||
if (p == sendi)
|
||||
MessagesCore.SUCCESS_LOADING.send(sendi);
|
||||
MessagesCore.SUCCESS_LOADING.send(p);
|
||||
}
|
||||
}
|
||||
|
||||
public void failedTeleport(Player p, CommandSender sendi) {
|
||||
effects.getTitles().showTitle(RTPEffect_Titles.RTP_TITLE_TYPE.FAILED, p, p.getLocation(), 0, 0);
|
||||
if (effects.getTitles().sendMsg(RTPEffect_Titles.RTP_TITLE_TYPE.FAILED))
|
||||
if (p == sendi)
|
||||
MessagesCore.FAILED_NOTSAFE.send(sendi, BetterRTP.getInstance().getRTP().maxAttempts);
|
||||
MessagesCore.FAILED_NOTSAFE.send(p, BetterRTP.getInstance().getRTP().maxAttempts);
|
||||
else
|
||||
MessagesCore.OTHER_NOTSAFE.send(sendi, Arrays.asList(
|
||||
BetterRTP.getInstance().getRTP().maxAttempts,
|
||||
|
||||
@@ -17,8 +17,7 @@ public class RTP_PlayerInfo {
|
||||
}
|
||||
|
||||
public RTP_PlayerInfo(boolean applyDelay, boolean applyCooldown) {
|
||||
this.applyDelay = applyDelay;
|
||||
this.applyCooldown = applyCooldown;
|
||||
this(applyDelay, applyCooldown, true, true, true);
|
||||
}
|
||||
|
||||
public RTP_PlayerInfo(boolean applyDelay,
|
||||
|
||||
@@ -23,9 +23,10 @@ public class DepEconomy {
|
||||
//Hunger Stuff
|
||||
boolean took_food = false;
|
||||
if (hunger != 0
|
||||
&& sendi == player
|
||||
&& pWorld.getPlayerInfo().isTakeHunger()
|
||||
&& !PermissionNode.BYPASS_HUNGER.check(player)
|
||||
&& (player.getGameMode() == GameMode.SURVIVAL || player.getGameMode() == GameMode.ADVENTURE)) {
|
||||
boolean has_hunger = player.getFoodLevel() > hunger;
|
||||
boolean has_hunger = player.getFoodLevel() >= hunger;
|
||||
if (!has_hunger) {
|
||||
MessagesCore.FAILED_HUNGER.send(sendi);
|
||||
return false;
|
||||
@@ -35,7 +36,10 @@ public class DepEconomy {
|
||||
}
|
||||
}
|
||||
//Economy Stuff
|
||||
if (e != null && pWorld.getPrice() != 0 && !PermissionNode.BYPASS_ECONOMY.check(sendi)) {
|
||||
if (e != null
|
||||
&& pWorld.getPrice() != 0
|
||||
&& pWorld.getPlayerInfo().isTakeMoney()
|
||||
&& !PermissionNode.BYPASS_ECONOMY.check(player)) {
|
||||
try {
|
||||
EconomyResponse r = e.withdrawPlayer(player, pWorld.getPrice());
|
||||
boolean passed_economy = r.transactionSuccess();
|
||||
@@ -54,11 +58,11 @@ public class DepEconomy {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean hasBalance(CommandSender sendi, WorldPlayer pWorld) {
|
||||
public boolean hasBalance(WorldPlayer pWorld) {
|
||||
check(false);
|
||||
//Economy Stuff
|
||||
int price = pWorld.getPrice();
|
||||
if (e != null && price != 0 && !PermissionNode.BYPASS_ECONOMY.check(sendi)) {
|
||||
if (e != null && price != 0 && !PermissionNode.BYPASS_ECONOMY.check(pWorld.getPlayer())) {
|
||||
try {
|
||||
return e.getBalance(pWorld.getPlayer()) >= price;
|
||||
} catch (Exception e) {
|
||||
@@ -69,14 +73,14 @@ public class DepEconomy {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean hasHunger(CommandSender sendi, WorldPlayer pWorld) {
|
||||
public boolean hasHunger(WorldPlayer pWorld) {
|
||||
check(false);
|
||||
Player player = pWorld.getPlayer();
|
||||
//Hunger Stuff
|
||||
if (hunger != 0
|
||||
&& !PermissionNode.BYPASS_HUNGER.check(sendi)
|
||||
&& !PermissionNode.BYPASS_HUNGER.check(player)
|
||||
&& (player.getGameMode() == GameMode.SURVIVAL || player.getGameMode() == GameMode.ADVENTURE)) {
|
||||
return player.getFoodLevel() > hunger;
|
||||
return player.getFoodLevel() >= hunger;
|
||||
}
|
||||
//Default value
|
||||
return true;
|
||||
|
||||
@@ -96,7 +96,7 @@ public class DepPlaceholderAPI extends PlaceholderExpansion {
|
||||
RTPSetupInformation setup_info = new RTPSetupInformation(HelperRTP.getActualWorld(data.player, world), data.player, data.player, true);
|
||||
WorldPlayer pWorld = HelperRTP.getPlayerWorld(setup_info);
|
||||
Long cooldownTime = BetterRTP.getInstance().getCooldowns().locked(data.player) ? -1L :
|
||||
(HelperRTP_Check.applyCooldown(data.player, data.player) ? pWorld.getCooldown() * 1000L : 0L);
|
||||
(HelperRTP_Check.applyCooldown(data.player) ? pWorld.getCooldown() * 1000L : 0L);
|
||||
return HelperDate.total(cooldownTime);
|
||||
}
|
||||
|
||||
@@ -109,13 +109,13 @@ public class DepPlaceholderAPI extends PlaceholderExpansion {
|
||||
RTPSetupInformation setupInformation = new RTPSetupInformation(world, player, player, true);
|
||||
WorldPlayer pWorld = HelperRTP.getPlayerWorld(setupInformation);
|
||||
//Cooldown
|
||||
if (HelperRTP_Check.isCoolingDown(player, player, pWorld))
|
||||
if (HelperRTP_Check.isCoolingDown(player, pWorld))
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_cooldown();
|
||||
//Price
|
||||
if (!BetterRTP.getInstance().getEco().hasBalance(player, pWorld))
|
||||
if (!BetterRTP.getInstance().getEco().hasBalance(pWorld))
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_balance();
|
||||
//Hunger
|
||||
if (!BetterRTP.getInstance().getEco().hasHunger(player, pWorld))
|
||||
if (!BetterRTP.getInstance().getEco().hasHunger(pWorld))
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_hunger();
|
||||
//True
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_true();
|
||||
@@ -128,7 +128,7 @@ public class DepPlaceholderAPI extends PlaceholderExpansion {
|
||||
RTPSetupInformation setupInformation = new RTPSetupInformation(world, player, player, true);
|
||||
WorldPlayer pWorld = HelperRTP.getPlayerWorld(setupInformation);
|
||||
//Cooldown
|
||||
if (HelperRTP_Check.isCoolingDown(player, player, pWorld))
|
||||
if (HelperRTP_Check.isCoolingDown(player, pWorld))
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_cooldown();
|
||||
//True
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_true();
|
||||
@@ -141,7 +141,7 @@ public class DepPlaceholderAPI extends PlaceholderExpansion {
|
||||
RTPSetupInformation setupInformation = new RTPSetupInformation(world, player, player, true);
|
||||
WorldPlayer pWorld = HelperRTP.getPlayerWorld(setupInformation);
|
||||
//Price
|
||||
if (!BetterRTP.getInstance().getEco().hasBalance(player, pWorld))
|
||||
if (!BetterRTP.getInstance().getEco().hasBalance(pWorld))
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_balance();
|
||||
//True
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_true();
|
||||
@@ -154,7 +154,7 @@ public class DepPlaceholderAPI extends PlaceholderExpansion {
|
||||
RTPSetupInformation setupInformation = new RTPSetupInformation(world, player, player, true);
|
||||
WorldPlayer pWorld = HelperRTP.getPlayerWorld(setupInformation);
|
||||
//Hunger
|
||||
if (!BetterRTP.getInstance().getEco().hasHunger(player, pWorld))
|
||||
if (!BetterRTP.getInstance().getEco().hasHunger(pWorld))
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_hunger();
|
||||
//True
|
||||
return BetterRTP.getInstance().getSettings().getPlaceholder_true();
|
||||
|
||||
@@ -7,6 +7,7 @@ import me.SuperRonanCraft.BetterRTP.references.PermissionCheck;
|
||||
import me.SuperRonanCraft.BetterRTP.references.PermissionNode;
|
||||
import me.SuperRonanCraft.BetterRTP.references.WarningHandler;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.Message_RTP;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.MessagesCore;
|
||||
import me.SuperRonanCraft.BetterRTP.references.messages.placeholder.Placeholders;
|
||||
import me.SuperRonanCraft.BetterRTP.references.rtpinfo.PermissionGroup;
|
||||
import me.SuperRonanCraft.BetterRTP.references.rtpinfo.worlds.*;
|
||||
@@ -93,7 +94,9 @@ public class HelperRTP {
|
||||
msg = msg.replace(Placeholders.COOLDOWN.name, HelperDate.total(HelperRTP_Check.getCooldown(player, pWorld)));
|
||||
msg = msg.replace(Placeholders.TIME.name, HelperDate.total(HelperRTP_Check.getCooldown(player, pWorld)));
|
||||
}
|
||||
Message_RTP.sms(sendi, msg, pWorld);
|
||||
Message_RTP.sms(player, msg, pWorld);
|
||||
if (sendi != player)
|
||||
Message_RTP.sms(sendi, msg, pWorld);
|
||||
return;
|
||||
}
|
||||
//ignore cooldown or else
|
||||
|
||||
@@ -26,12 +26,12 @@ public class HelperRTP_Check {
|
||||
if (getPl().getRTP().getDisabledWorlds().contains(pWorld.getWorld().getName())) {
|
||||
return RTP_ERROR_REQUEST_REASON.WORLD_DISABLED;
|
||||
}
|
||||
if (rtpInfo.isCheckCooldown() && sendi == player && isCoolingDown(sendi, player, pWorld)) { //Is Cooling down
|
||||
if (rtpInfo.isCheckCooldown() && isCoolingDown(player, pWorld)) { //Is Cooling down
|
||||
return RTP_ERROR_REQUEST_REASON.COOLDOWN;
|
||||
}
|
||||
if (rtpInfo.isTakeMoney() && !getPl().getEco().hasBalance(sendi, pWorld))
|
||||
if (rtpInfo.isTakeMoney() && !getPl().getEco().hasBalance(pWorld))
|
||||
return RTP_ERROR_REQUEST_REASON.PRICE_ECONOMY;
|
||||
if (rtpInfo.isTakeHunger() && !getPl().getEco().hasHunger(sendi, pWorld))
|
||||
if (rtpInfo.isTakeHunger() && !getPl().getEco().hasHunger(pWorld))
|
||||
return RTP_ERROR_REQUEST_REASON.PRICE_HUNGER;
|
||||
return null;
|
||||
}
|
||||
@@ -40,8 +40,8 @@ public class HelperRTP_Check {
|
||||
return getPl().getpInfo().getRtping().getOrDefault(player, false);
|
||||
}
|
||||
|
||||
public static boolean isCoolingDown(CommandSender sendi, Player player, WorldPlayer pWorld) {
|
||||
if (!applyCooldown(sendi, player)) //Bypassing/Forced?
|
||||
public static boolean isCoolingDown(Player player, WorldPlayer pWorld) {
|
||||
if (!applyCooldown(player))
|
||||
return false;
|
||||
return getCooldown(player, pWorld) > 0L || isLocked(player);
|
||||
}
|
||||
@@ -69,17 +69,15 @@ public class HelperRTP_Check {
|
||||
return 0L;
|
||||
}
|
||||
|
||||
public static boolean applyCooldown(CommandSender sendi, Player player) {
|
||||
return getPl().getCooldowns().isEnabled() && !(sendi != player || PermissionNode.BYPASS_COOLDOWN.check(player));
|
||||
public static boolean applyCooldown(Player player) {
|
||||
return getPl().getCooldowns().isEnabled()
|
||||
&& !PermissionNode.BYPASS_COOLDOWN.check(player);
|
||||
}
|
||||
|
||||
public static boolean applyDelay(Player player, CommandSender sendi) {
|
||||
boolean delay = false;
|
||||
if (sendi == player) //Forced?
|
||||
if (getPl().getSettings().isDelayEnabled() && getPl().getSettings().getDelayTime() > 0) //Delay enabled?
|
||||
if (!PermissionNode.BYPASS_DELAY.check(player)) //Can bypass?
|
||||
delay = true;
|
||||
return delay;
|
||||
public static boolean applyDelay(Player player) {
|
||||
return getPl().getSettings().isDelayEnabled()
|
||||
&& getPl().getSettings().getDelayTime() > 0
|
||||
&& !PermissionNode.BYPASS_DELAY.check(player);
|
||||
}
|
||||
|
||||
private static BetterRTP getPl() {
|
||||
|
||||
Reference in New Issue
Block a user