68b3079da8
Corrections majeures : - HamalronTirageTarot extends Roll (évaluation des jets fonctionnelle) - Correction du nom de classe Langue (HamalronFaction -> HamalronLangue) - Création du template tab-navigation.hbs manquant - Type acteur 'character' -> 'personnage' dans _preCreate Types d'items corrigés (anglais -> français) : - weapon -> arme, armor -> armure, equipment -> equipement - Suppression des types inexistants (deal, malefica, ritual, perk) Modèles : - cost -> cout (armure, equipement) - Tarot : default -> initial - Sortilege : LOCALIZATION_PREFIXES corrigé - Constantes CHOICE_ADVANTAGES_DISADVANTAGES et ATTACK_MODIFIERS ajoutées - ATTACK_MODIFIERS supprimé (plus utilisé) Templates alignés sur les modèles réels : - enemy-trait : suppression champs manquants (trauma, stats, domain...) - personnage-equipement : champs alignés sur arme/armure/equipement - personnage-sortileges : suppression domain/level/rituals - enemy-main : suppression stats et flavorText - base-actor : suppression mortality, toChat limité aux tarots Jets de compétence : - Égalité = réussite (>= au lieu de >, conforme aux règles p.155) - Comparaison robuste des cartes de succès (via String()) Le Mat : - Les autres joueurs peuvent renouveler leur main (règle p.151) findTarotItem : recherche dans game.items puis compendiums await manquants ajoutés sur saveDeckState() AGENTS.md créé
148 lines
4.9 KiB
JavaScript
148 lines
4.9 KiB
JavaScript
export const SYSTEM_ID = "fvtt-hamalron"
|
|
|
|
export const ASCII = `
|
|
, _
|
|
/| | | |
|
|
|___| __, _ _ _ __, | | ,_ __ _ _
|
|
| |\/ | / |/ |/ | / | |/ / | / \_/ |/ |
|
|
| |/\_/|_/ | | |_/\_/|_/|__/ |_/\__/ | |_/
|
|
|
|
`
|
|
|
|
export const TAROT_SYMBOLES = {
|
|
"coupe": { id: "coupe", label: "Coupe" },
|
|
"epee": { id: "epee", label: "Epée" },
|
|
"denier": { id: "denier", label: "Denier" },
|
|
"baton": { id: "baton", label: "Bâton" },
|
|
}
|
|
|
|
export const TAROT_TYPES = {
|
|
"atout": { id: "atout", label: "Atout" },
|
|
"figure": { id: "figure", label: "Figure" },
|
|
"numéro": { id: "numéro", label: "Numéro" },
|
|
}
|
|
|
|
export const TAROT_VALEURS = {
|
|
"11": { id: "11", label: "11", value: 11 },
|
|
"12": { id: "12", label: "12", value: 12 },
|
|
"13": { id: "13", label: "13", value: 13 },
|
|
"14": { id: "14", label: "14", value: 14 },
|
|
"15": { id: "15", label: "15", value: 15 },
|
|
"16": { id: "16", label: "16", value: 16 },
|
|
"17": { id: "17", label: "17", value: 17 },
|
|
"18": { id: "18", label: "18", value: 18 },
|
|
"19": { id: "19", label: "19", value: 19 },
|
|
"20": { id: "20", label: "20", value: 20 },
|
|
"21": { id: "21", label: "21", value: 21 },
|
|
"22": { id: "22", label: "22", value: 22 },
|
|
"roi": { id: "roi", label: "Roi", value: 14 },
|
|
"reine": { id: "reine", label: "Reine", value: 13 },
|
|
"cavalier": { id: "cavalier", label: "Cavalier", value: 12 },
|
|
"valet": { id: "valet", label: "Valet", value: 11 },
|
|
"lemat": { id: "lemat", label: "Le Mat", value: 23 },
|
|
"10": { id: "10", label: "10", value: 10 },
|
|
"9": { id: "9", label: "9", value: 9 },
|
|
"8": { id: "8", label: "8", value: 8 },
|
|
"7": { id: "7", label: "7", value: 7 },
|
|
"6": { id: "6", label: "6", value: 6 },
|
|
"5": { id: "5", label: "5", value: 5 },
|
|
"4": { id: "4", label: "4", value: 4 },
|
|
"3": { id: "3", label: "3", value: 3 },
|
|
"2": { id: "2", label: "2", value: 2 },
|
|
"1": { id: "1", label: "1", value: 1 },
|
|
}
|
|
|
|
export const DIFFICULTY_CHOICES = {
|
|
"soustension_oppose": { id: "soustension_oppose", label: "Sous Tension ou Opposé", standard: null, "soustension": null },
|
|
"tresfacile": { id: "tresfacile", label: "Très Facile", standard: 3, "soustension": -4 },
|
|
"facile": { id: "facile", label: "Facile", standard: 5, "soustension": -2 },
|
|
"moyenne": { id: "moyenne", label: "Moyenne", standard: 7, "soustension": 0 },
|
|
"difficile": { id: "difficile", label: "Difficile", standard: 10, "soustension": 3 },
|
|
"tresdifficile": { id: "tresdifficile", label: "Très Difficile", standard: 13, "soustension": 6 },
|
|
"heroique": { id: "heroique", label: "Héroïque", standard: 16, "soustension": 9 },
|
|
}
|
|
|
|
export const WEAPON_TYPES = {
|
|
"melee": { id: "melee", label: "Mêlée" },
|
|
"tir": { id: "tir", label: "Tir" },
|
|
}
|
|
|
|
export const COMPETENCE_TYPES = {
|
|
"commune": { id: "commune", label: "Commune" },
|
|
"faction": { id: "faction", label: "Faction" },
|
|
"peuple": { id: "peuple", label: "Peuple" },
|
|
}
|
|
|
|
export const ENEMY_TYPES = {
|
|
"mook": { id: "mook", label: "Sbire" },
|
|
"elite": { id: "elite", label: "Élite" },
|
|
"boss": { id: "boss", label: "Boss" },
|
|
}
|
|
|
|
export const SORTILEGE_CATEGORIES = {
|
|
"malefica": { id: "malefica", label: "Maléfica" },
|
|
"ritual": { id: "ritual", label: "Rituel" },
|
|
}
|
|
|
|
export const NIVEAU_COMPETENCES = {
|
|
"inexperimente": {
|
|
"name": "Inexpérimenté",
|
|
"id": "inexperimente",
|
|
"abreviation": "I",
|
|
"modificateur": 0,
|
|
"cout_acquisition_points": 0,
|
|
"description": "Niveau de départ par défaut pour toutes les compétences non apprises."
|
|
},
|
|
"amateur": {
|
|
"name": "Amateur",
|
|
"id": "amateur",
|
|
"abreviation": "A",
|
|
"modificateur": 1,
|
|
"cout_acquisition_points": 1,
|
|
"description": "Le personnage possède des notions de base dans la compétence."
|
|
},
|
|
"competent": {
|
|
"name": "Compétent",
|
|
"id": "competent",
|
|
"abreviation": "C",
|
|
"modificateur": 3,
|
|
"cout_acquisition_points": 3,
|
|
"cout_progression_depuis_amateur": 2,
|
|
"description": "Le personnage maîtrise la compétence et résiste mieux aux actions adverses."
|
|
},
|
|
"expert": {
|
|
"name": "Expert",
|
|
"abreviation": "E",
|
|
"modificateur": 5,
|
|
"cout_acquisition_points": 5,
|
|
"cout_progression_depuis_competent": 2,
|
|
"description": "Le personnage est un maître absolu dans son domaine."
|
|
}
|
|
}
|
|
|
|
export const CHOICE_ADVANTAGES_DISADVANTAGES = {
|
|
"0": { id: "0", label: "Aucun" },
|
|
"1": { id: "1", label: "1" },
|
|
"2": { id: "2", label: "2" },
|
|
"3": { id: "3", label: "3" },
|
|
}
|
|
|
|
/**
|
|
* Include all constant definitions within the SYSTEM global export
|
|
* @type {Object}
|
|
*/
|
|
export const SYSTEM = {
|
|
id: SYSTEM_ID,
|
|
TAROT_SYMBOLES: TAROT_SYMBOLES,
|
|
DIFFICULTY_CHOICES: DIFFICULTY_CHOICES,
|
|
TAROT_TYPES: TAROT_TYPES,
|
|
TAROT_VALEURS: TAROT_VALEURS,
|
|
WEAPON_TYPES: WEAPON_TYPES,
|
|
COMPETENCE_TYPES: COMPETENCE_TYPES,
|
|
ENEMY_TYPES: ENEMY_TYPES,
|
|
SORTILEGE_CATEGORIES: SORTILEGE_CATEGORIES,
|
|
NIVEAU_COMPETENCES: NIVEAU_COMPETENCES,
|
|
CHOICE_ADVANTAGES_DISADVANTAGES,
|
|
ASCII
|
|
}
|