From 38e01dad240d7df7f724dbff74c04e839f0b8ca4 Mon Sep 17 00:00:00 2001 From: LeRatierBretonnien Date: Sun, 30 Mar 2025 16:23:16 +0200 Subject: [PATCH] Minor fixes --- .../applications/sheets/character-sheet.mjs | 2 +- module/applications/sheets/creature-sheet.mjs | 4 ++-- module/applications/sheets/vehicle-sheet.mjs | 15 +++++++++++++++ module/models/creature.mjs | 2 +- module/models/vehicle.mjs | 19 +++++++++++++++++++ templates/character-equipment.hbs | 10 +++++----- templates/character-talents.hbs | 6 +++--- templates/creature-main.hbs | 2 +- templates/creature-trait.hbs | 4 ++-- templates/vehicle-equipment.hbs | 4 ++-- 10 files changed, 51 insertions(+), 17 deletions(-) diff --git a/module/applications/sheets/character-sheet.mjs b/module/applications/sheets/character-sheet.mjs index 5d05215..3fb8951 100644 --- a/module/applications/sheets/character-sheet.mjs +++ b/module/applications/sheets/character-sheet.mjs @@ -112,7 +112,7 @@ export default class FTLNomadCharacterSheet extends FTLNomadActorSheet { static #onCreateEquipment(event, target) { - this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newGear"), type: "gear" }]) + this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newEquipment"), type: "equipment" }]) } static #onCreateWeapon(event, target) { diff --git a/module/applications/sheets/creature-sheet.mjs b/module/applications/sheets/creature-sheet.mjs index 801e6d4..6188e45 100644 --- a/module/applications/sheets/creature-sheet.mjs +++ b/module/applications/sheets/creature-sheet.mjs @@ -93,11 +93,11 @@ export default class FTLNomadCreatureSheet extends FTLNomadActorSheet { * @param {HTMLElement} target The current target of the event listener. */ static #onCreateTrait(event, target) { - this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newTrait"), type: "creaturetrait" }]) + this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newTrait"), type: "creature-trait" }]) } static #onCreateAbility(event, target) { - this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newAbility"), type: "creatureability" }]) + this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newAbility"), type: "creature-ability" }]) } /** diff --git a/module/applications/sheets/vehicle-sheet.mjs b/module/applications/sheets/vehicle-sheet.mjs index a3fe1f9..8275cf5 100644 --- a/module/applications/sheets/vehicle-sheet.mjs +++ b/module/applications/sheets/vehicle-sheet.mjs @@ -103,6 +103,21 @@ export default class FTLNomadVehicleSheet extends FTLNomadActorSheet { this.document.createEmbeddedDocuments("Item", [{ name: game.i18n.localize("FTLNOMAD.Label.newWeapon"), type: "weapon" }]) } + async _onRoll(event, target) { + const rollType = $(event.currentTarget).data("roll-type") + let item + let li + switch (rollType) { + case "damage": + li = $(event.currentTarget).parents(".item"); + item = this.actor.items.get(li.data("item-id")); + break + default: + throw new Error(`Unknown roll type ${rollType}`) + } + await this.document.system.roll(rollType, item) + } + async _onDrop(event) { if (!this.isEditable || !this.isEditMode) return diff --git a/module/models/creature.mjs b/module/models/creature.mjs index 113b3a1..266fc6a 100644 --- a/module/models/creature.mjs +++ b/module/models/creature.mjs @@ -31,7 +31,7 @@ export default class FTLNomadCreature extends foundry.abstract.TypeDataModel { schema.numberAppearing = new fields.StringField({ required: true, initial: "1d6" }) schema.health = new fields.SchemaField({ staminaValue: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }), - staminaMax: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }), + staminaMax: new fields.NumberField({ ...requiredInteger, initial: 1, min: 1 }), }) schema.damage = new fields.StringField({ required: true, initial: "1d6" }) diff --git a/module/models/vehicle.mjs b/module/models/vehicle.mjs index b74d4f5..af9c587 100644 --- a/module/models/vehicle.mjs +++ b/module/models/vehicle.mjs @@ -33,4 +33,23 @@ export default class FTLNomadVehicle extends foundry.abstract.TypeDataModel { return false } + async roll(rollType, rollItem) { + let opponentTarget + const hasTarget = opponentTarget !== undefined + + let roll = await FTLNomadRoll.prompt({ + rollType, + rollItem, + actorId: this.parent.id, + actorName: this.parent.name, + actorImage: this.parent.img, + isEncumbered: this.isEncumbered(), + hasTarget, + target: opponentTarget + }) + if (!roll) return null + + await roll.toMessage({}, { rollMode: roll.options.rollMode }) + } + } diff --git a/templates/character-equipment.hbs b/templates/character-equipment.hbs index d0f3d34..72459a3 100644 --- a/templates/character-equipment.hbs +++ b/templates/character-equipment.hbs @@ -12,7 +12,7 @@
{{localize "FTLNOMAD.Label.weapons"}}{{#if isEditMode}} - {{/if}}
@@ -43,7 +43,7 @@
{{localize "FTLNOMAD.Label.armors"}}{{#if isEditMode}} - {{/if}}
@@ -67,7 +67,7 @@
{{localize "FTLNOMAD.Label.implants"}}{{#if isEditMode}} - {{/if}}
@@ -101,8 +101,8 @@
{{localize "FTLNOMAD.Label.equipments"}}{{#if isEditMode}} - {{/if}} + {{/if}}
{{#each equipments as |item|}} diff --git a/templates/character-talents.hbs b/templates/character-talents.hbs index 6ae3ac8..2770f44 100644 --- a/templates/character-talents.hbs +++ b/templates/character-talents.hbs @@ -2,7 +2,7 @@
{{localize "FTLNOMAD.Label.talents"}}{{#if isEditMode}} - {{/if}}
@@ -36,7 +36,7 @@
{{localize "FTLNOMAD.Label.psionics"}}{{#if isEditMode}} - {{/if}}
@@ -70,7 +70,7 @@
{{localize "FTLNOMAD.Label.languages"}}{{#if isEditMode}} - {{/if}}
diff --git a/templates/creature-main.hbs b/templates/creature-main.hbs index f6e6f0f..48e0feb 100644 --- a/templates/creature-main.hbs +++ b/templates/creature-main.hbs @@ -11,7 +11,7 @@
{{localize "FTLNOMAD.Label.Stamina"}}
- Curr. {{formField systemFields.health.fields.staminaValue value=health.staminaValue}} + Curr. {{formField systemFields.health.fields.staminaValue value=system.health.staminaValue}} Max {{formField systemFields.health.fields.staminaMax value=system.health.staminaMax rootId=partId}}
diff --git a/templates/creature-trait.hbs b/templates/creature-trait.hbs index c9b028b..db48efc 100644 --- a/templates/creature-trait.hbs +++ b/templates/creature-trait.hbs @@ -2,7 +2,7 @@
{{localize "FTLNOMAD.Label.traits"}}{{#if isEditMode}} - {{/if}}
@@ -25,7 +25,7 @@
{{localize "FTLNOMAD.Label.abilities"}}{{#if isEditMode}} - {{/if}}
diff --git a/templates/vehicle-equipment.hbs b/templates/vehicle-equipment.hbs index b5c858a..bd725f7 100644 --- a/templates/vehicle-equipment.hbs +++ b/templates/vehicle-equipment.hbs @@ -2,7 +2,7 @@
{{localize "FTLNOMAD.Label.weapons"}}{{#if isEditMode}} - {{/if}}
@@ -29,7 +29,7 @@
{{localize "FTLNOMAD.Label.equipment"}}{{#if isEditMode}} - {{/if}}