From d363a9fc1bebd4ef0bb8e46df2bb0f4268570803 Mon Sep 17 00:00:00 2001 From: MagicBot Date: Sat, 24 Feb 2024 09:07:05 -0500 Subject: [PATCH] Try Catch --- src/engine/objects/ItemTemplate.java | 155 ++++++++++++++------------- 1 file changed, 80 insertions(+), 75 deletions(-) diff --git a/src/engine/objects/ItemTemplate.java b/src/engine/objects/ItemTemplate.java index 5e7a6e03..1d488c18 100644 --- a/src/engine/objects/ItemTemplate.java +++ b/src/engine/objects/ItemTemplate.java @@ -12,6 +12,7 @@ import engine.Enum; import engine.math.Vector3fImmutable; import org.json.simple.JSONArray; import org.json.simple.JSONObject; +import org.pmw.tinylog.Logger; import java.util.EnumSet; import java.util.HashMap; @@ -54,114 +55,118 @@ public class ItemTemplate { public ItemTemplate(JSONObject jsonObject) { - // Reading a String + try { + // Reading a String - obj_name = (String) jsonObject.get("obj_name"); + obj_name = (String) jsonObject.get("obj_name"); - // Reading floats from an array + // Reading floats from an array - JSONArray scaleData = (JSONArray) jsonObject.get("obj_scale"); - obj_scale = new Vector3fImmutable(((Double) scaleData.get(0)).floatValue(), ((Double) scaleData.get(1)).floatValue(), - ((Double) scaleData.get(2)).floatValue()); + JSONArray scaleData = (JSONArray) jsonObject.get("obj_scale"); + obj_scale = new Vector3fImmutable(((Double) scaleData.get(0)).floatValue(), ((Double) scaleData.get(1)).floatValue(), + ((Double) scaleData.get(2)).floatValue()); - // Reading an integer value + // Reading an integer value - obj_render_object = ((Long) jsonObject.get("obj_render_object")).intValue(); - obj_icon = ((Long) jsonObject.get("obj_icon")).intValue(); + obj_render_object = ((Long) jsonObject.get("obj_render_object")).intValue(); + obj_icon = ((Long) jsonObject.get("obj_icon")).intValue(); - // Reading float values + // Reading float values - combat_health_current = ((Double) jsonObject.get("combat_health_current")).floatValue(); - combat_health_full = ((Double) jsonObject.get("combat_health_full")).floatValue(); + combat_health_current = ((Double) jsonObject.get("combat_health_current")).floatValue(); + combat_health_full = ((Double) jsonObject.get("combat_health_full")).floatValue(); - // Reading a hashmap of floats + // Reading a hashmap of floats - JSONObject resist_json = (JSONObject) jsonObject.get("combat_attack_resist"); + JSONObject resist_json = (JSONObject) jsonObject.get("combat_attack_resist"); - for (Object key : resist_json.keySet()) { - float resist = ((Double) resist_json.get(key)).floatValue(); - combat_attack_resist.put((String) key, resist); - } + for (Object key : resist_json.keySet()) { + float resist = ((Double) resist_json.get(key)).floatValue(); + combat_attack_resist.put((String) key, resist); + } - // Parsing an enum + // Parsing an enum - item_type = Enum.ItemType.valueOf((String) jsonObject.get("item_type")); - item_eq_slots_value = ((Long) jsonObject.get("item_eq_slots_value")).intValue(); - item_eq_slots_type = (boolean) jsonObject.get("item_eq_slots_type"); + item_type = Enum.ItemType.valueOf((String) jsonObject.get("item_type")); + item_eq_slots_value = ((Long) jsonObject.get("item_eq_slots_value")).intValue(); + item_eq_slots_type = (boolean) jsonObject.get("item_eq_slots_type"); - // Parsing an enumset + // Parsing an enumset - JSONArray eq_slots_or = (JSONArray) jsonObject.get("item_eq_slots_or"); + JSONArray eq_slots_or = (JSONArray) jsonObject.get("item_eq_slots_or"); - if (eq_slots_or.isEmpty() == false) - for (Object o : eq_slots_or) - item_eq_slots_or.add(Enum.ItemEquipSlotType.valueOf((String) o)); + if (eq_slots_or.isEmpty() == false) + for (Object o : eq_slots_or) + item_eq_slots_or.add(Enum.ItemEquipSlotType.valueOf((String) o)); - JSONArray eq_slots_and = (JSONArray) jsonObject.get("item_eq_slots_and"); + JSONArray eq_slots_and = (JSONArray) jsonObject.get("item_eq_slots_and"); - if (eq_slots_and.isEmpty() == false) - for (Object o : eq_slots_or) - item_eq_slots_and.add(Enum.ItemEquipSlotType.valueOf((String) o)); + if (eq_slots_and.isEmpty() == false) + for (Object o : eq_slots_or) + item_eq_slots_and.add(Enum.ItemEquipSlotType.valueOf((String) o)); - item_value = ((Long) jsonObject.get("item_value")).intValue(); - item_wt = ((Long) jsonObject.get("item_wt")).intValue(); - item_passive_defense_mod = ((Double) jsonObject.get("item_passive_defense_mod")).floatValue(); - item_base_name = (String) jsonObject.get("item_base_name"); - item_dsc = (String) jsonObject.get("item_dsc"); - item_render_object_female = ((Long) jsonObject.get("item_render_object_female")).intValue(); - item_health_full = ((Double) jsonObject.get("item_health_full")).floatValue(); + item_value = ((Long) jsonObject.get("item_value")).intValue(); + item_wt = ((Long) jsonObject.get("item_wt")).intValue(); + item_passive_defense_mod = ((Double) jsonObject.get("item_passive_defense_mod")).floatValue(); + item_base_name = (String) jsonObject.get("item_base_name"); + item_dsc = (String) jsonObject.get("item_dsc"); + item_render_object_female = ((Long) jsonObject.get("item_render_object_female")).intValue(); + item_health_full = ((Double) jsonObject.get("item_health_full")).floatValue(); - Object skills_used = jsonObject.get("item_skill_used"); + Object skills_used = jsonObject.get("item_skill_used"); - if (skills_used instanceof String) { - String skilString = (String) skills_used; - skilString = skilString.replaceAll("\\s", ""); - skilString = skilString.replaceAll(",", ""); - item_skill_used.add(Enum.CharacterSkills.valueOf(skilString)); - } + if (skills_used instanceof String) { + String skilString = (String) skills_used; + skilString = skilString.replaceAll("\\s", ""); + skilString = skilString.replaceAll(",", ""); + item_skill_used.add(Enum.CharacterSkills.valueOf(skilString)); + } - Object mastery_used = jsonObject.get("item_skill_mastery_used"); + Object mastery_used = jsonObject.get("item_skill_mastery_used"); - if (mastery_used instanceof String) { - String masteryString = (String) mastery_used; - masteryString = masteryString.replaceAll("\\s", ""); - masteryString = masteryString.replaceAll(",", ""); - item_skill_mastery_used.add(Enum.CharacterSkills.valueOf(masteryString)); - } + if (mastery_used instanceof String) { + String masteryString = (String) mastery_used; + masteryString = masteryString.replaceAll("\\s", ""); + masteryString = masteryString.replaceAll(",", ""); + item_skill_mastery_used.add(Enum.CharacterSkills.valueOf(masteryString)); + } - item_parry_anim_id = ((Long) jsonObject.get("item_parry_anim_id")).intValue(); + item_parry_anim_id = ((Long) jsonObject.get("item_parry_anim_id")).intValue(); - // Item Type == ARMOR? + // Item Type == ARMOR? - if (jsonObject.containsValue("item_bulk_factor")) - item_bulk_factor = ((Double) jsonObject.get("item_bulk_factor")).floatValue(); + if (jsonObject.containsValue("item_bulk_factor")) + item_bulk_factor = ((Double) jsonObject.get("item_bulk_factor")).floatValue(); - if (jsonObject.containsValue("item_defense_rating")) - item_defense_rating = ((Double) jsonObject.get("item_defense_rating")).floatValue(); + if (jsonObject.containsValue("item_defense_rating")) + item_defense_rating = ((Double) jsonObject.get("item_defense_rating")).floatValue(); - JSONArray itemflags = (JSONArray) jsonObject.get("item_flags"); + JSONArray itemflags = (JSONArray) jsonObject.get("item_flags"); - if (itemflags.isEmpty() == false) - for (Object o : itemflags) - item_flags.add(Enum.ItemFlags.valueOf((String) o)); + if (itemflags.isEmpty() == false) + for (Object o : itemflags) + item_flags.add(Enum.ItemFlags.valueOf((String) o)); - JSONArray itemUseflags = (JSONArray) jsonObject.get("item_use_flags"); + JSONArray itemUseflags = (JSONArray) jsonObject.get("item_use_flags"); - if (itemUseflags.isEmpty() == false) - for (Object o : itemUseflags) - item_use_flags.add(Enum.ItemUseFlags.valueOf((String) o)); + if (itemUseflags.isEmpty() == false) + for (Object o : itemUseflags) + item_use_flags.add(Enum.ItemUseFlags.valueOf((String) o)); - item_initial_charges = ((Long) jsonObject.get("item_initial_charges")).intValue(); + item_initial_charges = ((Long) jsonObject.get("item_initial_charges")).intValue(); - JSONArray skill_required = (JSONArray) jsonObject.get("item_skill_req"); + JSONArray skill_required = (JSONArray) jsonObject.get("item_skill_req"); - for (Object o : skill_required) { - JSONObject skill_req = (JSONObject) o; - String skill_type = (String) skill_req.get("skill_type"); - skill_type = skill_type.replaceAll("\\s", ""); - skill_type = skill_type.replaceAll(",", ""); - int skill_level = ((Long) skill_req.get("skill_level")).intValue(); - item_skill_required.put(Enum.CharacterSkills.valueOf(skill_type), skill_level); + for (Object o : skill_required) { + JSONObject skill_req = (JSONObject) o; + String skill_type = (String) skill_req.get("skill_type"); + skill_type = skill_type.replaceAll("\\s", ""); + skill_type = skill_type.replaceAll(",", ""); + int skill_level = ((Long) skill_req.get("skill_level")).intValue(); + item_skill_required.put(Enum.CharacterSkills.valueOf(skill_type), skill_level); + } + } catch (Exception e) { + Logger.error(e); } }