Add ITEM cache JSON parser
ItemTemplate follows ArcItemTemplate_Load (sb.exe 0x4AABD0): weapon and armor blocks keyed by item type, sheath and stub blocks, and empty equip slot masks read as empty sets. Adds SheathSlot and readHashLabel, which keeps unresolved hashes such as item_skill_used in 195340. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
75e10f613f
commit
fbd38732dc
4 files changed
+442
No files matched your search
+21
@@ -227,6 +227,27 @@ public class CacheParserUtil {
|
||||
return "";
|
||||
}
|
||||
|
||||
// Like readLabel, but a non-zero number is a hash the exporter could not
|
||||
// name; it is kept as its decimal string rather than dropped.
|
||||
|
||||
public static String readHashLabel(JSONObject json, String key, int templateId) {
|
||||
|
||||
Object value = json.get(key);
|
||||
long hash;
|
||||
|
||||
if (value instanceof String)
|
||||
return (String) value;
|
||||
|
||||
hash = json.getLong(key);
|
||||
|
||||
if (hash == 0)
|
||||
return "";
|
||||
|
||||
Logger.warn(templateId + ": " + key + " has unresolved hash " + hash);
|
||||
|
||||
return Long.toString(hash);
|
||||
}
|
||||
|
||||
public static ArrayList<UserPowerAction> readUserPowerActions(JSONArray actionsJson) {
|
||||
|
||||
ArrayList<UserPowerAction> userPowerActions = new ArrayList<>();
|
||||
|
||||
Reference in new issue
Block a user