Abilities and Achievements should now rely on enum name for identification, but display current string resource in ui.
This commit is contained in:
@@ -133,7 +133,7 @@ public class CampaignDetailsActivity extends RecyclerViewActivity {
|
|||||||
RealmList<Achievement> currentPartyAchievements = MiceAndMysticsApplication.getRealmInstance().where(Campaign.class).equalTo("campaignName",campaign.getCampaignName()).findFirst().getPartyStoryAchievements();
|
RealmList<Achievement> currentPartyAchievements = MiceAndMysticsApplication.getRealmInstance().where(Campaign.class).equalTo("campaignName",campaign.getCampaignName()).findFirst().getPartyStoryAchievements();
|
||||||
boolean hasAlready = false;
|
boolean hasAlready = false;
|
||||||
for (Achievement achievement:currentPartyAchievements) {
|
for (Achievement achievement:currentPartyAchievements) {
|
||||||
if(achievementSpinner.getSelectedItem().toString().equals(achievement.getAchievementName())){
|
if(((com.eyecreate.miceandmystics.miceandmystics.model.Enums.Achievement)achievementSpinner.getSelectedItem()).name().equals(achievement.getAchievementName())){
|
||||||
hasAlready = true;
|
hasAlready = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ public class CharacterDetailsActivity extends RecyclerViewActivity {
|
|||||||
.setPositiveButton("Add", new DialogInterface.OnClickListener() {
|
.setPositiveButton("Add", new DialogInterface.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(DialogInterface dialogInterface, int i) {
|
public void onClick(DialogInterface dialogInterface, int i) {
|
||||||
RealmResults<Character> duplicates = MiceAndMysticsApplication.getRealmInstance().where(Character.class).equalTo("abilities.abilityName",abilitySpinner.getSelectedItem().toString()).equalTo("uuid",currentCharacter.getUuid()).findAll();
|
RealmResults<Character> duplicates = MiceAndMysticsApplication.getRealmInstance().where(Character.class).equalTo("abilities.abilityName", ((Abilities) abilitySpinner.getSelectedItem()).name()).equalTo("uuid", currentCharacter.getUuid()).findAll();
|
||||||
if(duplicates.size()==0) {
|
if(duplicates.size()==0) {
|
||||||
((CharacterDetailsAdapter) getAdapter()).addAbility((Abilities) abilitySpinner.getSelectedItem());
|
((CharacterDetailsAdapter) getAdapter()).addAbility((Abilities) abilitySpinner.getSelectedItem());
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ public class CampaignDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
|
|||||||
MiceAndMysticsApplication.getRealmInstance().beginTransaction();
|
MiceAndMysticsApplication.getRealmInstance().beginTransaction();
|
||||||
Achievement realmAchievement = MiceAndMysticsApplication.getRealmInstance().createObject(Achievement.class);
|
Achievement realmAchievement = MiceAndMysticsApplication.getRealmInstance().createObject(Achievement.class);
|
||||||
realmAchievement.setUuid(UUID.randomUUID().toString());
|
realmAchievement.setUuid(UUID.randomUUID().toString());
|
||||||
realmAchievement.setAchievementName(achievement.displayName());
|
realmAchievement.setAchievementName(achievement.name());
|
||||||
currentCampaign.getPartyStoryAchievements().add(realmAchievement);
|
currentCampaign.getPartyStoryAchievements().add(realmAchievement);
|
||||||
MiceAndMysticsApplication.getRealmInstance().commitTransaction();
|
MiceAndMysticsApplication.getRealmInstance().commitTransaction();
|
||||||
fullRefresh();
|
fullRefresh();
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
package com.eyecreate.miceandmystics.miceandmystics.model.Enums;
|
package com.eyecreate.miceandmystics.miceandmystics.model.Enums;
|
||||||
|
|
||||||
|
import com.eyecreate.miceandmystics.miceandmystics.MiceAndMysticsApplication;
|
||||||
import com.eyecreate.miceandmystics.miceandmystics.R;
|
import com.eyecreate.miceandmystics.miceandmystics.R;
|
||||||
|
|
||||||
public enum Achievement {
|
public enum Achievement {
|
||||||
|
|
||||||
Miz_Maggie("Miz Maggie", R.mipmap.mizmaggie),
|
Miz_Maggie(R.string.ach_name_maggie, R.mipmap.mizmaggie),
|
||||||
Vanestras_Brush("Vanestra's Brush",R.mipmap.vanbrush),
|
Vanestras_Brush(R.string.ach_name_van_brush,R.mipmap.vanbrush),
|
||||||
King("King",R.mipmap.king),
|
King(R.string.ach_name_king,R.mipmap.king),
|
||||||
Cats_Horn_Claw("Cat's Horn Claw",R.mipmap.catclaw), //not sure if it matters this is the claw and not the horn side.
|
Cats_Horn_Claw(R.string.ach_name_horn_claw,R.mipmap.catclaw), //not sure if it matters this is the claw and not the horn side.
|
||||||
Catnip("Catnip",R.mipmap.catnip);
|
Catnip(R.string.ach_name_catnip,R.mipmap.catnip);
|
||||||
|
|
||||||
private String displayName;
|
private int displayName;
|
||||||
private int displayResource;
|
private int displayResource;
|
||||||
|
|
||||||
Achievement(String displayName,int resource) {
|
Achievement(int displayName,int resource) {
|
||||||
this.displayName = displayName;
|
this.displayName = displayName;
|
||||||
this.displayResource = resource;
|
this.displayResource = resource;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String displayName() { return displayName; }
|
public String displayName() { return MiceAndMysticsApplication.getInstance().getString(displayName); }
|
||||||
|
|
||||||
public int getDisplayResource() { return displayResource; }
|
public int getDisplayResource() { return displayResource; }
|
||||||
|
|
||||||
@Override public String toString() { return displayName; }
|
@Override public String toString() { return displayName(); }
|
||||||
public static Achievement valueOfDisplayName(String valuedDisplayName) {return Achievement.valueOf(valuedDisplayName.replace(" ","_").replace("'",""));}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,12 +25,7 @@ public class CharacterAbilityViewHolder extends RecyclerView.ViewHolder implemen
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void bindHolder(Ability ability) {
|
public void bindHolder(Ability ability) {
|
||||||
try {
|
abilityName.setText(Abilities.valueOf(ability.getAbilityName()).toString());
|
||||||
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();
|
uuid = ability.getUuid();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ public class PartyAchievementViewHolder extends RecyclerView.ViewHolder implemen
|
|||||||
|
|
||||||
public void bindHolder(Achievement achievement) {
|
public void bindHolder(Achievement achievement) {
|
||||||
this.boundAchievement = achievement;
|
this.boundAchievement = achievement;
|
||||||
achievementName.setText(achievement.getAchievementName());
|
achievementName.setText(com.eyecreate.miceandmystics.miceandmystics.model.Enums.Achievement.valueOf(achievement.getAchievementName()).displayName());
|
||||||
achievementIcon.setImageResource(com.eyecreate.miceandmystics.miceandmystics.model.Enums.Achievement.valueOfDisplayName(achievement.getAchievementName()).getDisplayResource());
|
achievementIcon.setImageResource(com.eyecreate.miceandmystics.miceandmystics.model.Enums.Achievement.valueOf(achievement.getAchievementName()).getDisplayResource());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user