Skip to content
This repository was archived by the owner on Jan 30, 2025. It is now read-only.

Commit 08b185c

Browse files
committed
Add missing completion % for Architect Vaults
1 parent c699d36 commit 08b185c

File tree

2 files changed

+40
-19
lines changed

2 files changed

+40
-19
lines changed

src/main/java/lv/id/bonne/vhdiscord/parser/VaultItemsHandler.java

Lines changed: 39 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
import com.google.gson.JsonArray;
1111
import com.google.gson.JsonObject;
12+
import com.google.gson.JsonPrimitive;
1213
import java.text.DecimalFormat;
1314
import java.util.*;
1415
import java.util.function.Predicate;
@@ -918,30 +919,50 @@ private static String parseLayoutName(CrystalLayout layout)
918919
if (layout instanceof ArchitectCrystalLayout)
919920
{
920921
StringBuilder builder = new StringBuilder();
921-
builder.append("Architect").append("\n");
922+
builder.append("Architect");
922923

923924
Optional<JsonObject> jsonObject = layout.writeJson();
924925

925-
jsonObject.ifPresent(json -> {
926-
JsonArray entries = json.getAsJsonArray("entries");
927-
928-
entries.forEach(entry -> {
929-
ArchitectRoomEntry architectRoomEntry = ArchitectRoomEntry.fromJson((JsonObject) entry);
930-
Component roomName = architectRoomEntry.getName();
926+
jsonObject.ifPresent(json ->
927+
{
928+
if (json.has("completion"))
929+
{
930+
JsonPrimitive completionObject = json.getAsJsonPrimitive("completion");
931931

932-
if (roomName != null)
932+
if (completionObject.isNumber())
933933
{
934-
int count = architectRoomEntry.get(ArchitectRoomEntry.COUNT);
935-
936-
builder.append("-Has ").
937-
append(String.valueOf(count)).
938-
append(" *").
939-
append(roomName.getString()).
940-
append("* ").
941-
append(count > 1 ? "Rooms" : "Room").
942-
append("\n");
934+
float completion = json.getAsJsonPrimitive("completion").getAsFloat();
935+
builder.append(" | ").
936+
append(Math.min(100.0F, Math.round(completion * 100.0F))).
937+
append("%");
943938
}
944-
});
939+
}
940+
941+
builder.append("\n");
942+
943+
if (json.has("entries") && json.get("entries").isJsonArray())
944+
{
945+
JsonArray entries = json.getAsJsonArray("entries");
946+
947+
entries.forEach(entry ->
948+
{
949+
ArchitectRoomEntry architectRoomEntry = ArchitectRoomEntry.fromJson((JsonObject) entry);
950+
Component roomName = architectRoomEntry.getName();
951+
952+
if (roomName != null)
953+
{
954+
int count = architectRoomEntry.get(ArchitectRoomEntry.COUNT);
955+
956+
builder.append("-Has ").
957+
append(count).
958+
append(" *").
959+
append(roomName.getString()).
960+
append("* ").
961+
append(count > 1 ? "Rooms" : "Room").
962+
append("\n");
963+
}
964+
});
965+
}
945966
});
946967

947968
return builder.toString();

src/main/resources/META-INF/mods.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ side = "SERVER"
4141
[[dependencies.vhdiscord]]
4242
modId = "dcintegration"
4343
mandatory = false
44-
versionRange = "[2.5.0]"
44+
versionRange = "[2.5.0,)"
4545
ordering = "AFTER"
4646
side = "SERVER"
4747
[[dependencies.vhdiscord]]

0 commit comments

Comments
 (0)