fix: *** laziest fix i have ever done
This commit is contained in:
@@ -27,27 +27,27 @@ public class PlayersPersistentDataPlugin extends PlayersPlugin.Listener {
|
||||
|
||||
@Override
|
||||
public synchronized void playerJoined(PlayerEntry target) {
|
||||
lock.lock();
|
||||
bot.executorService.submit(() -> {
|
||||
try {
|
||||
lock.lock();
|
||||
|
||||
try {
|
||||
final JsonNode originalElement = playersObject.get(target.profile.getName());
|
||||
final JsonNode originalElement = playersObject.get(target.profile.getName());
|
||||
|
||||
ObjectNode object;
|
||||
ObjectNode object;
|
||||
|
||||
if (originalElement == null || originalElement.isNull()) {
|
||||
object = JsonNodeFactory.instance.objectNode();
|
||||
object.put("uuid", target.profile.getIdAsString());
|
||||
object.set("ips", JsonNodeFactory.instance.objectNode());
|
||||
} else if (originalElement instanceof ObjectNode) {
|
||||
object = (ObjectNode) originalElement;
|
||||
} else {
|
||||
lock.unlock();
|
||||
return;
|
||||
}
|
||||
|
||||
if (originalElement == null || originalElement.isNull()) {
|
||||
object = JsonNodeFactory.instance.objectNode();
|
||||
object.put("uuid", target.profile.getIdAsString());
|
||||
object.set("ips", JsonNodeFactory.instance.objectNode());
|
||||
} else if (originalElement instanceof ObjectNode) {
|
||||
object = (ObjectNode) originalElement;
|
||||
} else {
|
||||
lock.unlock();
|
||||
return;
|
||||
}
|
||||
|
||||
lock.unlock();
|
||||
|
||||
bot.executorService.submit(() -> {
|
||||
final CompletableFuture<String> future = bot.players.getPlayerIP(target);
|
||||
|
||||
if (future == null) {
|
||||
@@ -66,24 +66,28 @@ public class PlayersPersistentDataPlugin extends PlayersPlugin.Listener {
|
||||
|
||||
return output;
|
||||
});
|
||||
});
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// is this bad?
|
||||
private synchronized void setPersistentEntry (PlayerEntry target, ObjectNode object) {
|
||||
try {
|
||||
lock.lock();
|
||||
|
||||
playersObject.set(getName(target), object);
|
||||
|
||||
PersistentDataUtilities.put("players", playersObject);
|
||||
|
||||
lock.unlock();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
// is this bad?
|
||||
private synchronized void setPersistentEntry (PlayerEntry target, ObjectNode object) {
|
||||
lock.lock();
|
||||
|
||||
playersObject.set(getName(target), object);
|
||||
|
||||
PersistentDataUtilities.put("players", playersObject);
|
||||
|
||||
lock.unlock();
|
||||
}
|
||||
|
||||
private String getName(PlayerEntry target) {
|
||||
private String getName (PlayerEntry target) {
|
||||
return bot.options.creayun ? target.profile.getName().replaceAll("§.", "") : target.profile.getName();
|
||||
}
|
||||
|
||||
|
||||
@@ -149,7 +149,13 @@ public class PlayersPlugin extends Bot.Listener {
|
||||
list.add(target);
|
||||
|
||||
if (duplicate == null) {
|
||||
for (Listener listener : listeners) { listener.playerJoined(target); }
|
||||
for (Listener listener : listeners) {
|
||||
try {
|
||||
listener.playerJoined(target);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (Listener listener : listeners) { listener.playerUnVanished(target); }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user