mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 15:17:25 +01:00
* initial commit to not show shield when previewing two-hand weapon * revert error made * update to fix all combinations of equipping / trying two-handed weapons * clarify conditional logic * refactor to let avatar check for twoHanded display/hide logic
This commit is contained in:
@@ -30,8 +30,8 @@
|
||||
span(:class="getGearClass('head')")
|
||||
span(:class="getGearClass('headAccessory')")
|
||||
span(:class="'hair_flower_' + member.preferences.hair.flower")
|
||||
span(:class="getGearClass('shield')")
|
||||
span(:class="getGearClass('weapon')")
|
||||
span(v-if="!hideGear('shield')", :class="getGearClass('shield')")
|
||||
span(v-if="!hideGear('weapon')", :class="getGearClass('weapon')")
|
||||
|
||||
// Resting
|
||||
span.zzz(v-if="member.preferences.sleep")
|
||||
@@ -71,6 +71,8 @@
|
||||
</style>
|
||||
|
||||
<script>
|
||||
import { mapState } from 'client/libs/store';
|
||||
|
||||
import ClassBadge from 'client/components/members/classBadge';
|
||||
|
||||
export default {
|
||||
@@ -117,6 +119,9 @@ export default {
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
flatGear: 'content.gear.flat',
|
||||
}),
|
||||
hasClass () {
|
||||
return this.$store.getters['members:hasClass'](this.member);
|
||||
},
|
||||
@@ -179,6 +184,20 @@ export default {
|
||||
|
||||
return result;
|
||||
},
|
||||
hideGear (gearType) {
|
||||
if (gearType === 'weapon') {
|
||||
let equippedWeapon = this.member.items.gear[this.costumeClass][gearType];
|
||||
let equippedIsTwoHanded = this.flatGear[equippedWeapon].twoHanded;
|
||||
let hasOverrideShield = this.overrideAvatarGear && this.overrideAvatarGear.shield;
|
||||
|
||||
return equippedIsTwoHanded && hasOverrideShield;
|
||||
} else if (gearType === 'shield') {
|
||||
let overrideWeapon = this.overrideAvatarGear && this.overrideAvatarGear.weapon;
|
||||
let overrideIsTwoHanded = overrideWeapon && this.flatGear[overrideWeapon].twoHanded;
|
||||
|
||||
return overrideIsTwoHanded;
|
||||
}
|
||||
},
|
||||
castEnd (e) {
|
||||
if (!this.$store.state.spellOptions.castingSpell) return;
|
||||
this.$root.$emit('castEnd', this.member, 'user', e);
|
||||
|
||||
Reference in New Issue
Block a user