Auto stash before merge of "develop" and "master"

This commit is contained in:
Alex Stewart
2019-07-27 23:34:37 -07:00
parent 7494696007
commit 3af46e94da
35 changed files with 287 additions and 97 deletions
+2
View File
@@ -37,6 +37,7 @@
"Localized Commands","kittyrole",""
"Localized Commands","leaderboard",""
"Localized Commands","map",""
"Localized Commands","mod",""
"Localized Commands","perish, thenperish",""
"Localized Commands","ping",""
"Localized Commands","poll",""
@@ -294,6 +295,7 @@
"Command Enabler","kittyrole","1"
"Command Enabler","leaderboard","1"
"Command Enabler","map","1"
"Command Enabler","mod","1"
"Command Enabler","perish, thenperish","1"
"Command Enabler","ping","1"
"Command Enabler","poll","1"
1 Type Key Value
37 Localized Commands kittyrole
38 Localized Commands leaderboard
39 Localized Commands map
40 Localized Commands mod
41 Localized Commands perish, thenperish
42 Localized Commands ping
43 Localized Commands poll
295 Command Enabler kittyrole 1
296 Command Enabler leaderboard 1
297 Command Enabler map 1
298 Command Enabler mod 1
299 Command Enabler perish, thenperish 1
300 Command Enabler ping 1
301 Command Enabler poll 1
Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

