diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CharacterDetailsAdapter.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CharacterDetailsAdapter.java index 324da586d9da06c645c1bef002d2dd168ce9e361..b947bfaf3164070e7ddec4c47b5c1838db7664e3 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CharacterDetailsAdapter.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CharacterDetailsAdapter.java @@ -73,7 +73,7 @@ public class CharacterDetailsAdapter extends RecyclerView.Adapter<RecyclerView.V MiceAndMysticsApplication.getRealmInstance().beginTransaction(); Ability realmAbility = MiceAndMysticsApplication.getRealmInstance().createObject(Ability.class); realmAbility.setUuid(UUID.randomUUID().toString()); - realmAbility.setAbilityName(ability.displayName()); + realmAbility.setAbilityName(ability.name()); currentCharacter.getAbilities().add(realmAbility); MiceAndMysticsApplication.getRealmInstance().commitTransaction(); notifyDataSetChanged(); diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java index 7b9859cf93c6892c9fe06e746215827feb93064d..5495d491a17c70269cf43356f3ecc1bf0f3302ab 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java @@ -1,44 +1,47 @@ package com.eyecreate.miceandmystics.miceandmystics.model.Enums; +import com.eyecreate.miceandmystics.miceandmystics.MiceAndMysticsApplication; +import com.eyecreate.miceandmystics.miceandmystics.R; + import java.util.ArrayList; import java.util.Arrays; import java.util.List; public enum Abilities { - First_Aid("First Aid",new CharacterType[]{CharacterType.Mystic,CharacterType.Archer,CharacterType.Scamp,CharacterType.Leader,CharacterType.Healer,CharacterType.Tinkerer,CharacterType.Warrior}), - Chain_Lightning("Chain Lightning",new CharacterType[]{CharacterType.Mystic}), - Mystic_Blast("Mystic Blast",new CharacterType[]{CharacterType.Mystic}), - Major_Heal("Major Heal",new CharacterType[]{CharacterType.Healer}), - Feint("Feint",new CharacterType[]{CharacterType.Warrior}), - Battle_Squeak("Battle Squeak",new CharacterType[]{CharacterType.Warrior}), - Battle_Leader("Battle Leader",new CharacterType[]{CharacterType.Leader}), - Set_Trap("Set Trap",new CharacterType[]{CharacterType.Tinkerer}), - Fortify("Fortify",new CharacterType[]{CharacterType.Healer}), - Cure("Cure",new CharacterType[]{CharacterType.Healer}), - Knife_Strike("Knife Strike",new CharacterType[]{CharacterType.Scamp}), - Find("Find",new CharacterType[]{CharacterType.Scamp}), - Dodge("Dodge",new CharacterType[]{CharacterType.Scamp}), - Thundersqueak("Thundersqueak",new CharacterType[]{CharacterType.Warrior,CharacterType.Tinkerer,CharacterType.Healer}), - Backslash("Backslash",new CharacterType[]{CharacterType.Warrior}), - Mystic_Bolt("Mystic Bolt",new CharacterType[]{CharacterType.Mystic}), - Inspire("Inspire",new CharacterType[]{CharacterType.Leader}), - Keen_Eye("Keen Eye",new CharacterType[]{CharacterType.Scamp,CharacterType.Archer}), - Meeps("Meeps",new CharacterType[]{CharacterType.Maginos}), - Invisibility("Invisibility",new CharacterType[]{CharacterType.Mystic}), - Accurate_Shot("Accurate Shot",new CharacterType[]{CharacterType.Archer}), - Aimed_Shot("Aimed Shot",new CharacterType[]{CharacterType.Archer}), - Power_Shot("Power Shot",new CharacterType[]{CharacterType.Archer}), - Preemptive_Shot("Preemptive Shot",new CharacterType[]{CharacterType.Archer}), - Resolve("Resolve",new CharacterType[]{CharacterType.Warrior}), - Protect("Protect",new CharacterType[]{CharacterType.Warrior}), - Give_Order("Give Order",new CharacterType[]{CharacterType.Leader}), - Energy_Rush("Energy Rush",new CharacterType[]{CharacterType.Scamp}); + First_Aid(R.string.ability_firstaid,new CharacterType[]{CharacterType.Mystic,CharacterType.Archer,CharacterType.Scamp,CharacterType.Leader,CharacterType.Healer,CharacterType.Tinkerer,CharacterType.Warrior}), + Chain_Lightning(R.string.ability_chainlighting,new CharacterType[]{CharacterType.Mystic}), + Mystic_Blast(R.string.ability_mysticblast,new CharacterType[]{CharacterType.Mystic}), + Major_Heal(R.string.ability_majorheal,new CharacterType[]{CharacterType.Healer}), + Feint(R.string.ability_feint,new CharacterType[]{CharacterType.Warrior}), + Battle_Squeak(R.string.ability_battlesqueak,new CharacterType[]{CharacterType.Warrior}), + Battle_Leader(R.string.ability_battleleader,new CharacterType[]{CharacterType.Leader}), + Set_Trap(R.string.ability_settrap,new CharacterType[]{CharacterType.Tinkerer}), + Fortify(R.string.ability_fortify,new CharacterType[]{CharacterType.Healer}), + Cure(R.string.ability_cure,new CharacterType[]{CharacterType.Healer}), + Knife_Strike(R.string.ability_knifestrike,new CharacterType[]{CharacterType.Scamp}), + Find(R.string.ability_find,new CharacterType[]{CharacterType.Scamp}), + Dodge(R.string.ability_dodge,new CharacterType[]{CharacterType.Scamp}), + Thundersqueak(R.string.ability_thundersqueak,new CharacterType[]{CharacterType.Warrior,CharacterType.Tinkerer,CharacterType.Healer}), + Backslash(R.string.ability_backslash,new CharacterType[]{CharacterType.Warrior}), + Mystic_Bolt(R.string.ability_mysticbolt,new CharacterType[]{CharacterType.Mystic}), + Inspire(R.string.ability_inspire,new CharacterType[]{CharacterType.Leader}), + Keen_Eye(R.string.ability_keeneye,new CharacterType[]{CharacterType.Scamp,CharacterType.Archer}), + Meeps(R.string.ability_meeps,new CharacterType[]{CharacterType.Maginos}), + Invisibility(R.string.ability_invisibility,new CharacterType[]{CharacterType.Mystic}), + Accurate_Shot(R.string.ability_accurateshot,new CharacterType[]{CharacterType.Archer}), + Aimed_Shot(R.string.ability_aimedshot,new CharacterType[]{CharacterType.Archer}), + Power_Shot(R.string.ability_powershot,new CharacterType[]{CharacterType.Archer}), + Preemptive_Shot(R.string.ability_prempshot,new CharacterType[]{CharacterType.Archer}), + Resolve(R.string.ability_resolve,new CharacterType[]{CharacterType.Warrior}), + Protect(R.string.ability_protect,new CharacterType[]{CharacterType.Warrior}), + Give_Order(R.string.ability_giveorder,new CharacterType[]{CharacterType.Leader}), + Energy_Rush(R.string.ability_energyrush,new CharacterType[]{CharacterType.Scamp}); - private String displayName; + private int displayName; private CharacterType[] appliesTo; - Abilities(String displayName,CharacterType[] appliesTo) { + Abilities(int displayName,CharacterType[] appliesTo) { this.displayName = displayName; this.appliesTo = appliesTo; } @@ -64,8 +67,7 @@ public enum Abilities { return matchingList.toArray(new Abilities[matchingList.size()]); } - public String displayName() { return displayName; } + public String displayName() { return MiceAndMysticsApplication.getInstance().getString(displayName); } - @Override public String toString() { return displayName; } - public static Abilities valueOfDisplayName(String valuedDisplayName) {return Abilities.valueOf(valuedDisplayName.replace(" ","_"));} + @Override public String toString() { return displayName(); } } diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CharacterAbilityViewHolder.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CharacterAbilityViewHolder.java index 8a963acf77a155c419408fe15035692003e6962f..e90a155c04d2fffc178f0669c9bf959c58bc0f00 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CharacterAbilityViewHolder.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CharacterAbilityViewHolder.java @@ -9,6 +9,7 @@ import com.alertdialogpro.AlertDialogPro; import com.eyecreate.miceandmystics.miceandmystics.R; import com.eyecreate.miceandmystics.miceandmystics.adapters.CharacterDetailsAdapter; import com.eyecreate.miceandmystics.miceandmystics.model.Ability; +import com.eyecreate.miceandmystics.miceandmystics.model.Enums.Abilities; public class CharacterAbilityViewHolder extends RecyclerView.ViewHolder implements View.OnLongClickListener { @@ -24,7 +25,12 @@ public class CharacterAbilityViewHolder extends RecyclerView.ViewHolder implemen } public void bindHolder(Ability ability) { - abilityName.setText(ability.getAbilityName()); + try { + abilityName.setText(Abilities.valueOf(ability.getAbilityName()).toString()); + } catch(IllegalArgumentException e) { + //This is a workaround if ability doesn't exist. This is likely due to using old stored data. + abilityName.setText(ability.getAbilityName()); + } uuid = ability.getUuid(); } diff --git a/MiceAndMysticsTracker/src/main/res/values/strings.xml b/MiceAndMysticsTracker/src/main/res/values/strings.xml index d1d258a6bb13fbfcf7c2271766ae16ca5aba50b9..7b44a6167cfebfbc390ca06a916c494c56a8231d 100644 --- a/MiceAndMysticsTracker/src/main/res/values/strings.xml +++ b/MiceAndMysticsTracker/src/main/res/values/strings.xml @@ -17,9 +17,9 @@ <!-- Achievements --> <string name="ach_name_maggie">Miz Maggie</string> - <string name="ach_name_van_brush">Vanestra's Brush</string> + <string name="ach_name_van_brush">Vanestra\'s Brush</string> <string name="ach_name_king">King</string> - <string name="ach_name_horn_claw">Cat's Horn Claw</string> + <string name="ach_name_horn_claw">Cat\'s Horn Claw</string> <string name="ach_name_catnip">Catnip</string> <!-- Character Types -->