Skip to content

Commit

Permalink
2.5.4 - Fixing All THE bugs
Browse files Browse the repository at this point in the history
+ added a Bot image if you use $userinfo on a bot.
* fixed a bug stopping user profiles from being created
* fixed a bug preventing admins from changing user Genders or Quotes
because they were seen as too long because of the userID
* fixed issue with Char command (API Issue, fixed via updating library)
* fixed an issue in which not all commands of a certain type were
removed.
  • Loading branch information
Vaerys-Dawn committed Mar 17, 2017
1 parent a0bb266 commit 267ca04
Show file tree
Hide file tree
Showing 23 changed files with 555 additions and 326 deletions.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

699 changes: 417 additions & 282 deletions .idea/workspace.xml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion DiscordSAIL.iml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: org.json:json:20140107" level="project" />
<orderEntry type="library" name="Maven: com.github.austinv11:Discord4j:shaded:8ce70fd" level="project" />
<orderEntry type="library" name="Maven: com.github.austinv11:Discord4j:shaded:c96db79" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.24" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.3" level="project" />
Expand Down
2 changes: 1 addition & 1 deletion dependency-reduced-pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.vaerys</groupId>
<artifactId>DiscordSAIL</artifactId>
<version>2.5.3.1</version>
<version>2.5.4</version>
<build>
<resources>
<resource>
Expand Down
6 changes: 2 additions & 4 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.github.vaerys</groupId>
<artifactId>DiscordSAIL</artifactId>
<version>2.5.3.1</version>
<version>2.5.4</version>

<build>
<resources>
Expand Down Expand Up @@ -64,7 +64,6 @@
</execution>
</executions>
</plugin>

</plugins>
</build>

Expand Down Expand Up @@ -93,7 +92,7 @@
<dependency>
<groupId>com.github.austinv11</groupId>
<artifactId>Discord4j</artifactId>
<version>8ce70fd</version>
<version>c96db79</version>
<classifier>shaded</classifier>
</dependency>
<dependency>
Expand All @@ -112,5 +111,4 @@
<version>2.8.0</version>
</dependency>
</dependencies>

</project>
43 changes: 40 additions & 3 deletions src/main/java/Commands/Characters/SelectChar.java
Original file line number Diff line number Diff line change
@@ -1,21 +1,58 @@
package Commands.Characters;

import Handlers.MessageHandler;
import Interfaces.Command;
import Commands.CommandObject;
import Main.Constants;
import Main.Utility;
import Objects.CharacterObject;
import Objects.RoleTypeObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import sx.blah.discord.handle.obj.IRole;
import sx.blah.discord.handle.obj.Permissions;

import java.util.List;

