mirror of
https://github.com/RonanPlugins/BetterRTP.git
synced 2026-02-16 10:30:58 +00:00
magicstick event + flashback msg error and ignores portal rtp
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package me.SuperRonanCraft.BetterRTPAddons.addons.flashback;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_TYPE;
|
||||
import me.SuperRonanCraft.BetterRTP.references.customEvents.RTP_TeleportPostEvent;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.Addon;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.util.Files;
|
||||
@@ -32,7 +33,7 @@ public class AddonFlashback implements Addon, Listener {
|
||||
@Override
|
||||
public void load() {
|
||||
Files.FILETYPE file = getFile(Files.FILETYPE.CONFIG);
|
||||
this.time = file.getConfig().getLong(name + ".Time");
|
||||
this.time = file.getConfig().getLong(name + ".Timer.Delay");
|
||||
this.database.load(FlashbackDatabase.Columns.values());
|
||||
|
||||
warnings.clear();
|
||||
@@ -67,6 +68,7 @@ public class AddonFlashback implements Addon, Listener {
|
||||
@EventHandler
|
||||
void onTeleport(RTP_TeleportPostEvent e) {
|
||||
System.out.println("Player " + e.getPlayer().getName() + " was rtp'd!");
|
||||
players.add(new FlashbackPlayer(this, e.getPlayer(), e.getOldLocation(), time));
|
||||
if (e.getType() != RTP_TYPE.ADDON_PORTAL)
|
||||
players.add(new FlashbackPlayer(this, e.getPlayer(), e.getOldLocation(), time));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import me.SuperRonanCraft.BetterRTPAddons.AddonsMessages;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class FlashbackMessages implements AddonsMessages {
|
||||
private static String preM = "Messages";
|
||||
private static String preM = "Flashback.";
|
||||
|
||||
public void getWarning(CommandSender sendi) {
|
||||
sms(sendi, getLang().getString(preM + "Warning"));
|
||||
|
||||
@@ -21,7 +21,7 @@ public class FlashbackPlayer {
|
||||
}
|
||||
|
||||
private Runnable getTimedFlash(Long seconds) {
|
||||
if (plugin.database.setPlayer(p, oldLoc, System.currentTimeMillis() + (seconds * 1000)))
|
||||
if (!plugin.database.setPlayer(p, oldLoc, System.currentTimeMillis() + (seconds * 1000)))
|
||||
p.sendMessage("A Database error has occurred!");
|
||||
return () -> {
|
||||
plugin.msgs.getWarning(p);
|
||||
|
||||
@@ -5,11 +5,13 @@ import me.SuperRonanCraft.BetterRTPAddons.Addon;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.Main;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.addons.magicStick.cmds.MagicStickCommand;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.util.Files;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class AddonMagicStick implements Addon {
|
||||
|
||||
public MagicStickMessages msgs = new MagicStickMessages();
|
||||
MagicStickCommand cmd = new MagicStickCommand(this);
|
||||
public MagicStickEvents events = new MagicStickEvents();
|
||||
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
@@ -19,10 +21,11 @@ public class AddonMagicStick implements Addon {
|
||||
@Override
|
||||
public void load() {
|
||||
BetterRTP.getInstance().getCmd().registerCommand(cmd, false);
|
||||
events.load();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unload() {
|
||||
|
||||
events.unload();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
package me.SuperRonanCraft.BetterRTPAddons.addons.magicStick;
|
||||
|
||||
import me.SuperRonanCraft.BetterRTP.BetterRTP;
|
||||
import me.SuperRonanCraft.BetterRTP.player.rtp.RTP_TYPE;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.Main;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.util.Files;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.block.Action;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class MagicStickEvents implements Listener {
|
||||
|
||||
public ItemStack item;
|
||||
boolean take;
|
||||
|
||||
void load() {
|
||||
Bukkit.getPluginManager().registerEvents(this, Main.getInstance());
|
||||
Files.FILETYPE file = Main.getInstance().getFiles().getType(Files.FILETYPE.CONFIG);
|
||||
String title = file.getString("MagicStick.Item.Name");
|
||||
Material mat = Material.valueOf(file.getString("MagicStick.Item.Material").toUpperCase());
|
||||
List<String> lore = file.getStringList("MagicStick.Item.Lore");
|
||||
item = new ItemStack(mat);
|
||||
ItemMeta meta = item.getItemMeta();
|
||||
assert meta != null;
|
||||
meta.setDisplayName(BetterRTP.getInstance().getText().color(title));
|
||||
meta.setLore(lore);
|
||||
lore.forEach((str) -> {lore.set(lore.indexOf(str), BetterRTP.getInstance().getText().color(str)); });
|
||||
item.setItemMeta(meta);
|
||||
|
||||
this.take = file.getBoolean("MagicStick.Take");
|
||||
}
|
||||
|
||||
void unload() {
|
||||
HandlerList.unregisterAll(this);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
void use(PlayerInteractEvent e) {
|
||||
if (e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK) {
|
||||
ItemStack eItem = e.getItem();
|
||||
if (eItem != null && eItem.getType() == item.getType()) {
|
||||
if (Objects.equals(eItem.getItemMeta(), item.getItemMeta())) {
|
||||
BetterRTP.getInstance().getCmd().tp(e.getPlayer(), e.getPlayer(), e.getPlayer().getWorld().getName(), null, RTP_TYPE.ADDON);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -4,11 +4,13 @@ import me.SuperRonanCraft.BetterRTPAddons.addons.magicStick.AddonMagicStick;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.addons.portals.AddonPortals;
|
||||
import me.SuperRonanCraft.BetterRTPAddons.addons.portals.region.PortalsRegionInfo;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class MagicStickCommand_Give implements MagicStickCommands {
|
||||
|
||||
@Override
|
||||
public void execute(CommandSender sendi, String label, String[] args, AddonMagicStick addon) {
|
||||
sendi.sendMessage("magicstick give command!");
|
||||
Player p = (Player) sendi;
|
||||
p.getWorld().dropItem(p.getLocation(), addon.events.item.clone());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ public class PortalsEvents implements Listener {
|
||||
&& ploc.getBlockY() >= Math.min(loc1.getBlockY(), loc2.getBlockY())) {
|
||||
playerPortaling.put(e.getPlayer(), portal);
|
||||
BetterRTP.getInstance().getCmd().tp(e.getPlayer(), e.getPlayer(),
|
||||
e.getPlayer().getWorld().getName(), null, RTP_TYPE.ADDON, ignoreCooldown, ignoreDelay);
|
||||
e.getPlayer().getWorld().getName(), null, RTP_TYPE.ADDON_PORTAL, ignoreCooldown, ignoreDelay);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user