Skills can now apply to calcs by tag
This commit is contained in:
@@ -15,9 +15,8 @@
|
||||
/>
|
||||
<computed-field
|
||||
v-else
|
||||
label="To Hit"
|
||||
prefix="1d20 + "
|
||||
hint="The bonus to attack if this action has an attack roll"
|
||||
label="Base attack roll bonus"
|
||||
hint="Must be set for the action to have an attack roll"
|
||||
:model="model.attackRoll"
|
||||
:error-messages="errors.attackRoll"
|
||||
@change="({path, value, ack}) =>
|
||||
|
||||
@@ -81,6 +81,24 @@
|
||||
</v-col>
|
||||
</v-row>
|
||||
</form-section>
|
||||
<form-section name="Apply skill">
|
||||
<smart-switch
|
||||
label="Apply skill to targeted tags"
|
||||
:value="model.targetByTags"
|
||||
:error-messages="errors.targetByTags"
|
||||
@change="change('targetByTags', ...arguments)"
|
||||
/>
|
||||
<v-expand-transition>
|
||||
<tag-targeting
|
||||
v-if="model.targetByTags"
|
||||
:model="model"
|
||||
:errors="errors"
|
||||
@change="e => $emit('change', e)"
|
||||
@push="e => $emit('push', e)"
|
||||
@pull="e => $emit('pull', e)"
|
||||
/>
|
||||
</v-expand-transition>
|
||||
</form-section>
|
||||
<slot />
|
||||
</form-sections>
|
||||
</div>
|
||||
@@ -91,11 +109,13 @@ import ProficiencySelect from '/imports/client/ui/properties/forms/shared/Profic
|
||||
import FormSection from '/imports/client/ui/properties/forms/shared/FormSection.vue';
|
||||
import createListOfProperties from '/imports/client/ui/properties/forms/shared/lists/createListOfProperties.js';
|
||||
import propertyFormMixin from '/imports/client/ui/properties/forms/shared/propertyFormMixin.js';
|
||||
import TagTargeting from '/imports/client/ui/properties/forms/shared/TagTargeting.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
ProficiencySelect,
|
||||
FormSection,
|
||||
TagTargeting,
|
||||
},
|
||||
mixins: [propertyFormMixin],
|
||||
data() {
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
v-if="showValue"
|
||||
#value
|
||||
>
|
||||
{{ model.value }}
|
||||
{{ displayedValue }}
|
||||
</template>
|
||||
<template #prepend>
|
||||
<slot name="prepend" />
|
||||
@@ -37,7 +37,7 @@ export default {
|
||||
},
|
||||
computed: {
|
||||
showValue() {
|
||||
const value = this.model.value;
|
||||
let value = this.displayedValue;
|
||||
if (
|
||||
this.hideValue ||
|
||||
(value === undefined || value === null) ||
|
||||
@@ -45,6 +45,14 @@ export default {
|
||||
) return false;
|
||||
return true;
|
||||
},
|
||||
displayedValue() {
|
||||
let value = this.model.value;
|
||||
// Use the base value instead if the calculation has it, because effects can modify the value
|
||||
if (this.model.baseValue !== undefined) {
|
||||
value = this.model.baseValue;
|
||||
}
|
||||
return value;
|
||||
},
|
||||
errorList(){
|
||||
if (this.model.parseError){
|
||||
return [this.model.parseError, ...this.model.errors];
|
||||
|
||||
Reference in New Issue
Block a user