3 Commits

Author SHA1 Message Date
6eeb391d1a Move aiming to attacker
All checks were successful
Release Creation / build (release) Successful in 1m9s
2025-09-05 23:26:11 +02:00
c7727076bf Various fixes and renamingé
All checks were successful
Release Creation / build (release) Successful in 1m30s
2025-09-02 21:06:33 +02:00
d0411f9ec9 Various fixes and renamingé 2025-09-02 18:17:31 +02:00
37 changed files with 248 additions and 193 deletions

View File

@@ -682,7 +682,8 @@ i.lethalfantasy {
gap: 4px;
}
.lethalfantasy .tab.character-spells .main-div .spells .spell .item-img {
width: 24px;
min-width: 24px;
max-width: 24px;
height: 24px;
}
.lethalfantasy .tab.character-spells .main-div .spells .spell .name {
@@ -2292,6 +2293,15 @@ i.lethalfantasy {
font-size: calc(var(--font-size-standard) * 1);
color: var(--color-dark-1);
}
.main select,
.dialog-damage select,
.dialog-resource select,
.dialog-challenge select,
.dialog-save select {
min-width: 8rem;
max-width: 8rem;
margin-left: 1rem;
}
.dice-roll {
flex-direction: column;
}

View File

@@ -83,7 +83,7 @@
},
"challenges": {
"agility": {
"label": "Agility"
"label": "Dexterity"
},
"dying": {
"label": "Dying"
@@ -181,7 +181,7 @@
},
"challenges": {
"agility": {
"label": "Agility"
"label": "Dexterity"
},
"dying": {
"label": "Dying"
@@ -281,6 +281,7 @@
}
},
"Label": {
"agility": "Dexterity",
"gotoToken": "Go to token",
"combatAction": "Combat action",
"currentAction": "Current ongoing action",
@@ -348,7 +349,7 @@
"cha": "CHA",
"challenge": "Challenge",
"challenges": {
"agility": "Agility",
"agility": "Dexterity",
"dying": "Dying",
"strength": "Strength"
},

View File

@@ -50,7 +50,7 @@ export const MORTAL_CHOICES = {
"halfelf": { label: "Half-Elf", id: "halfelf", defenseBonus: 0 },
"halforc": { label: "Half-Orc", id: "halforc", defenseBonus: 0 },
"gnome": { label: "Gnome", id: "gnome", defenseBonus: 2 },
"halflings": { label: "Halflings", id: "halflings", defenseBonus: 2 }
"halflings": { label: "Halfling", id: "halflings", defenseBonus: 2 }
}
export const FAVOR_CHOICES = {
@@ -92,8 +92,8 @@ export const RANGE_CHOICES = {
export const ATTACKER_AIM_CHOICES = {
"simple": { label: "Simple (+0)", value: "0" },
"careful": { label: "Careful (Red -5)", value: "-4" },
"focused": { label: "Focused (Grey -9)", value: "-9" }
"careful": { label: "Careful (Red +5)", value: "+4" },
"focused": { label: "Focused (Grey +9)", value: "+9" }
}
export const SPELL_LETHARGY_DICE = [

View File

@@ -96,6 +96,10 @@ export default class LethalFantasyRoll extends Roll {
return this.options.badResult
}
get rollData() {
return this.options.rollData
}
/**
* Prompt the user with a dialog to configure and execute a roll.
*
@@ -125,6 +129,7 @@ export default class LethalFantasyRoll extends Roll {
let hasMaxValue = true
let hasGrantedDice = false
let pointBlank = false
let letItFly = false
let beyondSkill = false
let hasStaticModifier = false
let hasExplode = true
@@ -178,6 +183,7 @@ export default class LethalFantasyRoll extends Roll {
} else if (options.rollType === "skill") {
options.rollName = options.rollTarget.name
hasD30 = true
dice = "1D20"
baseFormula = "D20"
hasModifier = true
@@ -310,6 +316,8 @@ export default class LethalFantasyRoll extends Roll {
hasChangeDice,
pointBlank,
baseValue: options.rollTarget.value,
attackerAimChoices: SYSTEM.ATTACKER_AIM_CHOICES,
attackerAim: "0",
changeDice: `${dice}`,
fieldRollMode,
choiceModifier,
@@ -357,6 +365,9 @@ export default class LethalFantasyRoll extends Roll {
"selectPointBlank": (event, button, dialog) => {
pointBlank = button.checked
},
"selectLetItFly": (event, button, dialog) => {
letItFly = button.checked
},
"gotoToken": (event, button, dialog) => {
let tokenId = $(button).data("tokenId")
let token = canvas.tokens?.get(tokenId)
@@ -381,6 +392,9 @@ export default class LethalFantasyRoll extends Roll {
let bonus = Number(options.rollTarget.value)
fullModifier = rollContext.modifier === "" ? 0 : parseInt(rollContext.modifier, 10) + bonus
fullModifier += (rollContext.saveSpell) ? options.rollTarget.actorModifiers.saveModifier : 0
if (Number(rollContext.attackerAim) > 0) {
fullModifier += Number(rollContext.attackerAim)
}
if (fullModifier === 0) {
modifierFormula = "0"
@@ -430,6 +444,16 @@ export default class LethalFantasyRoll extends Roll {
hasD30 = false
}
if (letItFly) {
baseFormula = "1D20"
titleFormula = `1D20E`
modifierFormula = "0"
fullModifier = 0
hasFavor = false
hasExplode = true
rollContext.favor = "none"
}
maxValue = Number(baseFormula.match(/\d+$/)[0]) // Update the max value agains
const rollData = {
@@ -442,6 +466,9 @@ export default class LethalFantasyRoll extends Roll {
actorImage: options.actorImage,
rollMode: rollContext.visibility,
hasTarget: options.hasTarget,
pointBlank,
beyondSkill,
letItFly,
hasGrantedDice,
titleFormula,
targetName,
@@ -554,6 +581,7 @@ export default class LethalFantasyRoll extends Roll {
rollBase.options.titleFormula = titleFormula
rollBase.options.D30result = options.D30result
rollBase.options.badResult = badResult
rollBase.options.rollData = foundry.utils.duplicate(rollData)
/**
* A hook event that fires after the roll has been made.
@@ -1099,6 +1127,7 @@ export default class LethalFantasyRoll extends Roll {
targetArmor: this.targetArmor,
D30result: this.D30result,
badResult: this.badResult,
rollData: this.rollData,
isPrivate: isPrivate
}
cardData.cssClass = cardData.css.join(" ")
@@ -1130,6 +1159,7 @@ export default class LethalFantasyRoll extends Roll {
targetArmor: this.targetArmor,
targetMalus: this.targetMalus,
realDamage: this.realDamage,
rollData: this.rollData,
...messageData,
},
{ rollMode: rollMode },

View File

@@ -1 +1 @@
MANIFEST-000380
MANIFEST-000400

View File

@@ -1,8 +1,8 @@
2025/08/31-11:02:02.192092 7facb3fff6c0 Recovering log #378
2025/08/31-11:02:02.202398 7facb3fff6c0 Delete type=3 #376
2025/08/31-11:02:02.202444 7facb3fff6c0 Delete type=0 #378
2025/08/31-11:28:03.032642 7facb27ff6c0 Level-0 table #383: started
2025/08/31-11:28:03.032856 7facb27ff6c0 Level-0 table #383: 0 bytes OK
2025/08/31-11:28:03.039646 7facb27ff6c0 Delete type=0 #381
2025/08/31-11:28:03.047372 7facb27ff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/08/31-11:28:03.047539 7facb27ff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/09/05-23:10:01.571742 7f0131ffb6c0 Recovering log #398
2025/09/05-23:10:01.582082 7f0131ffb6c0 Delete type=3 #396
2025/09/05-23:10:01.582249 7f0131ffb6c0 Delete type=0 #398
2025/09/05-23:25:34.796479 7f012fff76c0 Level-0 table #403: started
2025/09/05-23:25:34.796530 7f012fff76c0 Level-0 table #403: 0 bytes OK
2025/09/05-23:25:34.802896 7f012fff76c0 Delete type=0 #401
2025/09/05-23:25:34.803270 7f012fff76c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/09/05-23:25:34.803324 7f012fff76c0 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/08/30-18:23:53.067582 7facb3fff6c0 Recovering log #374
2025/08/30-18:23:53.077306 7facb3fff6c0 Delete type=3 #372
2025/08/30-18:23:53.077503 7facb3fff6c0 Delete type=0 #374
2025/08/30-18:45:52.226055 7facb27ff6c0 Level-0 table #379: started
2025/08/30-18:45:52.226081 7facb27ff6c0 Level-0 table #379: 0 bytes OK
2025/08/30-18:45:52.233470 7facb27ff6c0 Delete type=0 #377
2025/08/30-18:45:52.233679 7facb27ff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/08/30-18:45:52.233706 7facb27ff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/09/04-09:03:59.907857 7f66cffff6c0 Recovering log #394
2025/09/04-09:03:59.918032 7f66cffff6c0 Delete type=3 #392
2025/09/04-09:03:59.918082 7f66cffff6c0 Delete type=0 #394
2025/09/04-09:04:51.777411 7f66cdbff6c0 Level-0 table #399: started
2025/09/04-09:04:51.777431 7f66cdbff6c0 Level-0 table #399: 0 bytes OK
2025/09/04-09:04:51.783440 7f66cdbff6c0 Delete type=0 #397
2025/09/04-09:04:51.790184 7f66cdbff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
2025/09/04-09:04:51.790212 7f66cdbff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000379
MANIFEST-000399

View File

@@ -1,8 +1,8 @@
2025/08/31-11:02:02.206543 7facb37fe6c0 Recovering log #377
2025/08/31-11:02:02.215835 7facb37fe6c0 Delete type=3 #375
2025/08/31-11:02:02.215878 7facb37fe6c0 Delete type=0 #377
2025/08/31-11:28:03.017058 7facb27ff6c0 Level-0 table #382: started
2025/08/31-11:28:03.017435 7facb27ff6c0 Level-0 table #382: 0 bytes OK
2025/08/31-11:28:03.023891 7facb27ff6c0 Delete type=0 #380
2025/08/31-11:28:03.047213 7facb27ff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/08/31-11:28:03.047451 7facb27ff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/09/05-23:10:01.588433 7f01317fa6c0 Recovering log #397
2025/09/05-23:10:01.598791 7f01317fa6c0 Delete type=3 #395
2025/09/05-23:10:01.598975 7f01317fa6c0 Delete type=0 #397
2025/09/05-23:25:34.782369 7f012fff76c0 Level-0 table #402: started
2025/09/05-23:25:34.782405 7f012fff76c0 Level-0 table #402: 0 bytes OK
2025/09/05-23:25:34.789488 7f012fff76c0 Delete type=0 #400
2025/09/05-23:25:34.803215 7f012fff76c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/09/05-23:25:34.803289 7f012fff76c0 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/08/30-18:23:53.081675 7facb91fa6c0 Recovering log #373
2025/08/30-18:23:53.092658 7facb91fa6c0 Delete type=3 #371
2025/08/30-18:23:53.092710 7facb91fa6c0 Delete type=0 #373
2025/08/30-18:45:52.213593 7facb27ff6c0 Level-0 table #378: started
2025/08/30-18:45:52.213631 7facb27ff6c0 Level-0 table #378: 0 bytes OK
2025/08/30-18:45:52.219786 7facb27ff6c0 Delete type=0 #376
2025/08/30-18:45:52.233655 7facb27ff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/08/30-18:45:52.233694 7facb27ff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/09/04-09:03:59.926991 7f66ce7fc6c0 Recovering log #393
2025/09/04-09:03:59.938021 7f66ce7fc6c0 Delete type=3 #391
2025/09/04-09:03:59.938111 7f66ce7fc6c0 Delete type=0 #393
2025/09/04-09:04:51.783500 7f66cdbff6c0 Level-0 table #398: started
2025/09/04-09:04:51.783516 7f66cdbff6c0 Level-0 table #398: 0 bytes OK
2025/09/04-09:04:51.790018 7f66cdbff6c0 Delete type=0 #396
2025/09/04-09:04:51.790191 7f66cdbff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)
2025/09/04-09:04:51.790207 7f66cdbff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!zjvGljrLk5SshC9D' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000379
MANIFEST-000399

View File

@@ -1,8 +1,8 @@
2025/08/31-11:02:02.179303 7facb91fa6c0 Recovering log #377
2025/08/31-11:02:02.189376 7facb91fa6c0 Delete type=3 #375
2025/08/31-11:02:02.189457 7facb91fa6c0 Delete type=0 #377
2025/08/31-11:28:03.039915 7facb27ff6c0 Level-0 table #382: started
2025/08/31-11:28:03.039961 7facb27ff6c0 Level-0 table #382: 0 bytes OK
2025/08/31-11:28:03.046598 7facb27ff6c0 Delete type=0 #380
2025/08/31-11:28:03.047412 7facb27ff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/08/31-11:28:03.047575 7facb27ff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/09/05-23:10:01.556390 7f0130ff96c0 Recovering log #397
2025/09/05-23:10:01.567326 7f0130ff96c0 Delete type=3 #395
2025/09/05-23:10:01.567391 7f0130ff96c0 Delete type=0 #397
2025/09/05-23:25:34.789652 7f012fff76c0 Level-0 table #402: started
2025/09/05-23:25:34.789701 7f012fff76c0 Level-0 table #402: 0 bytes OK
2025/09/05-23:25:34.796271 7f012fff76c0 Delete type=0 #400
2025/09/05-23:25:34.803244 7f012fff76c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/09/05-23:25:34.803346 7f012fff76c0 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/08/30-18:23:53.054593 7facb89f96c0 Recovering log #373
2025/08/30-18:23:53.065011 7facb89f96c0 Delete type=3 #371
2025/08/30-18:23:53.065091 7facb89f96c0 Delete type=0 #373
2025/08/30-18:45:52.219947 7facb27ff6c0 Level-0 table #378: started
2025/08/30-18:45:52.219975 7facb27ff6c0 Level-0 table #378: 0 bytes OK
2025/08/30-18:45:52.225942 7facb27ff6c0 Delete type=0 #376
2025/08/30-18:45:52.233667 7facb27ff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/08/30-18:45:52.233700 7facb27ff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/09/04-09:03:59.893009 7f66ceffd6c0 Recovering log #393
2025/09/04-09:03:59.902791 7f66ceffd6c0 Delete type=3 #391
2025/09/04-09:03:59.902925 7f66ceffd6c0 Delete type=0 #393
2025/09/04-09:04:51.769661 7f66cdbff6c0 Level-0 table #398: started
2025/09/04-09:04:51.769698 7f66cdbff6c0 Level-0 table #398: 0 bytes OK
2025/09/04-09:04:51.777317 7f66cdbff6c0 Delete type=0 #396
2025/09/04-09:04:51.790177 7f66cdbff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
2025/09/04-09:04:51.790202 7f66cdbff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000079
MANIFEST-000099

View File

@@ -1,8 +1,8 @@
2025/08/31-11:02:02.230091 7facb3fff6c0 Recovering log #77
2025/08/31-11:02:02.240519 7facb3fff6c0 Delete type=3 #75
2025/08/31-11:02:02.240600 7facb3fff6c0 Delete type=0 #77
2025/08/31-11:28:03.047734 7facb27ff6c0 Level-0 table #82: started
2025/08/31-11:28:03.047973 7facb27ff6c0 Level-0 table #82: 0 bytes OK
2025/08/31-11:28:03.055122 7facb27ff6c0 Delete type=0 #80
2025/08/31-11:28:03.086906 7facb27ff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/08/31-11:28:03.086956 7facb27ff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/09/05-23:10:01.616975 7f0130ff96c0 Recovering log #97
2025/09/05-23:10:01.626690 7f0130ff96c0 Delete type=3 #95
2025/09/05-23:10:01.626777 7f0130ff96c0 Delete type=0 #97
2025/09/05-23:25:34.803522 7f012fff76c0 Level-0 table #102: started
2025/09/05-23:25:34.803594 7f012fff76c0 Level-0 table #102: 0 bytes OK
2025/09/05-23:25:34.810169 7f012fff76c0 Delete type=0 #100
2025/09/05-23:25:34.834274 7f012fff76c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/09/05-23:25:34.834341 7f012fff76c0 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/08/30-18:23:53.106927 7facb3fff6c0 Recovering log #73
2025/08/30-18:23:53.116922 7facb3fff6c0 Delete type=3 #71
2025/08/30-18:23:53.116996 7facb3fff6c0 Delete type=0 #73
2025/08/30-18:45:52.206763 7facb27ff6c0 Level-0 table #78: started
2025/08/30-18:45:52.206840 7facb27ff6c0 Level-0 table #78: 0 bytes OK
2025/08/30-18:45:52.213448 7facb27ff6c0 Delete type=0 #76
2025/08/30-18:45:52.233641 7facb27ff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/08/30-18:45:52.233688 7facb27ff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/09/04-09:03:59.954570 7f66cffff6c0 Recovering log #93
2025/09/04-09:03:59.964662 7f66cffff6c0 Delete type=3 #91
2025/09/04-09:03:59.964757 7f66cffff6c0 Delete type=0 #93
2025/09/04-09:04:51.797370 7f66cdbff6c0 Level-0 table #98: started
2025/09/04-09:04:51.797420 7f66cdbff6c0 Level-0 table #98: 0 bytes OK
2025/09/04-09:04:51.804045 7f66cdbff6c0 Delete type=0 #96
2025/09/04-09:04:51.817491 7f66cdbff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
2025/09/04-09:04:51.817519 7f66cdbff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000379
MANIFEST-000399

View File

@@ -1,8 +1,8 @@
2025/08/31-11:02:02.217898 7facb91fa6c0 Recovering log #377
2025/08/31-11:02:02.227818 7facb91fa6c0 Delete type=3 #375
2025/08/31-11:02:02.227879 7facb91fa6c0 Delete type=0 #377
2025/08/31-11:28:03.024048 7facb27ff6c0 Level-0 table #382: started
2025/08/31-11:28:03.024094 7facb27ff6c0 Level-0 table #382: 0 bytes OK
2025/08/31-11:28:03.032021 7facb27ff6c0 Delete type=0 #380
2025/08/31-11:28:03.047310 7facb27ff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/08/31-11:28:03.047492 7facb27ff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/09/05-23:10:01.602511 7f01307f86c0 Recovering log #397
2025/09/05-23:10:01.613927 7f01307f86c0 Delete type=3 #395
2025/09/05-23:10:01.614000 7f01307f86c0 Delete type=0 #397
2025/09/05-23:25:34.775352 7f012fff76c0 Level-0 table #402: started
2025/09/05-23:25:34.775494 7f012fff76c0 Level-0 table #402: 0 bytes OK
2025/09/05-23:25:34.782238 7f012fff76c0 Delete type=0 #400
2025/09/05-23:25:34.803177 7f012fff76c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/09/05-23:25:34.803306 7f012fff76c0 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/08/30-18:23:53.094395 7facb89f96c0 Recovering log #373
2025/08/30-18:23:53.104578 7facb89f96c0 Delete type=3 #371
2025/08/30-18:23:53.104646 7facb89f96c0 Delete type=0 #373
2025/08/30-18:45:52.233837 7facb27ff6c0 Level-0 table #378: started
2025/08/30-18:45:52.233866 7facb27ff6c0 Level-0 table #378: 0 bytes OK
2025/08/30-18:45:52.239911 7facb27ff6c0 Delete type=0 #376
2025/08/30-18:45:52.263164 7facb27ff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/08/30-18:45:52.263199 7facb27ff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/09/04-09:03:59.941117 7f66cf7fe6c0 Recovering log #393
2025/09/04-09:03:59.951066 7f66cf7fe6c0 Delete type=3 #391
2025/09/04-09:03:59.951178 7f66cf7fe6c0 Delete type=0 #393
2025/09/04-09:04:51.762591 7f66cdbff6c0 Level-0 table #398: started
2025/09/04-09:04:51.762647 7f66cdbff6c0 Level-0 table #398: 0 bytes OK
2025/09/04-09:04:51.769513 7f66cdbff6c0 Delete type=0 #396
2025/09/04-09:04:51.790167 7f66cdbff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
2025/09/04-09:04:51.790196 7f66cdbff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)

View File

@@ -4,7 +4,6 @@
overflow: scroll;
}
.character-main {
display: flex;
@@ -46,7 +45,7 @@
min-width: 2.2rem;
max-width: 2.2rem;
margin-left: 4px;
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
}
.character-hp-max {
clear: both;
@@ -58,7 +57,7 @@
input {
width: 3.2rem;
text-align: center;
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
}
}
}
@@ -223,7 +222,7 @@
}
}
.tab.character-biography .main-div{
.tab.character-biography .main-div {
.biodata {
display: grid;
grid-template-columns: repeat(4, 1fr);
@@ -253,7 +252,7 @@
}
}
.tab.character-skills .main-div{
.tab.character-skills .main-div {
display: grid;
grid-template-columns: 1fr;
legend {
@@ -474,7 +473,7 @@
min-width: 12rem;
}
.item-detail {
min-width:2rem;
min-width: 2rem;
}
}
.shields {
@@ -493,13 +492,12 @@
}
}
.item-detail {
min-width:2.5rem;
min-width: 2.5rem;
}
.name {
min-width: 12rem;
}
}
}
.tab.character-spells .main-div {
@@ -535,7 +533,6 @@
}
}
.spells {
display: grid;
grid-template-columns: repeat(2, 1fr);
@@ -546,7 +543,8 @@
align-items: center;
gap: 4px;
.item-img {
width: 24px;
min-width: 24px;
max-width: 24px;
height: 24px;
}
.name {

View File

@@ -25,7 +25,6 @@
border-radius: 4px;
padding: 0.5rem;
}
}
.lethalfantasy-range-defense-dialog {
@@ -45,13 +44,12 @@
justify-content: left;
}
.field-name {
width:4rem;
width: 4rem;
min-width: 4rem;
max-width: 4rem;
}
}
.dialog-form {
.form-footer {
button {
@@ -87,7 +85,6 @@
}
}
.main,
.dialog-damage,
.dialog-resource,
@@ -99,8 +96,13 @@
justify-content: center;
align-items: center;
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
color: var(--color-dark-1);
select {
min-width: 8rem;
max-width: 8rem;
margin-left: 1rem;
}
}
&.dice-roll {
@@ -133,7 +135,7 @@
flex-direction: column;
.introText {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
width: 210px;
margin-left: 20px;
}
@@ -144,7 +146,7 @@
flex-direction: column;
justify-content: center;
align-items: center;
font-size: calc(var(--font-size-standard) * 1.0);
font-size: calc(var(--font-size-standard) * 1);
text-shadow: 0 0 10px var(--color-shadow-primary);
}
}

View File

@@ -1,52 +1,52 @@
<section class="tab character-{{tab.id}} {{tab.cssClass}}" data-tab="{{tab.id}}" data-group="{{tab.group}}">
<div class="main-div">
<fieldset>
<legend>{{localize "LETHALFANTASY.Label.divinityPoints"}}</legend>
<div class="miracle-details">
<div class="miracle-detail">
<span >Current</span>
{{formField systemFields.divinityPoints.fields.value value=system.divinityPoints.value localize=true}}
<a data-action="divinityPointsPlus"><i class="fa-solid fa-hexagon-plus"></i></a>
<a data-action="divinityPointsMinus"><i class="fa-solid fa-hexagon-minus"></i></a>
<fieldset>
<legend>{{localize "LETHALFANTASY.Label.divinityPoints"}}</legend>
<div class="miracle-details">
<div class="miracle-detail">
<span>Current</span>
{{formField systemFields.divinityPoints.fields.value value=system.divinityPoints.value localize=true}}
<a data-action="divinityPointsPlus"><i class="fa-solid fa-hexagon-plus"></i></a>
<a data-action="divinityPointsMinus"><i class="fa-solid fa-hexagon-minus"></i></a>
<span >Max</span>
{{formField systemFields.divinityPoints.fields.max value=system.divinityPoints.max localize=true disabled=isPlayMode}}
<span>Max</span>
{{formField systemFields.divinityPoints.fields.max value=system.divinityPoints.max localize=true
disabled=isPlayMode}}
</div>
</div>
</div>
</fieldset>
</fieldset>
<fieldset>
<legend>{{localize "LETHALFANTASY.Label.miracles"}}{{#if isEditMode}}<a class="action" data-tooltip="{{localize "
LETHALFANTASY.Tooltip.addMiracle"}}" data-tooltip-direction="UP"><i class="fas fa-plus"
data-action="createMiracle"></i></a>{{/if}}</legend>
<div class="miracles">
{{#each miracles as |item|}}
<div class="miracle" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true" >
<img class="item-img" src="{{item.img}}" data-tooltip="{{item.name}}" />
<div class="name" >
{{item.name}}
</div>
<a class="rollable" data-roll-type="miracle-attack" data-roll-key="{{item.id}}" data-tooltip="Miracle Attack">
<i class="lf-roll-small fa-solid fa-swords" data-roll-type="miracle-attack" data-roll-key="{{item.id}}"></i>
</a>
<a class="rollable" data-roll-type="miracle-power" data-roll-key="{{item.id}}" data-tooltip="Miracle Power">
<i class="fa-duotone fa-solid fa-stars" data-roll-type="miracle-power" data-roll-key="{{item.id}}"></i>
</a>
<div class="controls">
<a data-tooltip="{{localize 'LETHALFANTASY.Edit'}}" data-action="edit" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-edit"></i></a>
<a data-tooltip="{{localize 'LETHALFANTASY.Delete'}}" data-action="delete" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-trash"></i></a>
<fieldset>
<legend>{{localize "LETHALFANTASY.Label.miracles"}}{{#if isEditMode}}<a class="action" data-tooltip="{{localize "
LETHALFANTASY.Tooltip.addMiracle"}}" data-tooltip-direction="UP"><i class="fas fa-plus"
data-action="createMiracle"></i></a>{{/if}}</legend>
<div class="miracles">
{{#each miracles as |item|}}
<div class="miracle" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true">
<img class="item-img" src="{{item.img}}" data-tooltip="{{item.name}}" />
<div class="name">
{{item.name}}
</div>
<a class="rollable" data-roll-type="miracle-attack" data-roll-key="{{item.id}}" data-tooltip="Miracle Attack">
<i class="lf-roll-small fa-solid fa-swords" data-roll-type="miracle-attack" data-roll-key="{{item.id}}"></i>
</a>
<a class="rollable" data-roll-type="miracle-power" data-roll-key="{{item.id}}" data-tooltip="Miracle Power">
<i class="fa-duotone fa-solid fa-stars" data-roll-type="miracle-power" data-roll-key="{{item.id}}"></i>
</a>
<div class="controls">
<a data-tooltip="{{localize 'LETHALFANTASY.Edit'}}" data-action="edit" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-edit"></i></a>
<a data-tooltip="{{localize 'LETHALFANTASY.Delete'}}" data-action="delete" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-trash"></i></a>
</div>
</div>
{{/each}}
</div>
{{/each}}
</div>
</fieldset>
</div>
</fieldset>
</div>
</section>

View File

@@ -15,38 +15,37 @@
disabled=isPlayMode}}
</div>
</div>
</div>
</fieldset>
</fieldset>
<fieldset>
<legend>{{localize "LETHALFANTASY.Label.spells"}}{{#if isEditMode}}<a class="action" data-tooltip="{{localize "
LETHALFANTASY.Tooltip.addSpell"}}" data-tooltip-direction="UP"><i class="fas fa-plus"
data-action="createSpell"></i></a>{{/if}}</legend>
<div class="spells">
{{#each spells as |item|}}
<div class="spell" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true">
<img class="item-img" src="{{item.img}}" data-tooltip="{{item.name}}" />
<div class="name">
{{item.name}}
</div>
<a class="rollable" data-roll-type="spell-attack" data-roll-key="{{item.id}}" data-tooltip="Spell Attack">
<i class="lf-roll-small fa-solid fa-swords" data-roll-type="spell-attack" data-roll-key="{{item.id}}"></i>
</a>
<a class="rollable" data-roll-type="spell-power" data-roll-key="{{item.id}}" data-tooltip="Spell Power">
<i class="fa-duotone fa-solid fa-stars" data-roll-type="spell-power" data-roll-key="{{item.id}}"></i>
</a>
<div class="controls">
<a data-tooltip="{{localize 'LETHALFANTASY.Edit'}}" data-action="edit" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-edit"></i></a>
<a data-tooltip="{{localize 'LETHALFANTASY.Delete'}}" data-action="delete" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-trash"></i></a>
<fieldset>
<legend>{{localize "LETHALFANTASY.Label.spells"}}{{#if isEditMode}}<a class="action" data-tooltip="{{localize "
LETHALFANTASY.Tooltip.addSpell"}}" data-tooltip-direction="UP"><i class="fas fa-plus"
data-action="createSpell"></i></a>{{/if}}</legend>
<div class="spells">
{{#each spells as |item|}}
<div class="spell" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true">
<img class="item-img" src="{{item.img}}" data-tooltip="{{item.name}}" />
<div class="name">
{{item.name}}
</div>
<a class="rollable" data-roll-type="spell-attack" data-roll-key="{{item.id}}" data-tooltip="Spell Attack">
<i class="lf-roll-small fa-solid fa-swords" data-roll-type="spell-attack" data-roll-key="{{item.id}}"></i>
</a>
<a class="rollable" data-roll-type="spell-power" data-roll-key="{{item.id}}" data-tooltip="Spell Power">
<i class="fa-duotone fa-solid fa-stars" data-roll-type="spell-power" data-roll-key="{{item.id}}"></i>
</a>
<div class="controls">
<a data-tooltip="{{localize 'LETHALFANTASY.Edit'}}" data-action="edit" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-edit"></i></a>
<a data-tooltip="{{localize 'LETHALFANTASY.Delete'}}" data-action="delete" data-item-id="{{item.id}}"
data-item-uuid="{{item.uuid}}"><i class="fas fa-trash"></i></a>
</div>
</div>
{{/each}}
</div>
{{/each}}
</div>
</fieldset>
</fieldset>
</div>
</section>

View File

@@ -23,6 +23,16 @@
<span>{{rollTarget.weapon.name}}</span>
{{/if}}
{{#if rollData.letItFly}}
<span>Let It Fly attack ! </span>
{{/if}}
{{#if rollData.pointBlank}}
<span>Point Blank Range Attack !</span>
{{/if}}
{{#if rollData.beyondSkill}}
<span>Beyond Skill Range Attack !</span>
{{/if}}
<span>Formula : {{titleFormula}}</span>
{{#each diceResults as |result|}}

View File

@@ -32,14 +32,6 @@
</select>
</div>
<div class="field-section">
<span class="field-name">Aim :</span>
<select name="attackerAim" data-tooltip-direction="UP">
{{selectOptions attackerAimChoices selected=attackerAim}}
</select>
</div>
</fieldSet>
<fieldSet>

View File

@@ -33,12 +33,25 @@
<div class="dialog-save">Add Granted Attack Dice
<input type="checkbox" data-action="selectGranted" name="granted">
</div>
{{#if (eq rollTarget.weapon.system.weaponType "melee")}}
{{else}}
<div class="dialog-save">Point Blank Range Attack
<input type="checkbox" data-action="selectPointBlank" name="pointBlank">
<input type="checkbox" data-action="selectPointBlank" name="pointBlankV">
</div>
<div class="dialog-save">Beyon Skill Range Attack
<input type="checkbox" data-action="selectBeyondSkill" name="beyondSkill">
<div class="dialog-save">Beyond Skill Range Attack
<input type="checkbox" data-action="selectBeyondSkill" name="beyondSkillV">
</div>
<div class="dialog-save">Let it Fly (Pure D20E)
<input type="checkbox" data-action="selectLetItFly" name="letItFlyV">
</div>
<div class="dialog-save">Aiming
<select name="attackerAim" data-tooltip-direction="UP">
{{selectOptions attackerAimChoices selected=attackerAim}}
</select>
</div>
{{/if}}
{{/if}}
{{#if (match rollType "defense")}}
<div class="dialog-save">Add Granted Defense Dice

View File

@@ -29,7 +29,7 @@
</div>
<div class="align-top">
<label>Destruction</label>
<!-- <label>Destruction</label>
<div class="shift-right">
{{formField systemFields.destruction.fields.bashing value=system.destruction.bashing}}
{{formField systemFields.destruction.fields.slashing value=system.destruction.slashing}}
@@ -41,7 +41,7 @@
{{formField systemFields.autodestruction.fields.bashing value=system.autodestruction.bashing}}
{{formField systemFields.autodestruction.fields.slashing value=system.autodestruction.slashing}}
{{formField systemFields.autodestruction.fields.piercing value=system.autodestruction.piercing}}
</div>
</div> -->
{{formField systemFields.equipped value=system.equipped}}