mirror of
https://github.com/RonanPlugins/BetterRTP.git
synced 2026-04-12 19:06:03 +00:00
RTPMenu auto refresh
This commit is contained in:
@@ -100,7 +100,9 @@ public class AddonRTPMenu implements Addon, Listener {
|
|||||||
private void onTeleport(RTP_CommandEvent e) {
|
private void onTeleport(RTP_CommandEvent e) {
|
||||||
if (e.getCmd() instanceof CmdTeleport && e.getSendi() instanceof Player) {
|
if (e.getCmd() instanceof CmdTeleport && e.getSendi() instanceof Player) {
|
||||||
e.setCancelled(true);
|
e.setCancelled(true);
|
||||||
RTPMenu_SelectWorld.createInv(this, (Player) e.getSendi());
|
int refresh = Files.FILETYPE.CONFIG.getInt(AddonRTPMenu.name + ".AutoRefresh");
|
||||||
|
Player player = (Player) e.getSendi();
|
||||||
|
new RTPMenu_Refresh(this, player, refresh);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,52 @@
|
|||||||
|
package me.SuperRonanCraft.BetterRTPAddons.addons.rtpmenu;
|
||||||
|
|
||||||
|
import me.SuperRonanCraft.BetterRTPAddons.Main;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.event.inventory.InventoryCloseEvent;
|
||||||
|
import org.bukkit.scheduler.BukkitRunnable;
|
||||||
|
import org.bukkit.scheduler.BukkitTask;
|
||||||
|
|
||||||
|
public class RTPMenu_Refresh implements Listener {
|
||||||
|
|
||||||
|
private final AddonRTPMenu addon;
|
||||||
|
private final Player player;
|
||||||
|
private final int time;
|
||||||
|
private BukkitTask task;
|
||||||
|
private boolean opening = true;
|
||||||
|
|
||||||
|
RTPMenu_Refresh(AddonRTPMenu addon, Player player, int time) {
|
||||||
|
this.addon = addon;
|
||||||
|
this.player = player;
|
||||||
|
this.time = time;
|
||||||
|
if (time > 0) {
|
||||||
|
Bukkit.getPluginManager().registerEvents(this, Main.getInstance());
|
||||||
|
start();
|
||||||
|
} else {
|
||||||
|
RTPMenu_SelectWorld.createInv(addon, player);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void start() {
|
||||||
|
opening = true;
|
||||||
|
RTPMenu_SelectWorld.createInv(addon, player);
|
||||||
|
opening = false;
|
||||||
|
this.task = new BukkitRunnable() {
|
||||||
|
@Override public void run() {
|
||||||
|
start();
|
||||||
|
}
|
||||||
|
}.runTaskLater(Main.getInstance(), time);
|
||||||
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
void close(InventoryCloseEvent e) {
|
||||||
|
if (e.getPlayer() == player && !opening) {
|
||||||
|
task.cancel();
|
||||||
|
HandlerList.unregisterAll(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -39,9 +39,9 @@ MagicStick:
|
|||||||
Name: '&d&lMagic RTP Stick &8(Right-Click)'
|
Name: '&d&lMagic RTP Stick &8(Right-Click)'
|
||||||
Material: 'Stick'
|
Material: 'Stick'
|
||||||
Lore:
|
Lore:
|
||||||
- ''
|
- ''
|
||||||
- '&7Right click this stick and unlock'
|
- '&7Right click this stick and unlock'
|
||||||
- '&7a brand new adventure!'
|
- '&7a brand new adventure!'
|
||||||
Take: true
|
Take: true
|
||||||
|
|
||||||
#Addon Commands
|
#Addon Commands
|
||||||
@@ -64,17 +64,22 @@ Parties:
|
|||||||
#Addon RTPMenu (Enable `/rtp` world select menu)
|
#Addon RTPMenu (Enable `/rtp` world select menu)
|
||||||
RTPMenu:
|
RTPMenu:
|
||||||
Enabled: false
|
Enabled: false
|
||||||
|
AutoRefresh: 0 #0 means menu will not refresh! (in ticks)
|
||||||
Title: "Choose World"
|
Title: "Choose World"
|
||||||
WorldList:
|
WorldList:
|
||||||
- world:
|
- world:
|
||||||
Name: '&7World'
|
Name: '&7World'
|
||||||
Item: 'map'
|
Item: 'map'
|
||||||
Lore:
|
Lore:
|
||||||
- ''
|
- ''
|
||||||
- '&8Click to rtp in world!'
|
- '&8Click to rtp in world!'
|
||||||
- world_nether:
|
- ''
|
||||||
Name: '&cNether'
|
- '&7Cooldown&8: &d%betterrtp_cooldown%'
|
||||||
Item: 'netherrack'
|
- world_nether:
|
||||||
Lore:
|
Name: '&cNether'
|
||||||
- ''
|
Item: 'netherrack'
|
||||||
- '&8Click to rtp in world!'
|
Lore:
|
||||||
|
- ''
|
||||||
|
- '&8Click to rtp in world!'
|
||||||
|
- ''
|
||||||
|
- '&7Cooldown&8: &d%betterrtp_cooldown%'
|
||||||
Reference in New Issue
Block a user