mirror of
https://github.com/sudoxnym/habitica-android.git
synced 2026-05-21 13:19:02 +00:00
moved skill feedback to skill event
This commit is contained in:
parent
bd2ec3e28e
commit
f84abbae04
4 changed files with 18 additions and 16 deletions
|
|
@ -2,6 +2,7 @@ package com.habitrpg.android.habitica.callbacks;
|
|||
|
||||
import com.habitrpg.android.habitica.events.SkillUsedEvent;
|
||||
import com.magicmicky.habitrpgwrapper.lib.models.HabitRPGUser;
|
||||
import com.magicmicky.habitrpgwrapper.lib.models.Stats;
|
||||
import com.magicmicky.habitrpgwrapper.lib.models.Skill;
|
||||
import com.magicmicky.habitrpgwrapper.lib.models.responses.SkillResponse;
|
||||
|
||||
|
|
@ -26,6 +27,10 @@ public class SkillCallback implements Action1<SkillResponse> {
|
|||
|
||||
@Override
|
||||
public void call(SkillResponse skillResponse) {
|
||||
Double xp = this.user.getStats().getExp();
|
||||
Double hp = this.user.getStats().getHp();
|
||||
Double gold = this.user.getStats().getGp();
|
||||
|
||||
HabitRPGUser user = skillResponse.user;
|
||||
if (user.getItems() != null) {
|
||||
this.user.setItems(user.getItems());
|
||||
|
|
@ -37,16 +42,13 @@ public class SkillCallback implements Action1<SkillResponse> {
|
|||
this.user.setFlags(user.getFlags());
|
||||
}
|
||||
if (user.getStats() != null) {
|
||||
usedSkill.xp = user.getStats().getExp() - this.user.getStats().getExp();
|
||||
usedSkill.hp = user.getStats().getHp() - this.user.getStats().getHp();
|
||||
usedSkill.gold = user.getStats().getGp() - this.user.getStats().getGp();
|
||||
this.user.getStats().merge(user.getStats());
|
||||
}
|
||||
|
||||
this.user.async().save();
|
||||
|
||||
callBack.onUserReceived(this.user);
|
||||
|
||||
EventBus.getDefault().post(new SkillUsedEvent(this.usedSkill, skillResponse.user.getStats().getMp()));
|
||||
Stats stats = skillResponse.user.getStats();
|
||||
EventBus.getDefault().post(new SkillUsedEvent(this.usedSkill, stats.getMp(), stats.getExp() - xp, stats.getHp() - hp, stats.getGp() - gold));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,10 +8,13 @@ import com.magicmicky.habitrpgwrapper.lib.models.Skill;
|
|||
public class SkillUsedEvent {
|
||||
|
||||
public Skill usedSkill;
|
||||
public Double newMana;
|
||||
public Double newMana, xp, hp, gold;
|
||||
|
||||
public SkillUsedEvent(Skill usedSkill, Double newMana) {
|
||||
public SkillUsedEvent(Skill usedSkill, Double newMana, Double xp, Double hp, Double gold) {
|
||||
this.usedSkill = usedSkill;
|
||||
this.newMana = newMana;
|
||||
this.xp = xp;
|
||||
this.hp = hp;
|
||||
this.gold = gold;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -114,14 +114,14 @@ public class SkillsFragment extends BaseMainFragment {
|
|||
adapter.setMana(event.newMana);
|
||||
StringBuilder message = new StringBuilder();
|
||||
message.append(activity.getString(R.string.used_skill, skill.text, skill.mana));
|
||||
if (skill.xp != 0) {
|
||||
message.append(" + ").append(round(skill.xp, 2)).append(" XP");
|
||||
if (event.xp != 0) {
|
||||
message.append(" + ").append(round(event.xp, 2)).append(" XP");
|
||||
}
|
||||
if (skill.hp != 0) {
|
||||
message.append(" + ").append(round(skill.hp, 2)).append(" HP");
|
||||
if (event.hp != 0) {
|
||||
message.append(" + ").append(round(event.hp, 2)).append(" HP");
|
||||
}
|
||||
if (skill.gold != 0) {
|
||||
message.append(" + ").append(round(skill.gold, 2)).append(" GP");
|
||||
if (event.gold != 0) {
|
||||
message.append(" + ").append(round(event.gold, 2)).append(" GP");
|
||||
}
|
||||
UiUtils.showSnackbar(activity, activity.getFloatingMenuWrapper(), message.toString(), UiUtils.SnackbarDisplayType.NORMAL);
|
||||
apiHelper.apiService.getUser()
|
||||
|
|
|
|||
|
|
@ -20,8 +20,5 @@ public class Skill extends BaseModel {
|
|||
@Column
|
||||
public Integer mana, lvl;
|
||||
|
||||
@Column
|
||||
public Double xp, hp, gold;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue