mirror of
https://github.com/RonanPlugins/BetterRTP.git
synced 2026-02-16 10:30:58 +00:00
Cooldowns per world save + Player rtp usage saving
This commit is contained in:
@@ -65,7 +65,7 @@ public class MagicStickEvents implements Listener {
|
||||
if (listener.p == e.getPlayer())
|
||||
return;
|
||||
//Rtp the player
|
||||
HelperRTP.tp(e.getPlayer(), e.getPlayer().getWorld().getName(), null, RTP_TYPE.ADDON_MAGICSTICK);
|
||||
HelperRTP.tp(e.getPlayer(), e.getPlayer().getWorld(), null, RTP_TYPE.ADDON_MAGICSTICK);
|
||||
if (this.take)
|
||||
teleportingPlayers.add(new PlayerListener(e.getPlayer()));
|
||||
}
|
||||
|
||||
@@ -3,9 +3,12 @@ package me.SuperRonanCraft.BetterRTPAddons.addons.parties;
|
||||
import io.papermc.lib.PaperLib;
|
||||
import lombok.Getter;
|
||||
import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.references.PermissionNode;
|
||||
import me.SuperRonanCraft.BetterRTP.references.Permissions;
|
||||
import me.SuperRonanCraft.BetterRTP.references.customEvents.RTP_TeleportPostEvent;
|
||||
import me.SuperRonanCraft.BetterRTP.references.rtpinfo.CooldownData;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.player.PlayerTeleportEvent;
|
||||
|
||||
@@ -79,7 +82,7 @@ public class PartyData {
|
||||
}
|
||||
|
||||
public void tpAll(RTP_TeleportPostEvent e) {
|
||||
CooldownData cooldownData = BetterRTP.getInstance().getPlayerDataManager().getData(getLeader()).getCooldown();
|
||||
//HashMap<World, CooldownData> cooldownData = BetterRTP.getInstance().getPlayerDataManager().getData(getLeader()).getCooldowns();
|
||||
members.forEach((p, ready) -> {
|
||||
if (!p.equals(getLeader())) {
|
||||
Location loc = e.getLocation();
|
||||
@@ -94,8 +97,9 @@ public class PartyData {
|
||||
BetterRTP.getInstance().getRTP().getTeleport().afterTeleport(p, loc, 0, 0, e.getOldLocation(), e.getType());
|
||||
});
|
||||
//Set cooldowns
|
||||
if (cooldownData != null)
|
||||
BetterRTP.getInstance().getPlayerDataManager().getData(p).setCooldown(new CooldownData(p.getUniqueId(), cooldownData.getTime(), cooldownData.getUses()));
|
||||
if (!PermissionNode.BYPASS_COOLDOWN.check(p))
|
||||
BetterRTP.getInstance().getPlayerDataManager().getData(p).getCooldowns().put(loc.getWorld(),
|
||||
new CooldownData(p.getUniqueId(), System.currentTimeMillis(), loc.getWorld()));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import me.SuperRonanCraft.BetterRTPAddons.addons.portals.region.PortalsRegionInf
|
||||
import me.SuperRonanCraft.BetterRTPAddons.util.Files;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
@@ -58,8 +59,8 @@ public class PortalsEvents implements Listener {
|
||||
if (ploc.getBlockY() <= Math.max(loc1.getBlockY(), loc2.getBlockY())
|
||||
&& ploc.getBlockY() >= Math.min(loc1.getBlockY(), loc2.getBlockY())) {
|
||||
playerPortaling.put(e.getPlayer(), portal);
|
||||
HelperRTP.tp(e.getPlayer(), e.getPlayer(),
|
||||
portal.getWorld(), null, RTP_TYPE.ADDON_PORTAL, ignoreCooldown, ignoreDelay);
|
||||
World world = portal.getWorld() != null ? Bukkit.getWorld(portal.getWorld()) : null;
|
||||
HelperRTP.tp(e.getPlayer(), e.getPlayer(), world, null, RTP_TYPE.ADDON_PORTAL, ignoreCooldown, ignoreDelay);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user