Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package pl.xzedster.core.commands;
- import java.util.*;
- import org.bukkit.command.*;
- import pl.xzedster.core.lang.*;
- import pl.xzedster.core.utils.*;
- public abstract class Command extends org.bukkit.command.Command
- {
- private final String name;
- private final String usage;
- private final String desc;
- private final String permission;
- public Command(final String name, final String desc, final String usage, final String permission, final String... aliases) {
- super(name, desc, usage, (List)Arrays.asList(aliases));
- this.name = name;
- this.usage = usage;
- this.desc = desc;
- this.permission = permission;
- }
- public boolean execute(final CommandSender sender, final String label, final String[] args) {
- if ((this.permission != null || this.permission != "") && !sender.hasPermission(this.permission)) {
- String msg = Lang.MSG_ERROR_DONTHAVEPERMISSION;
- msg = msg.replace("{PERM}", this.getPermission());
- return ChatUtil.sendMessage(sender, msg);
- }
- return this.onExecute(sender, args);
- }
- public abstract boolean onExecute(final CommandSender p0, final String[] p1);
- public String getName() {
- return this.name;
- }
- public String getUsage() {
- return this.usage;
- }
- public String getDesc() {
- return this.desc;
- }
- public String getPermission() {
- return this.permission;
- }
- }
- package pl.xzedster.core.commands;
- import java.util.*;
- import pl.xzedster.core.utils.*;
- import org.bukkit.command.*;
- import org.bukkit.plugin.*;
- import org.bukkit.*;
- public class CommandManager
- {
- public static final HashMap<String, Command> commands;
- private static final Reflection.FieldAccessor<SimpleCommandMap> f;
- private static CommandMap cmdMap;
- static {
- commands = new HashMap<String, Command>();
- f = Reflection.getField(SimplePluginManager.class, "commandMap", SimpleCommandMap.class);
- CommandManager.cmdMap = (CommandMap)CommandManager.f.get(Bukkit.getServer().getPluginManager());
- }
- public static void register(final Command cmd) {
- if (CommandManager.cmdMap == null) {
- CommandManager.cmdMap = (CommandMap)CommandManager.f.get(Bukkit.getServer().getPluginManager());
- }
- CommandManager.cmdMap.register(cmd.getName(), (org.bukkit.command.Command)cmd);
- CommandManager.commands.put(cmd.getName(), cmd);
- }
- }
- package pl.xzedster.core.commands;
- import org.bukkit.command.*;
- import org.bukkit.entity.*;
- import pl.xzedster.core.utils.*;
- public abstract class PlayerCommand extends Command
- {
- public PlayerCommand(final String name, final String desc, final String usage, final String permission, final String... aliases) {
- super(name, desc, usage, permission, aliases);
- }
- @Override
- public boolean onExecute(final CommandSender sender, final String[] args) {
- if (!(sender instanceof Player)) {
- return ChatUtil.sendMessage(sender, "&cTej komendy nie mozesz uzyc z poziomu konsoli!");
- }
- return this.onCommand((Player)sender, args);
- }
- public abstract boolean onCommand(final Player p0, final String[] p1);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement