Add skill designations

Fix drag and drop for skills and skill categories named the same
Set sane default values for attributes
Removed deprecated no grid sheets
This commit is contained in:
Anthony Murphy
2022-09-14 20:00:23 +10:00
parent 08fd1f0fd6
commit 44996e945c
11 changed files with 191 additions and 143 deletions

View File

@ -49,10 +49,10 @@ export default class RMSSPlayerSheet extends ActorSheet {
console.log(owneditems);
var owneditemslist = Object.values(owneditems);
var ownedskillcatlist = Object.values(owneditems);
// Check if the dragged item is not in the array and not owned
if (!owneditemslist.includes(itemData.name)) {
if (!ownedskillcatlist.includes(itemData.name)) {
console.log("Not Owned!");
super._onDropItem(event, data);
}
@ -62,10 +62,10 @@ export default class RMSSPlayerSheet extends ActorSheet {
console.log(owneditems);
var owneditemslist = Object.values(owneditems);
var ownedskilllist = Object.values(owneditems);
// Check if the dragged item is not in the array and not owned
if (!owneditemslist.includes(itemData.name)) {
if (!ownedskilllist.includes(itemData.name)) {
console.log("Not Owned!");
super._onDropItem(event, data);
}
@ -155,6 +155,21 @@ export default class RMSSPlayerSheet extends ActorSheet {
//console.log(ev.currentTarget.getAttribute("data-item-id"));
item.delete();
});
// Check/Uncheck Favorite
html.find('.skill-favorite').click(ev => {
const item = this.actor.items.get(ev.currentTarget.getAttribute("data-item-id"));
console.log(item);
console.log("Before change: " + item.system.favorite);
if (item.system.favorite === true) {
console.log("Setting False");
item.update({system: {"favorite": false}});
} else {
console.log("Setting True");
item.update({system: {"favorite": true}});
}
console.log("After change: " + item.system.favorite);
});
}
async _onItemCreate(event) {

View File

@ -21,7 +21,10 @@ export default class RMSSSkillSheet extends ItemSheet {
const baseData = await super.getData();
var enrichedDescription = await TextEditor.enrichHTML(this.item.system.description, {async: true});
// Get a list of stats that can be used as applicable stats
var designations = this.getSkillDesignations(CONFIG);
// Get a list of the parent item's skill categories for the dropdown
var owned_skillcats = this.prepareSkillCategoryValues();
@ -38,7 +41,8 @@ export default class RMSSSkillSheet extends ItemSheet {
config: CONFIG.rmss,
owned_skillcats: owned_skillcats,
enrichedDescription: enrichedDescription,
selected_skillcat: selected_skillcat
selected_skillcat: selected_skillcat,
designations: designations
};
return sheetData;
@ -58,6 +62,16 @@ export default class RMSSSkillSheet extends ItemSheet {
}
}
getSkillDesignations(CONFIG) {
var designations = {};
// Get a list of designations from the config
for (const item in CONFIG.rmss.skill_designations) {
designations[CONFIG.rmss.skill_designations[item]] = CONFIG.rmss.skill_designations[item];
}
return designations;
}
// Determine which Stat is selected and test that it is in the current list of categories.
prepareSelectedSkillCategory(ownedskillcats, selected_category) {