/**
* Created by Vaerys on 31/01/2017.
*/
public class SelectChar implements Command{
public class SelectChar implements Command {

private final static Logger logger = LoggerFactory.getLogger(SelectChar.class);

@Override
public String execute(String args, CommandObject command) {
return command.characters.selChar(args.split(" ")[0], command.author, command.guild, command.guildConfig);
for (CharacterObject c : command.characters.getCharacters()) {
if (c.getName().equalsIgnoreCase(args)) {
if (c.getUserID().equals(command.authorID)) {
List<IRole> userRoles = command.guild.getRolesForUser(command.author);
int roleCount = 0;
int postRoleCount = 0;
//resets User roles back to scratch.
for (int i = 0; i < userRoles.size(); i++) {
if (command.guildConfig.isRoleCosmetic(userRoles.get(i).getID())) {
userRoles.remove(i);
}
}
//loads new roles.
for (RoleTypeObject r : c.getRoles()) {
userRoles.add(command.guild.getRoleByID(r.getRoleID()));
}
Utility.roleManagement(command.author, command.guild, userRoles);
Utility.updateUserNickName(command.author, command.guild, c.getNickname());
return "> Character " + c.getNickname() + " Loaded.";
} else {
return "> " + c.getName() + " is not your character.";
}
}
}
return Constants.ERROR_CHAR_NOT_FOUND;
}

@Override
public String[] names() {
return new String[]{"Char","SelChar","SelectChar"};
return new String[]{"Char", "SelChar", "SelectChar"};
}

@Override
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/Commands/CommandInit.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,6 @@ public static ArrayList<Command> get() {
commands.add(new MaxMessages());
commands.add(new Module());
commands.add(new Mute());
commands.add(new FinalTally());
commands.add(new GetCompEntries());
commands.add(new SetAdminRole());
commands.add(new SetMutedRole());
commands.add(new SetTrustedRoles());
Expand Down Expand Up @@ -98,6 +96,8 @@ public static ArrayList<Command> get() {
commands.add(new SearchCCs());
commands.add(new TransferCC());
//Competition commands
commands.add(new FinalTally());
commands.add(new GetCompEntries());
commands.add(new EnterComp());
commands.add(new EnterVote());

Expand Down
12 changes: 9 additions & 3 deletions src/main/java/Commands/CommandObject.java
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,9 @@ private void init() {

for (int i = 0; i < guildToggles.size(); i++) {
if (!guildToggles.get(i).get(guildConfig)) {
logger.trace(guildToggles.get(i).name() + " - " + guildToggles.get(i).get(guildConfig) + "");
if (guildToggles.get(i).isModule()) {
logger.trace(guildToggles.get(i).name() + " - " + guildToggles.get(i).get(guildConfig) + "");
}
guildToggles.get(i).execute(this);
}
}
Expand Down Expand Up @@ -153,12 +155,16 @@ public void setMessage(IMessage message) {
}

public void removeCommandsByType(String type) {
ArrayList<Integer> positions = new ArrayList<>();
for (int i = 0; i < commands.size(); i++) {
if (commands.get(i).type().equalsIgnoreCase(type)) {
logger.trace(type + " - " + commands.get(i).names()[0] + " - removed");
commands.remove(i);
positions.add(i);
}
}
for (Integer i : positions){
logger.trace(type + " - " + commands.get(i).names()[0] + " - removed");
commands.remove(i);
}
for (int i = 0; i < commandTypes.size(); i++) {
if (commandTypes.get(i).equalsIgnoreCase(type)) {
commandTypes.remove(i);
Expand Down
10 changes: 7 additions & 3 deletions src/main/java/Commands/General/SetGender.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,19 @@ public String execute(String args, CommandObject command) {
}

for (UserTypeObject u : command.guildUsers.getUsers()) {
if (args.length() > 20) {
return "> Your Gender's Length is too long...\n(Must be under 20 chars)";
}

if (adminEdit) {
if (userID.getRest().length() > 20){
return "> User Gender's Length is too long...\n(Must be under 20 chars)";
}
if (u.getID().equals(user.getID())) {
u.setGender(userID.getRest());
return "> User's Gender Edited";
}
} else {
if (args.length() > 20) {
return "> Your Gender's Length is too long...\n(Must be under 20 chars)";
}
if (u.getID().equals(command.authorID)) {
u.setGender(args);
return "> Gender Edited";
Expand Down
10 changes: 7 additions & 3 deletions src/main/java/Commands/General/SetQuote.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,19 @@ public String execute(String args, CommandObject command) {
}
for (UserTypeObject u : command.guildUsers.getUsers()) {
args = Utility.removeFun(args);
if (args.length() > 140) {
return "> Your Quote is too long...\n(must be under 140 chars)";
}

if (adminEdit) {
if (userID.getRest().length() > 140){
return "> User Quote is too long...\n(must be under 140 chars)";
}
if (u.getID().equals(user.getID())) {
u.setQuote(userID.getRest());
return "> User's Quote Edited.";
}
}else {
if (args.length() > 140) {
return "> Your Quote is too long...\n(must be under 140 chars)";
}
if (u.getID().equals(command.authorID)) {
u.setQuote(args);
return "> Quote Edited.";
Expand Down
12 changes: 6 additions & 6 deletions src/main/java/Commands/General/Test.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public class Test implements Command {

@Override
public String execute(String args, CommandObject command) {
return "> Nothing to test right now come back later.";
return "test";
}

@Override
Expand All @@ -31,7 +31,7 @@ public String usage() {

@Override
public String type() {
return TYPE_GENERAL;
return TYPE_ADMIN;
}

@Override
Expand All @@ -56,21 +56,21 @@ public boolean doAdminLogging() {

@Override
public String dualDescription() {
return "This is another test.";
return null;
}

@Override
public String dualUsage() {
return "[Blep]";
return null;
}

@Override
public String dualType() {
return TYPE_ADMIN;
return null;
}

@Override
public Permissions[] dualPerms() {
return new Permissions[]{Permissions.MANAGE_CHANNELS};
return new Permissions[0];
}
}
11 changes: 10 additions & 1 deletion src/main/java/Commands/General/UserInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,13 @@ public String execute(String args, CommandObject command) {
List<IRole> roles = user.getRolesForGuild(command.guild);
ArrayList<String> roleNames = new ArrayList<>();

//If user is a bot it will display the image below as the user avatar icon.
if (user.isBot()) {
builder.withAuthorIcon("http://i.imgur.com/aRJpAP4.png");
}
//sets title to user Display Name;
builder.withTitle(user.getDisplayName(command.guild));
builder.withAuthorName(user.getDisplayName(command.guild));


//sets thumbnail to user Avatar.
builder.withThumbnail(user.getAvatarURL());
Expand Down Expand Up @@ -64,6 +69,10 @@ public String execute(String args, CommandObject command) {
return null;
}
}
if (user.isBot()){
command.guildUsers.addUser(user.getID());
return execute(args,command);
}
return "> Unfortunately that user doesn't seem to have a user info right now.";
}

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/Handlers/MessageHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public MessageHandler(String command, String args, CommandObject commandObject)

checkBlacklist(commandObject);
checkMentionCount(commandObject);
// commandObject.guildUsers.addXP(commandObject);
commandObject.guildUsers.addXP(commandObject);
if (rateLimiting(commandObject)) {
return;
}
Expand Down
3 changes: 1 addition & 2 deletions src/main/java/Main/Utility.java
Original file line number Diff line number Diff line change
Expand Up @@ -968,5 +968,4 @@ public static String formatTimestamp(ZonedDateTime time) {
content += ":" + time.getSecond();
return content;
}
}

}
19 changes: 19 additions & 0 deletions src/main/java/POGOs/Characters.java
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,16 @@ public String updateChar(CharacterObject newCharacter) {
}

public String selChar(String character, IUser author, IGuild guild, GuildConfig guildConfig) {
List<IRole> oldRoles = author.getRolesForGuild(guild);
int nonCosCount = 0;
int postCosCount = 0;
List<IRole> userRoles = author.getRolesForGuild(guild);

for (IRole role : userRoles){
if (!guildConfig.isRoleCosmetic(role.getID())){
nonCosCount++;
}
}
for (CharacterObject c : characters) {
if (c.getName().equalsIgnoreCase(character)) {
if (author.getID().equals(c.getUserID())) {
Expand All @@ -70,6 +79,16 @@ public String selChar(String character, IUser author, IGuild guild, GuildConfig
}
Utility.roleManagement(author, guild, userRoles);
Utility.updateUserNickName(author, guild, c.getNickname());

for (IRole role: author.getRolesForGuild(guild)){
if (!guildConfig.isRoleCosmetic(role.getID())){
postCosCount++;
}
}
if (postCosCount != nonCosCount){
Utility.roleManagement(author,guild,oldRoles);
return "> An error occurred trying to update your character.";
}
return "> Loaded Character.";
} else {
return "> That is not your character.";
Expand Down
15 changes: 10 additions & 5 deletions src/main/java/POGOs/GuildUsers.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,22 +29,22 @@ public ArrayList<UserTypeObject> getUsers() {
return users;
}

public void addXP(CommandObject object) {
public void addXP(CommandObject object) {
if (object.author.isBot()){
return;
}
boolean isfound = false;
boolean isFound = false;
UserTypeObject user = new UserTypeObject(object.authorID);
for (UserTypeObject u: users){
if (u.getID().equals(object.authorID)){
isfound = true;
isFound = true;
user = u;
}
}
if (!isfound) {
if (!isFound) {
users.add(user);
}
user.addXP(object.guildConfig);
// user.addXP(object.guildConfig);
}

public void addLevels(){
Expand Down Expand Up @@ -87,6 +87,11 @@ public void setProperlyInit(boolean properlyInit) {
public ArrayList<UserCountDown> getMutedUsers() {
return mutedUsers;
}

public void addUser(String id) {
UserTypeObject user = new UserTypeObject(id);
users.add(user);
}
//
//
// public ArrayList<ReminderObject> getReminders() {
Expand Down
Loading

0 comments on commit 267ca04

Please sign in to comment.