|
|
|
@@ -1,7 +1,7 @@
|
|
|
|
|
import Logger from "../../utils/Logger";
|
|
|
|
|
import { M5Character } from "../actors/M5Character";
|
|
|
|
|
import { M5Item } from "../items/M5Item";
|
|
|
|
|
import { M5ItemType, M5SkillLearned, M5SkillUnlearned } from "../M5Base";
|
|
|
|
|
import { M5ItemType, M5SkillLearned, M5SkillType, M5SkillUnlearned } from "../M5Base";
|
|
|
|
|
import { M5Roll } from "../rolls/M5Roll";
|
|
|
|
|
|
|
|
|
|
export default class M5CharacterSheet extends ActorSheet {
|
|
|
|
@@ -282,14 +282,7 @@ export default class M5CharacterSheet extends ActorSheet {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.item"), M5ItemType.ITEM).then((i) => {
|
|
|
|
|
const item = i as any;
|
|
|
|
|
item.update({
|
|
|
|
|
data: {
|
|
|
|
|
quantity: 1,
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.item"), M5ItemType.ITEM, { quantity: 1 });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-weapon").on("click", async (event) => {
|
|
|
|
@@ -317,42 +310,51 @@ export default class M5CharacterSheet extends ActorSheet {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.container"), M5ItemType.CONTAINER).then((i) => {
|
|
|
|
|
const item = i as any;
|
|
|
|
|
item.update({
|
|
|
|
|
data: {
|
|
|
|
|
quantity: 1,
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.container"), M5ItemType.CONTAINER, { quantity: 1 });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-innate-skill").on("click", async (event) => {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.innate-ability"), M5ItemType.SKILL, { type: M5SkillType.INNATE });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-general-skill").on("click", async (event) => {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.skill"), M5ItemType.SKILL, { type: M5SkillType.GENERAL });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-combat-skill").on("click", async (event) => {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.weapon-skill"), M5ItemType.SKILL, { type: M5SkillType.COMBAT });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-language-skill").on("click", async (event) => {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.language"), M5ItemType.SKILL, { type: M5SkillType.LANGUAGE });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-spell").on("click", async (event) => {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.spell"), M5ItemType.SPELL).then((i) => {
|
|
|
|
|
const item = i as any;
|
|
|
|
|
item.update({
|
|
|
|
|
data: {
|
|
|
|
|
process: "none",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.spell"), M5ItemType.SPELL, { process: "none" });
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".add-kampfkunst").on("click", async (event) => {
|
|
|
|
|
const data = this.actor.system;
|
|
|
|
|
|
|
|
|
|
const character = this.actor as M5Character;
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.kampfkunst"), M5ItemType.KAMPFKUNST).then((i) => {
|
|
|
|
|
const item = i as any;
|
|
|
|
|
item.update({
|
|
|
|
|
data: {
|
|
|
|
|
type: "angriff",
|
|
|
|
|
variante: "anstuermen",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.kampfkunst"), M5ItemType.KAMPFKUNST, {
|
|
|
|
|
type: "angriff",
|
|
|
|
|
variante: "anstuermen",
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
@@ -363,6 +365,57 @@ export default class M5CharacterSheet extends ActorSheet {
|
|
|
|
|
character.createItem((game as Game).i18n.localize("TYPES.Item.effect"), M5ItemType.EFFECT);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".join-combat").on("click", async (event) => {
|
|
|
|
|
if (!!game["combat"]) {
|
|
|
|
|
let combatant = game["combat"].getCombatantByActor(this.actor._id);
|
|
|
|
|
if (!combatant) {
|
|
|
|
|
await game["combat"].createEmbeddedDocuments("Combatant", [{ actorId: this.actor._id }]);
|
|
|
|
|
combatant = game["combat"].getCombatantByActor(this.actor._id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const initiatives = {
|
|
|
|
|
_id: combatant._id,
|
|
|
|
|
initiative: this.actor.system.calc.attributes.gw.value,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
await game["combat"].updateEmbeddedDocuments("Combatant", [initiatives]);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".ranged-combat").on("click", async (event) => {
|
|
|
|
|
if (!!game["combat"]) {
|
|
|
|
|
let combatant = game["combat"].getCombatantByActor(this.actor._id);
|
|
|
|
|
if (!combatant) {
|
|
|
|
|
await game["combat"].createEmbeddedDocuments("Combatant", [{ actorId: this.actor._id }]);
|
|
|
|
|
combatant = game["combat"].getCombatantByActor(this.actor._id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const initiatives = {
|
|
|
|
|
_id: combatant._id,
|
|
|
|
|
initiative: 0.01 * this.actor.system.calc.attributes.gw.value,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
await game["combat"].updateEmbeddedDocuments("Combatant", [initiatives]);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
html.find(".spell-combat").on("click", async (event) => {
|
|
|
|
|
if (!!game["combat"]) {
|
|
|
|
|
let combatant = game["combat"].getCombatantByActor(this.actor._id);
|
|
|
|
|
if (!combatant) {
|
|
|
|
|
await game["combat"].createEmbeddedDocuments("Combatant", [{ actorId: this.actor._id }]);
|
|
|
|
|
combatant = game["combat"].getCombatantByActor(this.actor._id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const initiatives = {
|
|
|
|
|
_id: combatant._id,
|
|
|
|
|
initiative: 0.001 * this.actor.system.calc.attributes.gw.value,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
await game["combat"].updateEmbeddedDocuments("Combatant", [initiatives]);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// Drag & Drop
|
|
|
|
|
const dragDrop = new DragDrop({
|
|
|
|
|
dragSelector: ".items-list .item",
|
|
|
|
|