mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-04-21 15:03:37 +02:00
Fixes
This commit is contained in:
parent
d7b37f8178
commit
38edbaf328
38 changed files with 171 additions and 66 deletions
37
lang/en.json
37
lang/en.json
|
|
@ -198,7 +198,10 @@
|
|||
"type": { "label": "Type" }
|
||||
},
|
||||
"hordeDamage": "Horde Damage",
|
||||
"horderHp": "Horde/HP"
|
||||
"horderHp": "Horde/HP",
|
||||
"adversaryReactionRoll": {
|
||||
"headerTitle": "Adversary Reaction Roll"
|
||||
}
|
||||
},
|
||||
"Character": {
|
||||
"advantageSources": {
|
||||
|
|
@ -440,6 +443,10 @@
|
|||
"defaultOwnershipTooltip": "The default player ownership of countdowns",
|
||||
"hideNewCountdowns": "Hide New Countdowns"
|
||||
},
|
||||
"CreateItemDialog": {
|
||||
"createItem": "Create Item",
|
||||
"browseCompendium": "Browse Compendium"
|
||||
},
|
||||
"DaggerheartMenu": {
|
||||
"title": "GM Tools",
|
||||
"refreshFeatures": "Refresh Features"
|
||||
|
|
@ -653,6 +660,12 @@
|
|||
"noPlayers": "No players to assign ownership to",
|
||||
"default": "Default Ownership"
|
||||
},
|
||||
"PendingReactionsDialog": {
|
||||
"title": "Pending Reaction Rolls Found",
|
||||
"unfinishedRolls": "Some Tokens still need to roll their Reaction Roll.",
|
||||
"confirmation": "Are you sure you want to continue ?",
|
||||
"warning": "Undone reaction rolls will be considered as failed"
|
||||
},
|
||||
"ReactionRoll": {
|
||||
"title": "Reaction Roll: {trait}"
|
||||
},
|
||||
|
|
@ -684,7 +697,13 @@
|
|||
"damageNotRolled": "Damage not rolled in chat message yet",
|
||||
"insufficientHope": "The initiating character doesn't have enough hope",
|
||||
"createTagTeam": "Create TagTeam Roll",
|
||||
"chatMessageRollTitle": "Roll"
|
||||
"chatMessageRollTitle": "Roll",
|
||||
"cancelConfirmTitle": "Cancel Tag Team Roll",
|
||||
"cancelConfirmText": "Are you sure you want to cancel the Tag Team Roll? This will close it for all other players too.",
|
||||
"hints": {
|
||||
"completeRolls": "Set up and complete the rolls for the characters",
|
||||
"selectRoll": "Select which roll value to be used for the Tag Team"
|
||||
}
|
||||
},
|
||||
"TokenConfig": {
|
||||
"actorSizeUsed": "Actor size is set, determining the dimensions"
|
||||
|
|
@ -1215,6 +1234,11 @@
|
|||
"on": "On",
|
||||
"onWithToggle": "On With Toggle"
|
||||
},
|
||||
"SceneRangeMeasurementTypes": {
|
||||
"disable": "Disable Daggerheart Range Measurement",
|
||||
"default": "Default",
|
||||
"custom": "Custom"
|
||||
},
|
||||
"SelectAction": {
|
||||
"selectType": "Select Action Type",
|
||||
"selectAction": "Action Selection"
|
||||
|
|
@ -2305,6 +2329,7 @@
|
|||
"multiclass": "Multiclass",
|
||||
"newCategory": "New Category",
|
||||
"newThing": "New {thing}",
|
||||
"next": "Next",
|
||||
"none": "None",
|
||||
"noTarget": "No current target",
|
||||
"partner": "Partner",
|
||||
|
|
@ -2332,6 +2357,7 @@
|
|||
"scalable": "Scalable",
|
||||
"scars": "Scars",
|
||||
"situationalBonus": "Situational Bonus",
|
||||
"searchPlaceholder": "Search...",
|
||||
"spent": "Spent",
|
||||
"step": "Step",
|
||||
"stress": "Stress",
|
||||
|
|
@ -2915,6 +2941,9 @@
|
|||
"resourceRoll": {
|
||||
"playerMessage": "{user} rerolled their {name}"
|
||||
},
|
||||
"saveRoll": {
|
||||
"reactionRollAllTargets": "Reaction Roll All Targets"
|
||||
},
|
||||
"tagTeam": {
|
||||
"title": "Tag Team",
|
||||
"membersTitle": "Members"
|
||||
|
|
@ -2943,7 +2972,6 @@
|
|||
"title": "Daggerheart Compendium Browser",
|
||||
"hint": "Select a Folder in sidebar to start browsing through the compendium",
|
||||
"browserSettings": "Browser Settings",
|
||||
"searchPlaceholder": "Search...",
|
||||
"columnName": "Name",
|
||||
"tooltipFilters": "Filters",
|
||||
"tooltipErase": "Erase",
|
||||
|
|
@ -2979,7 +3007,7 @@
|
|||
"weapons": "Weapons",
|
||||
"armors": "Armors",
|
||||
"consumables": "Consumables",
|
||||
"loots": "Loots"
|
||||
"loots": "Loot"
|
||||
}
|
||||
},
|
||||
"Notifications": {
|
||||
|
|
@ -3070,6 +3098,7 @@
|
|||
"companion": "Level {level} - {partner}",
|
||||
"companionNoPartner": "No Partner",
|
||||
"duplicateToNewTier": "Duplicate to New Tier",
|
||||
"createAdversary": "Create Adversary",
|
||||
"pickTierTitle": "Pick a new tier for this adversary"
|
||||
},
|
||||
"daggerheartMenu": {
|
||||
|
|
|
|||
|
|
@ -118,8 +118,13 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App
|
|||
break;
|
||||
case 'footer':
|
||||
partContext.buttons = [
|
||||
{ type: 'button', action: 'reset', icon: 'fa-solid fa-arrow-rotate-left', label: 'Reset' },
|
||||
{ type: 'submit', icon: 'fa-solid fa-floppy-disk', label: 'Save Changes' }
|
||||
{
|
||||
type: 'button',
|
||||
action: 'reset',
|
||||
icon: 'fa-solid fa-arrow-rotate-left',
|
||||
label: game.i18n.localize('ACTIONS.Reset')
|
||||
},
|
||||
{ type: 'submit', icon: 'fa-solid fa-floppy-disk', label: game.i18n.localize('EDITOR.Save') }
|
||||
];
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -217,8 +217,8 @@ export default class AdversarySheet extends DHBaseActorSheet {
|
|||
static #reactionRoll(event) {
|
||||
const config = {
|
||||
event,
|
||||
title: `Reaction Roll: ${this.actor.name}`,
|
||||
headerTitle: 'Adversary Reaction Roll',
|
||||
title: game.i18n.localize('DAGGERHEART.GENERAL.reactionRoll'),
|
||||
headerTitle: game.i18n.localize('DAGGERHEART.ACTORS.Adversary.adversaryReactionRoll.headerTitle'),
|
||||
roll: {
|
||||
type: 'trait'
|
||||
},
|
||||
|
|
|
|||
|
|
@ -229,7 +229,7 @@ export default class Party extends DHBaseActorSheet {
|
|||
title: game.i18n.localize(`DAGGERHEART.APPLICATIONS.Downtime.${button.dataset.type}.title`),
|
||||
icon: button.dataset.type === 'shortRest' ? 'fa-solid fa-utensils' : 'fa-solid fa-bed'
|
||||
},
|
||||
content: 'This will trigger a dialog to players make their downtime moves, are you sure?',
|
||||
content: game.i18n.localize('DAGGERHEART.ACTORS.Party.triggerRestContent'),
|
||||
classes: ['daggerheart', 'dialog', 'dh-style']
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -652,12 +652,12 @@ export default function DHApplicationMixin(Base) {
|
|||
buttons: [
|
||||
{
|
||||
action: 'create',
|
||||
label: 'Create Item',
|
||||
label: game.i18n.localize('DAGGERHEART.APPLICATIONS.CreateItemDialog.createItem'),
|
||||
icon: 'fa-solid fa-plus'
|
||||
},
|
||||
{
|
||||
action: 'browse',
|
||||
label: 'Browse Compendium',
|
||||
label: game.i18n.localize('DAGGERHEART.APPLICATIONS.CreateItemDialog.browseCompendium'),
|
||||
icon: 'fa-solid fa-book'
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ export default class DhActorDirectory extends foundry.applications.sidebar.tabs.
|
|||
window: { title: 'DAGGERHEART.UI.Sidebar.actorDirectory.pickTierTitle' },
|
||||
content,
|
||||
ok: {
|
||||
label: 'Create Adversary',
|
||||
label: 'DAGGERHEART.UI.Sidebar.actorDirectory.createAdversary',
|
||||
callback: (event, button, dialog) => Number(button.form.elements.tier.value)
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ export default class FearTracker extends HandlebarsApplicationMixin(ApplicationV
|
|||
tag: 'div',
|
||||
window: {
|
||||
frame: true,
|
||||
title: 'Fear',
|
||||
title: 'DAGGERHEART.GENERAL.fear',
|
||||
positioned: true,
|
||||
resizable: true,
|
||||
minimizable: false
|
||||
|
|
|
|||
|
|
@ -207,8 +207,23 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) {
|
|||
label: game.i18n.localize(col.label)
|
||||
}));
|
||||
|
||||
const splitPath = folderId?.split('.') ?? [];
|
||||
const { pathLabels } = splitPath.reduce(
|
||||
(acc, curr) => {
|
||||
acc.currentPath = !acc.currentPath ? curr : [acc.currentPath, curr].join('.');
|
||||
if (curr === 'folder') return acc;
|
||||
|
||||
const label = foundry.utils.getProperty(this.config, acc.currentPath)?.label;
|
||||
if (label) acc.pathLabels.push(game.i18n.localize(label));
|
||||
|
||||
return acc;
|
||||
},
|
||||
{ pathLabels: [], currentPath: '' }
|
||||
);
|
||||
|
||||
this.selectedMenu = {
|
||||
path: folderId?.split('.') ?? [],
|
||||
path: splitPath,
|
||||
pathLabels: pathLabels,
|
||||
data: {
|
||||
...folderData,
|
||||
columns: columns
|
||||
|
|
|
|||
|
|
@ -188,7 +188,7 @@ export default class FilterMenu extends foundry.applications.ux.ContextMenu {
|
|||
}));
|
||||
|
||||
const damageTypeFilter = Object.values(CONFIG.DH.GENERAL.damageTypes).map(({ id, abbreviation }) => ({
|
||||
group: 'Damage Type', //TODO localize
|
||||
group: game.i18n.localize('DAGGERHEART.GENERAL.damageType'),
|
||||
name: game.i18n.localize(abbreviation),
|
||||
filter: {
|
||||
field: 'system.damage.type',
|
||||
|
|
|
|||
|
|
@ -943,14 +943,14 @@ export const countdownAppMode = {
|
|||
export const sceneRangeMeasurementSetting = {
|
||||
disable: {
|
||||
id: 'disable',
|
||||
label: 'Disable Daggerheart Range Measurement'
|
||||
label: 'DAGGERHEART.CONFIG.SceneRangeMeasurementTypes.disable'
|
||||
},
|
||||
default: {
|
||||
id: 'default',
|
||||
label: 'Default'
|
||||
label: 'DAGGERHEART.CONFIG.SceneRangeMeasurementTypes.default'
|
||||
},
|
||||
custom: {
|
||||
id: 'custom',
|
||||
label: 'Custom'
|
||||
label: 'DAGGERHEART.CONFIG.SceneRangeMeasurementTypes.custom'
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -7,7 +7,12 @@ export const typeConfig = {
|
|||
},
|
||||
{
|
||||
key: 'system.type',
|
||||
label: 'DAGGERHEART.GENERAL.type'
|
||||
label: 'DAGGERHEART.GENERAL.type',
|
||||
format: type => {
|
||||
if (!type) return '-';
|
||||
|
||||
return CONFIG.DH.ACTOR.allAdversaryTypes()[type].label;
|
||||
}
|
||||
}
|
||||
],
|
||||
filters: [
|
||||
|
|
@ -318,7 +323,14 @@ export const typeConfig = {
|
|||
},
|
||||
{
|
||||
key: 'system.domains',
|
||||
label: 'DAGGERHEART.GENERAL.Domain.plural'
|
||||
label: 'DAGGERHEART.GENERAL.Domain.plural',
|
||||
format: domains => {
|
||||
const config = CONFIG.DH.DOMAIN.allDomains();
|
||||
return domains
|
||||
.map(x => (x ? game.i18n.localize(config[x].label) : null))
|
||||
.filter(x => x)
|
||||
.join(', ');
|
||||
}
|
||||
}
|
||||
],
|
||||
filters: [
|
||||
|
|
@ -367,7 +379,8 @@ export const typeConfig = {
|
|||
},
|
||||
{
|
||||
key: 'system.spellcastingTrait',
|
||||
label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait'
|
||||
label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait',
|
||||
format: trait => (trait ? `DAGGERHEART.CONFIG.Traits.${trait}.name` : '-')
|
||||
}
|
||||
],
|
||||
filters: [
|
||||
|
|
|
|||
|
|
@ -46,18 +46,14 @@ export const gameSettings = {
|
|||
export const actionAutomationChoices = {
|
||||
never: {
|
||||
id: 'never',
|
||||
label: 'Never'
|
||||
label: 'DAGGERHEART.CONFIG.ActionAutomationChoices.never'
|
||||
},
|
||||
showDialog: {
|
||||
id: 'showDialog',
|
||||
label: 'Show Dialog only'
|
||||
label: 'DAGGERHEART.CONFIG.ActionAutomationChoices.showDialog'
|
||||
},
|
||||
// npcOnly: {
|
||||
// id: "npcOnly",
|
||||
// label: "Always for non-characters"
|
||||
// },
|
||||
always: {
|
||||
id: 'always',
|
||||
label: 'Always'
|
||||
label: 'DAGGERHEART.CONFIG.ActionAutomationChoices.always'
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -295,7 +295,7 @@ export class DHDamageData extends DHResourceData {
|
|||
required: true
|
||||
}),
|
||||
{
|
||||
label: 'Type'
|
||||
label: game.i18n.localize('DAGGERHEART.GENERAL.type')
|
||||
}
|
||||
)
|
||||
};
|
||||
|
|
|
|||
47
module/data/tagTeamData.mjs
Normal file
47
module/data/tagTeamData.mjs
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
export default class TagTeamData extends foundry.abstract.DataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields;
|
||||
|
||||
return {
|
||||
initiator: new fields.SchemaField(
|
||||
{
|
||||
memberId: new fields.StringField({
|
||||
required: true,
|
||||
label: 'DAGGERHEART.APPLICATIONS.TagTeamSelect.FIELDS.initiator.memberId.label'
|
||||
}),
|
||||
cost: new fields.NumberField({
|
||||
integer: true,
|
||||
initial: 3,
|
||||
label: 'DAGGERHEART.APPLICATIONS.TagTeamSelect.FIELDS.initiator.cost.label'
|
||||
})
|
||||
},
|
||||
{ nullable: true, initial: null }
|
||||
),
|
||||
members: new fields.TypedObjectField(new fields.EmbeddedDataField(MemberData))
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
export class MemberData extends foundry.abstract.DataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields;
|
||||
|
||||
return {
|
||||
name: new fields.StringField({ required: true }),
|
||||
img: new fields.StringField({ required: true }),
|
||||
rollType: new fields.StringField({
|
||||
required: true,
|
||||
choices: CONFIG.DH.GENERAL.tagTeamRollTypes,
|
||||
initial: CONFIG.DH.GENERAL.tagTeamRollTypes.trait.id,
|
||||
label: game.i18n.localize('DAGGERHEART.APPLICATIONS.TagTeamSelect.rollType')
|
||||
}),
|
||||
rollChoice: new fields.StringField({ nullable: true, initial: null }),
|
||||
rollData: new fields.JSONField({ nullable: true, initial: null }),
|
||||
selected: new fields.BooleanField({ initial: false })
|
||||
};
|
||||
}
|
||||
|
||||
get roll() {
|
||||
return this.rollData ? CONFIG.Dice.daggerheart.DualityRoll.fromData(this.rollData) : null;
|
||||
}
|
||||
}
|
||||
|
|
@ -197,8 +197,8 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage {
|
|||
const pendingingSaves = targets.filter(t => t.saved.success === null);
|
||||
if (pendingingSaves.length) {
|
||||
const confirm = await foundry.applications.api.DialogV2.confirm({
|
||||
window: { title: 'Pending Reaction Rolls found' },
|
||||
content: `<p>Some Tokens still need to roll their Reaction Roll.</p><p>Are you sure you want to continue ?</p><p><i>Undone reaction rolls will be considered as failed</i></p>`
|
||||
window: { title: game.i18n.localize('DAGGERHEART.APPLICATIONS.PendingReactionsDialog.title') },
|
||||
content: `<p>${game.i18n.localize('DAGGERHEART.APPLICATIONS.PendingReactionsDialog.unfinishedRolls')}</p><p>${game.i18n.localize('DAGGERHEART.APPLICATIONS.PendingReactionsDialog.confirmation')}</p><p><i>${game.i18n.localize('DAGGERHEART.APPLICATIONS.PendingReactionsDialog.warning')}</i></p>`
|
||||
});
|
||||
if (!confirm) return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<section class="creation-action-footer">
|
||||
<button data-action="close">{{localize "Cancel"}}</button>
|
||||
<button data-action="close">{{localize "COMMON.Cancel"}}</button>
|
||||
{{#if isLastTab}}
|
||||
<button data-action="finish">{{localize "DAGGERHEART.APPLICATIONS.CharacterCreation.finishCreation"}}</button>
|
||||
{{else}}
|
||||
<button data-action="setupGoNext" {{disabled nextDisabled}}>{{localize "Next"}}</button>
|
||||
<button data-action="setupGoNext" {{disabled nextDisabled}}>{{localize "DAGGERHEART.GENERAL.next"}}</button>
|
||||
{{/if}}
|
||||
</section>
|
||||
|
|
@ -28,6 +28,6 @@
|
|||
</div>
|
||||
</fieldset>
|
||||
|
||||
<button type="button" data-action="finishSelection">{{localize "Reset"}}</button>
|
||||
<button type="button" data-action="finishSelection">{{localize "ACTIONS.Reset"}}</button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
</div>
|
||||
<footer class="flexrow">
|
||||
<button data-action="close">
|
||||
<span>{{localize "Cancel"}}</span>
|
||||
<span>{{localize "COMMON.Cancel"}}</span>
|
||||
</button>
|
||||
<button data-action="takeMove" {{#if (not this.selectedMove)}}disabled{{/if}}>
|
||||
<span>
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
</span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="text" value="{{extraFormula}}" name="roll.{{ @index }}.extraFormula" placeholder="Situational Bonus">
|
||||
<input type="text" value="{{extraFormula}}" name="roll.{{ @index }}.extraFormula" placeholder="{{localize "DAGGERHEART.GENERAL.situationalBonus"}}">
|
||||
</div>
|
||||
{{/each}}
|
||||
{{#unless (empty @root.modifiers)}}
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@
|
|||
</select>
|
||||
{{/if}}
|
||||
{{#if (eq @root.rollType 'DualityRoll')}}<span class="formula-label">{{localize "DAGGERHEART.GENERAL.situationalBonus"}}</span>{{/if}}
|
||||
<input type="text" value="{{extraFormula}}" name="extraFormula" placeholder="{{#if (eq @root.rollType 'DualityRoll')}}Ex: 1d6 + 5{{else}}Situational Bonus{{/if}}">
|
||||
<input type="text" value="{{extraFormula}}" name="extraFormula" placeholder="{{#if (eq @root.rollType 'DualityRoll')}}Ex: 1d6 + 5{{else}}{{localize "DAGGERHEART.GENERAL.situationalBonus"}}{{/if}}">
|
||||
</fieldset>
|
||||
{{/if}}
|
||||
{{/unless}}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
</fieldset>
|
||||
|
||||
<footer>
|
||||
<button type="button" data-action="close">{{localize "Cancel"}}</button>
|
||||
<button type="button" data-action="close">{{localize "COMMON.Cancel"}}</button>
|
||||
<button type="button" data-action="takeDowntime" {{#if disabledDowntime}}disabled{{/if}}>{{localize "DAGGERHEART.APPLICATIONS.Downtime.takeDowntime"}}</button>
|
||||
</footer>
|
||||
</div>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<div class="footer">
|
||||
<button data-action="close">{{localize "Cancel"}}</button>
|
||||
<button data-action="close">{{localize "COMMON.Cancel"}}</button>
|
||||
<button type="button" data-action="finishSelection">{{localize "DAGGERHEART.APPLICATIONS.ImageSelect.selectImage"}}</button>
|
||||
</div>
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
</div>
|
||||
|
||||
<footer>
|
||||
<button data-action="close">{{localize "Cancel"}}</button>
|
||||
<button data-action="close">{{localize "COMMON.Cancel"}}</button>
|
||||
<button data-action="save" {{disabled multiclassDisabled}}>{{localize "DAGGERHEART.GENERAL.multiclass"}}</button>
|
||||
</footer>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
{{/if}}
|
||||
{{#unless levelupAuto}}
|
||||
<div class="levelup-footer">
|
||||
<button type="button" data-action="close">{{localize "Cancel"}}</button>
|
||||
<button type="button" data-action="close">{{localize "COMMON.Cancel"}}</button>
|
||||
<button type="button" data-action="save">{{localize "Save"}}</button>
|
||||
</div>
|
||||
{{/unless}}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
<footer class="form-footer">
|
||||
<button data-action="reset">
|
||||
<i class="fa-solid fa-arrow-rotate-left"></i>
|
||||
<span>{{localize "Reset"}}</span>
|
||||
<span>{{localize "ACTIONS.Reset"}}</span>
|
||||
</button>
|
||||
<button data-action="save" >
|
||||
<i class="fa-solid fa-floppy-disk"></i>
|
||||
<span>{{localize "Save Changes"}}</span>
|
||||
<span>{{localize "EDITOR.Save"}}</span>
|
||||
</button>
|
||||
</footer>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<section class='tab-form-footer spaced'>
|
||||
<button data-action="close">{{localize "Cancel"}}</button>
|
||||
<button data-action="close">{{localize "COMMON.Cancel"}}</button>
|
||||
<button data-action="saveForm"><i class="fa-solid fa-floppy-disk"></i> {{localize "Save"}}</button>
|
||||
</section>
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
<footer class="form-footer">
|
||||
<button type="button" data-action="reset">
|
||||
<i class="fa-solid fa-arrow-rotate-left"></i>
|
||||
<span>{{localize "Reset"}}</span>
|
||||
<span>{{localize "ACTIONS.Reset"}}</span>
|
||||
</button>
|
||||
<button type="button" data-action="save" >
|
||||
<i class="fa-solid fa-floppy-disk"></i>
|
||||
<span>{{localize "Save Changes"}}</span>
|
||||
<span>{{localize "EDITOR.Save"}}</span>
|
||||
</button>
|
||||
</footer>
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
<footer class="form-footer">
|
||||
<button data-action="reset">
|
||||
<i class="fa-solid fa-arrow-rotate-left"></i>
|
||||
<span>{{localize "Reset"}}</span>
|
||||
<span>{{localize "ACTIONS.Reset"}}</span>
|
||||
</button>
|
||||
<button data-action="save" >
|
||||
<i class="fa-solid fa-floppy-disk"></i>
|
||||
<span>{{localize "Save Changes"}}</span>
|
||||
<span>{{localize "EDITOR.Save"}}</span>
|
||||
</button>
|
||||
</footer>
|
||||
|
|
@ -32,11 +32,11 @@
|
|||
<footer class="form-footer">
|
||||
<button data-action="reset">
|
||||
<i class="fa-solid fa-arrow-rotate-left"></i>
|
||||
<span>{{localize "Reset"}}</span>
|
||||
<span>{{localize "ACTIONS.ResetReset"}}</span>
|
||||
</button>
|
||||
<button data-action="save" >
|
||||
<i class="fa-solid fa-floppy-disk"></i>
|
||||
<span>{{localize "Save Changes"}}</span>
|
||||
<span>{{localize "EDITOR.Save"}}</span>
|
||||
</button>
|
||||
</footer>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<div class="icon">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</div>
|
||||
<input type="search" name="search" class="search-inventory" placeholder="Search...">
|
||||
<input type="search" name="search" class="search-inventory" placeholder="{{localize "DAGGERHEART.GENERAL.searchPlaceholder"}}">
|
||||
</div>
|
||||
<a class="filter-button">
|
||||
<i class="fa-solid fa-filter"></i>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<div class="icon">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</div>
|
||||
<input type="search" name="search" class="search-loadout" placeholder="Search...">
|
||||
<input type="search" name="search" class="search-loadout" placeholder="{{localize "DAGGERHEART.GENERAL.searchPlaceholder"}}">
|
||||
</div>
|
||||
<a class="filter-button">
|
||||
<i class="fa-solid fa-filter"></i>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<div class="icon">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</div>
|
||||
<input type="search" name="search" class="search-inventory" placeholder="Search...">
|
||||
<input type="search" name="search" class="search-inventory" placeholder="{{localize "DAGGERHEART.GENERAL.searchPlaceholder"}}">
|
||||
</div>
|
||||
<a class="filter-button">
|
||||
<i class="fa-solid fa-filter"></i>
|
||||
|
|
|
|||
|
|
@ -7,11 +7,11 @@
|
|||
<div class="actions-section">
|
||||
<button data-action="tagTeamRoll">
|
||||
<i class="fa-solid fa-user-group"></i>
|
||||
<span>Tag Team Roll</span>
|
||||
<span>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.title"}}</span>
|
||||
</button>
|
||||
<button data-action="groupRoll">
|
||||
<i class="fa-solid fa-users"></i>
|
||||
<span>Group Roll</span>
|
||||
<span>{{localize "DAGGERHEART.APPLICATIONS.GroupRollSelect.title"}}</span>
|
||||
</button>
|
||||
{{!-- NOT YET IMPLEMENTED --}}
|
||||
{{!-- <button>
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
<div class="roll-part-header"><div></div></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if (and hasSave currentTargets.length)}}<div class="roll-part-extra roll-all-save-button">Reaction Roll All Targets<i class="fa-solid fa-shield fa-lg"></i></div>{{/if}}
|
||||
{{#if (and hasSave currentTargets.length)}}<div class="roll-part-extra roll-all-save-button">{{localize "DAGGERHEART.UI.Chat.saveRoll.reactionRollAllTargets"}}<i class="fa-solid fa-shield fa-lg"></i></div>{{/if}}
|
||||
{{#each currentTargets}}
|
||||
<div class="roll-target" data-token="{{id}}">
|
||||
<img class="target-img" src="{{img}}">
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
<div class="compendium-results">
|
||||
{{#if menu.path.length }}
|
||||
<div class="menu-path">
|
||||
{{#each menu.path}}
|
||||
{{#if (eq this "folders")}}
|
||||
{{#each menu.pathLabels}}
|
||||
{{#unless @first}}
|
||||
<span class="path-link">
|
||||
/
|
||||
</span>
|
||||
{{else}}
|
||||
<span class="item-path">{{this}}</span>
|
||||
{{/if}}
|
||||
{{/unless}}
|
||||
|
||||
<span class="item-path">{{this}}</span>
|
||||
{{/each}}
|
||||
</div>
|
||||
<div class="item-filter">
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
<div class="icon">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</div>
|
||||
<input type="search" name="search" class="search-input" placeholder="{{localize 'DAGGERHEART.UI.ItemBrowser.searchPlaceholder'}}">
|
||||
<input type="search" name="search" class="search-input" placeholder="{{localize 'DAGGERHEART.GENERAL.searchPlaceholder'}}">
|
||||
</div>
|
||||
<a data-tooltip="{{localize 'DAGGERHEART.UI.ItemBrowser.tooltipFilters'}}" data-action="expandContent" disabled><i class="fa-solid fa-filter"></i></a>
|
||||
<a data-tooltip="{{localize 'DAGGERHEART.UI.ItemBrowser.tooltipErase'}}" data-action="resetFilters"><i class="fa-solid fa-eraser"></i></a>
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
{{#if (gt item.cost.length 0)}}
|
||||
{{#each item.cost as | cost |}}
|
||||
<div class="tag">
|
||||
<span>{{localize "Type"}} {{#with (lookup @root.config.GENERAL.abilityCosts cost.type) as | type |}}{{localize type.label}}{{/with}}</span>
|
||||
<span>{{localize "DAGGERHEART.GENERAL.type"}} {{#with (lookup @root.config.GENERAL.abilityCosts cost.type) as | type |}}{{localize type.label}}{{/with}}</span>
|
||||
</div>
|
||||
<div class="tag">
|
||||
<span>{{localize "DAGGERHEART.GENERAL.value"}} {{cost.value}}</span>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
{{/with}}
|
||||
</div>
|
||||
<div class="tooltip-information">
|
||||
<label>{{localize "Type"}}</label>
|
||||
<label>{{localize "DAGGERHEART.GENERAL.type"}}</label>
|
||||
{{#with (lookup adversaryTypes item.system.type) as | type |}}
|
||||
<div>{{localize type.label}}</div>
|
||||
{{/with}}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<div class="daggerheart dh-style tooltip">
|
||||
|
||||
<div class="tooltip-header"><h2>{{localize "Adversaries"}} ({{currentBP}}/{{maxBP}})</h2></div>
|
||||
<div class="tooltip-header"><h2>{{localize "DAGGERHEART.GENERAL.Adversary.plural"}} ({{currentBP}}/{{maxBP}})</h2></div>
|
||||
<div class="battlepoint-categories-container">
|
||||
<div class="battlepoint-categories-inner-container">
|
||||
{{#each categories as |category key|}}
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tooltip-header"><h2>{{localize "Modifiers"}}</h2></div>
|
||||
<div class="tooltip-header"><h2>{{localize "DAGGERHEART.GENERAL.Modifier.plural"}}</h2></div>
|
||||
<div class="battlepoint-toggles-container">
|
||||
{{#each toggles as |toggle|}}
|
||||
<div class="battlepoint-toggle-container {{#if (and toggle.disabled (not toggle.checked))}}inactive{{/if}}">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue