Roll damages and so on
This commit is contained in:
@@ -2411,6 +2411,55 @@ i.lethalfantasy {
|
|||||||
font-size: calc(var(--font-size-standard) * 1);
|
font-size: calc(var(--font-size-standard) * 1);
|
||||||
text-shadow: 0 0 10px var(--color-shadow-primary);
|
text-shadow: 0 0 10px var(--color-shadow-primary);
|
||||||
}
|
}
|
||||||
|
.dice-roll .damage-buttons {
|
||||||
|
width: 100%;
|
||||||
|
padding: 8px;
|
||||||
|
margin-top: 8px;
|
||||||
|
}
|
||||||
|
.dice-roll .damage-buttons .damage-buttons-title {
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
font-size: calc(var(--font-size-standard) * 0.95);
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.dice-roll .damage-buttons .damage-buttons-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(2, 1fr);
|
||||||
|
gap: 6px;
|
||||||
|
padding: 8px;
|
||||||
|
background-color: rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn {
|
||||||
|
padding: 6px 10px;
|
||||||
|
background: linear-gradient(to bottom, #8b4513 0%, #6b3410 100%);
|
||||||
|
border: 1px solid #4b2408;
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
|
||||||
|
color: #f0f0e0;
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-size: calc(var(--font-size-standard) * 0.85);
|
||||||
|
font-weight: 500;
|
||||||
|
text-align: center;
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 4px;
|
||||||
|
}
|
||||||
|
.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn i {
|
||||||
|
font-size: calc(var(--font-size-standard) * 1);
|
||||||
|
}
|
||||||
|
.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn:hover {
|
||||||
|
background: linear-gradient(to bottom, #9b5523 0%, #7b4420 100%);
|
||||||
|
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4);
|
||||||
|
transform: translateY(-1px);
|
||||||
|
border-color: #5b3418;
|
||||||
|
}
|
||||||
|
.dice-roll .damage-buttons .damage-buttons-grid .damage-roll-btn:active {
|
||||||
|
transform: translateY(0);
|
||||||
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
|
||||||
|
}
|
||||||
.dice-roll .damage-result {
|
.dice-roll .damage-result {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
|
|||||||
@@ -283,6 +283,7 @@
|
|||||||
"Label": {
|
"Label": {
|
||||||
"agility": "Dexterity",
|
"agility": "Dexterity",
|
||||||
"applyDamage": "Apply damage to:",
|
"applyDamage": "Apply damage to:",
|
||||||
|
"rollDamage": "Roll Damage",
|
||||||
"gotoToken": "Go to token",
|
"gotoToken": "Go to token",
|
||||||
"combatAction": "Combat action",
|
"combatAction": "Combat action",
|
||||||
"currentAction": "Current ongoing action",
|
"currentAction": "Current ongoing action",
|
||||||
|
|||||||
@@ -185,6 +185,32 @@ Hooks.on(hookName, (message, html, data) => {
|
|||||||
LethalFantasyUtils.applyDamage(message, event)
|
LethalFantasyUtils.applyDamage(message, event)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Gestionnaire pour les boutons de jet de dégâts
|
||||||
|
$(html).find(".damage-roll-btn").click(async (event) => {
|
||||||
|
const button = $(event.currentTarget)
|
||||||
|
const weaponId = button.data("weapon-id")
|
||||||
|
const damageType = button.data("damage-type")
|
||||||
|
const damageFormula = button.data("damage-formula")
|
||||||
|
|
||||||
|
// Récupérer l'acteur qui a fait le jet initial
|
||||||
|
const actor = game.actors.get(message.rolls[0]?.actorId)
|
||||||
|
if (!actor) {
|
||||||
|
ui.notifications.error("Actor not found")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Récupérer l'arme
|
||||||
|
const weapon = actor.items.get(weaponId)
|
||||||
|
if (!weapon) {
|
||||||
|
ui.notifications.error("Weapon not found")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lancer les dégâts avec la bonne méthode
|
||||||
|
const rollType = damageType === "small" ? "weapon-damage-small" : "weapon-damage-medium"
|
||||||
|
await actor.prepareRoll(rollType, weaponId)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
Hooks.on("getCombatTrackerEntryContext", (html, options) => {
|
Hooks.on("getCombatTrackerEntryContext", (html, options) => {
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ export default class LethalFantasyActor extends Actor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* *************************************************/
|
/* *************************************************/
|
||||||
fuzzyNameSearchWeaponSkills(weaponName, weaponClass=null) {
|
fuzzyNameSearchWeaponSkills(weaponName, weaponClass = null) {
|
||||||
// Get all weapon skills without the " skill" suffix
|
// Get all weapon skills without the " skill" suffix
|
||||||
let skills = this.items.filter((i) => i.type === "skill" && i.system.weaponClass === weaponClass && i.system.category === "weapon")
|
let skills = this.items.filter((i) => i.type === "skill" && i.system.weaponClass === weaponClass && i.system.category === "weapon")
|
||||||
// Remove parenthesis in the weapon name for better matching
|
// Remove parenthesis in the weapon name for better matching
|
||||||
@@ -227,11 +227,14 @@ export default class LethalFantasyActor extends Actor {
|
|||||||
ui.notifications.warn(game.i18n.localize("LETHALFANTASY.Notifications.skillNotFound"))
|
ui.notifications.warn(game.i18n.localize("LETHALFANTASY.Notifications.skillNotFound"))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
rollTarget = skill
|
// Créer un objet plain au lieu de modifier directement le skill
|
||||||
rollTarget.weapon = weapon
|
rollTarget = {
|
||||||
rollTarget.weaponSkillModifier = skill.weaponSkillModifier
|
...skill,
|
||||||
rollTarget.rollKey = rollKey
|
weapon: weapon,
|
||||||
rollTarget.combat = foundry.utils.duplicate(this.system.combat)
|
weaponSkillModifier: skill.weaponSkillModifier,
|
||||||
|
rollKey: rollKey,
|
||||||
|
combat: foundry.utils.duplicate(this.system.combat)
|
||||||
|
}
|
||||||
if (rollType === "weapon-damage-small" || rollType === "weapon-damage-medium") {
|
if (rollType === "weapon-damage-small" || rollType === "weapon-damage-medium") {
|
||||||
rollTarget.grantedDice = this.system.granted.damageDice
|
rollTarget.grantedDice = this.system.granted.damageDice
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1139,6 +1139,20 @@ export default class LethalFantasyRoll extends Roll {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Récupérer les informations de l'arme pour les attaques réussies
|
||||||
|
let weaponDamageOptions = null
|
||||||
|
console.log("Roll type:", this.type, "rollTarget:", this.rollTarget, "Has weapon:", !!this.rollTarget?.weapon)
|
||||||
|
if (this.type === "weapon-attack" && this.rollTarget?.weapon) {
|
||||||
|
const weapon = this.rollTarget.weapon
|
||||||
|
weaponDamageOptions = {
|
||||||
|
weaponId: weapon._id || weapon.id,
|
||||||
|
weaponName: weapon.name,
|
||||||
|
damageS: weapon.system?.damage?.damageS,
|
||||||
|
damageM: weapon.system?.damage?.damageM
|
||||||
|
}
|
||||||
|
console.log("Weapon damage options:", weaponDamageOptions)
|
||||||
|
}
|
||||||
|
|
||||||
const cardData = {
|
const cardData = {
|
||||||
css: [SYSTEM.id, "dice-roll"],
|
css: [SYSTEM.id, "dice-roll"],
|
||||||
data: this.data,
|
data: this.data,
|
||||||
@@ -1163,7 +1177,8 @@ export default class LethalFantasyRoll extends Roll {
|
|||||||
badResult: this.badResult,
|
badResult: this.badResult,
|
||||||
rollData: this.rollData,
|
rollData: this.rollData,
|
||||||
isPrivate: isPrivate,
|
isPrivate: isPrivate,
|
||||||
combatants: combatants
|
combatants: combatants,
|
||||||
|
weaponDamageOptions: weaponDamageOptions
|
||||||
}
|
}
|
||||||
cardData.cssClass = cardData.css.join(" ")
|
cardData.cssClass = cardData.css.join(" ")
|
||||||
cardData.tooltip = isPrivate ? "" : await this.getTooltip()
|
cardData.tooltip = isPrivate ? "" : await this.getTooltip()
|
||||||
|
|||||||
@@ -269,7 +269,7 @@ export default class LethalFantasyUtils {
|
|||||||
|
|
||||||
// Récupérer les données de dégâts du message
|
// Récupérer les données de dégâts du message
|
||||||
let damageTotal = message.rolls[0]?.total || 0
|
let damageTotal = message.rolls[0]?.total || 0
|
||||||
let weaponName = message.rolls[0]?.options?.rollTarget?.weapon?.name || "Unknown Weapon"
|
let weaponName = message.rolls[0]?.options?.rollName || "Unknown Weapon"
|
||||||
|
|
||||||
// Calculer les DR
|
// Calculer les DR
|
||||||
let armorDR = targetActor.computeDamageReduction() || 0
|
let armorDR = targetActor.computeDamageReduction() || 0
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
MANIFEST-000460
|
MANIFEST-000465
|
||||||
|
|||||||
@@ -1,15 +1,8 @@
|
|||||||
2025/12/14-09:09:25.826835 7f17053ff6c0 Recovering log #458
|
2025/12/14-20:51:28.512263 7f17053ff6c0 Recovering log #462
|
||||||
2025/12/14-09:09:25.838032 7f17053ff6c0 Delete type=3 #456
|
2025/12/14-20:51:28.522433 7f17053ff6c0 Delete type=3 #460
|
||||||
2025/12/14-09:09:25.838116 7f17053ff6c0 Delete type=0 #458
|
2025/12/14-20:51:28.522511 7f17053ff6c0 Delete type=0 #462
|
||||||
2025/12/14-20:45:56.707785 7f16eeffd6c0 Level-0 table #463: started
|
2025/12/14-21:17:40.691121 7f16eeffd6c0 Level-0 table #468: started
|
||||||
2025/12/14-20:45:56.710879 7f16eeffd6c0 Level-0 table #463: 1677 bytes OK
|
2025/12/14-21:17:40.691177 7f16eeffd6c0 Level-0 table #468: 0 bytes OK
|
||||||
2025/12/14-20:45:56.716936 7f16eeffd6c0 Delete type=0 #461
|
2025/12/14-21:17:40.697563 7f16eeffd6c0 Delete type=0 #466
|
||||||
2025/12/14-20:45:56.730287 7f16eeffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718082 7f16eeffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
2025/12/14-20:45:56.730345 7f16eeffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1
|
2025/12/14-21:17:40.718119 7f16eeffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
2025/12/14-20:45:56.730356 7f16eeffd6c0 Compacting 1@1 + 1@2 files
|
|
||||||
2025/12/14-20:45:56.736659 7f16eeffd6c0 Generated table #464@1: 485 keys, 217363 bytes
|
|
||||||
2025/12/14-20:45:56.736680 7f16eeffd6c0 Compacted 1@1 + 1@2 files => 217363 bytes
|
|
||||||
2025/12/14-20:45:56.742890 7f16eeffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
|
|
||||||
2025/12/14-20:45:56.742996 7f16eeffd6c0 Delete type=2 #323
|
|
||||||
2025/12/14-20:45:56.743249 7f16eeffd6c0 Delete type=2 #463
|
|
||||||
2025/12/14-20:45:56.750017 7f16eeffd6c0 Manual compaction at level-1 from '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
|
||||||
|
|||||||
@@ -1,8 +1,15 @@
|
|||||||
2025/12/06-15:17:13.631288 7f19dd7fa6c0 Recovering log #454
|
2025/12/14-09:09:25.826835 7f17053ff6c0 Recovering log #458
|
||||||
2025/12/06-15:17:13.737044 7f19dd7fa6c0 Delete type=3 #452
|
2025/12/14-09:09:25.838032 7f17053ff6c0 Delete type=3 #456
|
||||||
2025/12/06-15:17:13.737119 7f19dd7fa6c0 Delete type=0 #454
|
2025/12/14-09:09:25.838116 7f17053ff6c0 Delete type=0 #458
|
||||||
2025/12/06-16:41:02.244527 7f19dbff76c0 Level-0 table #459: started
|
2025/12/14-20:45:56.707785 7f16eeffd6c0 Level-0 table #463: started
|
||||||
2025/12/06-16:41:02.244570 7f19dbff76c0 Level-0 table #459: 0 bytes OK
|
2025/12/14-20:45:56.710879 7f16eeffd6c0 Level-0 table #463: 1677 bytes OK
|
||||||
2025/12/06-16:41:02.281825 7f19dbff76c0 Delete type=0 #457
|
2025/12/14-20:45:56.716936 7f16eeffd6c0 Delete type=0 #461
|
||||||
2025/12/06-16:41:02.281990 7f19dbff76c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.730287 7f16eeffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
2025/12/06-16:41:02.282024 7f19dbff76c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.730345 7f16eeffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1
|
||||||
|
2025/12/14-20:45:56.730356 7f16eeffd6c0 Compacting 1@1 + 1@2 files
|
||||||
|
2025/12/14-20:45:56.736659 7f16eeffd6c0 Generated table #464@1: 485 keys, 217363 bytes
|
||||||
|
2025/12/14-20:45:56.736680 7f16eeffd6c0 Compacted 1@1 + 1@2 files => 217363 bytes
|
||||||
|
2025/12/14-20:45:56.742890 7f16eeffd6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
|
||||||
|
2025/12/14-20:45:56.742996 7f16eeffd6c0 Delete type=2 #323
|
||||||
|
2025/12/14-20:45:56.743249 7f16eeffd6c0 Delete type=2 #463
|
||||||
|
2025/12/14-20:45:56.750017 7f16eeffd6c0 Manual compaction at level-1 from '!items!VFHTlDVKj2yNJEWi' @ 1129 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs-system/lf-equipment/MANIFEST-000465
Normal file
BIN
packs-system/lf-equipment/MANIFEST-000465
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000460
|
MANIFEST-000464
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/14-09:09:25.859023 7f16ef7fe6c0 Recovering log #458
|
2025/12/14-20:51:28.526428 7f16effff6c0 Recovering log #462
|
||||||
2025/12/14-09:09:25.869163 7f16ef7fe6c0 Delete type=3 #456
|
2025/12/14-20:51:28.536097 7f16effff6c0 Delete type=3 #460
|
||||||
2025/12/14-09:09:25.869258 7f16ef7fe6c0 Delete type=0 #458
|
2025/12/14-20:51:28.536151 7f16effff6c0 Delete type=0 #462
|
||||||
2025/12/14-20:45:56.717084 7f16eeffd6c0 Level-0 table #463: started
|
2025/12/14-21:17:40.711547 7f16eeffd6c0 Level-0 table #467: started
|
||||||
2025/12/14-20:45:56.717117 7f16eeffd6c0 Level-0 table #463: 0 bytes OK
|
2025/12/14-21:17:40.711584 7f16eeffd6c0 Level-0 table #467: 0 bytes OK
|
||||||
2025/12/14-20:45:56.723011 7f16eeffd6c0 Delete type=0 #461
|
2025/12/14-21:17:40.717934 7f16eeffd6c0 Delete type=0 #465
|
||||||
2025/12/14-20:45:56.730301 7f16eeffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718128 7f16eeffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
2025/12/14-20:45:56.743359 7f16eeffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718154 7f16eeffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/06-15:17:13.747297 7f19dc7f86c0 Recovering log #454
|
2025/12/14-09:09:25.859023 7f16ef7fe6c0 Recovering log #458
|
||||||
2025/12/06-15:17:13.857630 7f19dc7f86c0 Delete type=3 #452
|
2025/12/14-09:09:25.869163 7f16ef7fe6c0 Delete type=3 #456
|
||||||
2025/12/06-15:17:13.857707 7f19dc7f86c0 Delete type=0 #454
|
2025/12/14-09:09:25.869258 7f16ef7fe6c0 Delete type=0 #458
|
||||||
2025/12/06-16:41:02.159042 7f19dbff76c0 Level-0 table #459: started
|
2025/12/14-20:45:56.717084 7f16eeffd6c0 Level-0 table #463: started
|
||||||
2025/12/06-16:41:02.159069 7f19dbff76c0 Level-0 table #459: 0 bytes OK
|
2025/12/14-20:45:56.717117 7f16eeffd6c0 Level-0 table #463: 0 bytes OK
|
||||||
2025/12/06-16:41:02.201619 7f19dbff76c0 Delete type=0 #457
|
2025/12/14-20:45:56.723011 7f16eeffd6c0 Delete type=0 #461
|
||||||
2025/12/06-16:41:02.281970 7f19dbff76c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.730301 7f16eeffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
2025/12/06-16:41:02.282008 7f19dbff76c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.743359 7f16eeffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000462
|
MANIFEST-000466
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/14-09:09:25.806646 7f16effff6c0 Recovering log #460
|
2025/12/14-20:51:28.497448 7f1704bfe6c0 Recovering log #464
|
||||||
2025/12/14-09:09:25.817606 7f16effff6c0 Delete type=3 #458
|
2025/12/14-20:51:28.507553 7f1704bfe6c0 Delete type=3 #462
|
||||||
2025/12/14-09:09:25.817666 7f16effff6c0 Delete type=0 #460
|
2025/12/14-20:51:28.507622 7f1704bfe6c0 Delete type=0 #464
|
||||||
2025/12/14-20:45:56.701142 7f16eeffd6c0 Level-0 table #465: started
|
2025/12/14-21:17:40.697721 7f16eeffd6c0 Level-0 table #469: started
|
||||||
2025/12/14-20:45:56.701194 7f16eeffd6c0 Level-0 table #465: 0 bytes OK
|
2025/12/14-21:17:40.697764 7f16eeffd6c0 Level-0 table #469: 0 bytes OK
|
||||||
2025/12/14-20:45:56.707652 7f16eeffd6c0 Delete type=0 #463
|
2025/12/14-21:17:40.703907 7f16eeffd6c0 Delete type=0 #467
|
||||||
2025/12/14-20:45:56.730266 7f16eeffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718096 7f16eeffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
2025/12/14-20:45:56.730327 7f16eeffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718137 7f16eeffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/06-15:17:13.504137 7f19ddffb6c0 Recovering log #456
|
2025/12/14-09:09:25.806646 7f16effff6c0 Recovering log #460
|
||||||
2025/12/06-15:17:13.609897 7f19ddffb6c0 Delete type=3 #454
|
2025/12/14-09:09:25.817606 7f16effff6c0 Delete type=3 #458
|
||||||
2025/12/06-15:17:13.609952 7f19ddffb6c0 Delete type=0 #456
|
2025/12/14-09:09:25.817666 7f16effff6c0 Delete type=0 #460
|
||||||
2025/12/06-16:41:02.201733 7f19dbff76c0 Level-0 table #461: started
|
2025/12/14-20:45:56.701142 7f16eeffd6c0 Level-0 table #465: started
|
||||||
2025/12/06-16:41:02.201761 7f19dbff76c0 Level-0 table #461: 0 bytes OK
|
2025/12/14-20:45:56.701194 7f16eeffd6c0 Level-0 table #465: 0 bytes OK
|
||||||
2025/12/06-16:41:02.244399 7f19dbff76c0 Delete type=0 #459
|
2025/12/14-20:45:56.707652 7f16eeffd6c0 Delete type=0 #463
|
||||||
2025/12/06-16:41:02.281980 7f19dbff76c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.730266 7f16eeffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
2025/12/06-16:41:02.282016 7f19dbff76c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.730327 7f16eeffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000160
|
MANIFEST-000164
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/14-09:09:25.891410 7f17053ff6c0 Recovering log #158
|
2025/12/14-20:51:28.551833 7f16ef7fe6c0 Recovering log #162
|
||||||
2025/12/14-09:09:25.901634 7f17053ff6c0 Delete type=3 #156
|
2025/12/14-20:51:28.562344 7f16ef7fe6c0 Delete type=3 #160
|
||||||
2025/12/14-09:09:25.901690 7f17053ff6c0 Delete type=0 #158
|
2025/12/14-20:51:28.562406 7f16ef7fe6c0 Delete type=0 #162
|
||||||
2025/12/14-20:45:56.743394 7f16eeffd6c0 Level-0 table #163: started
|
2025/12/14-21:17:40.735101 7f16eeffd6c0 Level-0 table #167: started
|
||||||
2025/12/14-20:45:56.743431 7f16eeffd6c0 Level-0 table #163: 0 bytes OK
|
2025/12/14-21:17:40.735151 7f16eeffd6c0 Level-0 table #167: 0 bytes OK
|
||||||
2025/12/14-20:45:56.749813 7f16eeffd6c0 Delete type=0 #161
|
2025/12/14-21:17:40.741604 7f16eeffd6c0 Delete type=0 #165
|
||||||
2025/12/14-20:45:56.767206 7f16eeffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.771470 7f16eeffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
2025/12/14-20:45:56.791687 7f16eeffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.781560 7f16eeffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/06-15:17:13.990000 7f19dcff96c0 Recovering log #154
|
2025/12/14-09:09:25.891410 7f17053ff6c0 Recovering log #158
|
||||||
2025/12/06-15:17:14.078163 7f19dcff96c0 Delete type=3 #152
|
2025/12/14-09:09:25.901634 7f17053ff6c0 Delete type=3 #156
|
||||||
2025/12/06-15:17:14.078227 7f19dcff96c0 Delete type=0 #154
|
2025/12/14-09:09:25.901690 7f17053ff6c0 Delete type=0 #158
|
||||||
2025/12/06-16:41:02.444766 7f19dbff76c0 Level-0 table #159: started
|
2025/12/14-20:45:56.743394 7f16eeffd6c0 Level-0 table #163: started
|
||||||
2025/12/06-16:41:02.444810 7f19dbff76c0 Level-0 table #159: 0 bytes OK
|
2025/12/14-20:45:56.743431 7f16eeffd6c0 Level-0 table #163: 0 bytes OK
|
||||||
2025/12/06-16:41:02.474131 7f19dbff76c0 Delete type=0 #157
|
2025/12/14-20:45:56.749813 7f16eeffd6c0 Delete type=0 #161
|
||||||
2025/12/06-16:41:02.619626 7f19dbff76c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.767206 7f16eeffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
2025/12/06-16:41:02.668537 7f19dbff76c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.791687 7f16eeffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000459
|
MANIFEST-000463
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/14-09:09:25.874671 7f16effff6c0 Recovering log #457
|
2025/12/14-20:51:28.538266 7f1704bfe6c0 Recovering log #461
|
||||||
2025/12/14-09:09:25.886173 7f16effff6c0 Delete type=3 #455
|
2025/12/14-20:51:28.549289 7f1704bfe6c0 Delete type=3 #459
|
||||||
2025/12/14-09:09:25.886272 7f16effff6c0 Delete type=0 #457
|
2025/12/14-20:51:28.549364 7f1704bfe6c0 Delete type=0 #461
|
||||||
2025/12/14-20:45:56.723132 7f16eeffd6c0 Level-0 table #462: started
|
2025/12/14-21:17:40.704054 7f16eeffd6c0 Level-0 table #466: started
|
||||||
2025/12/14-20:45:56.723164 7f16eeffd6c0 Level-0 table #462: 0 bytes OK
|
2025/12/14-21:17:40.704085 7f16eeffd6c0 Level-0 table #466: 0 bytes OK
|
||||||
2025/12/14-20:45:56.730108 7f16eeffd6c0 Delete type=0 #460
|
2025/12/14-21:17:40.711382 7f16eeffd6c0 Delete type=0 #464
|
||||||
2025/12/14-20:45:56.730316 7f16eeffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718108 7f16eeffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
2025/12/14-20:45:56.743378 7f16eeffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2025/12/14-21:17:40.718145 7f16eeffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2025/12/06-15:17:13.870724 7f19ddffb6c0 Recovering log #453
|
2025/12/14-09:09:25.874671 7f16effff6c0 Recovering log #457
|
||||||
2025/12/06-15:17:13.958289 7f19ddffb6c0 Delete type=3 #451
|
2025/12/14-09:09:25.886173 7f16effff6c0 Delete type=3 #455
|
||||||
2025/12/06-15:17:13.958388 7f19ddffb6c0 Delete type=0 #453
|
2025/12/14-09:09:25.886272 7f16effff6c0 Delete type=0 #457
|
||||||
2025/12/06-16:41:02.118716 7f19dbff76c0 Level-0 table #458: started
|
2025/12/14-20:45:56.723132 7f16eeffd6c0 Level-0 table #462: started
|
||||||
2025/12/06-16:41:02.121944 7f19dbff76c0 Level-0 table #458: 0 bytes OK
|
2025/12/14-20:45:56.723164 7f16eeffd6c0 Level-0 table #462: 0 bytes OK
|
||||||
2025/12/06-16:41:02.158936 7f19dbff76c0 Delete type=0 #456
|
2025/12/14-20:45:56.730108 7f16eeffd6c0 Delete type=0 #460
|
||||||
2025/12/06-16:41:02.281954 7f19dbff76c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.730316 7f16eeffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
2025/12/06-16:41:02.282000 7f19dbff76c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2025/12/14-20:45:56.743378 7f16eeffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -221,6 +221,62 @@
|
|||||||
text-shadow: 0 0 10px var(--color-shadow-primary);
|
text-shadow: 0 0 10px var(--color-shadow-primary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.damage-buttons {
|
||||||
|
width: 100%;
|
||||||
|
padding: 8px;
|
||||||
|
margin-top: 8px;
|
||||||
|
|
||||||
|
.damage-buttons-title {
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
font-size: calc(var(--font-size-standard) * 0.95);
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.damage-buttons-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(2, 1fr);
|
||||||
|
gap: 6px;
|
||||||
|
padding: 8px;
|
||||||
|
background-color: rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 5px;
|
||||||
|
|
||||||
|
.damage-roll-btn {
|
||||||
|
padding: 6px 10px;
|
||||||
|
background: linear-gradient(to bottom, #8b4513 0%, #6b3410 100%);
|
||||||
|
border: 1px solid #4b2408;
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
|
||||||
|
color: #f0f0e0;
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-size: calc(var(--font-size-standard) * 0.85);
|
||||||
|
font-weight: 500;
|
||||||
|
text-align: center;
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 4px;
|
||||||
|
|
||||||
|
i {
|
||||||
|
font-size: calc(var(--font-size-standard) * 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: linear-gradient(to bottom, #9b5523 0%, #7b4420 100%);
|
||||||
|
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4);
|
||||||
|
transform: translateY(-1px);
|
||||||
|
border-color: #5b3418;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
transform: translateY(0);
|
||||||
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.damage-result {
|
.damage-result {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{{!log 'chat-message' this}}
|
{{!log 'chat-message' this}}
|
||||||
|
{{!log 'weaponDamageOptions' weaponDamageOptions}}
|
||||||
<div class="{{cssClass}}">
|
<div class="{{cssClass}}">
|
||||||
<div class="intro-chat">
|
<div class="intro-chat">
|
||||||
<div class="intro-img">
|
<div class="intro-img">
|
||||||
@@ -114,6 +115,40 @@
|
|||||||
|
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
|
|
||||||
|
{{#if weaponDamageOptions}}
|
||||||
|
<div class="damage-buttons">
|
||||||
|
<div class="damage-buttons-title">{{localize
|
||||||
|
"LETHALFANTASY.Label.rollDamage"
|
||||||
|
}}</div>
|
||||||
|
<div class="damage-buttons-grid">
|
||||||
|
{{#if weaponDamageOptions.damageS}}
|
||||||
|
<button
|
||||||
|
class="damage-roll-btn"
|
||||||
|
data-weapon-id="{{weaponDamageOptions.weaponId}}"
|
||||||
|
data-damage-type="small"
|
||||||
|
data-damage-formula="{{weaponDamageOptions.damageS}}"
|
||||||
|
title="{{localize 'LETHALFANTASY.Label.weapon-damage-small'}}"
|
||||||
|
>
|
||||||
|
<i class="fa-solid fa-dice-d6"></i>
|
||||||
|
{{localize "LETHALFANTASY.Label.weapon-damage-small"}}
|
||||||
|
</button>
|
||||||
|
{{/if}}
|
||||||
|
{{#if weaponDamageOptions.damageM}}
|
||||||
|
<button
|
||||||
|
class="damage-roll-btn"
|
||||||
|
data-weapon-id="{{weaponDamageOptions.weaponId}}"
|
||||||
|
data-damage-type="medium"
|
||||||
|
data-damage-formula="{{weaponDamageOptions.damageM}}"
|
||||||
|
title="{{localize 'LETHALFANTASY.Label.weapon-damage-medium'}}"
|
||||||
|
>
|
||||||
|
<i class="fa-solid fa-dice-d20"></i>
|
||||||
|
{{localize "LETHALFANTASY.Label.weapon-damage-medium"}}
|
||||||
|
</button>
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
{{#if rollData.isDamage}}
|
{{#if rollData.isDamage}}
|
||||||
<div class="damage-result">
|
<div class="damage-result">
|
||||||
<ul>
|
<ul>
|
||||||
|
|||||||
Reference in New Issue
Block a user