forked from SteamWar/SteamWar
@@ -55,10 +55,7 @@ class Leaderboard(id: EntityID<CompositeID>) : CompositeEntity(id) {
|
|||||||
|
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun getPlayerTime(user: SteamwarUser, name: String) = useDb {
|
fun getPlayerTime(user: SteamwarUser, name: String) = useDb {
|
||||||
findById(CompositeID {
|
find { (LeaderboardTable.userId eq user.id.value) and (LeaderboardTable.name eq name) }.firstOrNull()
|
||||||
it[LeaderboardTable.userId] = user.id.value
|
|
||||||
it[LeaderboardTable.name] = name
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
@@ -75,8 +72,7 @@ class Leaderboard(id: EntityID<CompositeID>) : CompositeEntity(id) {
|
|||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun upsert(userId: Int, name: String, time: Long, bestTime: Boolean) = useDb {
|
fun upsert(userId: Int, name: String, time: Long, bestTime: Boolean) = useDb {
|
||||||
LeaderboardTable.upsert(
|
LeaderboardTable.upsert(
|
||||||
onUpdateExclude = listOf(LeaderboardTable.updatedAt, LeaderboardTable.userId, LeaderboardTable.name),
|
onUpdateExclude = listOf(LeaderboardTable.updatedAt, LeaderboardTable.userId, LeaderboardTable.name)
|
||||||
where = { (LeaderboardTable.userId eq userId) and (LeaderboardTable.name eq name) }
|
|
||||||
) {
|
) {
|
||||||
it[LeaderboardTable.userId] = userId
|
it[LeaderboardTable.userId] = userId
|
||||||
it[LeaderboardTable.name] = name
|
it[LeaderboardTable.name] = name
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ import java.util.*;
|
|||||||
@Linked
|
@Linked
|
||||||
public class JumpAndRun implements Listener {
|
public class JumpAndRun implements Listener {
|
||||||
|
|
||||||
public static final String JUMP_AND_RUN_CONFIG = "jump_and_run";
|
public static final String JUMP_AND_RUN_CONFIG = "jump_and_run@winter25";
|
||||||
|
|
||||||
private static final String BAR_EMPTY = "||||||||||||||||||||||||||||||";
|
private static final String BAR_EMPTY = "||||||||||||||||||||||||||||||";
|
||||||
|
|
||||||
|
|||||||
@@ -58,7 +58,10 @@ public class LeaderboardManager implements Listener {
|
|||||||
entities.forEach(REntity::die);
|
entities.forEach(REntity::die);
|
||||||
entities.clear();
|
entities.clear();
|
||||||
List<Leaderboard> leaderboard = getLeaderboard();
|
List<Leaderboard> leaderboard = getLeaderboard();
|
||||||
if (leaderboard.isEmpty()) return;
|
if (leaderboard.isEmpty()) {
|
||||||
|
bestTime = Long.MAX_VALUE;
|
||||||
|
return;
|
||||||
|
}
|
||||||
bestTime = leaderboard.get(0).getTime();
|
bestTime = leaderboard.get(0).getTime();
|
||||||
for (int i = 0; i < leaderboard.size(); i++) {
|
for (int i = 0; i < leaderboard.size(); i++) {
|
||||||
Leaderboard entry = leaderboard.get(i);
|
Leaderboard entry = leaderboard.get(i);
|
||||||
@@ -143,7 +146,7 @@ public class LeaderboardManager implements Listener {
|
|||||||
public long getPlayerTime(SteamwarUser user) {
|
public long getPlayerTime(SteamwarUser user) {
|
||||||
Leaderboard lb = Leaderboard.getPlayerTime(user, configKey);
|
Leaderboard lb = Leaderboard.getPlayerTime(user, configKey);
|
||||||
if(lb != null) return lb.getTime();
|
if(lb != null) return lb.getTime();
|
||||||
return 0;
|
return Long.MAX_VALUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getPlayerPlacement(SteamwarUser user) {
|
private int getPlayerPlacement(SteamwarUser user) {
|
||||||
|
|||||||
Reference in New Issue
Block a user