2 Commits

Author SHA1 Message Date
527e33a805 Roll D12 for monsters, with enabled fields for attacks
All checks were successful
Release Creation / build (release) Successful in 1m22s
2025-06-10 20:37:46 +02:00
b5857cb3b7 Various fixes for v13
All checks were successful
Release Creation / build (release) Successful in 53s
2025-06-05 16:14:25 +02:00
36 changed files with 449 additions and 175 deletions

View File

@ -83,9 +83,33 @@ i.lethalfantasy {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
}
.lethalfantasy .item-sheet-common {
overflow: auto;
}
.lethalfantasy .item-sheet-common .form-fields {
padding-top: 4px;
}
.lethalfantasy .item-sheet-common .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .item-sheet-common .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .item-sheet-common .form-group select,
.lethalfantasy .item-sheet-common .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .item-sheet-common .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .item-sheet-common label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -95,10 +119,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .item-sheet-common .shift-right {
margin-left: 2rem;
@ -112,6 +132,12 @@ i.lethalfantasy {
background-size: 100% 100%;
overflow: scroll;
}
.lethalfantasy .character-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .character-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .character-content input:disabled,
.lethalfantasy .character-content select:disabled {
background-color: rgba(0, 0, 0, 0.2);
@ -730,6 +756,12 @@ i.lethalfantasy {
background-size: 100% 100%;
overflow: scroll;
}
.lethalfantasy .monster-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .monster-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .monster-content input:disabled,
.lethalfantasy .monster-content select:disabled {
background-color: rgba(0, 0, 0, 0.2);
@ -1200,6 +1232,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .skill-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .skill-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .skill-content input:disabled,
.lethalfantasy .skill-content select:disabled {
@ -1244,6 +1283,27 @@ i.lethalfantasy {
.lethalfantasy .skill-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .skill-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .skill-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .skill-content .form-group select,
.lethalfantasy .skill-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .skill-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .skill-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1253,10 +1313,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .skill-content .shift-right {
margin-left: 2rem;
@ -1286,6 +1342,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .gift-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .gift-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .gift-content input:disabled,
.lethalfantasy .gift-content select:disabled {
@ -1330,6 +1393,27 @@ i.lethalfantasy {
.lethalfantasy .gift-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .gift-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .gift-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .gift-content .form-group select,
.lethalfantasy .gift-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .gift-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .gift-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1339,10 +1423,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .gift-content .shift-right {
margin-left: 2rem;
@ -1372,6 +1452,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .weapon-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .weapon-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .weapon-content input:disabled,
.lethalfantasy .weapon-content select:disabled {
@ -1416,6 +1503,27 @@ i.lethalfantasy {
.lethalfantasy .weapon-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .weapon-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .weapon-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .weapon-content .form-group select,
.lethalfantasy .weapon-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .weapon-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .weapon-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1425,10 +1533,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .weapon-content .shift-right {
margin-left: 2rem;
@ -1450,6 +1554,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .armor-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .armor-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .armor-content input:disabled,
.lethalfantasy .armor-content select:disabled {
@ -1494,6 +1605,27 @@ i.lethalfantasy {
.lethalfantasy .armor-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .armor-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .armor-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .armor-content .form-group select,
.lethalfantasy .armor-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .armor-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .armor-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1503,10 +1635,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .armor-content .shift-right {
margin-left: 2rem;
@ -1528,6 +1656,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .spell-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .spell-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .spell-content input:disabled,
.lethalfantasy .spell-content select:disabled {
@ -1572,6 +1707,27 @@ i.lethalfantasy {
.lethalfantasy .spell-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .spell-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .spell-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .spell-content .form-group select,
.lethalfantasy .spell-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .spell-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .spell-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1581,10 +1737,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .spell-content .shift-right {
margin-left: 2rem;
@ -1606,6 +1758,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .vulnerability-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .vulnerability-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .vulnerability-content input:disabled,
.lethalfantasy .vulnerability-content select:disabled {
@ -1650,6 +1809,27 @@ i.lethalfantasy {
.lethalfantasy .vulnerability-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .vulnerability-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .vulnerability-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .vulnerability-content .form-group select,
.lethalfantasy .vulnerability-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .vulnerability-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .vulnerability-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1659,10 +1839,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .vulnerability-content .shift-right {
margin-left: 2rem;
@ -1730,6 +1906,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .equipment-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .equipment-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .equipment-content input:disabled,
.lethalfantasy .equipment-content select:disabled {
@ -1774,6 +1957,27 @@ i.lethalfantasy {
.lethalfantasy .equipment-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .equipment-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .equipment-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .equipment-content .form-group select,
.lethalfantasy .equipment-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .equipment-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .equipment-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1783,10 +1987,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .equipment-content .shift-right {
margin-left: 2rem;
@ -1808,6 +2008,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .shield-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .shield-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .shield-content input:disabled,
.lethalfantasy .shield-content select:disabled {
@ -1852,6 +2059,27 @@ i.lethalfantasy {
.lethalfantasy .shield-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .shield-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .shield-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .shield-content .form-group select,
.lethalfantasy .shield-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .shield-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .shield-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1861,10 +2089,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .shield-content .shift-right {
margin-left: 2rem;
@ -1886,6 +2110,13 @@ i.lethalfantasy {
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.lethalfantasy .miracle-content nav.tabs [data-tab] {
color: #636060;
}
.lethalfantasy .miracle-content nav.tabs [data-tab].active {
color: #252424;
}
.lethalfantasy .miracle-content input:disabled,
.lethalfantasy .miracle-content select:disabled {
@ -1930,6 +2161,27 @@ i.lethalfantasy {
.lethalfantasy .miracle-content .form-fields {
padding-top: 4px;
}
.lethalfantasy .miracle-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.lethalfantasy .miracle-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.lethalfantasy .miracle-content .form-group select,
.lethalfantasy .miracle-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.lethalfantasy .miracle-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.lethalfantasy .miracle-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
@ -1939,10 +2191,6 @@ i.lethalfantasy {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.lethalfantasy .miracle-content .shift-right {
margin-left: 2rem;
@ -2119,8 +2367,9 @@ i.lethalfantasy {
padding-bottom: 0;
width: max-content;
margin: 0;
color: #252424;
}
#token-hud .hp-loss-wrap .hud-loss-hp-button-select {
padding-left: 8px;
font-size: 0.7rem;
font-size: 0.9rem;
}

View File

@ -59,18 +59,15 @@ export default class LethalFantasyItemSheet extends HandlebarsApplicationMixin(f
/** @override */
async _prepareContext() {
let context = await super._prepareContext()
const contextLocal = {
fields: this.document.schema.fields,
systemFields: this.document.system.schema.fields,
item: this.document,
system: this.document.system,
source: this.document.toObject(),
enrichedDescription: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.document.system.description, { async: true }),
isEditMode: this.isEditMode,
isPlayMode: this.isPlayMode,
isEditable: this.isEditable,
}
context = mergeObject(context, contextLocal)
context.fields = this.document.schema.fields
context.systemFields = this.document.system.schema.fields
context.item = this.document
context.system = this.document.system
context.source = this.document.toObject()
context.enrichedDescription = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.document.system.description, { async: true })
context.isEditMode = this.isEditMode
context.isPlayMode = this.isPlayMode
context.isEditable = this.isEditable
return context
}
@ -97,7 +94,7 @@ export default class LethalFantasyItemSheet extends HandlebarsApplicationMixin(f
dragover: this._onDragOver.bind(this),
drop: this._onDrop.bind(this),
}
return new DragDrop(d)
return new foundry.applications.ux.DragDrop.implementation(d)
})
}

View File

@ -19,10 +19,4 @@ export default class LethalFantasyGiftSheet extends LethalFantasyItemSheet {
},
}
/** @override */
async _prepareContext() {
const context = await super._prepareContext()
context.enrichedDescription = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.document.system.description, { async: true })
return context
}
}

View File

@ -60,17 +60,16 @@ export const FAVOR_CHOICES = {
}
export const MOVEMENT_CHOICES = {
"none": {label: "None (D8E)", value: "D8"},
"walk": {label: "Walk (D10E)", value: "D10"},
"jog": {label: "Jog (D12E)", value: "D12"},
"run": {label: "Run (D20E)", value: "D20"},
"incombat": {label: "In Combat (D12E)", value: "D12"}
"none": {label: "None (D20E Disfavor)", disfavor: true, value: "2D20kl"},
"walk": {label: "Walk (D20E Disfavor)", disfavor: true, value: "2D20kl"},
"run": {label: "Jog/Run/Sprint (D20E Favor)", favor: true, value: "2D20kh"},
"incombat": {label: "In Combat (D20E)", favor: false, value: "D20"}
}
export const MOVE_DIRECTION_CHOICES = {
"none": {label: "None (+0)", value: "0"},
"away": {label: "Away (+4)", value: "+4"},
"toward": {label: "Toward (+0)", value: "0"},
"toward": {label: "Toward (-5)", value: "-5"},
"lateral": {label: "Lateral (+10)", value: "+10"}
}

View File

@ -769,7 +769,7 @@ export default class LethalFantasyRoll extends Roll {
await combatant.setFlag(SYSTEM.id, "currentAction", actionItem)
let message = `${combatant.name} action : ${selectedItem.name}, start rolling progression dice or casting time`
ChatMessage.create({ content: message, speaker: ChatMessage.getSpeaker({ actor: combatant.actor }) })
rollContext = (actionItem.type == "weapon") ? "rollProgressionDice" : "rollLethargyDice" // Set the roll context to rollProgressionDice
rollContext = (actionItem.type === "weapon") ? "rollProgressionDice" : "rollLethargyDice" // Set the roll context to rollProgressionDice
currentAction = actionItem
}
@ -913,7 +913,7 @@ export default class LethalFantasyRoll extends Roll {
}
console.log("CTX", dialogContext)
const content = await renderTemplate("systems/fvtt-lethal-fantasy/templates/range-defense-dialog.hbs", dialogContext)
const content = await foundry.applications.handlebars.renderTemplate("systems/fvtt-lethal-fantasy/templates/range-defense-dialog.hbs", dialogContext)
const label = game.i18n.localize("LETHALFANTASY.Label.rangeDefenseRoll")
const rollContext = await foundry.applications.api.DialogV2.wait({
@ -966,7 +966,7 @@ export default class LethalFantasyRoll extends Roll {
options.D30result = rollD30.total
let dice = rollContext.movement
let maxValue = Number(dice.match(/\d+$/)[0]) // Update the max value agains
let maxValue = 20 // As per latest changes (was : Number(dice.match(/\d+$/)[0])
let rollTotal = -1
let diceResults = []
let resultType

View File

@ -73,6 +73,7 @@ export default class LethalFantasyMonster extends foundry.abstract.TypeDataModel
defenseModifier: new fields.NumberField({ ...requiredInteger, initial: 0, min: 0 }),
damageDice: new fields.StringField({ required: true, nullable: false, initial: "1D6" }),
damageModifier: new fields.NumberField({ ...requiredInteger, initial: 0, min: 0 }),
enabled: new fields.BooleanField({ initial: true, required: true, nullable: false }),
}
return new fields.SchemaField(schema, { label })
}
@ -170,7 +171,7 @@ export default class LethalFantasyMonster extends foundry.abstract.TypeDataModel
case "weapon-damage-small":
case "weapon-damage-medium":
case "weapon-attack":
case "weapon-defense":
case "weapon-defense": {
let weapon = this.actor.items.find((i) => i.type === "weapon" && i.id === rollKey)
let skill
let skills = this.actor.items.filter((i) => i.type === "skill" && i.name.toLowerCase() === weapon.name.toLowerCase())
@ -205,6 +206,7 @@ export default class LethalFantasyMonster extends foundry.abstract.TypeDataModel
rollTarget.weaponSkillModifier = skill.weaponSkillModifier
rollTarget.rollKey = rollKey
rollTarget.combat = foundry.utils.duplicate(this.combat)
}
break
default:
ui.notifications.error(game.i18n.localize("LETHALFANTASY.Notifications.rollTypeNotFound") + String(rollType))
@ -245,11 +247,11 @@ export default class LethalFantasyMonster extends foundry.abstract.TypeDataModel
default: "public",
})
let roll = new Roll("1D8")
let roll = new Roll("1D12")
await roll.evaluate()
let combatant = game.combats.get(combatId)?.combatants?.get(combatantId)
let msg = await roll.toMessage({ flavor: `Progression Roll for ${this.parent.name}` } )
let msg = await roll.toMessage({ flavor: `Progression Roll for ${this.parent.name}` })
if (game?.dice3d) {
await game.dice3d.waitFor3DAnimationByMessageID(msg.id)
}
@ -257,14 +259,14 @@ export default class LethalFantasyMonster extends foundry.abstract.TypeDataModel
let hasAttack = false
for (let key in this.attacks) {
let attack = this.attacks[key]
if (attack.attackScore > 0 && attack.attackScore === roll.total) {
if (attack.enabled && attack.attackScore > 0 && attack.attackScore === roll.total) {
hasAttack = true
let message = game.i18n.format("LETHALFANTASY.Notifications.messageProgressionOKMonster", { isMonster: true, name: this.parent.name, weapon: attack.name, roll: roll.total })
ChatMessage.create({ content: message, speaker: ChatMessage.getSpeaker({ actor: this.parent }) })
let token = combatant?.token
this.prepareMonsterRoll("monster-attack", key, undefined, token?.id)
if ( token?.object ) {
token.object?.control({releaseOthers: true});
if (token?.object) {
token.object?.control({ releaseOthers: true });
return canvas.animatePan(token.object.center);
}
}

View File

@ -1 +1 @@
MANIFEST-000348
MANIFEST-000372

View File

@ -1,8 +1,8 @@
2025/05/29-16:36:11.138560 7f53e4df86c0 Recovering log #346
2025/05/29-16:36:11.150394 7f53e4df86c0 Delete type=3 #344
2025/05/29-16:36:11.150472 7f53e4df86c0 Delete type=0 #346
2025/05/29-18:48:12.764595 7f53df3ff6c0 Level-0 table #351: started
2025/05/29-18:48:12.764652 7f53df3ff6c0 Level-0 table #351: 0 bytes OK
2025/05/29-18:48:12.777058 7f53df3ff6c0 Delete type=0 #349
2025/05/29-18:48:12.800778 7f53df3ff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/05/29-18:48:12.800877 7f53df3ff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/06/10-20:35:39.155336 7f629dffb6c0 Recovering log #370
2025/06/10-20:35:39.196584 7f629dffb6c0 Delete type=3 #368
2025/06/10-20:35:39.196659 7f629dffb6c0 Delete type=0 #370
2025/06/10-20:37:28.450501 7f5ffffff6c0 Level-0 table #375: started
2025/06/10-20:37:28.450543 7f5ffffff6c0 Level-0 table #375: 0 bytes OK
2025/06/10-20:37:28.476819 7f5ffffff6c0 Delete type=0 #373
2025/06/10-20:37:28.500565 7f5ffffff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/06/10-20:37:28.500612 7f5ffffff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2025/05/22-18:45:28.754313 7f53737fe6c0 Recovering log #342
2025/05/22-18:45:28.804653 7f53737fe6c0 Delete type=3 #340
2025/05/22-18:45:28.804783 7f53737fe6c0 Delete type=0 #342
2025/05/22-19:43:04.046497 7f53723ff6c0 Level-0 table #347: started
2025/05/22-19:43:04.046522 7f53723ff6c0 Level-0 table #347: 0 bytes OK
2025/05/22-19:43:04.084205 7f53723ff6c0 Delete type=0 #345
2025/05/22-19:43:04.153359 7f53723ff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/05/22-19:43:04.153400 7f53723ff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/06/05-15:50:28.883020 7ff25bfff6c0 Recovering log #366
2025/06/05-15:50:28.892731 7ff25bfff6c0 Delete type=3 #364
2025/06/05-15:50:28.892781 7ff25bfff6c0 Delete type=0 #366
2025/06/05-16:13:09.126587 7ff25a3ff6c0 Level-0 table #371: started
2025/06/05-16:13:09.126654 7ff25a3ff6c0 Level-0 table #371: 0 bytes OK
2025/06/05-16:13:09.133473 7ff25a3ff6c0 Delete type=0 #369
2025/06/05-16:13:09.133695 7ff25a3ff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/06/05-16:13:09.133722 7ff25a3ff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)

View File

@ -1 +1 @@
MANIFEST-000347
MANIFEST-000371

View File

@ -1,8 +1,8 @@
2025/05/29-16:36:11.158130 7f53e5dfa6c0 Recovering log #345
2025/05/29-16:36:11.168794 7f53e5dfa6c0 Delete type=3 #343
2025/05/29-16:36:11.168968 7f53e5dfa6c0 Delete type=0 #345
2025/05/29-18:48:12.777345 7f53df3ff6c0 Level-0 table #350: started
2025/05/29-18:48:12.777387 7f53df3ff6c0 Level-0 table #350: 0 bytes OK
2025/05/29-18:48:12.788225 7f53df3ff6c0 Delete type=0 #348
2025/05/29-18:48:12.800802 7f53df3ff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/05/29-18:48:12.800914 7f53df3ff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/06/10-20:35:39.201789 7f629d7fa6c0 Recovering log #369
2025/06/10-20:35:39.246460 7f629d7fa6c0 Delete type=3 #367
2025/06/10-20:35:39.246611 7f629d7fa6c0 Delete type=0 #369
2025/06/10-20:37:28.405714 7f5ffffff6c0 Level-0 table #374: started
2025/06/10-20:37:28.405787 7f5ffffff6c0 Level-0 table #374: 0 bytes OK
2025/06/10-20:37:28.430215 7f5ffffff6c0 Delete type=0 #372
2025/06/10-20:37:28.500536 7f5ffffff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/06/10-20:37:28.500586 7f5ffffff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2025/05/22-18:45:28.835173 7f5373fff6c0 Recovering log #341
2025/05/22-18:45:28.894795 7f5373fff6c0 Delete type=3 #339
2025/05/22-18:45:28.894867 7f5373fff6c0 Delete type=0 #341
2025/05/22-19:43:04.009442 7f53723ff6c0 Level-0 table #346: started
2025/05/22-19:43:04.009522 7f53723ff6c0 Level-0 table #346: 0 bytes OK
2025/05/22-19:43:04.046375 7f53723ff6c0 Delete type=0 #344
2025/05/22-19:43:04.153344 7f53723ff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/05/22-19:43:04.153392 7f53723ff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/06/05-15:50:28.899788 7ff25affd6c0 Recovering log #365
2025/06/05-15:50:28.910099 7ff25affd6c0 Delete type=3 #363
2025/06/05-15:50:28.910166 7ff25affd6c0 Delete type=0 #365
2025/06/05-16:13:09.075458 7ff25a3ff6c0 Level-0 table #370: started
2025/06/05-16:13:09.075508 7ff25a3ff6c0 Level-0 table #370: 0 bytes OK
2025/06/05-16:13:09.082149 7ff25a3ff6c0 Delete type=0 #368
2025/06/05-16:13:09.102903 7ff25a3ff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/06/05-16:13:09.102950 7ff25a3ff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)

View File

@ -1 +1 @@
MANIFEST-000347
MANIFEST-000371

View File

@ -1,8 +1,8 @@
2025/05/29-16:36:11.123463 7f53e55f96c0 Recovering log #345
2025/05/29-16:36:11.133586 7f53e55f96c0 Delete type=3 #343
2025/05/29-16:36:11.133663 7f53e55f96c0 Delete type=0 #345
2025/05/29-18:48:12.753680 7f53df3ff6c0 Level-0 table #350: started
2025/05/29-18:48:12.753732 7f53df3ff6c0 Level-0 table #350: 0 bytes OK
2025/05/29-18:48:12.764334 7f53df3ff6c0 Delete type=0 #348
2025/05/29-18:48:12.800724 7f53df3ff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/05/29-18:48:12.800854 7f53df3ff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/06/10-20:35:39.107142 7f629e7fc6c0 Recovering log #369
2025/06/10-20:35:39.151441 7f629e7fc6c0 Delete type=3 #367
2025/06/10-20:35:39.151517 7f629e7fc6c0 Delete type=0 #369
2025/06/10-20:37:28.430382 7f5ffffff6c0 Level-0 table #374: started
2025/06/10-20:37:28.430420 7f5ffffff6c0 Level-0 table #374: 0 bytes OK
2025/06/10-20:37:28.450367 7f5ffffff6c0 Delete type=0 #372
2025/06/10-20:37:28.500550 7f5ffffff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/06/10-20:37:28.500595 7f5ffffff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2025/05/22-18:45:28.668409 7f5378bfa6c0 Recovering log #341
2025/05/22-18:45:28.725273 7f5378bfa6c0 Delete type=3 #339
2025/05/22-18:45:28.725349 7f5378bfa6c0 Delete type=0 #341
2025/05/22-19:43:04.084321 7f53723ff6c0 Level-0 table #346: started
2025/05/22-19:43:04.084343 7f53723ff6c0 Level-0 table #346: 0 bytes OK
2025/05/22-19:43:04.122081 7f53723ff6c0 Delete type=0 #344
2025/05/22-19:43:04.153372 7f53723ff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/05/22-19:43:04.153416 7f53723ff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/06/05-15:50:28.868698 7ff2609fa6c0 Recovering log #365
2025/06/05-15:50:28.879202 7ff2609fa6c0 Delete type=3 #363
2025/06/05-15:50:28.879260 7ff2609fa6c0 Delete type=0 #365
2025/06/05-16:13:09.089330 7ff25a3ff6c0 Level-0 table #370: started
2025/06/05-16:13:09.089359 7ff25a3ff6c0 Level-0 table #370: 0 bytes OK
2025/06/05-16:13:09.096545 7ff25a3ff6c0 Delete type=0 #368
2025/06/05-16:13:09.102932 7ff25a3ff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/06/05-16:13:09.102971 7ff25a3ff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)

View File

@ -1 +1 @@
MANIFEST-000047
MANIFEST-000071

View File

@ -1,8 +1,8 @@
2025/05/29-16:36:11.187985 7f53e4df86c0 Recovering log #45
2025/05/29-16:36:11.199498 7f53e4df86c0 Delete type=3 #43
2025/05/29-16:36:11.199566 7f53e4df86c0 Delete type=0 #45
2025/05/29-18:48:12.801134 7f53df3ff6c0 Level-0 table #50: started
2025/05/29-18:48:12.801185 7f53df3ff6c0 Level-0 table #50: 0 bytes OK
2025/05/29-18:48:12.810101 7f53df3ff6c0 Delete type=0 #48
2025/05/29-18:48:12.859825 7f53df3ff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/05/29-18:48:12.859922 7f53df3ff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/06/10-20:35:39.298099 7f629dffb6c0 Recovering log #69
2025/06/10-20:35:39.345253 7f629dffb6c0 Delete type=3 #67
2025/06/10-20:35:39.345331 7f629dffb6c0 Delete type=0 #69
2025/06/10-20:37:28.546716 7f5ffffff6c0 Level-0 table #74: started
2025/06/10-20:37:28.546783 7f5ffffff6c0 Level-0 table #74: 0 bytes OK
2025/06/10-20:37:28.574324 7f5ffffff6c0 Delete type=0 #72
2025/06/10-20:37:28.612191 7f5ffffff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/06/10-20:37:28.612270 7f5ffffff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2025/05/22-18:45:28.985810 7f5372ffd6c0 Recovering log #41
2025/05/22-18:45:29.040662 7f5372ffd6c0 Delete type=3 #39
2025/05/22-18:45:29.040742 7f5372ffd6c0 Delete type=0 #41
2025/05/22-19:43:04.281148 7f53723ff6c0 Level-0 table #46: started
2025/05/22-19:43:04.281205 7f53723ff6c0 Level-0 table #46: 0 bytes OK
2025/05/22-19:43:04.315875 7f53723ff6c0 Delete type=0 #44
2025/05/22-19:43:04.316126 7f53723ff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/05/22-19:43:04.366588 7f53723ff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/06/05-15:50:28.926119 7ff2609fa6c0 Recovering log #65
2025/06/05-15:50:28.936828 7ff2609fa6c0 Delete type=3 #63
2025/06/05-15:50:28.936884 7ff2609fa6c0 Delete type=0 #65
2025/06/05-16:13:09.082352 7ff25a3ff6c0 Level-0 table #70: started
2025/06/05-16:13:09.082382 7ff25a3ff6c0 Level-0 table #70: 0 bytes OK
2025/06/05-16:13:09.089177 7ff25a3ff6c0 Delete type=0 #68
2025/06/05-16:13:09.102923 7ff25a3ff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/06/05-16:13:09.102957 7ff25a3ff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)

View File

@ -1 +1 @@
MANIFEST-000347
MANIFEST-000371

View File

@ -1,8 +1,8 @@
2025/05/29-16:36:11.172412 7f53e55f96c0 Recovering log #345
2025/05/29-16:36:11.183464 7f53e55f96c0 Delete type=3 #343
2025/05/29-16:36:11.183540 7f53e55f96c0 Delete type=0 #345
2025/05/29-18:48:12.788378 7f53df3ff6c0 Level-0 table #350: started
2025/05/29-18:48:12.788406 7f53df3ff6c0 Level-0 table #350: 0 bytes OK
2025/05/29-18:48:12.800425 7f53df3ff6c0 Delete type=0 #348
2025/05/29-18:48:12.800827 7f53df3ff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/05/29-18:48:12.800943 7f53df3ff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/06/10-20:35:39.249707 7f629cff96c0 Recovering log #369
2025/06/10-20:35:39.295266 7f629cff96c0 Delete type=3 #367
2025/06/10-20:35:39.295351 7f629cff96c0 Delete type=0 #369
2025/06/10-20:37:28.477031 7f5ffffff6c0 Level-0 table #374: started
2025/06/10-20:37:28.477121 7f5ffffff6c0 Level-0 table #374: 0 bytes OK
2025/06/10-20:37:28.500386 7f5ffffff6c0 Delete type=0 #372
2025/06/10-20:37:28.500575 7f5ffffff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/06/10-20:37:28.500603 7f5ffffff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2025/05/22-18:45:28.912541 7f5378bfa6c0 Recovering log #341
2025/05/22-18:45:28.969080 7f5378bfa6c0 Delete type=3 #339
2025/05/22-18:45:28.969151 7f5378bfa6c0 Delete type=0 #341
2025/05/22-19:43:04.122198 7f53723ff6c0 Level-0 table #346: started
2025/05/22-19:43:04.122219 7f53723ff6c0 Level-0 table #346: 0 bytes OK
2025/05/22-19:43:04.153184 7f53723ff6c0 Delete type=0 #344
2025/05/22-19:43:04.153383 7f53723ff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/05/22-19:43:04.153407 7f53723ff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/06/05-15:50:28.913563 7ff25b7fe6c0 Recovering log #365
2025/06/05-15:50:28.923236 7ff25b7fe6c0 Delete type=3 #363
2025/06/05-15:50:28.923301 7ff25b7fe6c0 Delete type=0 #365
2025/06/05-16:13:09.096673 7ff25a3ff6c0 Level-0 table #370: started
2025/06/05-16:13:09.096704 7ff25a3ff6c0 Level-0 table #370: 0 bytes OK
2025/06/05-16:13:09.102790 7ff25a3ff6c0 Delete type=0 #368
2025/06/05-16:13:09.102942 7ff25a3ff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/06/05-16:13:09.102964 7ff25a3ff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)

View File

@ -4,6 +4,7 @@
overflow: scroll;
}
.character-main {
display: flex;

View File

@ -35,9 +35,10 @@
padding-bottom: 0;
width: max-content;
margin: 0;
color:#252424;
}
#token-hud .hp-loss-wrap .hud-loss-hp-button-select {
padding-left: 8px;
font-size: 0.7rem;
font-size: 0.9rem;
}

View File

@ -6,6 +6,14 @@
background-repeat: no-repeat;
background-size: 100% 100%;
nav.tabs [data-tab] {
color: #636060;
}
nav.tabs [data-tab].active {
color: #252424;
}
input:disabled,
select:disabled {
background-color: rgba(0, 0, 0, 0.2);
@ -39,11 +47,11 @@
input,
select {
text-align: center;
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
}
select {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
}
}
@ -67,9 +75,33 @@
padding-top: 4px;
}
overflow: auto;
.form-group {
display: flex;
flex: 1;
flex-direction: row;
label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
select,
input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
}
label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
flex: 50%;
}
@ -77,10 +109,6 @@
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
/*border-color: black;
border-width: 1px;
border-style: solid;
border-radius: 2%;*/
}
.shift-right {

View File

@ -6,7 +6,7 @@
</div>
<div class="intro-right">
<span>{{upperFirst rollName}}</span>
<span>{{actingCharName}} - {{upperFirst rollName}}</span>
{{#if (match rollType "attack")}}
<span>Attack roll !</span>

View File

@ -21,6 +21,9 @@
<div class="attacks">
{{#each system.attacks as |item key|}}
<div class="attack" data-attack-key="{{key}}" >
<div class="">
<input type="checkbox" name="system.attacks.{{item.key}}.enabled" value="{{item.enabled}}" data-tooltip="Attack enabled/disabled" />
</div>
<div class="name">
<input type="text" name="system.attacks.{{item.key}}.name" value="{{item.name}}" data-tooltip="Attack name" />
</div>