@@ -25,6 +25,6 @@ public class CommandCharacterMain extends Command
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
{
framework.run(guild, channel, user, input.args).Call(res);
framework.run(guild, channel, user, input).Call(res);
}
}
@@ -4,16 +4,21 @@ import core.CharacterManager;
import core.LocStrings;
import core.SubCommand;
import core.SubCommandFormattable;
import dataStructures.*;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandCreate extends SubCommand
{
public SubCommandCreate(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String [] info = input.split(",");
String [] info = input.args.split(",");
if(info.length < 3)
{
return new SubCommandFormattable (LocStrings.stub("CharacterCreateNullInfo"));
@@ -10,26 +10,27 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandEditBio extends SubCommand
{
public SubCommandEditBio(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
try
{
Long.parseLong(input.split(" ")[0]);
Long.parseLong(input.args.split(" ")[0]);
}
catch(Exception e)
{
return new SubCommandFormattable (LocStrings.stub("CharacterEditBioNotValid"));
}
KittyCharacter character = CharacterManager.instance.searchCharacter(input.split(" ")[0]).get(0);
KittyCharacter character = CharacterManager.instance.searchCharacter(input.args.split(" ")[0]).get(0);
if(character.getOwner().equals(user))
{
CharacterManager.instance.editBio(character, input.substring(input.indexOf(' ')));
CharacterManager.instance.editBio(character, input.args.substring(input.args.indexOf(' ')));
return new SubCommandFormattable (LocStrings.stub("CharacterEditBioSuccess"));
}
else
@@ -10,26 +10,27 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandEditName extends SubCommand
{
public SubCommandEditName(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
try
{
Long.parseLong(input.split(" ")[0]);
Long.parseLong(input.args.split(" ")[0]);
}
catch(Exception e)
{
return new SubCommandFormattable (LocStrings.stub("CharacterEditNameNotValid"));
}
KittyCharacter character = CharacterManager.instance.searchCharacter(input.split(" ")[0]).get(0);
KittyCharacter character = CharacterManager.instance.searchCharacter(input.args.split(" ")[0]).get(0);
if(character.getOwner().equals(user))
{
CharacterManager.instance.editName(character, input.substring(input.indexOf(' ')));
CharacterManager.instance.editName(character, input.args.substring(input.args.indexOf(' ')));
return new SubCommandFormattable (LocStrings.stub("CharacterEditNameSuccess"));
}
else
@@ -10,26 +10,27 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandEditURL extends SubCommand
{
public SubCommandEditURL(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
try
{
Long.parseLong(input.split(" ")[0]);
Long.parseLong(input.args.split(" ")[0]);
}
catch(Exception e)
{
return new SubCommandFormattable (LocStrings.stub("CharacterEditURLNotValid"));
}
KittyCharacter character = CharacterManager.instance.searchCharacter(input.split(" ")[0]).get(0);
KittyCharacter character = CharacterManager.instance.searchCharacter(input.args.split(" ")[0]).get(0);
if(character.getOwner().equals(user))
{
CharacterManager.instance.editRefImage(character, input.substring(input.indexOf(' ')));
CharacterManager.instance.editRefImage(character, input.args.substring(input.args.indexOf(' ')));
return new SubCommandFormattable (LocStrings.stub("CharacterEditURLSuccess"));
}
else
@@ -12,15 +12,16 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandSearch extends SubCommand
{
public SubCommandSearch(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
ArrayList <KittyCharacter> characters = CharacterManager.instance.searchCharacter(input);
ArrayList <KittyCharacter> characters = CharacterManager.instance.searchCharacter(input.args);
if(characters.size() < 1)
{
return new SubCommandFormattable (LocStrings.stub("CharacterSearchNoCharacterFound"));
+49 -34
View File
@@ -20,11 +20,8 @@ public class CommandBlurry extends Command
public String getHelpText() { return LocStrings.stub("BlurryInfo"); };
private static Long num = 0l;
private static double [][] blur = {{0.0030, 0.0133, 0.0219, 0.0133, 0.0030},
{0.0133, 0.0596, 0.0983, 0.0596, 0.0133},
{0.0219, 0.0983, 0.1621, 0.0983, 0.0219},
{0.0133, 0.0596, 0.0983, 0.0596, 0.0133},
{0.0030, 0.0133, 0.0219, 0.0133, 0.0030}};
private static float [] weights = {.00390625f, .0156625f, .0234475f, .0156625f, .00390625f};
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
@@ -58,7 +55,7 @@ public class CommandBlurry extends Command
return;
}
preProcessed = new File(filename);
applySnap(ImageIO.read(preProcessed), name);
applyBlur(ImageIO.read(preProcessed), name);
}
catch (IOException e)
{
@@ -72,22 +69,18 @@ public class CommandBlurry extends Command
ImageUtils.blockingFileDelete(postProcessed);
}
private static void applySnap(BufferedImage image, String name) throws IOException
private static void applyBlur(BufferedImage image, String name) throws IOException
{
BufferedImage blurred = ImageUtils.copyImage(image);
// Iterate over each column left to right and touch up each pixel
for(int i = 0; i < 50; ++i)
for(int x = 0; x < image.getWidth(); ++x)
{
for(int x = 1; x < image.getWidth() - 1; ++x)
{
for(int y = 1; y < image.getHeight() - 1; ++y)
for(int y = 0; y < image.getHeight(); ++y)
{
blurred.setRGB(x, y, getColorAvg(image, x, y).getRGB());
}
}
image = ImageUtils.copyImage(blurred);
}
File outputfile = new File(name);
ImageIO.write(blurred, "png", outputfile);
@@ -95,28 +88,50 @@ public class CommandBlurry extends Command
private static Color getColorAvg(BufferedImage image, int x, int y)
{
Color center = new Color(image.getRGB(x, y), true);
Color one = new Color(image.getRGB(x - 1, y), true);
Color two = new Color(image.getRGB(x - 1, y - 1), true);
Color three = new Color(image.getRGB(x, y - 1), true);
Color four = new Color(image.getRGB(x + 1, y - 1), true);
Color five = new Color(image.getRGB(x + 1, y), true);
Color six = new Color(image.getRGB(x + 1, y + 1), true);
Color seven = new Color(image.getRGB(x, y + 1), true);
Color eight = new Color(image.getRGB(x -1, y + 1), true);
Color current;
float r = 0;
float g = 0;
float b = 0;
int blue = center.getBlue() + one.getBlue() + two.getBlue() + three.getBlue() + four.getBlue() + five.getBlue() + six.getBlue() + seven.getBlue() + eight.getBlue();
int red = center.getRed() + one.getRed() + two.getRed() + three.getRed() + four.getRed() + five.getRed() + six.getRed() + seven.getRed() + eight.getRed();
int green = center.getGreen() + one.getGreen() + two.getGreen() + three.getGreen() + four.getGreen() + five.getGreen() + six.getGreen() + seven.getGreen() + eight.getGreen();
int alpha = center.getAlpha() + one.getAlpha() + two.getAlpha() + three.getAlpha() + four.getAlpha() + five.getAlpha() + six.getAlpha() + seven.getAlpha() + eight.getAlpha();
blue /= 9;
red /= 9;
green /= 9;
alpha /= 9;
Color blur = new Color(red, green, blue, alpha);
return blur;
for(int xCor = -2; xCor <= 2; xCor++)
{
for(int yCor = -2; yCor <= 2; yCor++)
{
current = new Color(image.getRGB(clamp(x + xCor, 0, image.getWidth() - 1), clamp(y + yCor, 0, image.getHeight() - 1)));
r += getGaus(current.getRed(), xCor, yCor);
g += getGaus(current.getGreen(), xCor, yCor);
b += getGaus(current.getBlue(), xCor, yCor);
}
}
int red = (int)r;
int green = (int)g;
int blue = (int)b;
return new Color(red, green, blue);
}
private static int clamp(int num, int min, int max)
{
if(num >= max)
return max;
if(num < min)
return min;
return num;
}
private static float getGaus(int col, int x, int y)
{
x += 2;
y+= 2;
float result = weights[x];
if(y == 2 || y == 4)
result *= 4;
if(y==3)
result *= 6;
result *= col;
return result;
}
}
@@ -27,12 +27,9 @@ public class CommandGuildRoleMain extends Command
@Override
public String getHelpText() { return LocStrings.stub("GuildRoleInfo"); }
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
{
framework.run(guild, channel, user, input.args).Call(res);
framework.run(guild, channel, user, input).Call(res);
}
}
+3 -2
View File
@@ -7,15 +7,16 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandAdd extends SubCommand
{
public SubCommandAdd(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String role = input.split(" ")[0];
String role = input.args.split(" ")[0];
if(guild.roleList.contains(role))
{
if(guild.control.addRole(user.discordID, role))
@@ -8,15 +8,16 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandAllowed extends SubCommand
{
public SubCommandAllowed(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String [] roles = input.split(",");
String [] roles = input.args.split(",");
String role;
String formatted = "";
for(int i = 0; i < roles.length; i++)
+2 -1
View File
@@ -8,6 +8,7 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandList extends SubCommand
{
@@ -15,7 +16,7 @@ public class SubCommandList extends SubCommand
public SubCommandList(KittyRole level, KittyRating rating) { super(level, rating);}
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String roles = "";
if(guild.roleList.isEmpty())
@@ -8,16 +8,17 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandNotAllowed extends SubCommand
{
public SubCommandNotAllowed(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
input = input.toLowerCase();
String [] roles = input.split(",");
String lowerInput = input.args.toLowerCase();
String [] roles = lowerInput.split(",");
for(String role:roles)
{
if(guild.roleList.contains(role.trim()))
+2 -2
View File
@@ -10,9 +10,9 @@ public class SubCommandRemove extends SubCommand
public SubCommandRemove(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String role = input.split(" ")[0];
String role = input.args.split(" ")[0];
String formatted = "";
if(guild.roleList.contains(role))
{
+33
View File
@@ -0,0 +1,33 @@
package commands.mod;
import core.Command;
import core.LocStrings;
import core.SubCommandFramework;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.Response;
import dataStructures.UserInput;
public class CommandModMain extends Command
{
SubCommandFramework framework = new SubCommandFramework();
public CommandModMain(KittyRole level, KittyRating rating)
{
super(level, rating);
framework.addCommand("kick", new SubCommandKick(KittyRole.Admin, KittyRating.Safe));
framework.addCommand("mute", new SubCommandMute(KittyRole.Admin, KittyRating.Safe));
framework.addCommand("ban", new SubCommandBan(KittyRole.Admin, KittyRating.Safe));
}
@Override
public String getHelpText() { return LocStrings.stub("GuildRoleInfo"); }
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
{
framework.run(guild, channel, user, input).Call(res);
}
}
+21
View File
@@ -0,0 +1,21 @@
package commands.mod;
import core.SubCommand;
import core.SubCommandFormattable;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandBan extends SubCommand
{
public SubCommandBan(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
return new SubCommandFormattable(guild.control.banMember(input.mentions[0].discordID) + " ");
}
}
+25
View File
@@ -0,0 +1,25 @@
package commands.mod;
import core.SubCommand;
import core.SubCommandFormattable;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandKick extends SubCommand
{
public SubCommandKick(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
if(guild.control.kickMember(input.mentions[0].discordID))
{
return new SubCommandFormattable("Success");
}
return new SubCommandFormattable("Fail");
}
}
+21
View File
@@ -0,0 +1,21 @@
package commands.mod;
import core.SubCommand;
import core.SubCommandFormattable;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandMute extends SubCommand
{
public SubCommandMute(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
return new SubCommandFormattable("" + guild.control.muteMember(input.mentions[0].avatarID));
}
}
+1 -1
View File
@@ -29,6 +29,6 @@ public class CommandPollMain extends Command
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
{
framework.run(guild, channel, user, input.args).Call(res);
framework.run(guild, channel, user, input).Call(res);
}
}
+4 -3
View File
@@ -7,16 +7,17 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandAddOption extends SubCommand
{
public SubCommandAddOption(KittyRole roleLevel, KittyRating contentRating) {super(roleLevel, contentRating); }
public SubCommandAddOption(KittyRole roleLevel, KittyRating contentRating) {super(roleLevel, contentRating);}
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
return new SubCommandFormattable (guild.addChoiceToPoll(input));
return new SubCommandFormattable (guild.addChoiceToPoll(input.args));
}
}
+2 -1
View File
@@ -7,6 +7,7 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandEnd extends SubCommand
{
@@ -14,7 +15,7 @@ public class SubCommandEnd extends SubCommand
public SubCommandEnd(KittyRole roleLevel, KittyRating contentRating) {super(roleLevel, contentRating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
return new SubCommandFormattable (guild.endPoll());
}
+1 -1
View File
@@ -10,7 +10,7 @@ public class SubCommandResults extends SubCommand
public SubCommandResults(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String results = "";
int totalVotes = 0;
+2 -1
View File
@@ -8,6 +8,7 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandShow extends SubCommand
{
@@ -15,7 +16,7 @@ public class SubCommandShow extends SubCommand
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
if(!guild.polling)
{
+3 -2
View File
@@ -7,6 +7,7 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandStart extends SubCommand
{
@@ -14,9 +15,9 @@ public class SubCommandStart extends SubCommand
public SubCommandStart(KittyRole roleLevel, KittyRating contentRating) {super(roleLevel, contentRating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
return new SubCommandFormattable (guild.startPoll(input));
return new SubCommandFormattable (guild.startPoll(input.args));
}
}
+3 -2
View File
@@ -9,13 +9,14 @@ import dataStructures.KittyPoll;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandVote extends SubCommand
{
public SubCommandVote(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
if(guild.polling)
{
@@ -25,7 +26,7 @@ public class SubCommandVote extends SubCommand
}
try
{
int voteNum = Integer.parseInt(input.substring(input.indexOf(" ")).trim())-1;
int voteNum = Integer.parseInt(input.args.substring(input.args.indexOf(" ")).trim())-1;
if(voteNum >= guild.choices.size() || voteNum < 0)
{
return new SubCommandFormattable (String.format(LocStrings.stub("PollVoteNotValidVote"), voteNum));
+1 -1
View File
@@ -19,6 +19,6 @@ public class CommandRaffleMain extends Command
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
{
framework.run(guild, channel, user, input.args).Call(res);
framework.run(guild, channel, user, input).Call(res);
}
}
+2 -1
View File
@@ -8,13 +8,14 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandEnd extends SubCommand
{
public SubCommandEnd(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
if(guild.endRaffle())
{
+7 -2
View File
@@ -3,14 +3,19 @@ package commands.raffle;
import core.LocStrings;
import core.SubCommand;
import core.SubCommandFormattable;
import dataStructures.*;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandJoin extends SubCommand
{
public SubCommandJoin(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
if(guild.joinRaffle(user))
{
+2 -1
View File
@@ -8,13 +8,14 @@ import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandSpin extends SubCommand
{
public SubCommandSpin(KittyRole level, KittyRating rating) { super(level, rating); }
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
try
{
+8 -3
View File
@@ -3,7 +3,12 @@ package commands.raffle;
import core.LocStrings;
import core.SubCommand;
import core.SubCommandFormattable;
import dataStructures.*;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.UserInput;
public class SubCommandStart extends SubCommand
{
@@ -12,11 +17,11 @@ public class SubCommandStart extends SubCommand
public int beanCost;
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
try
{
beanCost = Integer.parseInt(input);
beanCost = Integer.parseInt(input.args);
}
catch(Exception e)
{
+2
View File
@@ -47,6 +47,7 @@ import commands.general.CommandTweet;
import commands.general.CommandWolfram;
import commands.general.CommandYeet;
import commands.guildrole.CommandGuildRoleMain;
import commands.mod.CommandModMain;
import commands.poll.CommandPollMain;
import commands.raffle.CommandRaffleMain;
import dataStructures.KittyChannel;
@@ -115,6 +116,7 @@ public class CommandManager
// Mod
this.register(LocCommands.stub("givebeans"), new CommandGiveBeans(KittyRole.Mod, KittyRating.Safe));
this.register(LocCommands.stub("rpg"), new CommandRPG(KittyRole.Mod, KittyRating.Safe));
this.register(LocCommands.stub("mod"), new CommandModMain(KittyRole.Mod, KittyRating.Safe));
// General
this.register(LocCommands.stub("fetch"), new CommandFetch(KittyRole.General, KittyRating.Safe));
+2 -2
View File
@@ -42,7 +42,7 @@ public abstract class SubCommand
// Called by the Command manager - this will run the command
// if the issuing user has the permission to do so!
protected final SubCommandFormattable Invoke(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
protected final SubCommandFormattable Invoke(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
if(!CanCall(guild, channel, user))
return null;
@@ -60,5 +60,5 @@ public abstract class SubCommand
return roleLevel;
}
public abstract SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, String input);
public abstract SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input);
}
+11 -6
View File
@@ -5,6 +5,7 @@ import java.util.HashMap;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyUser;
import dataStructures.UserInput;
import utils.GlobalLog;
public class SubCommandFramework
@@ -25,18 +26,22 @@ public class SubCommandFramework
GlobalLog.log("Registered SubCommand " + name);
}
public SubCommandFormattable run(KittyGuild guild, KittyChannel channel, KittyUser user, String input)
public SubCommandFormattable run(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
SubCommandFormattable res = null;
SubCommand res = commands.get(input.args.split(" ")[0].toLowerCase());
try
{
res = commands.get(input.split(" ")[0].toLowerCase()).Invoke(guild, channel, user, input.substring(input.indexOf(" ")));
input.args = input.args.substring(input.args.indexOf(' ')).trim();
}
catch(Exception e){}
try
{
return res.Invoke(guild, channel, user, input);
}
catch(Exception e)
{
res = commands.get(input.split(" ")[0].toLowerCase()).Invoke(guild, channel, user, "");
return new SubCommandFormattable("That's not a valid subcommand!");
}
return res;
}
}
+39
View File
@@ -39,4 +39,43 @@ public class AdminControl
}
return true;
}
public boolean kickMember(String memberID)
{
try
{
guildCon.kick(guild.getMemberById(memberID)).complete();
}
catch(Exception e)
{
return false;
}
return true;
}
public boolean muteMember(String memberID)
{
try
{
guildCon.setMute(guild.getMemberById(memberID), true);
return true;
}
catch(Exception e)
{
return false;
}
}
public boolean banMember(String memberID)
{
try
{
guildCon.ban(guild.getMemberById(memberID), 0).complete();
return true;
}
catch(Exception e)
{
return false;
}
}
}