Added missing files from last commit

pull/2/head
Joey Hines 2019-12-24 17:12:09 -06:00
parent d834c95b00
commit 4804ca5ad4
10 changed files with 211 additions and 25 deletions

View File

@ -137,14 +137,6 @@
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins> </plugins>
</build> </build>
</project> </project>

View File

@ -0,0 +1,98 @@
package com.zerohighdef.geoffrey.Commands;
import com.google.gson.JsonElement;
import com.zerohighdef.geoffrey.GeoffreyMC;
import com.zerohighdef.geoffrey.Models.GeoffreyItemListing;
import com.zerohighdef.geoffrey.Models.GeoffreyLocation;
import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback;
import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError;
import org.apache.commons.lang.NumberUtils;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
public class AddItemCommand extends GeoffreyCommand{
public AddItemCommand(GeoffreyMC plugin) {
super(plugin);
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if ((sender instanceof Player)) {
Map<String, String> params = new HashMap<String, String>();
if (args.length > 3) {
String name[] = Arrays.copyOfRange(args, 3, args.length-1);
params.put("shop_name", StringUtils.join(name, " "));
}
else if (args.length < 3) {
sender.sendMessage(ChatColor.RED + "Too few parameters given.");
return false;
}
Player player = ((Player) sender).getPlayer();
String quantity = args[1];
String diamondPrice = args[2];
try {
Integer.parseInt(quantity);
}
catch (NumberFormatException e) {
sender.sendMessage(ChatColor.RED + "Quantity must be an integer value!");
return false;
}
try {
Integer.parseInt(diamondPrice);
}
catch (NumberFormatException e) {
sender.sendMessage(ChatColor.RED + "Price must be an integer value!");
return false;
}
params.put("mc_uuid", player.getUniqueId().toString().replace("-", ""));
params.put("item_name", args[0]);
params.put("quantity", quantity);
params.put("diamond_price", diamondPrice);
RunCommand("add_item", params, Method.POST , new CommandCallback(sender));
}
else {
sender.sendMessage(ChatColor.RED + "Console can not add items!");
}
return true;
}
private class CommandCallback extends GeoffreyAPICallback {
CommandCallback(CommandSender sender) {
super(sender);
errors.put("LocationLookUpError", "You do not have a shop by that name, goober.");
errors.put("EntryNameNotUniqueError", "You have more than one location. Please specify a name, dingus.");
}
@Override
public void invoke(String s) {
try {
JsonElement json = parseJSON(s);
GeoffreyItemListing itemListing = new GeoffreyItemListing(json.getAsJsonObject());
String msg = ChatColor.GREEN + itemListing.getItemName() + " has been added to your shop.";
commandSender.sendMessage(msg);
}
catch (GeoffreyCommandError e) {
return;
}
}
}
}

View File

@ -5,6 +5,7 @@ import com.zerohighdef.geoffrey.GeoffreyMC;
import com.zerohighdef.geoffrey.Models.GeoffreyLocation; import com.zerohighdef.geoffrey.Models.GeoffreyLocation;
import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback; import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback;
import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError; import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
@ -28,7 +29,7 @@ public class AddLocationCommand extends GeoffreyCommand{
Map<String, String> params = new HashMap<String, String>(); Map<String, String> params = new HashMap<String, String>();
if (args.length > 0) { if (args.length > 0) {
params.put("name", String.join(" ", args)); params.put("name", StringUtils.join(args, " "));
} }
Player player = ((Player) sender).getPlayer(); Player player = ((Player) sender).getPlayer();

View File

@ -0,0 +1,74 @@
package com.zerohighdef.geoffrey.Commands;
import com.google.gson.JsonElement;
import com.zerohighdef.geoffrey.GeoffreyMC;
import com.zerohighdef.geoffrey.Models.GeoffreyPlayer;
import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback;
import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
public class AddResidentCommand extends GeoffreyCommand {
public AddResidentCommand(GeoffreyMC plugin) {
super(plugin);
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if ((sender instanceof Player)) {
Map<String, String> params = new HashMap<String, String>();
if (args.length > 1) {
String name[] = Arrays.copyOfRange(args, 1, args.length);
params.put("town_name", StringUtils.join(name, " "));
Player player = ((Player) sender).getPlayer();
params.put("mc_uuid", player.getUniqueId().toString().replace("-", ""));
params.put("new_resident_name", args[0]);
RunCommand("add_resident", params, Method.POST , new CommandCallback(sender, args[0]));
}
else if (args.length < 2) {
sender.sendMessage(ChatColor.RED + "Too few parameters given.");
return false;
}
}
else {
sender.sendMessage(ChatColor.RED + "Console can not add residents!");
}
return true;
}
private class CommandCallback extends GeoffreyAPICallback {
CommandCallback(CommandSender sender, String new_resident_name) {
super(sender);
errors.put("ResidentNotFoundError", "Ain't no one in this darn database named" + new_resident_name + "you goob");
errors.put("IsResidentError", new_resident_name + " is already a resident, stop having amosia.");
errors.put("LocationLookUpError", "You do not have a town by that name you ding dong goober.");
}
@Override
public void invoke(String s) {
try {
JsonElement json = parseJSON(s);
GeoffreyPlayer player = new GeoffreyPlayer(json.getAsJsonObject());
String msg = ChatColor.GREEN + player.getUsername() + "has been added to your town";
commandSender.sendMessage(msg);
}
catch (GeoffreyCommandError e) {
return;
}
}
}
}

View File

@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
import com.zerohighdef.geoffrey.GeoffreyMC; import com.zerohighdef.geoffrey.GeoffreyMC;
import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback; import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback;
import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError; import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
@ -21,7 +22,7 @@ public class FindCommand extends GeoffreyCommand {
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if (args.length > 0) { if (args.length > 0) {
String locationName = String.join(" ", args); String locationName = StringUtils.join(args, " ");
Map<String, String> params = new HashMap<String, String>(); Map<String, String> params = new HashMap<String, String>();
params.put("search", locationName); params.put("search", locationName);

View File

@ -27,7 +27,6 @@ public class RegisterCommand extends GeoffreyCommand{
Player player = ((Player) sender).getPlayer(); Player player = ((Player) sender).getPlayer();
params.put("player_name", player.getName()); params.put("player_name", player.getName());
params.put("discord_uuid", "");
RunCommand("register", params, Method.POST , new CommandCallback(sender)); RunCommand("register", params, Method.POST , new CommandCallback(sender));
} }

View File

@ -5,6 +5,7 @@ import com.google.gson.JsonElement;
import com.zerohighdef.geoffrey.GeoffreyMC; import com.zerohighdef.geoffrey.GeoffreyMC;
import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback; import com.zerohighdef.geoffrey.Objects.GeoffreyAPICallback;
import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError; import com.zerohighdef.geoffrey.Objects.GeoffreyCommandError;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
@ -22,7 +23,7 @@ public class SellingCommand extends GeoffreyCommand {
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if (args.length > 0) { if (args.length > 0) {
String item = String.join(" ", args); String item = StringUtils.join(args, " ");
String commandName; String commandName;
if (command.getName().contains("price")) { if (command.getName().contains("price")) {

View File

@ -1,9 +1,6 @@
package com.zerohighdef.geoffrey; package com.zerohighdef.geoffrey;
import com.zerohighdef.geoffrey.Commands.AddLocationCommand; import com.zerohighdef.geoffrey.Commands.*;
import com.zerohighdef.geoffrey.Commands.FindCommand;
import com.zerohighdef.geoffrey.Commands.RegisterCommand;
import com.zerohighdef.geoffrey.Commands.SellingCommand;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
@ -41,6 +38,12 @@ public final class GeoffreyMC extends JavaPlugin {
RegisterCommand registerCommand = new RegisterCommand(this); RegisterCommand registerCommand = new RegisterCommand(this);
this.getCommand("geoffrey_register").setExecutor(registerCommand); this.getCommand("geoffrey_register").setExecutor(registerCommand);
AddItemCommand addItemCommand = new AddItemCommand(this);
this.getCommand("geoffrey_add_item").setExecutor(addItemCommand);
AddResidentCommand addResidentCommand = new AddResidentCommand(this);
this.getCommand("geoffrey_add_resident").setExecutor(addResidentCommand);
} }
} }

View File

@ -12,11 +12,12 @@ import org.bukkit.command.CommandSender;
import xyz.etztech.core.web.ICallback; import xyz.etztech.core.web.ICallback;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.logging.Logger;
public abstract class GeoffreyAPICallback implements ICallback { public abstract class GeoffreyAPICallback implements ICallback {
protected CommandSender commandSender; protected CommandSender commandSender;
protected HashMap<String, String> errors = new HashMap<>(); protected HashMap<String, String> errors = new HashMap<>();
private Logger log = Logger.getLogger( "Minecraft" );
public GeoffreyAPICallback(CommandSender commandSender) { public GeoffreyAPICallback(CommandSender commandSender) {
@ -40,6 +41,9 @@ public abstract class GeoffreyAPICallback implements ICallback {
if (errors.containsKey(error)) { if (errors.containsKey(error)) {
errorMessage = errors.get(error); errorMessage = errors.get(error);
} }
else {
log.info("[Geoffrey] " + object.get("error").getAsString() + " " + object.get("error_message").getAsString());
}
commandSender.sendMessage(ChatColor.RED + errorMessage); commandSender.sendMessage(ChatColor.RED + errorMessage);
throw new GeoffreyCommandError(); throw new GeoffreyCommandError();

View File

@ -7,52 +7,65 @@ commands:
geoffrey_find: geoffrey_find:
description: Finds a location in Geoffrey description: Finds a location in Geoffrey
aliases: [find, find_location] aliases: [find, find_location]
usage: /find [location name]
geoffrey_selling: geoffrey_selling:
description: Finds an item for sale in Geoffrey description: Finds an item for sale in Geoffrey
aliases: [selling] aliases: [selling]
usage: /selling [item name]
geoffrey_selling_price: geoffrey_selling_price:
description: Finds an item for sale in Geoffrey, sorted by price description: Finds an item for sale in Geoffrey, sorted by price
aliases: [selling_price] aliases: [selling_price]
usage: /selling_price [item name]
geoffrey_add_base: geoffrey_add_base:
description: Adds a base to Geoffrey description: Adds a base to Geoffrey
aliases: [add_base] aliases: [add_base]
permission: geoffrey.add permission: geoffrey.add
usage: Adds a base at your current location to Geoffrey usage: /add_base [base name]
geoffrey_add_shop: geoffrey_add_shop:
description: Adds a shop to Geoffrey description: Adds a shop to Geoffrey
aliases: [add_shop] aliases: [add_shop]
permission: geoffrey.add permission: geoffrey.add
usage: Adds a shop at your current location to Geoffrey usage: /add_shop [shop name]
geoffrey_add_farm: geoffrey_add_farm:
description: Adds a public farm to Geoffrey description: Adds a public farm to Geoffrey
aliases: [add_farm] aliases: [add_farm]
permission: geoffrey.add permission: geoffrey.add
usage: Adds a farm at your current location to Geoffrey usage: /add_farm [farm name]
geoffrey_add_attraction: geoffrey_add_attraction:
description: Adds an attraction to Geoffrey description: Adds an attraction to Geoffrey
aliases: [add_attraction] aliases: [add_attraction]
permission: geoffrey.add permission: geoffrey.add
usage: Adds an attraction at your current location to Geoffrey usage: /add_attraction [attraction name]
geoffrey_add_town: geoffrey_add_town:
description: Adds a town to Geoffrey description: Adds a town to Geoffrey
aliases: [add_town] aliases: [add_town]
permission: geoffrey.add permission: geoffrey.add
usage: Adds a town at your current location to Geoffrey usage: /add_town [town name]
geoffrey_add_market: geoffrey_add_market:
description: Adds a market to Geoffrey description: Adds a market to Geoffrey
aliases: [add_market] aliases: [add_market]
permission: geoffrey.add permission: geoffrey.add
usage: Adds a market at your current location to Geoffrey usage: /add_market [market name]
geoffrey_register: geoffrey_register:
description: Registers a player for Geoffrey description: Registers a player for Geoffrey
aliases: [register] aliases: [register]
permission: geoffrey.register permission: geoffrey.register
usage: Registers you in Geoffrey usage: /register
geoffrey_add_item:
description: Adds an item to a shop in Geoffrey
aliases: [add_item]
permission: geoffrey.add
usage: /add_item [item name] [amount per price] [price] [shop name]
geoffrey_add_resident:
description: Adds a resident to a tow
aliases: [add_resident]
permission: geoffrey.add
usage: /add_resident [resident Name] [town name]
permissions: permissions:
add: add:
description: Permission to add things to Geoffrey description: Permission to add things to Geoffrey
default: false default: false
register: register:
description: Permission to register in Geoffrey description: Permission to register for Geoffrey
default: false default: false