Level up dialog now working
This commit is contained in:
@@ -27,14 +27,10 @@ export default function getSlotFillFilter({slot, libraryIds}){
|
||||
filter.variableName = slot.variableName;
|
||||
|
||||
// Only search for levels the class needs
|
||||
const levels = [];
|
||||
if (slot.missingLevels && slot.missingLevels.length) {
|
||||
levels.push(...slot.missingLevels);
|
||||
} else if (slot.level) {
|
||||
levels.push(slot.level);
|
||||
}
|
||||
if (levels.length) {
|
||||
filter.level = {$or: levels};
|
||||
filter.level = {$in: slot.missingLevels};
|
||||
} else {
|
||||
filter.level = (slot.level || 0) + 1;
|
||||
}
|
||||
}
|
||||
let tagsOr = [];
|
||||
|
||||
@@ -12,6 +12,8 @@ const LIBRARY_NODE_TREE_FIELDS = {
|
||||
order: 1,
|
||||
parent: 1,
|
||||
ancestors: 1,
|
||||
// SlotFillers
|
||||
slotQuantityFilled: 1,
|
||||
// Effect
|
||||
operation: 1,
|
||||
targetTags: 1,
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
:string="model.description"
|
||||
/>
|
||||
<p>
|
||||
{{ slotPropertyTypeName }} with tags:
|
||||
<property-tags
|
||||
v-for="(tags, index) in tagsSearched.or"
|
||||
:key="index"
|
||||
@@ -247,12 +246,6 @@ export default {
|
||||
});
|
||||
return {or, not};
|
||||
},
|
||||
slotPropertyTypeName(){
|
||||
if (!this.model) return;
|
||||
if (!this.model.slotType) return 'Property';
|
||||
let propName = getPropertyName(this.model.slotType);
|
||||
return propName;
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
loadMore(){
|
||||
@@ -352,7 +345,7 @@ export default {
|
||||
return names;
|
||||
},
|
||||
libraryNodes(){
|
||||
let filter = getSlotFillFilter({slot: this.model});
|
||||
let filter = getSlotFillFilter({ slot: this.model });
|
||||
let nodes = LibraryNodes.find(filter, {
|
||||
sort: {name: 1, order: 1}
|
||||
}).fetch();
|
||||
|
||||
@@ -28,10 +28,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</property-field>
|
||||
<property-description
|
||||
<property-field
|
||||
name="Missing Levels"
|
||||
mono
|
||||
:model="model.missingLevels &&
|
||||
:value="model.missingLevels &&
|
||||
(model.missingLevels.length || undefined) &&
|
||||
model.missingLevels.join(', ')
|
||||
"
|
||||
@@ -73,6 +73,7 @@
|
||||
|
||||
<script lang="js">
|
||||
import propertyViewerMixin from '/imports/ui/properties/viewers/shared/propertyViewerMixin.js';
|
||||
import insertPropertyFromLibraryNode from '/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js';
|
||||
|
||||
export default {
|
||||
mixins: [propertyViewerMixin],
|
||||
@@ -83,13 +84,25 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
levelUpDialog(){
|
||||
let classId = this.model._id;
|
||||
this.$store.commit('pushDialogStack', {
|
||||
component: 'level-up-dialog',
|
||||
elementId: 'level-up-btn',
|
||||
data: {
|
||||
creatureId: this.creatureId,
|
||||
creatureId: this.context.creatureId,
|
||||
classId: this.model._id,
|
||||
},
|
||||
callback(nodeIds){
|
||||
if (!nodeIds || !nodeIds.length) return;
|
||||
let newPropertyId = insertPropertyFromLibraryNode.call({
|
||||
nodeIds,
|
||||
parentRef: {
|
||||
'id': classId,
|
||||
'collection': 'creatureProperties',
|
||||
},
|
||||
});
|
||||
return `tree-node-${newPropertyId}`;
|
||||
}
|
||||
});
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user