mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-11 19:25:21 +01:00
Merge branch 'main' into release
This commit is contained in:
commit
9cb5112b62
23 changed files with 73 additions and 80 deletions
13
lang/en.json
13
lang/en.json
|
|
@ -386,7 +386,8 @@
|
||||||
"hideNewCountdowns": "Hide New Countdowns"
|
"hideNewCountdowns": "Hide New Countdowns"
|
||||||
},
|
},
|
||||||
"DaggerheartMenu": {
|
"DaggerheartMenu": {
|
||||||
"title": "GM Tools"
|
"title": "GM Tools",
|
||||||
|
"refreshFeatures": "Refresh Features"
|
||||||
},
|
},
|
||||||
"DeleteConfirmation": {
|
"DeleteConfirmation": {
|
||||||
"title": "Delete {type} - {name}",
|
"title": "Delete {type} - {name}",
|
||||||
|
|
@ -504,6 +505,7 @@
|
||||||
},
|
},
|
||||||
"navigateLevel": "To Level {level}",
|
"navigateLevel": "To Level {level}",
|
||||||
"navigateToLevelup": "Return To Levelup",
|
"navigateToLevelup": "Return To Levelup",
|
||||||
|
"finishLevelup": "Finish Levelup",
|
||||||
"navigateToSummary": "To Summary",
|
"navigateToSummary": "To Summary",
|
||||||
"options": {
|
"options": {
|
||||||
"trait": "Gain a +1 bonus to two unmarked character traits and mark them.",
|
"trait": "Gain a +1 bonus to two unmarked character traits and mark them.",
|
||||||
|
|
@ -2105,6 +2107,7 @@
|
||||||
},
|
},
|
||||||
"hope": "Hope",
|
"hope": "Hope",
|
||||||
"hordeHp": "Horde HP",
|
"hordeHp": "Horde HP",
|
||||||
|
"icon": "Icon",
|
||||||
"identify": "Identity",
|
"identify": "Identity",
|
||||||
"imagePath": "Image Path",
|
"imagePath": "Image Path",
|
||||||
"inactiveEffects": "Inactive Effects",
|
"inactiveEffects": "Inactive Effects",
|
||||||
|
|
@ -2141,6 +2144,7 @@
|
||||||
"recovery": "Recovery",
|
"recovery": "Recovery",
|
||||||
"refresh": "Refresh",
|
"refresh": "Refresh",
|
||||||
"reroll": "Reroll",
|
"reroll": "Reroll",
|
||||||
|
"rerolled": "Rerolled",
|
||||||
"rerollThing": "Reroll {thing}",
|
"rerollThing": "Reroll {thing}",
|
||||||
"resource": "Resource",
|
"resource": "Resource",
|
||||||
"roll": "Roll",
|
"roll": "Roll",
|
||||||
|
|
@ -2240,7 +2244,9 @@
|
||||||
"evolvedDrag": "Drag a form here to evolve it.",
|
"evolvedDrag": "Drag a form here to evolve it.",
|
||||||
"hybridize": "Hybridize",
|
"hybridize": "Hybridize",
|
||||||
"hybridizeFeatureTitle": "Hybrid Features",
|
"hybridizeFeatureTitle": "Hybrid Features",
|
||||||
"hybridizeDrag": "Drag a form here to hybridize it."
|
"hybridizeDrag": "Drag a form here to hybridize it.",
|
||||||
|
"mainTrait": "Main Trait",
|
||||||
|
"traitBonus": "Trait Bonus"
|
||||||
},
|
},
|
||||||
"Class": {
|
"Class": {
|
||||||
"hopeFeatures": "Hope Features",
|
"hopeFeatures": "Hope Features",
|
||||||
|
|
@ -2583,7 +2589,8 @@
|
||||||
"selectMember": "Select a Member",
|
"selectMember": "Select a Member",
|
||||||
"rerollTitle": "Reroll Group Roll",
|
"rerollTitle": "Reroll Group Roll",
|
||||||
"rerollContent": "Are you sure you want to reroll your {trait} check?",
|
"rerollContent": "Are you sure you want to reroll your {trait} check?",
|
||||||
"rerollTooltip": "Reroll"
|
"rerollTooltip": "Reroll",
|
||||||
|
"wholePartySelected": "The whole party is selected"
|
||||||
},
|
},
|
||||||
"healingRoll": {
|
"healingRoll": {
|
||||||
"title": "Heal - {damage}",
|
"title": "Heal - {damage}",
|
||||||
|
|
|
||||||
|
|
@ -118,7 +118,7 @@ export default class DhpDowntime extends HandlebarsApplicationMixin(ApplicationV
|
||||||
if (
|
if (
|
||||||
x.system.resource &&
|
x.system.resource &&
|
||||||
x.system.resource.type &&
|
x.system.resource.type &&
|
||||||
refreshIsAllowed([this.shortrest ? 'shortRest' : 'longRest'], action.uses.recovery)
|
refreshIsAllowed([this.shortrest ? 'shortRest' : 'longRest'], x.system.resource.recovery)
|
||||||
) {
|
) {
|
||||||
acc.push({
|
acc.push({
|
||||||
title: game.i18n.localize(`TYPES.Item.${x.type}`),
|
title: game.i18n.localize(`TYPES.Item.${x.type}`),
|
||||||
|
|
|
||||||
|
|
@ -139,10 +139,6 @@ export default class CharacterSheet extends DHBaseActorSheet {
|
||||||
element.addEventListener('change', this.updateItemResource.bind(this));
|
element.addEventListener('change', this.updateItemResource.bind(this));
|
||||||
element.addEventListener('click', e => e.stopPropagation());
|
element.addEventListener('click', e => e.stopPropagation());
|
||||||
});
|
});
|
||||||
htmlElement.querySelectorAll('.inventory-item-quantity').forEach(element => {
|
|
||||||
element.addEventListener('change', this.updateItemQuantity.bind(this));
|
|
||||||
element.addEventListener('click', e => e.stopPropagation());
|
|
||||||
});
|
|
||||||
|
|
||||||
// Add listener for armor marks input
|
// Add listener for armor marks input
|
||||||
htmlElement.querySelectorAll('.armor-marks-input').forEach(element => {
|
htmlElement.querySelectorAll('.armor-marks-input').forEach(element => {
|
||||||
|
|
@ -593,14 +589,6 @@ export default class CharacterSheet extends DHBaseActorSheet {
|
||||||
this.render();
|
this.render();
|
||||||
}
|
}
|
||||||
|
|
||||||
async updateItemQuantity(event) {
|
|
||||||
const item = await getDocFromElement(event.currentTarget);
|
|
||||||
if (!item) return;
|
|
||||||
|
|
||||||
await item.update({ 'system.quantity': event.currentTarget.value });
|
|
||||||
this.render();
|
|
||||||
}
|
|
||||||
|
|
||||||
async updateArmorMarks(event) {
|
async updateArmorMarks(event) {
|
||||||
const armor = this.document.system.armor;
|
const armor = this.document.system.armor;
|
||||||
if (!armor) return;
|
if (!armor) return;
|
||||||
|
|
|
||||||
|
|
@ -325,7 +325,8 @@ export default function DHApplicationMixin(Base) {
|
||||||
if (data.type === 'ActiveEffect' && data.fromInternal !== this.document.uuid) {
|
if (data.type === 'ActiveEffect' && data.fromInternal !== this.document.uuid) {
|
||||||
this.document.createEmbeddedDocuments('ActiveEffect', [data.data]);
|
this.document.createEmbeddedDocuments('ActiveEffect', [data.data]);
|
||||||
} else {
|
} else {
|
||||||
return super._onDrop(event);
|
// Fallback to super, but note that item sheets do not have this function
|
||||||
|
return super._onDrop?.(event);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,7 @@ export default class DHBaseActorSheet extends DHApplicationMixin(ActorSheetV2) {
|
||||||
value: context.source.system.gold[key]
|
value: context.source.system.gold[key]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
context.inventory.hasCurrency = Object.values(context.inventory.currencies).some((c) => c.enabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
return context;
|
return context;
|
||||||
|
|
@ -134,6 +135,10 @@ export default class DHBaseActorSheet extends DHApplicationMixin(ActorSheetV2) {
|
||||||
_attachPartListeners(partId, htmlElement, options) {
|
_attachPartListeners(partId, htmlElement, options) {
|
||||||
super._attachPartListeners(partId, htmlElement, options);
|
super._attachPartListeners(partId, htmlElement, options);
|
||||||
|
|
||||||
|
htmlElement.querySelectorAll('.inventory-item-quantity').forEach(element => {
|
||||||
|
element.addEventListener('change', this.updateItemQuantity.bind(this));
|
||||||
|
element.addEventListener('click', e => e.stopPropagation());
|
||||||
|
});
|
||||||
htmlElement.querySelectorAll('.item-button .action-uses-button').forEach(element => {
|
htmlElement.querySelectorAll('.item-button .action-uses-button').forEach(element => {
|
||||||
element.addEventListener('contextmenu', DHBaseActorSheet.#modifyActionUses);
|
element.addEventListener('contextmenu', DHBaseActorSheet.#modifyActionUses);
|
||||||
});
|
});
|
||||||
|
|
@ -172,6 +177,15 @@ export default class DHBaseActorSheet extends DHApplicationMixin(ActorSheetV2) {
|
||||||
return this._getContextMenuCommonOptions.call(this, { usable: true, toChat: true });
|
return this._getContextMenuCommonOptions.call(this, { usable: true, toChat: true });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
/* Application Listener Actions */
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
|
||||||
|
async updateItemQuantity(event) {
|
||||||
|
const item = await getDocFromElement(event.currentTarget);
|
||||||
|
await item?.update({ 'system.quantity': event.currentTarget.value });
|
||||||
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
/* Application Clicks Actions */
|
/* Application Clicks Actions */
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
|
|
|
||||||
|
|
@ -471,5 +471,5 @@ export function refreshIsAllowed(allowedTypes, typeToCheck) {
|
||||||
|
|
||||||
export async function getCritDamageBonus(formula) {
|
export async function getCritDamageBonus(formula) {
|
||||||
const critRoll = new Roll(formula);
|
const critRoll = new Roll(formula);
|
||||||
return critRoll.dice.reduce((acc, dice) => acc + dice.faces, 0);
|
return critRoll.dice.reduce((acc, dice) => acc + dice.faces * dice.number, 0);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
"type": "domainCard",
|
"type": "domainCard",
|
||||||
"folder": "rUGDM9JvGfhh9a2Y",
|
"folder": "rUGDM9JvGfhh9a2Y",
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p class=\"Card-Feature\"><em><strong>Arcane Deflection:</strong></em> Once per long rest, <strong>spend a Hope</strong> to negate the damage of an attack targeting you or an ally within Very Close range.</p><p class=\"Card-Feature\"><em><strong>Time Lock:</strong></em> Target an object within Far range. That object stops in time and space exactly where it is until your next rest. If a creature tries to move it, make a <strong>Spellcast Roll</strong> against them to maintain this spell.</p><p class=\"Card-Feature\"><em><strong>Wall of Flame:</strong></em> Make a <strong>Spellcast Roll (15)</strong>. On a success, create a wall of magical flame between two points within Far range. All creatures in its path must choose a side to be on, and anything that subsequently passes through the wall takes <strong>4d10+3</strong> magic damage.</p>",
|
"description": "<p class=\"Card-Feature\"><em><strong>Arcane Deflection:</strong></em> Once per long rest, <strong>spend a Hope</strong> to negate the damage of an attack targeting you or an ally within Very Close range.</p><p class=\"Card-Feature\"><em><strong>Time Lock:</strong></em> Target an object within Far range. That object stops in time and space exactly where it is until your next rest. If a creature tries to move it, make a <strong>Spellcast Roll</strong> against them to maintain this spell.</p><p><em><strong>Wall of Flame:</strong></em> Make a <strong>Spellcast Roll (15)</strong>. On a success, create a temporary wall of magical flame between two points within Far range. All creatures in its path must choose a side to be on, and anything that subsequently passes through the wall takes <strong>4d10+3</strong> magic damage.</p>",
|
||||||
"domain": "codex",
|
"domain": "codex",
|
||||||
"recallCost": 2,
|
"recallCost": 2,
|
||||||
"level": 4,
|
"level": 4,
|
||||||
|
|
@ -66,7 +66,7 @@
|
||||||
"type": "attack",
|
"type": "attack",
|
||||||
"_id": "K26kfjmTEH9zPMMO",
|
"_id": "K26kfjmTEH9zPMMO",
|
||||||
"systemPath": "actions",
|
"systemPath": "actions",
|
||||||
"description": "<p class=\"Card-Feature\">Make a <strong>Spellcast Roll (15)</strong>. On a success, create a wall of magical flame between two points within Far range. All creatures in its path must choose a side to be on, and anything that subsequently passes through the wall takes <strong>4d10+3</strong> magic damage.</p><p>@Template[type:ray|range:f]</p>",
|
"description": "<p class=\"Card-Feature\">Make a <strong>Spellcast Roll (15)</strong>. On a success, create a temporary wall of magical flame between two points within Far range. All creatures in its path must choose a side to be on, and anything that subsequently passes through the wall takes <strong>4d10+3</strong> magic damage.</p><p>@Template[type:ray|range:f]</p>",
|
||||||
"chatDisplay": true,
|
"chatDisplay": true,
|
||||||
"actionType": "action",
|
"actionType": "action",
|
||||||
"cost": [],
|
"cost": [],
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
"type": "domainCard",
|
"type": "domainCard",
|
||||||
"folder": "eg2vM8j9xhya9Rwa",
|
"folder": "eg2vM8j9xhya9Rwa",
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p class=\"Body-Foundation\"><strong>Spend a Hope</strong> and make an attack against all adversaries within your weapon’s range. Once per long rest, on a success against any targets, add up the damage dealt, then redistribute that damage however you wish between the targets you succeeded against. When you deal damage to a target, roll an additional damage die and add its result to the damage you deal to that target.</p>",
|
"description": "<p><strong>Spend a Hope</strong> and make an attack against all adversaries within your weapon’s range. Once per long rest, on a success against any targets, roll your weapon’s damage and distribute that damage however you wish between the targets you succeeded against. Before you deal damage to each target, roll an additional damage die and add its result to the damage you deal to them.</p>",
|
||||||
"domain": "bone",
|
"domain": "bone",
|
||||||
"recallCost": 3,
|
"recallCost": 3,
|
||||||
"level": 9,
|
"level": 9,
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
"type": "attack",
|
"type": "attack",
|
||||||
"_id": "yjEcSlzsWGX79gpB",
|
"_id": "yjEcSlzsWGX79gpB",
|
||||||
"systemPath": "actions",
|
"systemPath": "actions",
|
||||||
"description": "<p class=\"Body-Foundation\"><strong>Spend a Hope</strong> and make an attack against all adversaries within your weapon’s range. Once per long rest, on a success against any targets, add up the damage dealt, then redistribute that damage however you wish between the targets you succeeded against. When you deal damage to a target, roll an additional damage die and add its result to the damage you deal to that target.</p>",
|
"description": "",
|
||||||
"chatDisplay": true,
|
"chatDisplay": true,
|
||||||
"actionType": "action",
|
"actionType": "action",
|
||||||
"cost": [
|
"cost": [
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
"attached": [],
|
"attached": [],
|
||||||
"tier": 2,
|
"tier": 2,
|
||||||
"equipped": false,
|
"equipped": false,
|
||||||
"secondary": false,
|
"secondary": true,
|
||||||
"burden": "oneHanded",
|
"burden": "oneHanded",
|
||||||
"weaponFeatures": [
|
"weaponFeatures": [
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "daggerheart",
|
"id": "daggerheart",
|
||||||
"title": "Daggerheart",
|
"title": "Daggerheart",
|
||||||
"description": "An unofficial implementation of the Daggerheart system",
|
"description": "An unofficial implementation of the Daggerheart system",
|
||||||
"version": "1.3.0",
|
"version": "1.3.1",
|
||||||
"compatibility": {
|
"compatibility": {
|
||||||
"minimum": "13.346",
|
"minimum": "13.346",
|
||||||
"verified": "13.351",
|
"verified": "13.351",
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
<div class="suggested-trait-container">{{this}}</div>
|
<div class="suggested-trait-container">{{this}}</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
<button class="action-button" data-action="useSuggestedTraits">{{localize "Use"}}</button>
|
<button class="action-button" data-action="useSuggestedTraits">{{localize "DAGGERHEART.GENERAL.use"}}</button>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<div class="traits-inner-container">
|
<div class="traits-inner-container">
|
||||||
{{#each traits.values}}
|
{{#each traits.values}}
|
||||||
|
|
|
||||||
|
|
@ -93,13 +93,13 @@
|
||||||
|
|
||||||
<footer class="padded">
|
<footer class="padded">
|
||||||
<button type="button" data-action="takeDamage">
|
<button type="button" data-action="takeDamage">
|
||||||
{{localize "Take"}}
|
{{localize "DAGGERHEART.GENERAL.take"}}
|
||||||
<div class="damage-value {{#if this.reducedDamage}}reduced-value{{/if}}">{{this.damage}}</div>
|
<div class="damage-value {{#if this.reducedDamage}}reduced-value{{/if}}">{{this.damage}}</div>
|
||||||
{{#if this.reducedDamage}}
|
{{#if this.reducedDamage}}
|
||||||
<i class="fa-solid fa-arrow-right-long"></i>
|
<i class="fa-solid fa-arrow-right-long"></i>
|
||||||
<div class="damage-value">{{this.reducedDamage}}</div>
|
<div class="damage-value">{{this.reducedDamage}}</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{localize "Damage"}}
|
{{localize "DAGGERHEART.GENERAL.damage"}}
|
||||||
</button>
|
</button>
|
||||||
</footer>
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
{{#if (and @root.hasRoll @root.activeTagTeamRoll)}}
|
{{#if (and @root.hasRoll @root.activeTagTeamRoll)}}
|
||||||
<div class="tag-team-controller {{#if @root.tagTeamSelected}}selected{{/if}}" data-action="toggleTagTeamRoll">
|
<div class="tag-team-controller {{#if @root.tagTeamSelected}}selected{{/if}}" data-action="toggleTagTeamRoll">
|
||||||
<span><i class="{{ifThen @root.tagTeamSelected "fa-solid" "fa-regular"}} fa-circle"></i></span>
|
<span><i class="{{ifThen @root.tagTeamSelected "fa-solid" "fa-regular"}} fa-circle"></i></span>
|
||||||
<span class="label">{{localize "Tag Team Roll"}}</span>
|
<span class="label">{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.title"}}</span>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</header>
|
</header>
|
||||||
|
|
@ -40,7 +40,7 @@
|
||||||
|
|
||||||
<fieldset class="one-column">
|
<fieldset class="one-column">
|
||||||
<legend>{{localize "DAGGERHEART.UI.Chat.groupRoll.partyTeam"}}</legend>
|
<legend>{{localize "DAGGERHEART.UI.Chat.groupRoll.partyTeam"}}</legend>
|
||||||
<span class="tooltip-container" {{#if allSelected}}data-tooltip="{{localize "The whole party is selected"}}"{{/if}}>
|
<span class="tooltip-container" {{#if allSelected}}data-tooltip="{{localize "DAGGERHEART.UI.Chat.groupRoll.wholePartySelected"}}"{{/if}}>
|
||||||
<input type="text" class="team-push-input" {{disabled @root.allSelected}}/>
|
<input type="text" class="team-push-input" {{disabled @root.allSelected}}/>
|
||||||
</span>
|
</span>
|
||||||
{{#if (gt this.members.length 0)}}
|
{{#if (gt this.members.length 0)}}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<footer>
|
<footer>
|
||||||
<button type="button" data-action="doReroll" {{disabled disabledReroll}}>{{localize "Reroll"}} <i class="fa-solid fa-dice"></i></button>
|
<button type="button" data-action="doReroll" {{disabled disabledReroll}}>{{localize "DAGGERHEART.GENERAL.reroll"}} <i class="fa-solid fa-dice"></i></button>
|
||||||
<button type="button" data-action="save" {{disabled saveDisabled}}>{{localize "DAGGERHEART.APPLICATIONS.RerollDialog.acceptCurrentRolls"}}</button>
|
<button type="button" data-action="save" {{disabled saveDisabled}}>{{localize "DAGGERHEART.APPLICATIONS.RerollDialog.acceptCurrentRolls"}}</button>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<div class="levelup-navigation-actions {{#if (not this.showTabs)}}test{{/if}}">
|
<div class="levelup-navigation-actions {{#if (not this.showTabs)}}test{{/if}}">
|
||||||
{{#if this.navigate.previous.fromSummary}}
|
{{#if this.navigate.previous.fromSummary}}
|
||||||
<button data-action="activatePart" data-part="advancements">{{localize "DAGGERHEART.APPLICATIONS.Levelup.navigateToLevelup"}}</button>
|
<button data-action="activatePart" data-part="advancements">{{localize "DAGGERHEART.APPLICATIONS.Levelup.navigateToLevelup"}}</button>
|
||||||
<button data-action="save" {{#if (not this.levelup.allLevelsFinished)}}disabled{{/if}}>{{localize "Finish Levelup"}}</button>
|
<button data-action="save" {{#if (not this.levelup.allLevelsFinished)}}disabled{{/if}}>{{localize "DAGGERHEART.APPLICATIONS.Levelup.finishLevelup"}}</button>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{#if (not this.navigate.previous.disabled)}}
|
{{#if (not this.navigate.previous.disabled)}}
|
||||||
<button data-action="updateCurrentLevel" >{{this.navigate.previous.label}}</button>
|
<button data-action="updateCurrentLevel" >{{this.navigate.previous.label}}</button>
|
||||||
|
|
|
||||||
|
|
@ -5,14 +5,14 @@
|
||||||
>
|
>
|
||||||
{{#if hasIcon}}
|
{{#if hasIcon}}
|
||||||
<fieldset class="one-column">
|
<fieldset class="one-column">
|
||||||
<legend>{{localize "Icon"}}</legend>
|
<legend>{{localize "DAGGERHEART.GENERAL.icon"}}</legend>
|
||||||
|
|
||||||
<input type="text" name="icon" value="{{move.icon}}" />
|
<input type="text" name="icon" value="{{move.icon}}" />
|
||||||
</fieldset>
|
</fieldset>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<fieldset class="one-column">
|
<fieldset class="one-column">
|
||||||
<legend>{{localize "Description"}}</legend>
|
<legend>{{localize "DAGGERHEART.GENERAL.description"}}</legend>
|
||||||
|
|
||||||
<prose-mirror name="description" value="{{move.description}}">
|
<prose-mirror name="description" value="{{move.description}}">
|
||||||
{{{ move.enrichedDescription }}}
|
{{{ move.enrichedDescription }}}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="toggleable-row">
|
<div class="toggleable-row">
|
||||||
{{formGroup settingFields.schema.fields.currency.fields.coins.fields.label value=settingFields._source.currency.coins.label localize=true}}
|
{{formGroup settingFields.schema.fields.currency.fields.coins.fields.label value=settingFields._source.currency.coins.label localize=true}}
|
||||||
<input type="checkbox" {{checked settingFields._source.currency.coins.enabled}} disabled />
|
<input type="checkbox" name="currency.coins.enabled" {{checked settingFields._source.currency.coins.enabled}} />
|
||||||
</div>
|
</div>
|
||||||
<div class="toggleable-row">
|
<div class="toggleable-row">
|
||||||
{{formGroup settingFields.schema.fields.currency.fields.handfuls.fields.label value=settingFields._source.currency.handfuls.label localize=true}}
|
{{formGroup settingFields.schema.fields.currency.fields.handfuls.fields.label value=settingFields._source.currency.handfuls.label localize=true}}
|
||||||
|
|
|
||||||
|
|
@ -12,16 +12,18 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="currency-section">
|
{{#if this.inventory.hasCurrency}}
|
||||||
{{#each this.inventory.currencies as | currency |}}
|
<div class="currency-section">
|
||||||
{{#if currency.enabled}}
|
{{#each this.inventory.currencies as | currency |}}
|
||||||
<div class="input">
|
{{#if currency.enabled}}
|
||||||
<span>{{localize currency.label}}</span>
|
<div class="input">
|
||||||
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
|
<span>{{localize currency.label}}</span>
|
||||||
</div>
|
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
|
||||||
{{/if}}
|
</div>
|
||||||
{{/each}}
|
{{/if}}
|
||||||
</div>
|
{{/each}}
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
<div class="items-section">
|
<div class="items-section">
|
||||||
{{> 'daggerheart.inventory-items'
|
{{> 'daggerheart.inventory-items'
|
||||||
|
|
|
||||||
|
|
@ -15,37 +15,18 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="currency-section">
|
{{#if inventory.hasCurrency}}
|
||||||
{{#each this.inventory.currencies as | currency |}}
|
<div class="currency-section">
|
||||||
{{#if currency.enabled}}
|
{{#each this.inventory.currencies as | currency |}}
|
||||||
<div class="input">
|
{{#if currency.enabled}}
|
||||||
<span>{{localize currency.label}}</span>
|
<div class="input">
|
||||||
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
|
<span>{{localize currency.label}}</span>
|
||||||
</div>
|
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
|
||||||
{{/if}}
|
</div>
|
||||||
{{/each}}
|
{{/if}}
|
||||||
{{!-- <div class="input">
|
{{/each}}
|
||||||
<span>{{localize this.inventory.currency.coins}}</span>
|
|
||||||
{{formInput systemFields.gold.fields.coins value=source.system.gold.coins enriched=source.system.gold.coins
|
|
||||||
localize=true toggled=true}}
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input">
|
{{/if}}
|
||||||
<span>{{localize this.inventory.currency.handfuls}}</span>
|
|
||||||
{{formInput systemFields.gold.fields.handfuls value=source.system.gold.handfuls
|
|
||||||
enriched=source.system.gold.handfuls localize=true toggled=true}}
|
|
||||||
</div>
|
|
||||||
<div class="input">
|
|
||||||
<span>{{localize this.inventory.currency.bags}}</span>
|
|
||||||
{{formInput systemFields.gold.fields.bags value=source.system.gold.bags enriched=source.system.gold.bags
|
|
||||||
localize=true toggled=true}}
|
|
||||||
</div>
|
|
||||||
<div class="input">
|
|
||||||
<span>{{localize this.inventory.currency.chests}}</span>
|
|
||||||
{{formInput systemFields.gold.fields.chests value=source.system.gold.chests
|
|
||||||
enriched=source.system.gold.chests localize=true toggled=true}}
|
|
||||||
</div> --}}
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="items-section">
|
<div class="items-section">
|
||||||
{{> 'daggerheart.inventory-items'
|
{{> 'daggerheart.inventory-items'
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<h2>{{localize "DAGGERHEART.APPLICATIONS.DaggerheartMenu.title"}}</h2>
|
<h2>{{localize "DAGGERHEART.APPLICATIONS.DaggerheartMenu.title"}}</h2>
|
||||||
|
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend>{{localize "Refresh Features"}}</legend>
|
<legend>{{localize "DAGGERHEART.APPLICATIONS.DaggerheartMenu.refreshFeatures"}}</legend>
|
||||||
|
|
||||||
<div class="menu-refresh-container">
|
<div class="menu-refresh-container">
|
||||||
<div class="menu-refresh-inner-container">
|
<div class="menu-refresh-inner-container">
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@
|
||||||
class="dice reroll-button {{../dice}}"
|
class="dice reroll-button {{../dice}}"
|
||||||
data-die-index="0" data-type="damage" data-damage-type="{{@../../../key}}" data-part="{{@../../key}}" data-dice="{{@../key}}" data-result="{{@key}}"
|
data-die-index="0" data-type="damage" data-damage-type="{{@../../../key}}" data-part="{{@../../key}}" data-dice="{{@../key}}" data-result="{{@key}}"
|
||||||
>
|
>
|
||||||
{{#if hasRerolls}}<i class="fa-solid fa-dice dice-rerolled" data-tooltip="{{localize "Rerolled"}}"></i>{{/if}}
|
{{#if hasRerolls}}<i class="fa-solid fa-dice dice-rerolled" data-tooltip="{{localize "DAGGERHEART.GENERAL.rerolled"}}"></i>{{/if}}
|
||||||
{{result}}
|
{{result}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -9,19 +9,19 @@
|
||||||
<div class="tooltip-information-section spaced">
|
<div class="tooltip-information-section spaced">
|
||||||
{{#with item.system.beastformAttackData}}
|
{{#with item.system.beastformAttackData}}
|
||||||
<div class="tooltip-information">
|
<div class="tooltip-information">
|
||||||
<label>{{localize "Main Trait"}}</label>
|
<label>{{localize "DAGGERHEART.ITEMS.Beastform.mainTrait"}}</label>
|
||||||
<div>{{this.trait}}</div>
|
<div>{{this.trait}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tooltip-information">
|
<div class="tooltip-information">
|
||||||
<label>{{localize "Trait Bonus"}}</label>
|
<label>{{localize "DAGGERHEART.ITEMS.Beastform.traitBonus"}}</label>
|
||||||
<div>{{this.traitBonus}}</div>
|
<div>{{this.traitBonus}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tooltip-information">
|
<div class="tooltip-information">
|
||||||
<label>{{localize "Evasion"}}</label>
|
<label>{{localize "DAGGERHEART.GENERAL.evasion"}}</label>
|
||||||
<div>{{this.evasionBonus}}</div>
|
<div>{{this.evasionBonus}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tooltip-information">
|
<div class="tooltip-information">
|
||||||
<label>{{localize "Damage"}}</label>
|
<label>{{localize "DAGGERHEART.GENERAL.damage"}}</label>
|
||||||
<div>{{concat this.damageDice ' ' this.damageBonus}} <i class="fa-solid fa-hand-fist"></i></div>
|
<div>{{concat this.damageDice ' ' this.damageBonus}} <i class="fa-solid fa-hand-fist"></i></div>
|
||||||
</div>
|
</div>
|
||||||
{{/with}}
|
{{/with}}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue