Compare commits

...

7 Commits

104 changed files with 1456 additions and 702 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -3,12 +3,12 @@ import { HawkmoonUtility } from "./hawkmoon-utility.js";
export class HawkmoonRollDialog extends Dialog {
/* -------------------------------------------- */
static async create(actor, rollData ) {
static async create(actor, rollData) {
let options = { classes: ["HawkmoonDialog"], width: 320, height: 'fit-content', 'z-index': 99999 };
let options = { classes: ["HawkmoonDialog"], width: 420, height: 'fit-content', 'z-index': 99999 };
let html = await foundry.applications.handlebars.renderTemplate('systems/fvtt-hawkmoon-cyd/templates/roll-dialog-generic.html', rollData);
return new HawkmoonRollDialog(actor, rollData, html, options );
return new HawkmoonRollDialog(actor, rollData, html, options);
}
/* -------------------------------------------- */
@@ -18,20 +18,21 @@ export class HawkmoonRollDialog extends Dialog {
content: html,
buttons: {
rolld10: {
icon: '<i class="fas fa-check"></i>',
label: "Lancer 1d10",
callback: () => { this.roll("d10") }
},
rolld20: {
icon: '<i class="fas fa-check"></i>',
label: "Lancer 1d20",
callback: () => { this.roll("d20") }
},
cancel: {
icon: '<i class="fas fa-times"></i>',
label: "Annuler",
callback: () => { this.close() }
} },
icon: '<i class="fas fa-check"></i>',
label: "Lancer 1d10",
callback: () => { this.roll("d10") }
},
rolld20: {
icon: '<i class="fas fa-check"></i>',
label: "Lancer 1d20",
callback: () => { this.roll("d20") }
},
cancel: {
icon: '<i class="fas fa-times"></i>',
label: "Annuler",
callback: () => { this.close() }
}
},
close: close
}
@@ -42,9 +43,9 @@ export class HawkmoonRollDialog extends Dialog {
}
/* -------------------------------------------- */
roll ( dice) {
roll(dice) {
this.rollData.mainDice = dice
HawkmoonUtility.rollHawkmoon( this.rollData )
HawkmoonUtility.rollHawkmoon(this.rollData)
}
@@ -57,20 +58,20 @@ export class HawkmoonRollDialog extends Dialog {
}
$(function () { onLoad(); });
html.find('#modificateur').change(async (event) => {
html.find('#modificateur').change(async (event) => {
this.rollData.modificateur = Number(event.currentTarget.value)
})
html.find('#difficulte').change( (event) => {
html.find('#difficulte').change((event) => {
console.log("Difficulte: " + event.currentTarget.value)
this.rollData.difficulte = Number(event.currentTarget.value)
})
html.find('#attrKey').change(async (event) => {
html.find('#attrKey').change(async (event) => {
this.rollData.attrKey = String(event.currentTarget.value)
})
html.find('#attrKey2').change(async (event) => {
html.find('#attrKey2').change(async (event) => {
this.rollData.attrKey2 = String(event.currentTarget.value)
})
html.find('#select-maitrise').change(async (event) => {
html.find('#select-maitrise').change(async (event) => {
this.rollData.maitriseId = String(event.currentTarget.value)
})
html.find('#competence-talents').change((event) => {

View File

@@ -104,15 +104,33 @@ export class HawkmoonUtility {
return this.skills
}
/* -------------------------------------------- */
static updatePauseLogo(html) {
let logoPause = "systems/fvtt-hawkmoon-cyd/assets/logos/" + game.settings.get("fvtt-hawkmoon-cyd", "hawkmoon-pause-logo") + ".webp"
console.log("Hawkmoon | Updating pause logo to:", logoPause)
// Supprimer l'ancien style s'il existe
let oldStyle = document.getElementById('hawkmoon-pause-logo-override')
if (oldStyle) {
oldStyle.remove()
}
// Injecter une règle CSS pour override le logo
let styleSheet = document.createElement('style')
styleSheet.id = 'hawkmoon-pause-logo-override'
styleSheet.textContent = `#pause>img { content: url(${logoPause}) !important; }`
document.head.appendChild(styleSheet)
console.log("Hawkmoon | Logo CSS rule injected")
}
/* -------------------------------------------- */
static async ready() {
const skills = await HawkmoonUtility.loadCompendium("fvtt-hawkmoon-cyd.skills")
this.skills = skills.map(i => i.toObject())
// Setup pause logo
let logoPause = "systems/fvtt-hawkmoon-cyd/assets/logos/" + game.settings.get("fvtt-hawkmoon-cyd", "hawkmoon-pause-logo") + ".webp"
let logoImg = document.querySelector('#pause').children[0]
logoImg.setAttribute('style', `content: url(${logoPause})`)
this.updatePauseLogo()
game.system.hawkmoon.config.listeNiveauSkill = this.createDirectOptionList(0, 10)
game.system.hawkmoon.config.listeNiveauCreature = this.createDirectOptionList(0, 35)

31
modules/models/arme.mjs Normal file
View File

@@ -0,0 +1,31 @@
/**
* Data model pour les armes
*/
export class ArmeDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
prixpo: new fields.NumberField({ initial: 0, integer: true }),
prixca: new fields.NumberField({ initial: 0, integer: true }),
prixsc: new fields.NumberField({ initial: 0, integer: true }),
rarete: new fields.NumberField({ initial: 0, integer: true }),
quantite: new fields.NumberField({ initial: 1, integer: true }),
equipped: new fields.BooleanField({ initial: false }),
typearme: new fields.StringField({ initial: "" }),
armenaturelle: new fields.BooleanField({ initial: false }),
armefortune: new fields.BooleanField({ initial: false }),
bonusmaniementoff: new fields.NumberField({ initial: 0, integer: true }),
seuildefense: new fields.NumberField({ initial: 0, integer: true }),
onlevelonly: new fields.BooleanField({ initial: false }),
degats: new fields.StringField({ initial: "" }),
deuxmains: new fields.BooleanField({ initial: false }),
percearmure: new fields.BooleanField({ initial: false }),
percearmurevalue: new fields.NumberField({ initial: 0, integer: true }),
courte: new fields.NumberField({ initial: 0, integer: true }),
moyenne: new fields.NumberField({ initial: 0, integer: true }),
longue: new fields.NumberField({ initial: 0, integer: true }),
tr: new fields.NumberField({ initial: 0, integer: true })
};
}
}

View File

@@ -0,0 +1,28 @@
/**
* Data model pour les artefacts
*/
export class ArtefactDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
prixpo: new fields.NumberField({ initial: 0, integer: true }),
prixca: new fields.NumberField({ initial: 0, integer: true }),
prixsc: new fields.NumberField({ initial: 0, integer: true }),
rarete: new fields.NumberField({ initial: 0, integer: true }),
quantite: new fields.NumberField({ initial: 1, integer: true }),
equipped: new fields.BooleanField({ initial: false }),
complexite: new fields.NumberField({ initial: 0, integer: true }),
branche: new fields.StringField({ initial: "" }),
branche2: new fields.StringField({ initial: "none" }),
dureerealisation: new fields.StringField({ initial: "" }),
tempsroute: new fields.StringField({ initial: "" }),
effetdejeu: new fields.StringField({ initial: "" }),
defautcourant: new fields.StringField({ initial: "" }),
autrescarac: new fields.StringField({ initial: "" }),
avantagespossibles: new fields.StringField({ initial: "" }),
avantages: new fields.StringField({ initial: "" }),
competences: new fields.StringField({ initial: "" })
};
}
}

View File

@@ -0,0 +1,53 @@
/**
* Template de base pour tous les items
*/
export class BaseItemModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" })
};
}
}
/**
* Template pour les équipements de base
*/
export class BaseEquipItemModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
prixpo: new fields.NumberField({ initial: 0, integer: true }),
prixca: new fields.NumberField({ initial: 0, integer: true }),
prixsc: new fields.NumberField({ initial: 0, integer: true }),
rarete: new fields.NumberField({ initial: 0, integer: true }),
quantite: new fields.NumberField({ initial: 1, integer: true }),
equipped: new fields.BooleanField({ initial: false })
};
}
}
/**
* Template pour l'automatisation
*/
export class AutomationItemModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
isautomated: new fields.BooleanField({ initial: false }),
automations: new fields.ArrayField(
new fields.SchemaField({
id: new fields.StringField({ initial: "" }),
eventtype: new fields.StringField({ initial: "on-drop" }),
name: new fields.StringField({ initial: "" }),
bonusname: new fields.StringField({ initial: "vigueur" }),
bonus: new fields.NumberField({ initial: 0, integer: true }),
competence: new fields.StringField({ initial: "" }),
minLevel: new fields.NumberField({ initial: 0, integer: true }),
baCost: new fields.NumberField({ initial: 0, integer: true })
}),
{ initial: [] }
)
};
}
}

View File

@@ -0,0 +1,15 @@
/**
* Data model pour les cellules
*/
export class CelluleDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
notoriete: new fields.NumberField({ initial: 0, integer: true }),
resistance: new fields.NumberField({ initial: 0, integer: true }),
developpement: new fields.NumberField({ initial: 0, integer: true }),
members: new fields.ArrayField(new fields.StringField(), { initial: [] }),
description: new fields.HTMLField({ initial: "" })
};
}
}

View File

@@ -0,0 +1,27 @@
/**
* Data model pour les compétences
*/
export class CompetenceDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
niveau: new fields.NumberField({ initial: 0, integer: true }),
attribut1: new fields.StringField({ initial: "" }),
attribut2: new fields.StringField({ initial: "" }),
attribut3: new fields.StringField({ initial: "" }),
doublebonus: new fields.BooleanField({ initial: false }),
predilections: new fields.ArrayField(
new fields.SchemaField({
id: new fields.StringField({ initial: "" }),
name: new fields.StringField({ initial: "" }),
description: new fields.StringField({ initial: "" }),
acquise: new fields.BooleanField({ initial: false }),
maitrise: new fields.BooleanField({ initial: false }),
used: new fields.BooleanField({ initial: false })
}),
{ initial: [] }
)
};
}
}

View File

@@ -0,0 +1,14 @@
/**
* Data model pour les contacts
*/
export class ContactDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
contacttype: new fields.StringField({ initial: "" }),
niveau: new fields.StringField({ initial: "" }),
pointdev: new fields.NumberField({ initial: 0, integer: true }),
description: new fields.HTMLField({ initial: "" })
};
}
}

View File

@@ -0,0 +1,97 @@
/**
* Data model pour les créatures
*/
export class CreatureDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
// Template biodata
biodata: new fields.SchemaField({
name: new fields.StringField({ initial: "" }),
age: new fields.NumberField({ initial: 0, integer: true }),
poids: new fields.StringField({ initial: "" }),
taille: new fields.StringField({ initial: "" }),
cheveux: new fields.StringField({ initial: "" }),
sexe: new fields.StringField({ initial: "" }),
yeux: new fields.StringField({ initial: "" }),
description: new fields.StringField({ initial: "" }),
habitat: new fields.StringField({ initial: "" }),
notes: new fields.StringField({ initial: "" }),
statut: new fields.StringField({ initial: "" }),
gmnotes: new fields.StringField({ initial: "" }),
statutresistant: new fields.StringField({ initial: "commun" })
}),
// Template core
subactors: new fields.ArrayField(new fields.StringField(), { initial: [] }),
attributs: new fields.SchemaField({
adr: new fields.SchemaField({
label: new fields.StringField({ initial: "Adresse" }),
labelnorm: new fields.StringField({ initial: "adresse" }),
abbrev: new fields.StringField({ initial: "adr" }),
value: new fields.NumberField({ initial: 1, integer: true })
}),
pui: new fields.SchemaField({
label: new fields.StringField({ initial: "Puissance" }),
labelnorm: new fields.StringField({ initial: "puissance" }),
abbrev: new fields.StringField({ initial: "pui" }),
value: new fields.NumberField({ initial: 1, integer: true })
}),
cla: new fields.SchemaField({
label: new fields.StringField({ initial: "Clairvoyance" }),
labelnorm: new fields.StringField({ initial: "clairvoyance" }),
abbrev: new fields.StringField({ initial: "cla" }),
value: new fields.NumberField({ initial: 1, integer: true })
}),
pre: new fields.SchemaField({
label: new fields.StringField({ initial: "Présence" }),
labelnorm: new fields.StringField({ initial: "presence" }),
abbrev: new fields.StringField({ initial: "pre" }),
value: new fields.NumberField({ initial: 0, integer: true })
}),
tre: new fields.SchemaField({
label: new fields.StringField({ initial: "Trempe" }),
labelnorm: new fields.StringField({ initial: "trempe" }),
abbrev: new fields.StringField({ initial: "tre" }),
value: new fields.NumberField({ initial: 0, integer: true })
})
}),
bonneaventure: new fields.SchemaField({
base: new fields.NumberField({ initial: 0, integer: true }),
actuelle: new fields.NumberField({ initial: 0, integer: true })
}),
experience: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),
eclat: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),
sante: new fields.SchemaField({
vigueur: new fields.NumberField({ initial: 0, integer: true }),
etat: new fields.NumberField({ initial: 0, integer: true }),
vigueurmodifier: new fields.NumberField({ initial: 0, integer: true }),
nbcombativite: new fields.NumberField({ initial: 5, integer: true })
}),
adversite: new fields.SchemaField({
bleue: new fields.NumberField({ initial: 0, integer: true }),
rouge: new fields.NumberField({ initial: 0, integer: true }),
noire: new fields.NumberField({ initial: 0, integer: true })
}),
vitesse: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),
combat: new fields.SchemaField({
initbonus: new fields.NumberField({ initial: 0, integer: true }),
vitessebonus: new fields.NumberField({ initial: 0, integer: true }),
bonusdegats: new fields.NumberField({ initial: 0, integer: true }),
attaquebonus: new fields.NumberField({ initial: 0, integer: true }),
defensebonus: new fields.NumberField({ initial: 0, integer: true }),
defensetotale: new fields.BooleanField({ initial: false }),
monte: new fields.BooleanField({ initial: false })
}),
// Propriétés spécifiques aux créatures
ressources: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
})
};
}
}

View File

@@ -0,0 +1,17 @@
/**
* Data model pour l'équipement
*/
export class EquipementDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
prixpo: new fields.NumberField({ initial: 0, integer: true }),
prixca: new fields.NumberField({ initial: 0, integer: true }),
prixsc: new fields.NumberField({ initial: 0, integer: true }),
rarete: new fields.NumberField({ initial: 0, integer: true }),
quantite: new fields.NumberField({ initial: 1, integer: true }),
equipped: new fields.BooleanField({ initial: false })
};
}
}

View File

@@ -0,0 +1,12 @@
/**
* Data model pour les historiques
*/
export class HistoriqueDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
bonusmalus: new fields.StringField({ initial: "" })
};
}
}

26
modules/models/index.mjs Normal file
View File

@@ -0,0 +1,26 @@
/**
* Index des DataModels pour Hawkmoon CYD
* Ce fichier centralise tous les exports des modèles de données
*/
// Modèles d'items
export { TalentDataModel } from './talent.mjs';
export { HistoriqueDataModel } from './historique.mjs';
export { ProfilDataModel } from './profil.mjs';
export { CompetenceDataModel } from './competence.mjs';
export { ArmeDataModel } from './arme.mjs';
export { ProtectionDataModel } from './protection.mjs';
export { MonnaieDataModel } from './monnaie.mjs';
export { EquipementDataModel } from './equipement.mjs';
export { ArtefactDataModel } from './artefact.mjs';
export { RessourceDataModel } from './ressource.mjs';
export { ContactDataModel } from './contact.mjs';
export { MutationDataModel } from './mutation.mjs';
// Modèles d'acteurs
export { PersonnageDataModel } from './personnage.mjs';
export { CelluleDataModel } from './cellule.mjs';
export { CreatureDataModel } from './creature.mjs';
// Templates de base (si nécessaire pour extension)
export { BaseItemModel, BaseEquipItemModel, AutomationItemModel } from './base-item.mjs';

View File

@@ -0,0 +1,17 @@
/**
* Data model pour les monnaies
*/
export class MonnaieDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
prixpo: new fields.NumberField({ initial: 0, integer: true }),
prixca: new fields.NumberField({ initial: 0, integer: true }),
prixsc: new fields.NumberField({ initial: 0, integer: true }),
rarete: new fields.NumberField({ initial: 0, integer: true }),
quantite: new fields.NumberField({ initial: 1, integer: true }),
equipped: new fields.BooleanField({ initial: false })
};
}
}

View File

@@ -0,0 +1,14 @@
/**
* Data model pour les mutations
*/
export class MutationDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
mutationcategorie: new fields.StringField({ initial: "tares_communes" }),
hascomplexite: new fields.BooleanField({ initial: false }),
complexite: new fields.NumberField({ initial: 0, integer: true })
};
}
}

View File

@@ -0,0 +1,93 @@
/**
* Data model pour les personnages
*/
export class PersonnageDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
// Template biodata
biodata: new fields.SchemaField({
name: new fields.StringField({ initial: "" }),
age: new fields.NumberField({ initial: 0, integer: true }),
poids: new fields.StringField({ initial: "" }),
taille: new fields.StringField({ initial: "" }),
cheveux: new fields.StringField({ initial: "" }),
sexe: new fields.StringField({ initial: "" }),
yeux: new fields.StringField({ initial: "" }),
description: new fields.StringField({ initial: "" }),
habitat: new fields.StringField({ initial: "" }),
notes: new fields.StringField({ initial: "" }),
statut: new fields.StringField({ initial: "" }),
gmnotes: new fields.StringField({ initial: "" }),
statutresistant: new fields.StringField({ initial: "commun" })
}),
// Template core
subactors: new fields.ArrayField(new fields.StringField(), { initial: [] }),
attributs: new fields.SchemaField({
adr: new fields.SchemaField({
label: new fields.StringField({ initial: "Adresse" }),
labelnorm: new fields.StringField({ initial: "adresse" }),
abbrev: new fields.StringField({ initial: "adr" }),
value: new fields.NumberField({ initial: 1, integer: true })
}),
pui: new fields.SchemaField({
label: new fields.StringField({ initial: "Puissance" }),
labelnorm: new fields.StringField({ initial: "puissance" }),
abbrev: new fields.StringField({ initial: "pui" }),
value: new fields.NumberField({ initial: 1, integer: true })
}),
cla: new fields.SchemaField({
label: new fields.StringField({ initial: "Clairvoyance" }),
labelnorm: new fields.StringField({ initial: "clairvoyance" }),
abbrev: new fields.StringField({ initial: "cla" }),
value: new fields.NumberField({ initial: 1, integer: true })
}),
pre: new fields.SchemaField({
label: new fields.StringField({ initial: "Présence" }),
labelnorm: new fields.StringField({ initial: "presence" }),
abbrev: new fields.StringField({ initial: "pre" }),
value: new fields.NumberField({ initial: 0, integer: true })
}),
tre: new fields.SchemaField({
label: new fields.StringField({ initial: "Trempe" }),
labelnorm: new fields.StringField({ initial: "trempe" }),
abbrev: new fields.StringField({ initial: "tre" }),
value: new fields.NumberField({ initial: 0, integer: true })
})
}),
bonneaventure: new fields.SchemaField({
base: new fields.NumberField({ initial: 0, integer: true }),
actuelle: new fields.NumberField({ initial: 0, integer: true })
}),
experience: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),
eclat: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),
sante: new fields.SchemaField({
vigueur: new fields.NumberField({ initial: 0, integer: true }),
etat: new fields.NumberField({ initial: 0, integer: true }),
vigueurmodifier: new fields.NumberField({ initial: 0, integer: true }),
nbcombativite: new fields.NumberField({ initial: 5, integer: true })
}),
adversite: new fields.SchemaField({
bleue: new fields.NumberField({ initial: 0, integer: true }),
rouge: new fields.NumberField({ initial: 0, integer: true }),
noire: new fields.NumberField({ initial: 0, integer: true })
}),
vitesse: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),
combat: new fields.SchemaField({
initbonus: new fields.NumberField({ initial: 0, integer: true }),
vitessebonus: new fields.NumberField({ initial: 0, integer: true }),
bonusdegats: new fields.NumberField({ initial: 0, integer: true }),
attaquebonus: new fields.NumberField({ initial: 0, integer: true }),
defensebonus: new fields.NumberField({ initial: 0, integer: true }),
defensetotale: new fields.BooleanField({ initial: false }),
monte: new fields.BooleanField({ initial: false })
})
};
}
}

23
modules/models/profil.mjs Normal file
View File

@@ -0,0 +1,23 @@
/**
* Data model pour les profils
*/
export class ProfilDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
exemples: new fields.StringField({ initial: "" }),
attribut1: new fields.StringField({ initial: "" }),
attribut2: new fields.StringField({ initial: "" }),
attribut3: new fields.StringField({ initial: "" }),
competences: new fields.StringField({ initial: "" }),
talentsinitie: new fields.StringField({ initial: "" }),
prerequisaguerri: new fields.StringField({ initial: "" }),
talentsaguerri: new fields.StringField({ initial: "" }),
prerequismaitre: new fields.StringField({ initial: "" }),
talentsmaitre: new fields.StringField({ initial: "" }),
celluleinfo: new fields.StringField({ initial: "" }),
equipement: new fields.StringField({ initial: "" })
};
}
}

View File

@@ -0,0 +1,19 @@
/**
* Data model pour les protections
*/
export class ProtectionDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
prixpo: new fields.NumberField({ initial: 0, integer: true }),
prixca: new fields.NumberField({ initial: 0, integer: true }),
prixsc: new fields.NumberField({ initial: 0, integer: true }),
rarete: new fields.NumberField({ initial: 0, integer: true }),
quantite: new fields.NumberField({ initial: 1, integer: true }),
equipped: new fields.BooleanField({ initial: false }),
protection: new fields.NumberField({ initial: 0, integer: true }),
adversitepoids: new fields.NumberField({ initial: 0, integer: true })
};
}
}

View File

@@ -0,0 +1,12 @@
/**
* Data model pour les ressources
*/
export class RessourceDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
pointdev: new fields.NumberField({ initial: 0, integer: true }),
description: new fields.HTMLField({ initial: "" })
};
}
}

30
modules/models/talent.mjs Normal file
View File

@@ -0,0 +1,30 @@
/**
* Data model pour les talents
*/
export class TalentDataModel extends foundry.abstract.TypeDataModel {
static defineSchema() {
const fields = foundry.data.fields;
return {
description: new fields.HTMLField({ initial: "" }),
isautomated: new fields.BooleanField({ initial: false }),
automations: new fields.ArrayField(
new fields.SchemaField({
id: new fields.StringField({ initial: "" }),
eventtype: new fields.StringField({ initial: "on-drop" }),
name: new fields.StringField({ initial: "" }),
bonusname: new fields.StringField({ initial: "vigueur" }),
bonus: new fields.NumberField({ initial: 0, integer: true }),
competence: new fields.StringField({ initial: "" }),
minLevel: new fields.NumberField({ initial: 0, integer: true }),
baCost: new fields.NumberField({ initial: 0, integer: true })
}),
{ initial: [] }
),
talenttype: new fields.StringField({ initial: "" }),
utilisation: new fields.StringField({ initial: "" }),
prerequis: new fields.StringField({ initial: "" }),
resumebonus: new fields.StringField({ initial: "" }),
used: new fields.BooleanField({ initial: false })
};
}
}

View File

@@ -1 +1 @@
MANIFEST-000317
MANIFEST-000333

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.898677 7f7b753f96c0 Recovering log #315
2025/10/17-20:49:09.909170 7f7b753f96c0 Delete type=3 #313
2025/10/17-20:49:09.909239 7f7b753f96c0 Delete type=0 #315
2025/10/17-22:35:10.581106 7f7b6f3ff6c0 Level-0 table #320: started
2025/10/17-22:35:10.581135 7f7b6f3ff6c0 Level-0 table #320: 0 bytes OK
2025/10/17-22:35:10.587115 7f7b6f3ff6c0 Delete type=0 #318
2025/10/17-22:35:10.603825 7f7b6f3ff6c0 Manual compaction at level-0 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.603883 7f7b6f3ff6c0 Manual compaction at level-1 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.155164 7f93eb7fe6c0 Recovering log #331
2026/01/05-22:20:56.166270 7f93eb7fe6c0 Delete type=3 #329
2026/01/05-22:20:56.166327 7f93eb7fe6c0 Delete type=0 #331
2026/01/05-22:39:51.165703 7f93e9ffb6c0 Level-0 table #336: started
2026/01/05-22:39:51.165730 7f93e9ffb6c0 Level-0 table #336: 0 bytes OK
2026/01/05-22:39:51.171765 7f93e9ffb6c0 Delete type=0 #334
2026/01/05-22:39:51.199079 7f93e9ffb6c0 Manual compaction at level-0 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.199117 7f93e9ffb6c0 Manual compaction at level-1 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:53.005538 7f7b6ffff6c0 Recovering log #311
2025/10/17-20:28:53.015248 7f7b6ffff6c0 Delete type=3 #309
2025/10/17-20:28:53.015310 7f7b6ffff6c0 Delete type=0 #311
2025/10/17-20:41:09.987430 7f7b6f3ff6c0 Level-0 table #316: started
2025/10/17-20:41:09.987468 7f7b6f3ff6c0 Level-0 table #316: 0 bytes OK
2025/10/17-20:41:09.993944 7f7b6f3ff6c0 Delete type=0 #314
2025/10/17-20:41:10.021275 7f7b6f3ff6c0 Manual compaction at level-0 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)
2025/10/17-20:41:10.021333 7f7b6f3ff6c0 Manual compaction at level-1 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.288531 7f34ccff96c0 Recovering log #327
2025/11/21-21:17:11.303357 7f34ccff96c0 Delete type=3 #325
2025/11/21-21:17:11.303441 7f34ccff96c0 Delete type=0 #327
2025/11/21-21:20:34.182000 7f322ffff6c0 Level-0 table #332: started
2025/11/21-21:20:34.182040 7f322ffff6c0 Level-0 table #332: 0 bytes OK
2025/11/21-21:20:34.189103 7f322ffff6c0 Delete type=0 #330
2025/11/21-21:20:34.199156 7f322ffff6c0 Manual compaction at level-0 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.220809 7f322ffff6c0 Manual compaction at level-1 from '!journal!MUbViCE2PkVxlzqe' @ 72057594037927935 : 1 .. '!journal.pages!gVybbv17TFY8o3Y4.fQidyqfF1TbsZKHM' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.793672 7f7b753f96c0 Recovering log #314
2025/10/17-20:49:09.803546 7f7b753f96c0 Delete type=3 #312
2025/10/17-20:49:09.803615 7f7b753f96c0 Delete type=0 #314
2025/10/17-22:35:10.536969 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.537001 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.542920 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.548820 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.548874 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.048400 7f93eaffd6c0 Recovering log #330
2026/01/05-22:20:56.058614 7f93eaffd6c0 Delete type=3 #328
2026/01/05-22:20:56.058678 7f93eaffd6c0 Delete type=0 #330
2026/01/05-22:39:51.125881 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.125907 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.131746 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.137885 7f93e9ffb6c0 Manual compaction at level-0 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.137919 7f93e9ffb6c0 Manual compaction at level-1 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.891518 7f7b74bf86c0 Recovering log #310
2025/10/17-20:28:52.901457 7f7b74bf86c0 Delete type=3 #308
2025/10/17-20:28:52.901513 7f7b74bf86c0 Delete type=0 #310
2025/10/17-20:41:09.934499 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.934522 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.940458 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.960521 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.960598 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.119952 7f34cd7fa6c0 Recovering log #326
2025/11/21-21:17:11.135840 7f34cd7fa6c0 Delete type=3 #324
2025/11/21-21:17:11.135940 7f34cd7fa6c0 Delete type=0 #326
2025/11/21-21:20:34.115063 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.115090 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.121038 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.121241 7f322ffff6c0 Manual compaction at level-0 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.121271 7f322ffff6c0 Manual compaction at level-1 from '!items!0fit7HelSjaFtXcW' @ 72057594037927935 : 1 .. '!items!wxrzP3NyiHiYnAMJ' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.768629 7f7b6ffff6c0 Recovering log #314
2025/10/17-20:49:09.779130 7f7b6ffff6c0 Delete type=3 #312
2025/10/17-20:49:09.779215 7f7b6ffff6c0 Delete type=0 #314
2025/10/17-22:35:10.498148 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.498192 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.504185 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.523654 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.523691 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.023009 7f93eb7fe6c0 Recovering log #330
2026/01/05-22:20:56.032779 7f93eb7fe6c0 Delete type=3 #328
2026/01/05-22:20:56.032853 7f93eb7fe6c0 Delete type=0 #330
2026/01/05-22:39:51.087705 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.087797 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.094096 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.112531 7f93e9ffb6c0 Manual compaction at level-0 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.112576 7f93e9ffb6c0 Manual compaction at level-1 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.864581 7f7b6ffff6c0 Recovering log #310
2025/10/17-20:28:52.874388 7f7b6ffff6c0 Delete type=3 #308
2025/10/17-20:28:52.874444 7f7b6ffff6c0 Delete type=0 #310
2025/10/17-20:41:09.921911 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.921935 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.928010 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.934388 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.934420 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.082663 7f34ccff96c0 Recovering log #326
2025/11/21-21:17:11.097415 7f34ccff96c0 Delete type=3 #324
2025/11/21-21:17:11.097522 7f34ccff96c0 Delete type=0 #326
2025/11/21-21:20:34.082672 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.082698 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.088631 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.094927 7f322ffff6c0 Manual compaction at level-0 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.094971 7f322ffff6c0 Manual compaction at level-1 from '!items!0nhTxujlIUB63Aqt' @ 72057594037927935 : 1 .. '!items!tFU5yISK6spdNWco' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.744321 7f7b75bfa6c0 Recovering log #314
2025/10/17-20:49:09.753860 7f7b75bfa6c0 Delete type=3 #312
2025/10/17-20:49:09.753934 7f7b75bfa6c0 Delete type=0 #314
2025/10/17-22:35:10.511424 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.511449 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.517304 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.523675 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.523698 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)
2026/01/05-22:20:55.998572 7f93ea7fc6c0 Recovering log #330
2026/01/05-22:20:56.008503 7f93ea7fc6c0 Delete type=3 #328
2026/01/05-22:20:56.008556 7f93ea7fc6c0 Delete type=0 #330
2026/01/05-22:39:51.100430 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.100453 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.106283 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.112557 7f93e9ffb6c0 Manual compaction at level-0 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.112589 7f93e9ffb6c0 Manual compaction at level-1 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.833282 7f7b75bfa6c0 Recovering log #310
2025/10/17-20:28:52.844042 7f7b75bfa6c0 Delete type=3 #308
2025/10/17-20:28:52.844117 7f7b75bfa6c0 Delete type=0 #310
2025/10/17-20:41:09.915408 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.915432 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.921802 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.934379 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.934414 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.044217 7f34ce7fc6c0 Recovering log #326
2025/11/21-21:17:11.059351 7f34ce7fc6c0 Delete type=3 #324
2025/11/21-21:17:11.059409 7f34ce7fc6c0 Delete type=0 #326
2025/11/21-21:20:34.076024 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.076057 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.082546 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.094915 7f322ffff6c0 Manual compaction at level-0 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.094962 7f322ffff6c0 Manual compaction at level-1 from '!items!15IDGG6JoZnRCQtY' @ 72057594037927935 : 1 .. '!items!yI1zY5k8mAdx9wHK' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.817906 7f7b75bfa6c0 Recovering log #314
2025/10/17-20:49:09.828670 7f7b75bfa6c0 Delete type=3 #312
2025/10/17-20:49:09.828748 7f7b75bfa6c0 Delete type=0 #314
2025/10/17-22:35:10.543003 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.543024 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.548737 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.548828 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.548865 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.073305 7f93eb7fe6c0 Recovering log #330
2026/01/05-22:20:56.084269 7f93eb7fe6c0 Delete type=3 #328
2026/01/05-22:20:56.084336 7f93eb7fe6c0 Delete type=0 #330
2026/01/05-22:39:51.112726 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.112760 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.119133 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.137862 7f93e9ffb6c0 Manual compaction at level-0 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.137903 7f93e9ffb6c0 Manual compaction at level-1 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.917702 7f7b753f96c0 Recovering log #310
2025/10/17-20:28:52.927558 7f7b753f96c0 Delete type=3 #308
2025/10/17-20:28:52.927613 7f7b753f96c0 Delete type=0 #310
2025/10/17-20:41:09.940553 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.940581 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.947637 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.960552 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.960608 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.157103 7f34ce7fc6c0 Recovering log #326
2025/11/21-21:17:11.172875 7f34ce7fc6c0 Delete type=3 #324
2025/11/21-21:17:11.172939 7f34ce7fc6c0 Delete type=0 #326
2025/11/21-21:20:34.095092 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.095126 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.102295 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.121183 7f322ffff6c0 Manual compaction at level-0 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.121249 7f322ffff6c0 Manual compaction at level-1 from '!items!0BopmCu8vGK2923j' @ 72057594037927935 : 1 .. '!items!zYx0Ak2y1LNTcKlO' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.780990 7f7b74bf86c0 Recovering log #314
2025/10/17-20:49:09.790922 7f7b74bf86c0 Delete type=3 #312
2025/10/17-20:49:09.791046 7f7b74bf86c0 Delete type=0 #314
2025/10/17-22:35:10.504312 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.504337 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.511317 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.523666 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.523704 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.034759 7f93ea7fc6c0 Recovering log #330
2026/01/05-22:20:56.045303 7f93ea7fc6c0 Delete type=3 #328
2026/01/05-22:20:56.045387 7f93ea7fc6c0 Delete type=0 #330
2026/01/05-22:39:51.094206 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.094228 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.100330 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.112546 7f93e9ffb6c0 Manual compaction at level-0 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.112583 7f93e9ffb6c0 Manual compaction at level-1 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.876807 7f7b75bfa6c0 Recovering log #310
2025/10/17-20:28:52.886763 7f7b75bfa6c0 Delete type=3 #308
2025/10/17-20:28:52.886882 7f7b75bfa6c0 Delete type=0 #310
2025/10/17-20:41:09.909233 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.909293 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.915307 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.934366 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.934408 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.100312 7f34ce7fc6c0 Recovering log #326
2025/11/21-21:17:11.117500 7f34ce7fc6c0 Delete type=3 #324
2025/11/21-21:17:11.117567 7f34ce7fc6c0 Delete type=0 #326
2025/11/21-21:20:34.069446 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.069505 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.075899 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.094892 7f322ffff6c0 Manual compaction at level-0 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.094951 7f322ffff6c0 Manual compaction at level-1 from '!items!15foLG7y3LUXNzkK' @ 72057594037927935 : 1 .. '!items!z1HtkvazCGHut7cz' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000226
MANIFEST-000242

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.755935 7f7b753f96c0 Recovering log #224
2025/10/17-20:49:09.766032 7f7b753f96c0 Delete type=3 #222
2025/10/17-20:49:09.766080 7f7b753f96c0 Delete type=0 #224
2025/10/17-22:35:10.517436 7f7b6f3ff6c0 Level-0 table #229: started
2025/10/17-22:35:10.517471 7f7b6f3ff6c0 Level-0 table #229: 0 bytes OK
2025/10/17-22:35:10.523546 7f7b6f3ff6c0 Delete type=0 #227
2025/10/17-22:35:10.523683 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.523709 7f7b6f3ff6c0 Manual compaction at level-1 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.010250 7f93eaffd6c0 Recovering log #240
2026/01/05-22:20:56.020208 7f93eaffd6c0 Delete type=3 #238
2026/01/05-22:20:56.020270 7f93eaffd6c0 Delete type=0 #240
2026/01/05-22:39:51.106439 7f93e9ffb6c0 Level-0 table #245: started
2026/01/05-22:39:51.106472 7f93e9ffb6c0 Level-0 table #245: 0 bytes OK
2026/01/05-22:39:51.112404 7f93e9ffb6c0 Delete type=0 #243
2026/01/05-22:39:51.112570 7f93e9ffb6c0 Manual compaction at level-0 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.112598 7f93e9ffb6c0 Manual compaction at level-1 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.850444 7f7b753f96c0 Recovering log #220
2025/10/17-20:28:52.860559 7f7b753f96c0 Delete type=3 #218
2025/10/17-20:28:52.860629 7f7b753f96c0 Delete type=0 #220
2025/10/17-20:41:09.928209 7f7b6f3ff6c0 Level-0 table #225: started
2025/10/17-20:41:09.928246 7f7b6f3ff6c0 Level-0 table #225: 0 bytes OK
2025/10/17-20:41:09.934269 7f7b6f3ff6c0 Delete type=0 #223
2025/10/17-20:41:09.934398 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.934428 7f7b6f3ff6c0 Manual compaction at level-1 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.062660 7f34cdffb6c0 Recovering log #236
2025/11/21-21:17:11.079663 7f34cdffb6c0 Delete type=3 #234
2025/11/21-21:17:11.079731 7f34cdffb6c0 Delete type=0 #236
2025/11/21-21:20:34.088817 7f322ffff6c0 Level-0 table #241: started
2025/11/21-21:20:34.088856 7f322ffff6c0 Level-0 table #241: 0 bytes OK
2025/11/21-21:20:34.094750 7f322ffff6c0 Delete type=0 #239
2025/11/21-21:20:34.094940 7f322ffff6c0 Manual compaction at level-0 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.094980 7f322ffff6c0 Manual compaction at level-1 from '!folders!5d4Zn28TUcPxRyXd' @ 72057594037927935 : 1 .. '!items!zttESycGKltfwCzJ' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.830796 7f7b753f96c0 Recovering log #314
2025/10/17-20:49:09.842331 7f7b753f96c0 Delete type=3 #312
2025/10/17-20:49:09.842423 7f7b753f96c0 Delete type=0 #314
2025/10/17-22:35:10.523783 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.523803 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.529922 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.548803 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.548837 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.088422 7f93eaffd6c0 Recovering log #330
2026/01/05-22:20:56.098507 7f93eaffd6c0 Delete type=3 #328
2026/01/05-22:20:56.098565 7f93eaffd6c0 Delete type=0 #330
2026/01/05-22:39:51.119253 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.119282 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.125789 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.137875 7f93e9ffb6c0 Manual compaction at level-0 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.137911 7f93e9ffb6c0 Manual compaction at level-1 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.931574 7f7b74bf86c0 Recovering log #310
2025/10/17-20:28:52.941330 7f7b74bf86c0 Delete type=3 #308
2025/10/17-20:28:52.941393 7f7b74bf86c0 Delete type=0 #310
2025/10/17-20:41:09.947757 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.947779 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.953770 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.960567 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.960660 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.175622 7f34cd7fa6c0 Recovering log #326
2025/11/21-21:17:11.190667 7f34cd7fa6c0 Delete type=3 #324
2025/11/21-21:17:11.190757 7f34cd7fa6c0 Delete type=0 #326
2025/11/21-21:20:34.109081 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.109106 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.114933 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.121229 7f322ffff6c0 Manual compaction at level-0 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.121264 7f322ffff6c0 Manual compaction at level-1 from '!items!26mRstKhCJoXkhu1' @ 72057594037927935 : 1 .. '!items!tFQqcxmkS3MT6ASE' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.806029 7f7b6ffff6c0 Recovering log #314
2025/10/17-20:49:09.815854 7f7b6ffff6c0 Delete type=3 #312
2025/10/17-20:49:09.815927 7f7b6ffff6c0 Delete type=0 #314
2025/10/17-22:35:10.530010 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.530036 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.536861 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.548812 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.548856 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.060705 7f93ebfff6c0 Recovering log #330
2026/01/05-22:20:56.070672 7f93ebfff6c0 Delete type=3 #328
2026/01/05-22:20:56.070726 7f93ebfff6c0 Delete type=0 #330
2026/01/05-22:39:51.131859 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.131886 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.137774 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.137894 7f93e9ffb6c0 Manual compaction at level-0 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.137928 7f93e9ffb6c0 Manual compaction at level-1 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.904993 7f7b6ffff6c0 Recovering log #310
2025/10/17-20:28:52.915402 7f7b6ffff6c0 Delete type=3 #308
2025/10/17-20:28:52.915473 7f7b6ffff6c0 Delete type=0 #310
2025/10/17-20:41:09.953909 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.953941 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.960253 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.960585 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.960625 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.139151 7f34cdffb6c0 Recovering log #326
2025/11/21-21:17:11.154714 7f34cdffb6c0 Delete type=3 #324
2025/11/21-21:17:11.154795 7f34cdffb6c0 Delete type=0 #326
2025/11/21-21:20:34.102428 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.102452 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.108966 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.121216 7f322ffff6c0 Manual compaction at level-0 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.121256 7f322ffff6c0 Manual compaction at level-1 from '!items!16iPa2yIzB0V3pxb' @ 72057594037927935 : 1 .. '!items!yszkersMTE4p9VzP' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000155
MANIFEST-000171

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.884880 7f7b74bf86c0 Recovering log #153
2025/10/17-20:49:09.895049 7f7b74bf86c0 Delete type=3 #151
2025/10/17-20:49:09.895170 7f7b74bf86c0 Delete type=0 #153
2025/10/17-22:35:10.567862 7f7b6f3ff6c0 Level-0 table #158: started
2025/10/17-22:35:10.567895 7f7b6f3ff6c0 Level-0 table #158: 0 bytes OK
2025/10/17-22:35:10.573834 7f7b6f3ff6c0 Delete type=0 #156
2025/10/17-22:35:10.573961 7f7b6f3ff6c0 Manual compaction at level-0 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.573984 7f7b6f3ff6c0 Manual compaction at level-1 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.140241 7f93ea7fc6c0 Recovering log #169
2026/01/05-22:20:56.150593 7f93ea7fc6c0 Delete type=3 #167
2026/01/05-22:20:56.150657 7f93ea7fc6c0 Delete type=0 #169
2026/01/05-22:39:51.158340 7f93e9ffb6c0 Level-0 table #174: started
2026/01/05-22:39:51.158381 7f93e9ffb6c0 Level-0 table #174: 0 bytes OK
2026/01/05-22:39:51.165430 7f93e9ffb6c0 Delete type=0 #172
2026/01/05-22:39:51.165599 7f93e9ffb6c0 Manual compaction at level-0 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.165621 7f93e9ffb6c0 Manual compaction at level-1 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.991738 7f7b75bfa6c0 Recovering log #149
2025/10/17-20:28:53.001988 7f7b75bfa6c0 Delete type=3 #147
2025/10/17-20:28:53.002043 7f7b75bfa6c0 Delete type=0 #149
2025/10/17-20:41:09.981079 7f7b6f3ff6c0 Level-0 table #154: started
2025/10/17-20:41:09.981106 7f7b6f3ff6c0 Level-0 table #154: 0 bytes OK
2025/10/17-20:41:09.987177 7f7b6f3ff6c0 Delete type=0 #152
2025/10/17-20:41:09.987342 7f7b6f3ff6c0 Manual compaction at level-0 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.987364 7f7b6f3ff6c0 Manual compaction at level-1 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.269484 7f34cdffb6c0 Recovering log #165
2025/11/21-21:17:11.284464 7f34cdffb6c0 Delete type=3 #163
2025/11/21-21:17:11.284524 7f34cdffb6c0 Delete type=0 #165
2025/11/21-21:20:34.145250 7f322ffff6c0 Level-0 table #170: started
2025/11/21-21:20:34.145279 7f322ffff6c0 Level-0 table #170: 0 bytes OK
2025/11/21-21:20:34.151544 7f322ffff6c0 Delete type=0 #168
2025/11/21-21:20:34.151702 7f322ffff6c0 Manual compaction at level-0 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.164154 7f322ffff6c0 Manual compaction at level-1 from '!scenes!VOzC5ey4qi1C34MY' @ 72057594037927935 : 1 .. '!scenes!mfosNsLsHN5Pf4TO' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000312
MANIFEST-000328

View File

@@ -1,7 +1,7 @@
2025/10/17-20:49:09.870941 7f7b6ffff6c0 Recovering log #310
2025/10/17-20:49:09.882449 7f7b6ffff6c0 Delete type=3 #308
2025/10/17-20:49:09.882502 7f7b6ffff6c0 Delete type=0 #310
2025/10/17-22:35:10.555404 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-22:35:10.555439 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-22:35:10.561830 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-22:35:10.573943 7f7b6f3ff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.127066 7f93eaffd6c0 Recovering log #326
2026/01/05-22:20:56.136649 7f93eaffd6c0 Delete type=3 #324
2026/01/05-22:20:56.136722 7f93eaffd6c0 Delete type=0 #326
2026/01/05-22:39:51.151918 7f93e9ffb6c0 Level-0 table #331: started
2026/01/05-22:39:51.151946 7f93e9ffb6c0 Level-0 table #331: 0 bytes OK
2026/01/05-22:39:51.158214 7f93e9ffb6c0 Delete type=0 #329
2026/01/05-22:39:51.165589 7f93e9ffb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

View File

@@ -1,7 +1,7 @@
2025/10/17-20:28:52.979092 7f7b74bf86c0 Recovering log #306
2025/10/17-20:28:52.988936 7f7b74bf86c0 Delete type=3 #304
2025/10/17-20:28:52.988991 7f7b74bf86c0 Delete type=0 #306
2025/10/17-20:41:09.967934 7f7b6f3ff6c0 Level-0 table #311: started
2025/10/17-20:41:09.967969 7f7b6f3ff6c0 Level-0 table #311: 0 bytes OK
2025/10/17-20:41:09.973951 7f7b6f3ff6c0 Delete type=0 #309
2025/10/17-20:41:09.987325 7f7b6f3ff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.238038 7f34ccff96c0 Recovering log #322
2025/11/21-21:17:11.266542 7f34ccff96c0 Delete type=3 #320
2025/11/21-21:17:11.266608 7f34ccff96c0 Delete type=0 #322
2025/11/21-21:20:34.138228 7f322ffff6c0 Level-0 table #327: started
2025/11/21-21:20:34.138262 7f322ffff6c0 Level-0 table #327: 0 bytes OK
2025/11/21-21:20:34.145084 7f322ffff6c0 Delete type=0 #325
2025/11/21-21:20:34.151692 7f322ffff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000316
MANIFEST-000332

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.858398 7f7b75bfa6c0 Recovering log #314
2025/10/17-20:49:09.868806 7f7b75bfa6c0 Delete type=3 #312
2025/10/17-20:49:09.868887 7f7b75bfa6c0 Delete type=0 #314
2025/10/17-22:35:10.548967 7f7b6f3ff6c0 Level-0 table #319: started
2025/10/17-22:35:10.548991 7f7b6f3ff6c0 Level-0 table #319: 0 bytes OK
2025/10/17-22:35:10.555266 7f7b6f3ff6c0 Delete type=0 #317
2025/10/17-22:35:10.573933 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.573977 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.113832 7f93ebfff6c0 Recovering log #330
2026/01/05-22:20:56.124998 7f93ebfff6c0 Delete type=3 #328
2026/01/05-22:20:56.125086 7f93ebfff6c0 Delete type=0 #330
2026/01/05-22:39:51.145629 7f93e9ffb6c0 Level-0 table #335: started
2026/01/05-22:39:51.145659 7f93e9ffb6c0 Level-0 table #335: 0 bytes OK
2026/01/05-22:39:51.151770 7f93e9ffb6c0 Delete type=0 #333
2026/01/05-22:39:51.165579 7f93e9ffb6c0 Manual compaction at level-0 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.165614 7f93e9ffb6c0 Manual compaction at level-1 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/10/17-20:28:52.961605 7f7b753f96c0 Recovering log #310
2025/10/17-20:28:52.971801 7f7b753f96c0 Delete type=3 #308
2025/10/17-20:28:52.971895 7f7b753f96c0 Delete type=0 #310
2025/10/17-20:41:09.960853 7f7b6f3ff6c0 Level-0 table #315: started
2025/10/17-20:41:09.960897 7f7b6f3ff6c0 Level-0 table #315: 0 bytes OK
2025/10/17-20:41:09.967780 7f7b6f3ff6c0 Delete type=0 #313
2025/10/17-20:41:09.987311 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.987352 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.214544 7f34ce7fc6c0 Recovering log #326
2025/11/21-21:17:11.234732 7f34ce7fc6c0 Delete type=3 #324
2025/11/21-21:17:11.234809 7f34ce7fc6c0 Delete type=0 #326
2025/11/21-21:20:34.121434 7f322ffff6c0 Level-0 table #331: started
2025/11/21-21:20:34.121467 7f322ffff6c0 Level-0 table #331: 0 bytes OK
2025/11/21-21:20:34.128698 7f322ffff6c0 Delete type=0 #329
2025/11/21-21:20:34.151669 7f322ffff6c0 Manual compaction at level-0 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.151712 7f322ffff6c0 Manual compaction at level-1 from '!items!0jRgc9a9L8i7j1Uk' @ 72057594037927935 : 1 .. '!items!yRTYaNKyXBX9wHhb' @ 0 : 0; will stop at (end)

View File

@@ -1 +1 @@
MANIFEST-000317
MANIFEST-000334

View File

@@ -1,8 +1,8 @@
2025/10/17-20:49:09.845699 7f7b74bf86c0 Recovering log #315
2025/10/17-20:49:09.855199 7f7b74bf86c0 Delete type=3 #313
2025/10/17-20:49:09.855263 7f7b74bf86c0 Delete type=0 #315
2025/10/17-22:35:10.561911 7f7b6f3ff6c0 Level-0 table #320: started
2025/10/17-22:35:10.561934 7f7b6f3ff6c0 Level-0 table #320: 0 bytes OK
2025/10/17-22:35:10.567741 7f7b6f3ff6c0 Delete type=0 #318
2025/10/17-22:35:10.573953 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)
2025/10/17-22:35:10.573990 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)
2026/01/05-22:20:56.100568 7f93ea7fc6c0 Recovering log #331
2026/01/05-22:20:56.110337 7f93ea7fc6c0 Delete type=3 #329
2026/01/05-22:20:56.110396 7f93ea7fc6c0 Delete type=0 #331
2026/01/05-22:39:51.138048 7f93e9ffb6c0 Level-0 table #337: started
2026/01/05-22:39:51.138074 7f93e9ffb6c0 Level-0 table #337: 0 bytes OK
2026/01/05-22:39:51.145522 7f93e9ffb6c0 Delete type=0 #335
2026/01/05-22:39:51.165565 7f93e9ffb6c0 Manual compaction at level-0 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)
2026/01/05-22:39:51.165606 7f93e9ffb6c0 Manual compaction at level-1 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,15 @@
2025/10/17-20:28:52.944617 7f7b6ffff6c0 Recovering log #311
2025/10/17-20:28:52.955946 7f7b6ffff6c0 Delete type=3 #309
2025/10/17-20:28:52.956013 7f7b6ffff6c0 Delete type=0 #311
2025/10/17-20:41:09.974061 7f7b6f3ff6c0 Level-0 table #316: started
2025/10/17-20:41:09.974093 7f7b6f3ff6c0 Level-0 table #316: 0 bytes OK
2025/10/17-20:41:09.980958 7f7b6f3ff6c0 Delete type=0 #314
2025/10/17-20:41:09.987334 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)
2025/10/17-20:41:09.987358 7f7b6f3ff6c0 Manual compaction at level-1 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)
2025/11/21-21:17:11.194230 7f34cdffb6c0 Recovering log #327
2025/11/21-21:17:11.210969 7f34cdffb6c0 Delete type=3 #325
2025/11/21-21:17:11.211033 7f34cdffb6c0 Delete type=0 #327
2025/11/21-21:20:34.128800 7f322ffff6c0 Level-0 table #332: started
2025/11/21-21:20:34.131893 7f322ffff6c0 Level-0 table #332: 3527 bytes OK
2025/11/21-21:20:34.137994 7f322ffff6c0 Delete type=0 #330
2025/11/21-21:20:34.151683 7f322ffff6c0 Manual compaction at level-0 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)
2025/11/21-21:20:34.151734 7f322ffff6c0 Manual compaction at level-1 from '!items!07bq0fsbn653i81y' @ 72057594037927935 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at '!items!PfuzDohW3l2ds0hu' @ 1159 : 1
2025/11/21-21:20:34.151743 7f322ffff6c0 Compacting 1@1 + 1@2 files
2025/11/21-21:20:34.157101 7f322ffff6c0 Generated table #333@1: 193 keys, 105016 bytes
2025/11/21-21:20:34.157139 7f322ffff6c0 Compacted 1@1 + 1@2 files => 105016 bytes
2025/11/21-21:20:34.163649 7f322ffff6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
2025/11/21-21:20:34.163835 7f322ffff6c0 Delete type=2 #276
2025/11/21-21:20:34.164056 7f322ffff6c0 Delete type=2 #332
2025/11/21-21:20:34.181980 7f322ffff6c0 Manual compaction at level-1 from '!items!PfuzDohW3l2ds0hu' @ 1159 : 1 .. '!items!zKvlDHBalR4UdwUx' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@@ -1,33 +1,38 @@
/* ==================== (A) Fonts ==================== */
/* ==================== (A) Fonts ==================== */
@font-face {
font-family: "Charlemagne";
src: url('../assets/fonts/CharlemagneStd-Bold.otf') format("otf");
font-family: "Pfeffer";
src: url('../assets/fonts/pfeffer-simpelgotisch.regular2.otf') format("opentype");
}
@font-face {
font-family: "Montserrat";
src: url('../assets/fonts/Montserrat-Medium.woff') format("woff");
font-weight: normal;
}
:root {
/* =================== 1. ACTOR SHEET FONT STYLES =========== */
--window-header-font-family: Charlemagne;
--window-header-title-font-size: 1.1rem;
--window-header-font-family: Montserrat;
--window-header-title-font-size: 0.95rem;
--window-header-title-font-weight: normal;
--window-header-title-color: #f5f5f5;
--major-button-font-family: Charlemagne;
--major-button-font-size: 1.05rem;
--major-button-font-family: Montserrat;
--major-button-font-size: 0.95rem;
--major-button-font-weight: normal;
--major-button-color: #dadada;
--tab-header-font-family: Charlemagne;
--tab-header-font-family: Montserrat;
--tab-header-font-size: 1.0rem;
--tab-header-font-weight: 700;
--tab-header-color: #403f3e;
--tab-header-color-active: #4a0404;
--actor-input-font-size: 0.8rem;
--actor-input-font-size: 0.9rem;
--actor-input-font-weight: 500;
--actor-input-color: black;
--actor-label-font-size: 0.8rem;
--actor-label-font-size: 0.9rem;
--actor-label-font-weight: 700;
--actor-label-color: #464331c4;
@@ -56,10 +61,17 @@
}
}
.window-app button,
.window-app select,
.window-app input {
font-family: "Montserrat";
text-align: center;
}
/*@import url("https://fonts.googleapis.com/css2?family=Martel:wght@400;800&family=Roboto:wght@300;400;500&display=swap");*/
/* Global styles & Font */
.window-app {
font-family: Charlemagne;
font-family: Montserrat;
text-align: justify;
font-size: 12px;
letter-spacing: 1px;
@@ -71,13 +83,13 @@
.window-app .window-header,
#actors .directory-list,
#navigation #scene-list .scene.nav-item {
font-family: "Charlemagne";
font-family: "Montserrat";
font-size: 0.8rem;
}
/* For title, sidebar character and scene */
.sheet header.sheet-header h1 input {
font-family: "Charlemagne";
font-family: "Pfeffer";
font-size: 0.8rem;
color: lightgray;
}
@@ -89,7 +101,7 @@
}
.sheet nav.sheet-tabs {
font-family: "Charlemagne";
font-family: "Pfeffer";
font-size: 0.8rem;
color: #151c1f;
}
@@ -356,8 +368,9 @@
border-bottom: 0;
font-weight: bold;
font-size: 2rem;
font-family: "Charlemagne";
font-family: "Pfeffer";
color: lightgray;
text-align: left;
}
.fvtt-hawkmoon-cyd .sheet-header h1.charname input {
@@ -365,9 +378,10 @@
height: 100%;
margin: 0;
font-weight: bold;
font-family: "Charlemagne";
font-family: "Pfeffer";
font-size: 2rem;
color: lightgray;
text-align: left;
}
.fvtt-hawkmoon-cyd .sheet-tabs {
@@ -975,6 +989,11 @@
font-size: 0.9rem;
}
.chat-message .message-content {
font-size: 0.9rem;
font-family: CentaurMT;
}
.chat-actor-name {
padding: 4px;
}
@@ -992,7 +1011,7 @@
font-weight: bold;
position: absolute;
top: 50%;
left: 40%;
left: 54%;
transform: translate(-50%, -50%);
}
@@ -1007,6 +1026,7 @@
.icon-adversite {
width: 48px;
border: 0px;
margin-left: 8px;
}
.hud-adversite-container {
@@ -1496,8 +1516,8 @@
.item-field-label-medium {
padding-top: 6px;
flex-grow: 1;
max-width: 6rem;
min-width: 6rem;
max-width: 7rem;
min-width: 7rem;
}
.item-field-label-long {
@@ -1574,7 +1594,7 @@
}
textarea {
font-family: "Charlemagne";
font-family: "Montserrat";
font-size: 0.8rem;
}

View File

@@ -1,7 +1,7 @@
{
"id": "fvtt-hawkmoon-cyd",
"description": "Hawkmoon RPG for FoundryVTT (CYD system - French)",
"version": "13.0.4",
"version": "13.0.7",
"grid": {
"distance": 2,
"units": "m"
@@ -37,7 +37,7 @@
],
"license": "LICENSE.txt",
"manifest": "https://www.uberwald.me/gitea/public/fvtt-hawkmoon-cyd/raw/branch/master/system.json",
"download": "https://www.uberwald.me/gitea/public/fvtt-hawkmoon-cyd/archive/fvtt-hawkmoon-cyd-13.0.4.zip",
"download": "https://www.uberwald.me/gitea/public/fvtt-hawkmoon-cyd/archive/fvtt-hawkmoon-cyd-13.0.7.zip",
"languages": [
{
"lang": "fr",

View File

@@ -40,7 +40,7 @@
{{selectOptions combativiteList selected=system.sante.etat valueAttr="value" nameAttr="value" labelAttr="label"}}
</select>
</li>
</ul>
</div>
</div>
@@ -55,6 +55,7 @@
<a class="item" data-tab="equipement">Equipement</a>
<a class="item" data-tab="biodata">Bio&Notes</a>
</nav>
<hr>
{{!-- Sheet Body --}}
<section class="sheet-body">
@@ -63,7 +64,7 @@
<div class="tab principal" data-group="primary" data-tab="principal">
<div class="flexcol">
<div class="grid grid-2col">
<div class="sheet-box color-bg-archetype">
@@ -86,7 +87,7 @@
<input type="text" class="padd-right numeric-input item-field-label-short" name="system.vitesse.value"
value="{{system.vitesse.value}}" data-dtype="Number" />
</li>
</ul>
</div>
@@ -236,17 +237,17 @@
{{#each skills as |skill key|}}
<li class="item flexrow " data-item-id="{{skill._id}}" data-item-type="competence">
<img class="item-name-img" src="{{skill.img}}" />
<div class="flexcol item-name-label">
<span class="item-name-label competence-name"><a class="roll-competence item-field-label-short"
<span class="item-name-label competence-name"><a class="roll-competence "
data-attr-key="tochoose">{{skill.name}}</a></span>
<span class="predilection-text">
{{#each skill.system.predilections as |pred key|}}
{{#if (and pred.acquise (not pred.used))}}
{{pred.name}},
{{/if}}
{{/if}}
{{/each}}
</span>
</div>
@@ -410,21 +411,21 @@
<div class="tab equipement" data-group="primary" data-tab="equipement">
<div class="flexcol">
<hr>
<div class="sheet-box color-bg-archetype">
<h4>
<label class="argent-total-text">
Argent Total : {{richesse.po}} PO - {{richesse.pa}} PA - {{richesse.sc}} SC (total {{richesse.valueSC}} SC)
</label>
</h4>
</h4>
</div>
<div class="sheet-box color-bg-archetype">
<ul class="item-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header">
<h3><label class="items-title-text">Richesses et Argent</label></h3>
<h3><label class="items-title-text">Richesses et Argent</label></h3>
</span>
<span class="item-field-label-short">
<label class="short-label">Quantité</label>
@@ -440,7 +441,7 @@
<li class="item flexrow " data-item-id="{{monnaie._id}}" data-item-type="monnaie">
<img class="item-name-img" src="{{monnaie.img}}" />
<span class="item-name-label competence-name">{{monnaie.name}}</span>
<span class="item-name-label competence-name item-field-label-medium">{{monnaie.system.quantite}}
<span class="item-name-label competence-name item-field-label-medium">{{monnaie.system.quantite}}
<a class="quantity-modify plus-minus-button" data-quantite-value="-1">-</a>
<a class="quantity-modify plus-minus-button" data-quantite-value="+1">+</a>
</span>
@@ -460,7 +461,7 @@
<label class="argent-total-text">
Valeur Total Equipement : {{valeurEquipement.po}} PO - {{valeurEquipement.pa}} PA - {{valeurEquipement.sc}} SC (total {{valeurEquipement.valueSC}} SC)
</label>
</h4>
</h4>
</div>
<div class="sheet-box color-bg-archetype">

View File

@@ -2,10 +2,10 @@
{{#if actorImg}}
<img class="actor-icon" src="{{actorImg}}" alt="{{alias}}" />
{{/if}}
<h4 class=chat-actor-name>{{alias}}</h4>
<h4 class="chat-actor-name">{{alias}}</h4>
</div>
<hr>
<hr />
{{#if actionImg}}
<div>
@@ -13,145 +13,126 @@
</div>
{{/if}}
<div class="flexcol">
</div>
<div class="flexcol"></div>
<div>
<ul>
<li class="hawkmoon-roll">Attribut : {{attr.label}} ({{attr.value}})</li>
<li class="hawkmoon-roll">
<strong>Attribut</strong> : {{attr.label}} ({{attr.value}})
</li>
{{#if attr2}}
<li>Attribut : {{attr2.label}} ({{attr2.value}})</li>
<li><strong>Attribut</strong> : {{attr2.label}} ({{attr2.value}})</li>
{{/if}} {{#if competence}}
<li>
<strong>Compétence</strong> : {{competence.name}}
({{competence.system.niveau}})
</li>
{{/if}} {{#if selectedMaitrise}}
<li><strong>Maitrise</strong> : {{selectedMaitrise.name}}</li>
{{/if}} {{#if arme}}
<li>
<strong>Arme</strong> : {{arme.name}} (+{{arme.system.bonusmaniementoff}})
</li>
{{/if}}
{{#if competence}}
<li>Compétence : {{competence.name}} ({{competence.system.niveau}})</li>
{{/if}}
{{#if selectedMaitrise}}
<li>Maitrise : {{selectedMaitrise.name}}</li>
{{/if}}
{{#if arme}}
<li>Arme : {{arme.name}} (+{{arme.system.bonusmaniementoff}})</li>
{{/if}}
<li>Formule : {{diceFormula}}</li>
<li>Résultat du dé : {{diceResult}}</li>
<li><strong>Formule</strong> : {{diceFormula}}</li>
<li><strong>Résultat du dé</strong> : {{diceResult}}</li>
{{#if bonusRoll}}
<li>{{textBonus}} : +{{bonusRoll.total}}</li>
{{/if}}
<li>Total : {{finalResult}}</li>
<li><strong>Total</strong> : {{finalResult}}</li>
{{#if attaqueCharge}}
<li>Vous avez chargé : vos adversaires bénéficient de +3 pour vous attaquer</li>
{{/if}}
{{#if difficulte}}
<li>SD : {{difficulte}}</li>
{{#if isSuccess}}
<li class="chat-success">Succés...
</li>
{{#if attaqueDesarme}}
<li>Vous désarmez votre adversaire ! Son arme tombe hors de sa portée.</li>
{{/if}}
{{else}}
<li class="chat-failure">Echec...</li>
{{/if}}
{{/if}}
{{#if isHeroique}}
<li class="chat-success">Héroïque !!!</li>
{{#if attaqueDesarme}}
<li>... Et en plus vous récupérez l'arme de votre adversaire dans votre main (si vous le souhaitez) !.</li>
{{/if}}
{{/if}}
{{#if isDramatique}}
<li class="chat-failure">Dramatique !!!</li>
{{/if}}
{{#if isInit}}
<li>Initiative stockée ! </li>
{{/if}}
{{#if isSuccess}}
{{#if immobiliser}}
{{#if isHeroique}}
<li>Votre cible est immobilisée, et vous pouvez faire une action complexe.</li>
{{else}}
<li>Votre cible est immobilisée.</li>
{{/if}}
{{/if}}
{{#if desengager}}
{{#if isSuccess}}
<li>Vous vous désengagez de votre adversaire.</li>
{{else}}
<li>Vous ne parvenez pas à vous désengager de votre adversaire, il a un bonus de +3 pour vous attaquer</li>
{{/if}}
{{/if}}
{{#if repousser}}
{{#if isHeroique}}
<li>Votre cible est repoussée de 3 mètres et tombe au sol.</li>
{{else}}
<li>Votre cible tombe au sol.</li>
{{/if}}
{{/if}}
{{#if assomer}}
{{#if isHeroique}}
<li>Votre cible est assomée pour [[/r 1d10+10]] minutes.</li>
{{else}}
<li>Votre cible est assomée pour [[/r 1d10]] minutes.</li>
{{/if}}
{{/if}}
{{#if coupBas}}
<li>La cible a reçu 2 adversités bleues et a perdu 1 niveau de combativité (auto).</li>
{{#if isHeroique}}
<li>Et votre cible perd sa prochaine action complexe.</li>
{{/if}}
{{/if}}
{{#if arme}}
{{#if contenir}}
{{#if isHeroique}}
<li>Aucun dégât, mais tous les adversaires dont le Seuil de Défense + 10 est atteint ou dépassé par le résultat de la manœuvre ne peuvent déclarer dattaque contre le personnage lors de leur prochaine action complexe (à ce tour de jeu ou au suivant).</li>
{{else}}
<li>Aucun dégât, mais la cible de cette manœuvre ne peut pas déclarer dattaque contre vous lors de sa prochaine action complexe (à ce tour de jeu ou au suivant).</li>
{{/if}}
{{else}}
{{#if (eq nbCombativitePerdu "vaincu")}}
<li>Votre adversaire est vaincu !</li>
{{else}}
<li>Votre adversaire a perdu {{nbCombativitePerdu}} Etat de Combativité (auto)</li>
{{#if (not arme.system.onlevelonly)}}
<button class="chat-card-button roll-chat-degat">Dégats de l'arme</button>
{{#if coupDevastateur}}
<button class="chat-card-button roll-chat-degat-devastateur">Dégats de l'arme avec Coup Dévastateur</button>
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{/if}}
{{#each predilections as |pred key|}}
<li>
{{#if (and (and pred.acquise (not pred.maitrise)) (not pred.used))}}
<button class="chat-card-button predilection-reroll" data-predilection-index="{{key}}">Predilection :
{{pred.name}}
</button>
{{/if}}
Vous avez chargé : vos adversaires bénéficient de +3 pour vous attaquer
</li>
{{/if}} {{#if difficulte}}
<li><strong>SD</strong> : {{difficulte}}</li>
{{#if isSuccess}}
<li class="chat-success">Succés...</li>
{{#if attaqueDesarme}}
<li>Vous désarmez votre adversaire ! Son arme tombe hors de sa portée.</li>
{{/if}} {{else}}
<li class="chat-failure">Echec...</li>
{{/if}} {{/if}} {{#if isHeroique}}
<li class="chat-success">Héroïque !!!</li>
{{#if attaqueDesarme}}
<li>
... Et en plus vous récupérez l'arme de votre adversaire dans votre main
(si vous le souhaitez) !.
</li>
{{/if}} {{/if}} {{#if isDramatique}}
<li class="chat-failure">Dramatique !!!</li>
{{/if}} {{#if isInit}}
<li>Initiative stockée !</li>
{{/if}} {{#if isSuccess}} {{#if immobiliser}} {{#if isHeroique}}
<li>
Votre cible est immobilisée, et vous pouvez faire une action complexe.
</li>
{{else}}
<li>Votre cible est immobilisée.</li>
{{/if}} {{/if}} {{#if desengager}} {{#if isSuccess}}
<li>Vous vous désengagez de votre adversaire.</li>
{{else}}
<li>
Vous ne parvenez pas à vous désengager de votre adversaire, il a un bonus
de +3 pour vous attaquer
</li>
{{/if}} {{/if}} {{#if repousser}} {{#if isHeroique}}
<li>Votre cible est repoussée de 3 mètres et tombe au sol.</li>
{{else}}
<li>Votre cible tombe au sol.</li>
{{/if}} {{/if}} {{#if assomer}} {{#if isHeroique}}
<li>Votre cible est assomée pour [[/r 1d10+10]] minutes.</li>
{{else}}
<li>Votre cible est assomée pour [[/r 1d10]] minutes.</li>
{{/if}} {{/if}} {{#if coupBas}}
<li>
La cible a reçu 2 adversités bleues et a perdu 1 niveau de combativité
(auto).
</li>
{{#if isHeroique}}
<li>Et votre cible perd sa prochaine action complexe.</li>
{{/if}} {{/if}} {{#if arme}} {{#if contenir}} {{#if isHeroique}}
<li>
Aucun dégât, mais tous les adversaires dont le Seuil de Défense + 10 est
atteint ou dépassé par le résultat de la manœuvre ne peuvent déclarer
dattaque contre le personnage lors de leur prochaine action complexe (à
ce tour de jeu ou au suivant).
</li>
{{else}}
<li>
Aucun dégât, mais la cible de cette manœuvre ne peut pas déclarer
dattaque contre vous lors de sa prochaine action complexe (à ce tour de
jeu ou au suivant).
</li>
{{/if}} {{else}} {{#if (eq nbCombativitePerdu "vaincu")}}
<li>Votre adversaire est vaincu !</li>
{{else}}
<li>
Votre adversaire a perdu {{nbCombativitePerdu}} Etat de Combativité (auto)
</li>
{{#if (not arme.system.onlevelonly)}}
<button class="chat-card-button roll-chat-degat">Dégats de l'arme</button>
{{#if coupDevastateur}}
<button class="chat-card-button roll-chat-degat-devastateur">
Dégats de l'arme avec Coup Dévastateur
</button>
{{/if}} {{/if}} {{/if}} {{/if}} {{/if}} {{/if}} {{#each predilections as
|pred key|}}
<li>
{{#if (and (and pred.acquise (not pred.maitrise)) (not pred.used))}}
<button
class="chat-card-button predilection-reroll"
data-predilection-index="{{key}}"
>
Predilection : {{pred.name}}
</button>
{{/if}}
</li>
{{/each}}
</ul>
</div>

Some files were not shown because too many files have changed in this diff Show More