Skip to content

Commit

Permalink
Worked on #30
Browse files Browse the repository at this point in the history
  • Loading branch information
bramhaag committed Jan 29, 2017
1 parent 12c3009 commit e509083
Show file tree
Hide file tree
Showing 7 changed files with 70 additions and 51 deletions.
5 changes: 5 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -52,4 +52,9 @@ processResources {
"project.name": project.name,
"project.version": version
]
}

task copyToServer(type: Copy) {
from 'build/libs/' + project.name + '-' + version + '-all.jar'
into 'C:/Users/Bram/Desktop/Spigot server/plugins'
}
4 changes: 2 additions & 2 deletions src/main/java/me/bramhaag/guilds/Main.java
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ public void onEnable() {
commandHandler.register(new CommandUpdate());
commandHandler.register(new CommandHelp());

commandHandler.register(new CommandTestLeaderboard());


if(Main.getInstance().getConfig().getBoolean("chat.enable")) {
getServer().getPluginManager().registerEvents(new ChatListener(), this);
Expand Down Expand Up @@ -216,8 +218,6 @@ public String onPlaceholderRequest(Player player, String placeholder) {
}.hook();

new EZPlaceholderHook(this, "guild-member-count") {
private LeaderboardHandler leaderboardHandler;

@Override
public String onPlaceholderRequest(Player player, String placeholder) {
return Placeholders.getGuildmemberCount(player);
Expand Down
5 changes: 2 additions & 3 deletions src/main/java/me/bramhaag/guilds/api/GuildsAPI.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import me.bramhaag.guilds.Main;
import me.bramhaag.guilds.leaderboard.Leaderboard;
import me.bramhaag.guilds.leaderboard.LeaderboardHandler;
import org.spigotmc.SneakyThrow;

import java.util.ArrayList;
Expand All @@ -15,7 +14,7 @@ public static Leaderboard createLeaderboard(String name, Leaderboard.Leaderboard
if(leaderboard == null) {
leaderboard = new Leaderboard(name, leaderboardType, sortType, new ArrayList<>());
Main.getInstance().getDatabaseProvider().createLeaderboard(leaderboard, (result, exception) -> {
if (result == null && exception != null) {
if (!result && exception != null) {
SneakyThrow.sneaky(exception);
}
});
Expand All @@ -26,7 +25,7 @@ public static Leaderboard createLeaderboard(String name, Leaderboard.Leaderboard

public static void removeLeaderboard(String name, Leaderboard.LeaderboardType leaderboardType) {
Main.getInstance().getDatabaseProvider().removeLeaderboard(Leaderboard.getLeaderboard(name, leaderboardType), (result, exception) -> {
if(result == null && exception != null) {
if(!result && exception != null) {
SneakyThrow.sneaky(exception);
}
});
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package me.bramhaag.guilds.commands;

import me.bramhaag.guilds.api.GuildsAPI;
import me.bramhaag.guilds.commands.base.CommandBase;
import me.bramhaag.guilds.leaderboard.Leaderboard;
import org.bukkit.entity.Player;

public class CommandTestLeaderboard extends CommandBase {

public CommandTestLeaderboard() {
super("test", "", "", false, null, null, -1, -1);
}

public void execute(Player player, String[] args) {
Leaderboard leaderboard1 = GuildsAPI.createLeaderboard(args[0], Leaderboard.LeaderboardType.valueOf(args[1]), Leaderboard.SortType.valueOf(args[2]));
player.sendMessage("created");

/*Leaderboard leaderboard2 = GuildsAPI.getLeaderboard(args[0], Leaderboard.LeaderboardType.valueOf(args[1]));
player.sendMessage("---1---");
player.sendMessage("Name: " + leaderboard1.getName());
player.sendMessage("Type: " + leaderboard1.getLeaderboardType().name());
player.sendMessage("Order: " + leaderboard1.getSortType().name());
player.sendMessage("---2---");
player.sendMessage("Name: " + leaderboard2.getName());
player.sendMessage("Type: " + leaderboard2.getLeaderboardType().name());
player.sendMessage("Order: " + leaderboard2.getSortType().name());*/
}
}
22 changes: 14 additions & 8 deletions src/main/java/me/bramhaag/guilds/database/databases/json/Json.java
Original file line number Diff line number Diff line change
Expand Up @@ -125,15 +125,21 @@ public void createLeaderboard(Leaderboard leaderboard, Callback<Boolean, Excepti
List<Leaderboard> leaderboards = getLeaderboards() == null ? new ArrayList<>() : getLeaderboards();
leaderboards.add(leaderboard);

//write(leaderboardsFile, leaderboards);

Main.newChain()
.asyncFirst(() -> write(leaderboardsFile, leaderboard))
.asyncFirst(() -> {
System.out.println(leaderboards.size());
return write(leaderboardsFile, leaderboards);
})
.syncLast(successful -> callback.call(successful, null))
.execute((exception, task) -> {
if(exception != null) {
callback.call(false, exception);
}
});
.execute((exception, task) -> {
if(exception != null) {
callback.call(false, exception);
}
});

//Writes 2x because of this
Main.getInstance().getLeaderboardHandler().addLeaderboard(leaderboard);
}

Expand Down Expand Up @@ -165,9 +171,9 @@ public void getLeaderboards(Callback<List<Leaderboard>, Exception> callback) {
return null;
}

return gson.fromJson(reader, Leaderboard[].class);
return gson.fromJson(reader, new TypeToken<ArrayList<Leaderboard>>(){}.getType());
})
.syncLast(leaderboards -> callback.call((List<Leaderboard>) leaderboards, null))
.syncLast(leaderboards -> callback.call((ArrayList<Leaderboard>) leaderboards, null))
.execute();
}

Expand Down
41 changes: 17 additions & 24 deletions src/main/java/me/bramhaag/guilds/leaderboard/Leaderboard.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package me.bramhaag.guilds.leaderboard;

import com.google.common.collect.Lists;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import me.bramhaag.guilds.Main;
import me.bramhaag.guilds.database.Callback;

Expand All @@ -9,8 +11,13 @@

public class Leaderboard {

@Expose
private String name;

@Expose
private LeaderboardType leaderboardType;

@Expose
private SortType sortType;

private List<Score> scores;
Expand Down Expand Up @@ -103,35 +110,21 @@ public static Leaderboard getLeaderboard(String name, LeaderboardType leaderboar
return Main.getInstance().getLeaderboardHandler().getLeaderboard(name, leaderboardType);
}

@SuppressWarnings("unused")
public enum LeaderboardType {
PLAYER(0),
GUILD(1);

private int value;
@SerializedName("PLAYER")
PLAYER,

LeaderboardType(int value) {
this.value = value;
}

public int getValue() {
return value;
}
@SerializedName("GUILD")
GUILD
}

@SuppressWarnings("unused")
public enum SortType {
ASCENDING(0),
DESCENDING(1);

private int value;

SortType(int value) {
this.value = value;
}

public int getValue() {
return value;
}

@SerializedName("ASCENDING")
ASCENDING,

@SerializedName("DESCENDING")
DESCENDING
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import me.bramhaag.guilds.IHandler;
import me.bramhaag.guilds.Main;
import org.spigotmc.SneakyThrow;

import java.util.ArrayList;
import java.util.List;
Expand Down Expand Up @@ -35,29 +34,16 @@ private void initialize() {

if (result != null) {
leaderboards = result;
Main.getInstance().getScoreboardHandler().enable();
}
});
}

public void addLeaderboard(Leaderboard leaderboard) {
leaderboards.add(leaderboard);

Main.getInstance().getDatabaseProvider().createLeaderboard(leaderboard, (result, exception) -> {
if(result == null && exception != null) {
SneakyThrow.sneaky(exception);
}
});
}

public void removeLeaderboard(Leaderboard leaderboard) {
leaderboards.remove(leaderboard);

Main.getInstance().getDatabaseProvider().removeLeaderboard(leaderboard, (result, exception) -> {
if(!result && exception != null) {
SneakyThrow.sneaky(exception);
}
});
}

public List<Leaderboard> getLeaderboards() {
Expand Down

0 comments on commit e509083

Please sign in to comment.