Merge branch 'hotfix/dance' into develop

This commit is contained in:
Matthew Cech
2019-09-12 22:15:34 -07:00
123 changed files with 94 additions and 17 deletions
@@ -0,0 +1,71 @@
package commands.general;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import core.Command;
import core.LocStrings;
import dataStructures.KittyChannel;
import dataStructures.KittyGuild;
import dataStructures.KittyRating;
import dataStructures.KittyRole;
import dataStructures.KittyUser;
import dataStructures.Response;
import dataStructures.UserInput;
import utils.ImageOverlayBuilder;
import utils.ImageUtils;
public class CommandDefaultDance extends Command
{
// Required constructor
public CommandDefaultDance(KittyRole level, KittyRating rating) { super(level, rating); }
private static Long num = 0l;
@Override
public String getHelpText() { return LocStrings.stub("DefaultDanceInfo"); }
// Called when the command is run!
@Override
public void onRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input, Response res)
{
String name = null;
File dancerFile = null;
File danceeFile = null;
synchronized(num)
{
name = "defaultDance_" + num + ".gif";
++num;
}
try
{
KittyUser person = null;
if(input.mentions == null)
person = user;
else
person = input.mentions[0];
String yeeteeFilename = ImageUtils.downloadFromURL(person.avatarID, ".png");
if(yeeteeFilename == null)
return;
danceeFile = new File(yeeteeFilename);
ImageOverlayBuilder builder = new ImageOverlayBuilder("assets/dance/default/", "defaultDance ", 118, 18);
builder.overlay(ImageIO.read(danceeFile), name);
}
catch (IOException e)
{
e.printStackTrace();
}
dancerFile = new File (name);
res.sendFile(dancerFile, "gif");
// Thread cleanup...
ImageUtils.blockingFileDelete(dancerFile);
ImageUtils.blockingFileDelete(danceeFile);
}
}
+4 -4
View File
@@ -22,21 +22,21 @@ public class SubCommandAdd extends SubCommand
String formatted = "";
for(int i = 0; i < roles.length; i++)
{
role = roles[i].trim();
role = roles[i].trim().toLowerCase();
if(guild.roleList.contains(role))
{
if(guild.control.addRole(user.discordID, role))
{
formatted += String.format(LocStrings.stub("GuildRoleAddSuccess"), role, user.name);
formatted += String.format(LocStrings.stub("GuildRoleAddSuccess"), role, user.name) + "\n";
}
else
{
formatted += String.format(LocStrings.stub("GuildRoleAddFailure"), role, user.name);
formatted += String.format(LocStrings.stub("GuildRoleAddFailure"), role, user.name) + "\n";
}
}
else
{
formatted += String.format(LocStrings.stub("GuildRoleAddNotAllowed"), role);
formatted += String.format(LocStrings.stub("GuildRoleAddNotAllowed"), role) + "\n";
}
}
return new SubCommandFormattable(formatted);
+1 -1
View File
@@ -29,6 +29,6 @@ public class SubCommandList extends SubCommand
roles += "\n";
roles += guild.roleList.get(i);
}
return new SubCommandFormattable(String.format(LocStrings.stub("GuildRoleListOutput"), roles));
return new SubCommandFormattable(String.format(LocStrings.stub("GuildRoleListOutput") + "\n", roles));
}
}
+15 -9
View File
@@ -12,23 +12,29 @@ public class SubCommandRemove extends SubCommand
@Override
public SubCommandFormattable OnRun(KittyGuild guild, KittyChannel channel, KittyUser user, UserInput input)
{
String role = input.args.split(" ")[0];
String [] roles = input.args.split(",");
String role;
String formatted = "";
if(guild.roleList.contains(role))
for(int i = 0; i < roles.length; i ++)
{
if(guild.control.removeRole(user.discordID, role))
role = roles[i].trim().toLowerCase();
if(guild.roleList.contains(role))
{
formatted += (String.format(LocStrings.stub("GuildRoleRemoveSuccess"), role, user.name));
if(guild.control.removeRole(user.discordID, role))
{
formatted += (String.format(LocStrings.stub("GuildRoleRemoveSuccess"), role, user.name)) + "\n";
}
else
{
formatted += (String.format(LocStrings.stub("GuildRoleRemoveFailure"), role, user.name)) + "\n";
}
}
else
{
formatted += (String.format(LocStrings.stub("GuildRoleRemoveFailure"), role, user.name));
formatted += (String.format(LocStrings.stub("GuildRoleRemoveNotAllowed"), role)) + "\n";
}
}
else
{
formatted += (String.format(LocStrings.stub("GuildRoleRemoveNotAllowed"), role));
}
return new SubCommandFormattable(formatted);
}