Get rid of shitty command class.
Yay regex!
This commit is contained in:
@@ -1,195 +0,0 @@
|
|||||||
package me.shock.playervaults;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.HashMap;
|
|
||||||
|
|
||||||
import me.shock.playervaults.util.VaultManager;
|
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
|
||||||
import org.bukkit.command.Command;
|
|
||||||
import org.bukkit.command.CommandExecutor;
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
|
|
||||||
public class Commands implements CommandExecutor
|
|
||||||
{
|
|
||||||
|
|
||||||
private Main plugin;
|
|
||||||
VaultManager vm = new VaultManager(plugin);
|
|
||||||
String pv = ChatColor.DARK_RED + "[" + ChatColor.WHITE + "PlayerVaults" +
|
|
||||||
ChatColor.DARK_RED + "]" + ChatColor.WHITE + ": ";
|
|
||||||
|
|
||||||
public HashMap<String, String> inVault = new HashMap<String, String>();
|
|
||||||
|
|
||||||
|
|
||||||
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
|
|
||||||
{
|
|
||||||
if (cmd.getName().equalsIgnoreCase("pv"))
|
|
||||||
{
|
|
||||||
if (!(sender instanceof Player))
|
|
||||||
{
|
|
||||||
sender.sendMessage("[PlayerVaults] Sorry but the console can't have a vault :(");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (args.length == 1)
|
|
||||||
{
|
|
||||||
if (args[0].matches("[1-9]"))
|
|
||||||
{
|
|
||||||
int number = Integer.parseInt(args[0]);
|
|
||||||
if ((number <= 9) && (sender.hasPermission("playervaults.amount.9")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 8) && (sender.hasPermission("playervaults.amount.8")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 7) && (sender.hasPermission("playervaults.amount.7")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 6) && (sender.hasPermission("playervaults.amount.6")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 5) && (sender.hasPermission("playervaults.amount.5")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 4) && (sender.hasPermission("playervaults.amount.4")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 3) && (sender.hasPermission("playervaults.amount.3")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number <= 2) && (sender.hasPermission("playervaults.amount.2")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ((number == 1) && (sender.hasPermission("playervaults.amount.1")))
|
|
||||||
{
|
|
||||||
vm.loadVault(sender, sender.getName(), number);
|
|
||||||
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
sender.sendMessage(pv + "You don't have permission for that many vaults!");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
showHelp(sender);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (args.length == 2)
|
|
||||||
{
|
|
||||||
if (args[0].equals("delete"))
|
|
||||||
{
|
|
||||||
if (sender.hasPermission("playervaults.delete"))
|
|
||||||
{
|
|
||||||
if (args[1].matches("[1-9]"))
|
|
||||||
{
|
|
||||||
Integer number = Integer.parseInt(args[1]);
|
|
||||||
try {
|
|
||||||
vm.deleteVault(sender, sender.getName(), number);
|
|
||||||
} catch (IOException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
sender.sendMessage(pv + "Deleted vault " + ChatColor.GREEN + args[1]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
sender.sendMessage(pv + "You don't have permission for ");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (!sender.hasPermission("playervaults.admin"))
|
|
||||||
{
|
|
||||||
sender.sendMessage(pv + "You don't have permission for ");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (args[1].matches("[1-9]"))
|
|
||||||
{
|
|
||||||
Integer number = Integer.parseInt(args[2]);
|
|
||||||
vm.loadVault(sender, args[1].toLowerCase(), number);
|
|
||||||
sender.sendMessage(pv + "Opened vault " + ChatColor.GREEN + args[1] + ChatColor.WHITE + " for " +
|
|
||||||
ChatColor.GREEN + args[0]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
sender.sendMessage(pv + "Chest number must be 1-9.");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
sender.sendMessage(pv + "We have no record of that vault.");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (args.length > 1)
|
|
||||||
{
|
|
||||||
if (args[0].equalsIgnoreCase("delete"))
|
|
||||||
{
|
|
||||||
if (sender.hasPermission("playervaults.admin"))
|
|
||||||
{
|
|
||||||
if (args[2].matches("[1-9]"))
|
|
||||||
{
|
|
||||||
Integer number = Integer.parseInt(args[2]);
|
|
||||||
try {
|
|
||||||
vm.deleteVault(sender, sender.getName(), number);
|
|
||||||
} catch (IOException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
sender.sendMessage(pv + "Deleted vault " + ChatColor.RED + args[2] + ChatColor.WHITE +
|
|
||||||
" for " + ChatColor.RED + args[1]);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
sender.sendMessage(pv + "You don't have permission for ");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
showHelp(sender);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void showHelp(CommandSender sender)
|
|
||||||
{
|
|
||||||
sender.sendMessage(pv + "/vault <number>");
|
|
||||||
sender.sendMessage(pv + "/vault delete <number>");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -2,6 +2,7 @@ package me.shock.playervaults;
|
|||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import me.shock.playervaults.commands.Feedback;
|
||||||
import me.shock.playervaults.util.VaultManager;
|
import me.shock.playervaults.util.VaultManager;
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
@@ -30,16 +31,16 @@ public class Listeners implements Listener {
|
|||||||
this.plugin = instance;
|
this.plugin = instance;
|
||||||
}
|
}
|
||||||
VaultManager vm = new VaultManager(plugin);
|
VaultManager vm = new VaultManager(plugin);
|
||||||
Commands commands = new Commands();
|
Feedback feedback = new Feedback();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onQuit(PlayerQuitEvent event) {
|
public void onQuit(PlayerQuitEvent event) {
|
||||||
if(commands.inVault.containsKey(event.getPlayer().getName())) {
|
Player player = event.getPlayer();
|
||||||
Player player = event.getPlayer();
|
if(feedback.hasKey(player.getName())) {
|
||||||
Inventory inv = player.getOpenInventory().getTopInventory();
|
Inventory inv = player.getOpenInventory().getTopInventory();
|
||||||
int number = Integer.parseInt(commands.inVault.get(player.getName()));
|
int number = feedback.getNumber(player.getName());
|
||||||
try {
|
try {
|
||||||
vm.saveVault(inv, player, number);
|
vm.saveVault(inv, player, number);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -59,10 +60,10 @@ public class Listeners implements Listener {
|
|||||||
}
|
}
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onDeath(PlayerDeathEvent event) {
|
public void onDeath(PlayerDeathEvent event) {
|
||||||
if(commands.inVault.containsKey(event.getEntity().getName())) {
|
if(feedback.hasKey(event.getEntity().getName())) {
|
||||||
Player player = event.getEntity();
|
Player player = event.getEntity();
|
||||||
Inventory inv = player.getOpenInventory().getTopInventory();
|
Inventory inv = player.getOpenInventory().getTopInventory();
|
||||||
int number = Integer.parseInt(commands.inVault.get(player.getName()));
|
int number = feedback.getNumber(player.getName());
|
||||||
try {
|
try {
|
||||||
vm.saveVault(inv, player, number);
|
vm.saveVault(inv, player, number);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -73,10 +74,10 @@ public class Listeners implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onTP(PlayerTeleportEvent event) {
|
public void onTP(PlayerTeleportEvent event) {
|
||||||
if(commands.inVault.containsKey(event.getPlayer().getName())) {
|
if(feedback.hasKey(event.getPlayer().getName())) {
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
Inventory inv = player.getOpenInventory().getTopInventory();
|
Inventory inv = player.getOpenInventory().getTopInventory();
|
||||||
int number = Integer.parseInt(commands.inVault.get(player.getName()));
|
int number = feedback.getNumber(player.getName());
|
||||||
try {
|
try {
|
||||||
vm.saveVault(inv, player, number);
|
vm.saveVault(inv, player, number);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -87,10 +88,10 @@ public class Listeners implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onWorldChange(PlayerChangedWorldEvent event) {
|
public void onWorldChange(PlayerChangedWorldEvent event) {
|
||||||
if(commands.inVault.containsKey(event.getPlayer().getName())) {
|
if(feedback.hasKey(event.getPlayer().getName())) {
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
Inventory inv = player.getOpenInventory().getTopInventory();
|
Inventory inv = player.getOpenInventory().getTopInventory();
|
||||||
int number = Integer.parseInt(commands.inVault.get(player.getName()));
|
int number = feedback.getNumber(player.getName());
|
||||||
try {
|
try {
|
||||||
vm.saveVault(inv, player, number);
|
vm.saveVault(inv, player, number);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -101,12 +102,13 @@ public class Listeners implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onClose(InventoryCloseEvent event) {
|
public void onClose(InventoryCloseEvent event) {
|
||||||
if(commands.inVault.containsKey(event.getPlayer().getName())) {
|
if(feedback.hasKey(event.getPlayer().getName())) {
|
||||||
HumanEntity he = event.getPlayer();
|
HumanEntity he = event.getPlayer();
|
||||||
if(he instanceof Player) {
|
if(he instanceof Player) {
|
||||||
Player player = (Player) he;
|
Player player = (Player) he;
|
||||||
Inventory inv = player.getOpenInventory().getTopInventory();
|
Inventory inv = player.getOpenInventory().getTopInventory();
|
||||||
int number = Integer.parseInt(commands.inVault.get(player.getName()));
|
System.out.println("listener inv: " + inv);
|
||||||
|
int number = feedback.getNumber(player.getName());
|
||||||
try {
|
try {
|
||||||
vm.saveVault(inv, player, number);
|
vm.saveVault(inv, player, number);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -125,7 +127,7 @@ public class Listeners implements Listener {
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onInteract(PlayerInteractEvent event) {
|
public void onInteract(PlayerInteractEvent event) {
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
if(commands.inVault.containsKey(player.getName()) && event.getAction() == Action.RIGHT_CLICK_BLOCK) {
|
if(feedback.hasKey(player.getName()) && event.getAction() == Action.RIGHT_CLICK_BLOCK) {
|
||||||
Block block = event.getClickedBlock();
|
Block block = event.getClickedBlock();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -152,7 +154,7 @@ public class Listeners implements Listener {
|
|||||||
public void onInteractEntity(PlayerInteractEntityEvent event) {
|
public void onInteractEntity(PlayerInteractEntityEvent event) {
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
EntityType type = event.getRightClicked().getType();
|
EntityType type = event.getRightClicked().getType();
|
||||||
if((type == EntityType.VILLAGER||type==EntityType.MINECART) && commands.inVault.containsKey(player.getName())) {
|
if((type == EntityType.VILLAGER||type==EntityType.MINECART) && feedback.hasKey(player.getName())) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,11 +5,11 @@ import java.io.File;
|
|||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import me.shock.playervaults.Listeners;
|
import me.shock.playervaults.Listeners;
|
||||||
|
import me.shock.playervaults.commands.Commands;
|
||||||
import me.shock.playervaults.util.Metrics;
|
import me.shock.playervaults.util.Metrics;
|
||||||
import me.shock.playervaults.util.Updater;
|
import me.shock.playervaults.util.Updater;
|
||||||
|
|
||||||
@@ -64,29 +64,7 @@ public class Main extends JavaPlugin {
|
|||||||
*/
|
*/
|
||||||
File config = new File(getDataFolder() + File.separator + "config.yml");
|
File config = new File(getDataFolder() + File.separator + "config.yml");
|
||||||
if(!config.exists()) {
|
if(!config.exists()) {
|
||||||
try{
|
saveDefaultConfig();
|
||||||
getDataFolder().mkdir();
|
|
||||||
config.createNewFile();
|
|
||||||
} catch (IOException e) {
|
|
||||||
Log.error("[PlayerVaults] Couldn't create config");
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Write the config file here.
|
|
||||||
* New, genius way to write it :)
|
|
||||||
*/
|
|
||||||
try {
|
|
||||||
FileOutputStream fos = new FileOutputStream(new File(getDataFolder() + File.separator + "config.yml"));
|
|
||||||
InputStream is = getResource("config.yml");
|
|
||||||
byte[] linebuffer = new byte[4096];
|
|
||||||
int lineLength = 0;
|
|
||||||
while((lineLength = is.read(linebuffer)) > 0)
|
|
||||||
{
|
|
||||||
fos.write(linebuffer, 0, lineLength);
|
|
||||||
}
|
|
||||||
fos.close();
|
|
||||||
} catch (IOException e) {
|
|
||||||
Log.error("[PlayerVaults] Couldn't write config: " + e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -206,11 +184,6 @@ public class Main extends JavaPlugin {
|
|||||||
return lang().getString("delete-other-vault");
|
return lang().getString("delete-other-vault");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public HashMap<?, ?> inVault() {
|
|
||||||
return commands.inVault;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Logger getLog() {
|
public Logger getLog() {
|
||||||
return getServer().getLogger();
|
return getServer().getLogger();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
package me.shock.playervaults.commands;
|
||||||
|
|
||||||
|
import me.shock.playervaults.Main;
|
||||||
|
import me.shock.playervaults.util.VaultManager;
|
||||||
|
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
|
import org.bukkit.command.CommandExecutor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
public class Commands implements CommandExecutor
|
||||||
|
{
|
||||||
|
|
||||||
|
private Main plugin;
|
||||||
|
VaultManager vm = new VaultManager(plugin);
|
||||||
|
OwnVault ownvault = new OwnVault();
|
||||||
|
String pv = ChatColor.DARK_RED + "[" + ChatColor.WHITE + "PlayerVaults" +
|
||||||
|
ChatColor.DARK_RED + "]" + ChatColor.WHITE + ": ";
|
||||||
|
|
||||||
|
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args)
|
||||||
|
{
|
||||||
|
if(cmd.getName().equalsIgnoreCase("pv")) {
|
||||||
|
int length = args.length;
|
||||||
|
if(length == 1) {
|
||||||
|
if(checkConsole(sender)) {
|
||||||
|
ownvault.openOwnVault(sender, args[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean checkConsole(CommandSender sender) {
|
||||||
|
if(!(sender instanceof Player)) {
|
||||||
|
sender.sendMessage(pv + "Sorry but that can only be run by a player!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
package me.shock.playervaults.commands;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
public class Feedback {
|
||||||
|
|
||||||
|
public HashMap<String, Integer> inVault = new HashMap<String, Integer>();
|
||||||
|
|
||||||
|
String pv = ChatColor.DARK_RED + "[" + ChatColor.WHITE + "PlayerVaults" +
|
||||||
|
ChatColor.DARK_RED + "]" + ChatColor.WHITE + ": ";
|
||||||
|
|
||||||
|
public void noPerms(CommandSender sender) {
|
||||||
|
sender.sendMessage(pv + "You don't have permission for that!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void showHelp(CommandSender sender) {
|
||||||
|
sender.sendMessage(pv + "/vault <number>");
|
||||||
|
sender.sendMessage(pv + "/vault delete <number>");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void putInHash(String name, int number) {
|
||||||
|
inVault.put(name, number);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getNumber(String name) {
|
||||||
|
int number = inVault.get(name);
|
||||||
|
return number;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean hasKey(String name) {
|
||||||
|
if(inVault.containsKey(name))
|
||||||
|
return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
package me.shock.playervaults.commands;
|
||||||
|
|
||||||
|
import me.shock.playervaults.Main;
|
||||||
|
import me.shock.playervaults.util.VaultManager;
|
||||||
|
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
|
public class OwnVault {
|
||||||
|
|
||||||
|
private Main main;
|
||||||
|
VaultManager vm = new VaultManager(main);
|
||||||
|
Feedback feedback = new Feedback();
|
||||||
|
|
||||||
|
String pv = ChatColor.DARK_RED + "[" + ChatColor.WHITE + "PlayerVaults" +
|
||||||
|
ChatColor.DARK_RED + "]" + ChatColor.WHITE + ": ";
|
||||||
|
|
||||||
|
public boolean openOwnVault(CommandSender sender, String arg0) {
|
||||||
|
System.out.println("Passed to ownvault class.");
|
||||||
|
if(arg0.matches("^[0-9]{1,2}$")) {
|
||||||
|
System.out.println("yay regex!");
|
||||||
|
if(sender.hasPermission("playervaults.amount." + arg0)) {
|
||||||
|
int number = Integer.parseInt(arg0);
|
||||||
|
vm.loadVault(sender, sender.getName(), number);
|
||||||
|
feedback.putInHash(sender.getName(), number);
|
||||||
|
sender.sendMessage(pv + "Opening vault " + ChatColor.GREEN + number);
|
||||||
|
} else {
|
||||||
|
feedback.noPerms(sender);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -42,8 +42,6 @@ public class Serialization {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static Inventory fromBase64(String data) {
|
public static Inventory fromBase64(String data) {
|
||||||
if(data.isEmpty())
|
|
||||||
return null;
|
|
||||||
ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
|
ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
|
||||||
NBTTagList itemList = (NBTTagList) NBTBase.b(new DataInputStream(inputStream));
|
NBTTagList itemList = (NBTTagList) NBTBase.b(new DataInputStream(inputStream));
|
||||||
Inventory inventory = new CraftInventoryCustom(null, itemList.size());
|
Inventory inventory = new CraftInventoryCustom(null, itemList.size());
|
||||||
|
|||||||
@@ -5,7 +5,9 @@ import java.io.IOException;
|
|||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
|
|
||||||
import me.shock.playervaults.Main;
|
import me.shock.playervaults.Main;
|
||||||
|
import me.shock.playervaults.commands.Feedback;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.configuration.ConfigurationSection;
|
import org.bukkit.configuration.ConfigurationSection;
|
||||||
@@ -20,6 +22,7 @@ public class VaultManager {
|
|||||||
public VaultManager(Main instance) {
|
public VaultManager(Main instance) {
|
||||||
this.plugin = instance;
|
this.plugin = instance;
|
||||||
}
|
}
|
||||||
|
Feedback feedback = new Feedback();
|
||||||
String title;
|
String title;
|
||||||
private static String directory = "plugins" + File.separator + "PlayerVaults" + File.separator + "vaults";
|
private static String directory = "plugins" + File.separator + "PlayerVaults" + File.separator + "vaults";
|
||||||
|
|
||||||
@@ -31,11 +34,12 @@ public class VaultManager {
|
|||||||
* @throws IOException
|
* @throws IOException
|
||||||
*/
|
*/
|
||||||
public void saveVault(Inventory inv, Player player, int number) throws IOException {
|
public void saveVault(Inventory inv, Player player, int number) throws IOException {
|
||||||
if(plugin.inVault().containsKey(player.getName())) {
|
if(feedback.hasKey(player.getName())) {
|
||||||
|
System.out.println("savevault");
|
||||||
// Get the player's file and serialize the inventory.
|
// Get the player's file and serialize the inventory.
|
||||||
String ser = Serialization.toBase64(inv);
|
String ser = Serialization.toBase64(inv);
|
||||||
YamlConfiguration file = playerVaultFile(player.getName());
|
YamlConfiguration file = playerVaultFile(player.getName());
|
||||||
|
System.out.println("" + inv);
|
||||||
// Prepare to save D:
|
// Prepare to save D:
|
||||||
file.set("vault" + number + "", ser);
|
file.set("vault" + number + "", ser);
|
||||||
if(plugin.debugMode()) {
|
if(plugin.debugMode()) {
|
||||||
@@ -53,9 +57,14 @@ public class VaultManager {
|
|||||||
public void loadVault(CommandSender sender, String target, int number) {
|
public void loadVault(CommandSender sender, String target, int number) {
|
||||||
YamlConfiguration playerFile = playerVaultFile(target);
|
YamlConfiguration playerFile = playerVaultFile(target);
|
||||||
String data = playerFile.getString("vault" + "" + number + "");
|
String data = playerFile.getString("vault" + "" + number + "");
|
||||||
Inventory inv = Serialization.fromBase64(data);
|
|
||||||
Player player = (Player) sender;
|
Player player = (Player) sender;
|
||||||
player.openInventory(inv);
|
if(data == null) {
|
||||||
|
Inventory inv = Bukkit.createInventory(player, 54);
|
||||||
|
player.openInventory(inv);
|
||||||
|
} else {
|
||||||
|
Inventory inv = Serialization.fromBase64(data);
|
||||||
|
player.openInventory(inv);
|
||||||
|
}
|
||||||
player.sendMessage(title + " Opening " + ChatColor.GREEN + " " + number);
|
player.sendMessage(title + " Opening " + ChatColor.GREEN + " " + number);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user