mirror of
https://github.com/Zrips/Jobs.git
synced 2024-12-01 15:03:36 +01:00
Merge pull request #1598 from Momshroom/master
Add confirmation to jobs skipquest and fixed it not being possible to…
This commit is contained in:
commit
8f1402ff72
@ -2,6 +2,7 @@ package com.gamingmesh.jobs.commands.list;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.gamingmesh.jobs.stuff.Util;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
@ -24,8 +25,8 @@ public class skipquest implements Cmd {
|
|||||||
LC.info_FeatureNotEnabled.sendMessage(sender);
|
LC.info_FeatureNotEnabled.sendMessage(sender);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
// Needs to allow longer so multiword quest names work
|
||||||
if (args.length != 2 && args.length != 3) {
|
if (args.length < 2) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -106,6 +107,23 @@ public class skipquest implements Cmd {
|
|||||||
|
|
||||||
econ.getEconomy().withdrawPlayer(player, amount);
|
econ.getEconomy().withdrawPlayer(player, amount);
|
||||||
}
|
}
|
||||||
|
// Add confirmation if configured
|
||||||
|
if (Jobs.getGCManager().EnableConfirmation) {
|
||||||
|
java.util.UUID uuid = jPlayer.getUniqueId();
|
||||||
|
|
||||||
|
if (!Util.SKIPCONFIRM.contains(uuid)) {
|
||||||
|
Util.SKIPCONFIRM.add(uuid);
|
||||||
|
|
||||||
|
plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.SKIPCONFIRM.remove(uuid),
|
||||||
|
20 * Jobs.getGCManager().ConfirmExpiryTime);
|
||||||
|
|
||||||
|
Language.sendMessage(sender, "command.skipquest.confirmationNeed", "[questName]",
|
||||||
|
job.getDisplayName(), "[time]", Jobs.getGCManager().ConfirmExpiryTime);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Util.SKIPCONFIRM.remove(uuid);
|
||||||
|
}
|
||||||
|
|
||||||
jPlayer.replaceQuest(old);
|
jPlayer.replaceQuest(old);
|
||||||
|
|
||||||
|
@ -482,6 +482,7 @@ public class LanguageManager {
|
|||||||
c.get("command.skipquest.help.info", "Skip defined quest and get new one");
|
c.get("command.skipquest.help.info", "Skip defined quest and get new one");
|
||||||
c.get("command.skipquest.help.args", "[jobname] [questname] (playerName)");
|
c.get("command.skipquest.help.args", "[jobname] [questname] (playerName)");
|
||||||
c.get("command.skipquest.output.questSkipForCost", "&2You skipped the quest and paid:&e %amount%$");
|
c.get("command.skipquest.output.questSkipForCost", "&2You skipped the quest and paid:&e %amount%$");
|
||||||
|
c.get("command.skipquest.confirmationNeed", "&cAre you sure you want to skip&e [questName]&c quest? Type the command again within&6 [time] seconds &cto confirm!");
|
||||||
Jobs.getGCManager().getCommandArgs().put("skipquest", Arrays.asList("[jobname]", "[questname]", "[playername]"));
|
Jobs.getGCManager().getCommandArgs().put("skipquest", Arrays.asList("[jobname]", "[questname]", "[playername]"));
|
||||||
|
|
||||||
c.get("command.quests.help.info", "List available quests");
|
c.get("command.quests.help.info", "List available quests");
|
||||||
|
@ -50,6 +50,9 @@ public final class Util {
|
|||||||
|
|
||||||
public static final List<UUID> LEAVECONFIRM = new ArrayList<>();
|
public static final List<UUID> LEAVECONFIRM = new ArrayList<>();
|
||||||
|
|
||||||
|
// for confirmation of skipping quest
|
||||||
|
public static final List<UUID> SKIPCONFIRM = new ArrayList<>();
|
||||||
|
|
||||||
public static List<Block> getPistonRetractBlocks(BlockPistonRetractEvent event) {
|
public static List<Block> getPistonRetractBlocks(BlockPistonRetractEvent event) {
|
||||||
if (Version.isCurrentEqualOrHigher(Version.v1_8_R1)) {
|
if (Version.isCurrentEqualOrHigher(Version.v1_8_R1)) {
|
||||||
return new ArrayList<>(event.getBlocks());
|
return new ArrayList<>(event.getBlocks());
|
||||||
|
@ -470,6 +470,7 @@ command:
|
|||||||
args: '[jobname] [questname] (playerName)'
|
args: '[jobname] [questname] (playerName)'
|
||||||
output:
|
output:
|
||||||
questSkipForCost: '&2You skipped the quest and paid:&e %amount%$'
|
questSkipForCost: '&2You skipped the quest and paid:&e %amount%$'
|
||||||
|
confirmationNeed: '&cAre you sure you want to skip&e [questName]&c quest? Type the command again within&6 [time] seconds &cto confirm!'
|
||||||
quests:
|
quests:
|
||||||
help:
|
help:
|
||||||
info: List available quests
|
info: List available quests
|
||||||
|
Loading…
Reference in New Issue
Block a user