mirror of
https://github.com/songoda/EpicEnchants.git
synced 2025-03-11 22:31:47 +01:00
Added random book command.
This commit is contained in:
parent
df68116a03
commit
3fd1e95e65
@ -4,7 +4,7 @@ stages:
|
||||
variables:
|
||||
name: "EpicEnchants"
|
||||
path: "/builds/$CI_PROJECT_PATH"
|
||||
version: "1"
|
||||
version: "1.0.1"
|
||||
|
||||
build:
|
||||
stage: build
|
||||
|
@ -30,6 +30,7 @@ public class CommandManager implements CommandExecutor {
|
||||
addCommand(new CommandApply(commandEpicEnchants));
|
||||
addCommand(new CommandList(commandEpicEnchants));
|
||||
addCommand(new CommandGiveBook(commandEpicEnchants));
|
||||
addCommand(new CommandGiveRandomBook(commandEpicEnchants));
|
||||
addCommand(new CommandGiveItemDust(commandEpicEnchants));
|
||||
addCommand(new CommandGiveScroll(commandEpicEnchants));
|
||||
addCommand(new CommandAlchemist(commandEpicEnchants));
|
||||
|
@ -0,0 +1,78 @@
|
||||
package com.songoda.epicenchants.command.commands;
|
||||
|
||||
import com.songoda.epicenchants.EpicEnchants;
|
||||
import com.songoda.epicenchants.command.AbstractCommand;
|
||||
import com.songoda.epicenchants.objects.Group;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.OfflinePlayer;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class CommandGiveRandomBook extends AbstractCommand {
|
||||
|
||||
public CommandGiveRandomBook(AbstractCommand parent) {
|
||||
super(parent, false, "giverandombook");
|
||||
}
|
||||
|
||||
//ee giverandombook <player> <group>
|
||||
@Override
|
||||
protected ReturnType runCommand(EpicEnchants instance, CommandSender sender, String... args) {
|
||||
if (args.length < 3 || args.length > 6)
|
||||
return ReturnType.SYNTAX_ERROR;
|
||||
|
||||
OfflinePlayer target = Bukkit.getPlayer(args[1]);
|
||||
|
||||
if (target == null) {
|
||||
instance.getLocale().newMessage("&cThis player does not exist...").sendPrefixedMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
|
||||
List<Group> groups = instance.getGroupManager().getValues().stream()
|
||||
.filter(group -> group.getIdentifier().equalsIgnoreCase(args[2])).collect(Collectors.toList());
|
||||
|
||||
if (groups.isEmpty()) {
|
||||
instance.getLocale().newMessage("&cThe group you entered was no found...").sendPrefixedMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
Group group = groups.get(0);
|
||||
|
||||
target.getPlayer().getInventory().addItem(instance.getSpecialItems().getMysteryBook(group));
|
||||
instance.getLocale().getMessage("command.book.received")
|
||||
.sendPrefixedMessage(target.getPlayer());
|
||||
instance.getLocale().getMessage("command.book.gave")
|
||||
.processPlaceholder("player", target.getPlayer().getName())
|
||||
.sendPrefixedMessage(sender);
|
||||
return ReturnType.SUCCESS;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<String> onTab(EpicEnchants instance, CommandSender sender, String... args) {
|
||||
if (args.length == 2) {
|
||||
return Bukkit.getOnlinePlayers().stream().map(Player::getName).collect(Collectors.toList());
|
||||
} else if (args.length == 3) {
|
||||
return instance.getGroupManager().getValues().stream()
|
||||
.map(Group::getIdentifier).collect(Collectors.toList());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPermissionNode() {
|
||||
return "epicenchants.giverandombook";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSyntax() {
|
||||
return "/ee giverandombook <player> <group>";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDescription() {
|
||||
return "Give random enchant books to players.";
|
||||
}
|
||||
}
|
@ -8,6 +8,9 @@ command.book.gave = "&7You gave &6{player} &7an &6{enchant}&r &7book."
|
||||
command.book.maxlevel = "&cThe max level for &4{enchant}&r &cis &4{max_level}&c."
|
||||
command.book.minlevel = "&cThe min level for &4{enchant}&r &cis &41&c."
|
||||
|
||||
command.randombook.received = "&7You have been given a random book."
|
||||
command.randombook.gave = "&7You gave &6{player} &7an random &7book."
|
||||
|
||||
command.whitescroll.received = "&7You have been given a whitescroll."
|
||||
command.whitescroll.gave = "&7You gave &6{player} &7a whitescroll."
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user