Add multiclassing

Changes:
 + add multiclassing option
 + add edit and delete item for class
This commit is contained in:
2024-03-19 20:10:48 +01:00
parent 1a15898ac0
commit 1c21e64d20
5 changed files with 56 additions and 10 deletions
+14 -6
View File
@@ -207,7 +207,7 @@ export class M5Character extends Actor {
const aggregate = new M5ModAggregate(data, ret);
context.items
?.filter((item) => (item.type === "item" || item.type === "effect" || item.type === "armor" || item.type === "container" || item.type === "klasse") && item.system.equipped)
?.filter((item) => (item.type === "item" || item.type === "effect" || item.type === "armor" || item.type === "container" || item.type === "class") && item.system.equipped)
.forEach((item) => {
const mods = item.system.mods;
//console.log("Actor item mods", mods)
@@ -497,11 +497,19 @@ export class M5Character extends Actor {
}
if (!skip?.class) {
const item = context.items?.find((item) => item.type === "class");
if (item) {
data.info.class = item.name;
data.info.magicUsing = item.system.magicUsing;
}
const item = context.items
?.filter((item) => item.type === "class")
.forEach((item) => {
if (item) {
if (typeof data.info.class === "string") {
data.info.class = {};
}
data.info.class[item.id] = item.name;
if (item.system.magicUsing) {
data.info.magicUsing = item.system.magicUsing;
}
}
});
}
if (!skip?.effects) {
+8
View File
@@ -433,6 +433,14 @@ export default class M5CharacterSheet extends ActorSheet {
}
});
html.find(".class-item-edit").on("click", async (event) => {
this.actor.items.find((x) => x.type === "class").sheet.render(true);
});
html.find(".class-item-delete").on("click", async (event) => {
this.actor.items.find((x) => x.type === "class").delete();
});
// Drag & Drop
const dragDrop = new DragDrop({
dragSelector: ".items-list .item",