add armor item
This commit is contained in:
47
system/scripts/items/armor-sheet.js
Normal file
47
system/scripts/items/armor-sheet.js
Normal file
@@ -0,0 +1,47 @@
|
||||
import { ItemSheetL5r5e } from "./item-sheet.js";
|
||||
|
||||
/**
|
||||
* @extends {ItemSheet}
|
||||
*/
|
||||
export class ArmorSheetL5r5e extends ItemSheetL5r5e {
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
return mergeObject(super.defaultOptions, {
|
||||
classes: ["l5r5e", "sheet", "armor"],
|
||||
template: CONFIG.L5r5e.paths.templates + "item/armor-sheet.html",
|
||||
width: 520,
|
||||
height: 480,
|
||||
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description" }],
|
||||
});
|
||||
}
|
||||
|
||||
getData() {
|
||||
const sheetData = super.getData();
|
||||
sheetData.data.dtypes = ["String", "Number", "Boolean"];
|
||||
|
||||
sheetData.data.isArmor = true;
|
||||
sheetData.data.isEquipment = true;
|
||||
|
||||
return sheetData;
|
||||
}
|
||||
|
||||
/**
|
||||
* Subscribe to events from the sheet.
|
||||
* @param html HTML content of the sheet.
|
||||
*/
|
||||
activateListeners(html) {
|
||||
super.activateListeners(html);
|
||||
|
||||
// Everything below here is only needed if the sheet is editable
|
||||
if (!this.options.editable) return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update item with values from the sheet.
|
||||
* @param event
|
||||
* @param formData
|
||||
*/
|
||||
_updateObject(event, formData) {
|
||||
return this.object.update(formData);
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@ import { NpcSheetL5r5e } from "./sheets/npc-sheet.js";
|
||||
import { RollL5r5e, AbilityDie, RingDie, DicePickerDialog } from "./dice-l5r5e.js";
|
||||
import { ItemL5r5e } from "./items/item.js";
|
||||
import { ItemSheetL5r5e } from "./items/item-sheet.js";
|
||||
import { ArmorSheetL5r5e } from "./items/armor-sheet.js";
|
||||
import { WeaponSheetL5r5e } from "./items/weapon-sheet.js";
|
||||
import { FeatSheetL5r5e } from "./items/feat-sheet.js";
|
||||
|
||||
@@ -63,6 +64,7 @@ Hooks.once("init", async function () {
|
||||
// Items sheet
|
||||
Items.unregisterSheet("core", ItemSheet);
|
||||
Items.registerSheet("l5r5e", ItemSheetL5r5e, { types: ["item"], makeDefault: true });
|
||||
Items.registerSheet("l5r5e", ArmorSheetL5r5e, { types: ["armor"], makeDefault: true });
|
||||
Items.registerSheet("l5r5e", WeaponSheetL5r5e, { types: ["weapon"], makeDefault: true });
|
||||
Items.registerSheet("l5r5e", FeatSheetL5r5e, { types: ["feat"], makeDefault: true });
|
||||
|
||||
|
||||
@@ -19,6 +19,8 @@ export const PreloadTemplates = async function () {
|
||||
"systems/l5r5e/templates/item/item-entry.html",
|
||||
"systems/l5r5e/templates/item/weapons.html",
|
||||
"systems/l5r5e/templates/item/weapon-entry.html",
|
||||
"systems/l5r5e/templates/item/armors.html",
|
||||
"systems/l5r5e/templates/item/armor-entry.html",
|
||||
"systems/l5r5e/templates/item/feat-sheet.html",
|
||||
"systems/l5r5e/templates/item/feat-entry.html",
|
||||
];
|
||||
|
||||
@@ -58,13 +58,24 @@ export class ActorSheetL5r5e extends ActorSheet {
|
||||
*/
|
||||
_prepareItems(sheetData) {
|
||||
for (let item of sheetData.items) {
|
||||
if (item.type === "weapon") {
|
||||
item.isWeapon = true;
|
||||
item.isEquipment = true;
|
||||
} else if (item.type === "feat") {
|
||||
item.isFeat = true;
|
||||
} else {
|
||||
item.isEquipment = true;
|
||||
switch (item.type) {
|
||||
case "weapon":
|
||||
item.isWeapon = true;
|
||||
item.isEquipment = true;
|
||||
break;
|
||||
|
||||
case "armor":
|
||||
item.isArmor = true;
|
||||
item.isEquipment = true;
|
||||
break;
|
||||
|
||||
case "feat":
|
||||
item.isFeat = true;
|
||||
break;
|
||||
|
||||
default:
|
||||
item.isEquipment = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,13 +40,24 @@ export class NpcSheetL5r5e extends ActorSheet {
|
||||
*/
|
||||
_prepareItems(sheetData) {
|
||||
for (let item of sheetData.items) {
|
||||
if (item.type === "weapon") {
|
||||
item.isWeapon = true;
|
||||
item.isEquipment = true;
|
||||
} else if (item.type === "feat") {
|
||||
item.isFeat = true;
|
||||
} else {
|
||||
item.isEquipment = true;
|
||||
switch (item.type) {
|
||||
case "weapon":
|
||||
item.isWeapon = true;
|
||||
item.isEquipment = true;
|
||||
break;
|
||||
|
||||
case "armor":
|
||||
item.isArmor = true;
|
||||
item.isEquipment = true;
|
||||
break;
|
||||
|
||||
case "feat":
|
||||
item.isFeat = true;
|
||||
break;
|
||||
|
||||
default:
|
||||
item.isEquipment = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user