Proper parsing of power grants

This commit is contained in:
2024-04-01 15:53:36 -04:00
parent 8414b0f4cf
commit 946714d3ae
+10 -7
View File
@@ -350,15 +350,18 @@ public class ItemTemplate {
item_user_power_action.put(power, arguments);
}
JSONArray powerGrants = (JSONArray) jsonObject.get("item_power_grant");
JSONObject powerGrants = (JSONObject) jsonObject.get("item_power_grant");
if (powerGrants.isEmpty() == false) {
JSONObject powerGrantEntries = (JSONObject) powerGrants.get("power_granted_powers");
for (Object grantedPower : powerGrantEntries.keySet()) {
int powerLevel = ((Long) powerGrantEntries.get(grantedPower)).intValue();
item_power_grant.put((String) grantedPower, powerLevel);
if (powerGrants.isEmpty() == false)
for (Object o : powerGrants) {
JSONObject powerGrantEntry = (JSONObject) o;
String power_type = (String) powerGrantEntry.get("power_type");
int power_value = ((Long) powerGrantEntry.get("power_value")).intValue();
item_power_grant.put(power_type, power_value);
}
}
JSONArray item_power_actions = (JSONArray) jsonObject.get("item_power_action");