mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 11:42:29 +00:00
8996 lines
579 KiB
HTML
8996 lines
579 KiB
HTML
<input type="hidden" name="attr_gm" value="">
|
||
<input type="hidden" name="attr_nouveau_personnage" class="nouveau_personnage" value="1">
|
||
<input type="hidden" name="attr_ctoken" value="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/token_dice.webp">
|
||
<input type="hidden" name="attr_valeur_aura" class="valeur_aura" value="0">
|
||
<input type="hidden" name="attr_niveau_aura" class="niveau_aura" value="0">
|
||
<input type="hidden" name="attr_niveau_sm" class="niveau_sm" value="0">
|
||
<input type="hidden" name="attr_heroisme" class="points_heroisme" value="0">
|
||
<input type="hidden" name="attr_heresie" class="points_heresie" value="0">
|
||
<input type="hidden" name="attr_avatar" class="choix_avatar" value="0">
|
||
<input type="hidden" name="attr_armure_affichee" class="choix_armure" value="0">
|
||
<input type="hidden" name="attr_bouclier_affichee" class="choix_bouclier" value="0">
|
||
<input type="hidden" name="attr_info_reduit" class="voir_info" value="0">
|
||
<input type="hidden" name="attr_hero_reduit" class="voir_hero" value="0">
|
||
<input type="hidden" name="attr_carac_reduit" class="voir_carac" value="0">
|
||
<input type="hidden" name="attr_competence_reduit" class="voir_competence" value="0">
|
||
<input type="hidden" name="attr_armement_reduit" class="voir_armement" value="0">
|
||
<input type="hidden" name="attr_inventaire_reduit" class="voir_inventaire" value="0">
|
||
<input type="hidden" name="attr_malus_total_dexterite" value="0">
|
||
<input type="hidden" name="attr_malus_total_athletisme" value="0">
|
||
<input type="hidden" name="attr_malus_total_combat_cac" value="0">
|
||
<input type="hidden" name="attr_malus_total_combat_puglilat" value="0">
|
||
<input type="hidden" name="attr_malus_total_combat_distance" value="0">
|
||
<input type="hidden" name="attr_malus_total_discretion" value="0">
|
||
<input type="hidden" name="attr_malus_total_esquive" value="0">
|
||
<input type="hidden" name="attr_malus_blessure" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_combat_cac" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_demi_dexterite" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_athletisme" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_combat_pugilat" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_combat_distance" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_discretion" value="0">
|
||
<input type="hidden" name="attr_total_armures_malus_esquive" value="0">
|
||
<input type="hidden" name="attr_total_boucliers_malus_discretion" value="0">
|
||
<input type="hidden" name="attr_total_boucliers_malus_esquive" value="0">
|
||
<input type="hidden" name="attr_sm" value="0">
|
||
<input type="hidden" name="attr_alerte_sm_50" value="0">
|
||
<input type="hidden" name="attr_alerte_sm_25" value="0">
|
||
<input type="hidden" name="attr_alerte_sm_75" value="0">
|
||
<input type="hidden" name="attr_popup_sm" class="popup_sm" value="0">
|
||
<input type="hidden" name="attr_bonus_force" value="0">
|
||
<input type="hidden" name="attr_bonus_dexterite" value="0">
|
||
<input type="hidden" name="attr_bonus_reussite" value="0">
|
||
<input type="hidden" name="attr_armes_designation_1" value="Pugilat, Boxe, Lutte">
|
||
<input type="hidden" name="attr_armes_degats_1" value="1">
|
||
<input type="hidden" name="attr_armes_effet_1" value=" ">
|
||
<input type="hidden" name="attr_armes_designation_2" value=" ">
|
||
<input type="hidden" name="attr_armes_degats_2" value="1">
|
||
<input type="hidden" name="attr_armes_effet_2" value=" ">
|
||
<input type="hidden" name="attr_armes_designation_3" value=" ">
|
||
<input type="hidden" name="attr_armes_degats_3" value="1">
|
||
<input type="hidden" name="attr_armes_effet_3" value=" ">
|
||
<input type="hidden" name="attr_armes_designation_4" value=" ">
|
||
<input type="hidden" name="attr_armes_degats_4" value="1">
|
||
<input type="hidden" name="attr_armes_effet_4" value=" ">
|
||
<input type="hidden" name="attr_DMG_1" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_1}}} {{result=[[@{armes_degats_1}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_1}}}">
|
||
<input type="hidden" name="attr_DMG_1_distance" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_1}}} {{result=[[@{armes_degats_1}[Dégâts de base]+@{bonus_dexterite}[Bonus de Dextérité]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_1}}}">
|
||
<input type="hidden" name="attr_DMG_2" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_2}}} {{result=[[@{armes_degats_2}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_2}}}">
|
||
<input type="hidden" name="attr_DMG_2_distance" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_2}}} {{result=[[@{armes_degats_2}[Dégâts de base]+@{bonus_dexterite}[Bonus de Dextérité]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_2}}}">
|
||
<input type="hidden" name="attr_DMG_3" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_3}}} {{result=[[@{armes_degats_3}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_3}}}">
|
||
<input type="hidden" name="attr_DMG_3_distance" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_3}}} {{result=[[@{armes_degats_3}[Dégâts de base]+@{bonus_dexterite}[Bonus de Dextérité]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_3}}}">
|
||
<input type="hidden" name="attr_DMG_4" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_4}}} {{result=[[@{armes_degats_4}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_4}}}">
|
||
<input type="hidden" name="attr_DMG_4_distance" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_4}}} {{result=[[@{armes_degats_4}[Dégâts de base]+@{bonus_dexterite}[Bonus de Dextérité]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_4}}}">
|
||
<button type="roll" name="roll_weapon_dmg_1" style="display: none;" value="@{DMG_1}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_2" style="display: none;" value="@{DMG_2}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_3" style="display: none;" value="@{DMG_3}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_4" style="display: none;" value="@{DMG_4}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_1_distance" style="display: none;" value="@{DMG_1_distance}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_2_distance" style="display: none;" value="@{DMG_2_distance}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_3_distance" style="display: none;" value="@{DMG_3_distance}"></button>
|
||
<button type="roll" name="roll_weapon_dmg_4_distance" style="display: none;" value="@{DMG_4_distance}"></button>
|
||
|
||
<!-- <button type="action" class="button_carac" name="act_creation_perso_temp">SWITCH</button> -->
|
||
|
||
|
||
|
||
<div class="nouveau_personnage">
|
||
<div class="creation_perso">
|
||
<div class="cadre_creation">
|
||
<div class="creation_entete">
|
||
Pour créer votre personnage, distribuez les points de Compétences et d'Attributs.<br>
|
||
Une fois fait, validez pour accéder à la fiche de personnage.
|
||
</div>
|
||
<!-- CARAC DE BASE -->
|
||
<div class="wrapper_zone_carac">
|
||
<div class="bloc_pentacle">
|
||
<div class="wrapper_zone_carac" style="margin-left: -10px;">
|
||
<div class="caracteristiques_pentacle"></div>
|
||
<div class="caracteristiques_force_data"><input type="number" class="input_carac" name="attr_force_base" value="15" min="15" max="50"></div>
|
||
<div class="caracteristiques_dexterite_data"><input type="number" class="input_carac" name="attr_dexterite_base" value="15" min="15" max="50"></div>
|
||
<div class="caracteristiques_constitution_data"><input type="number" class="input_carac" name="attr_constitution_base" value="15" min="15" max="50"></div>
|
||
<div class="caracteristiques_intelligence_data"><input type="number" class="input_carac" name="attr_intelligence_base" value="15" min="15" max="50"></div>
|
||
<div class="caracteristiques_charisme_data"><input type="number" class="input_carac" name="attr_charisme_base" value="15" min="15" max="50"></div>
|
||
<div class="caracteristiques_volonte_data"><input type="number" class="input_carac" name="attr_volonte_base" value="15" min="15" max="50"></div>
|
||
<div class="caracteristiques_force_titre">FORCE</div>
|
||
<div class="caracteristiques_dexterite_titre">DEXTÉRITÉ</div>
|
||
<div class="caracteristiques_constitution_titre">CONSTITUTION</div>
|
||
<div class="caracteristiques_intelligence_titre">INTELLIGENCE</div>
|
||
<div class="caracteristiques_charisme_titre">CHARISME</div>
|
||
<div class="caracteristiques_volonte_titre">VOLONTÉ</div>
|
||
</div>
|
||
</div>
|
||
<div class="creation_carac_decompte">Points attribués : <input type="number" class="input_config" value="90" name="attr_points_carac_base" style="color: var(--white);" readonly /> / 235</div>
|
||
<div class="caracteristiques_derivees" style="grid-row: 2 / 8;margin-top: 0px;margin-bottom: 94px;">
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Points de vie max</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_pdv_maxi_base" value="3" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Points de magie max</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_pdm_maxi_base" value="3" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Santé mentale max</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_sm_maxi_base" value="85" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Force</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_force_base" value="1" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Dextérité</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_dexterite_base" value="1" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Encaissement</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_encaissement_base" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Mouvement</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_mouvement" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
</div>
|
||
<div class="caracteristiques_separateur_creation"></div>
|
||
</div>
|
||
|
||
<!-- COMPETENCES DE BASE -->
|
||
<div class="wrapper_zone_competence" style="margin-top: -37px;transform: rotate(0.7deg);">
|
||
<div class="creation_comp_decompte">Points attribués : <input type="number" class="input_config" value="0" name="attr_points_comp_base" style="color: var(--white);" readonly /> / 300</div>
|
||
<div class="competence_gauche" style="grid-row: 2 / 17;">
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_athletisme_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Athletisme</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp_double" name="attr_stat_baratin_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Baratin</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_bibliotheque_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Bibliothèque</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_chercher_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Chercher</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp_double" name="attr_stat_combat_cac_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Combat CaC</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_combat_pugilat_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Combat Pugilat</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_combat_distance_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Combat Distance</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_discretion_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Discrétion</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_endurance_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Endurance</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_esquive_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Esquive</div>
|
||
</div>
|
||
</div>
|
||
<div class="competence_droite" style="grid-row: 2 / 17;">
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_langue_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Langue</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_langue_ancienne_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Langue Ancienne</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_medecine_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Médecine</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp_double" name="attr_stat_metier_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Métier</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_perception_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Perception</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_psychologie_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Psychologie</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_science_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Sciences</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_sciences_occultes_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Sciences occultes</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_survie_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Survie</div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_vigilance_base" value="0" min="0" max="30"></div>
|
||
<div class="competence_nom_double">Vigilance</div>
|
||
</div>
|
||
</div>
|
||
<div class="competence_crane" style="grid-row: 3 / 6;margin-left: -40px;"></div>
|
||
<div class="competence_separateur_centre" style="height: 67%;margin-top: 32px;"></div>
|
||
<div class="competence_separateur_bas" style="grid-row: 13 / 17;"></div>
|
||
</div>
|
||
<div class="creation_valider">
|
||
<button type="action" class="button_valider_creation" name="act_valider_creation">Valider pour créer votre personnage</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="obscuritas_perso">
|
||
<input type="hidden" name="attr_nouveau_personnage" class="nouveau_personnage" value="1">
|
||
<input type="hidden" name="attr_page" class="choix_page" value="0">
|
||
<div class="menu">
|
||
<button type="action" name="act_0" class="button0" style="margin-left: 2px;box-shadow: 0px 1px 6px 0px var(--color_ombre_button);">Personnage</button>
|
||
<button type="action" name="act_6" class="button6">Hérésie et Héroïsme</button>
|
||
<button type="action" name="act_1" class="button1">Attributs</button>
|
||
<button type="action" name="act_2" class="button2">Compétences</button>
|
||
<button type="action" name="act_3" class="button3">Équipement</button>
|
||
<button type="action" name="act_4" class="button4">Notes</button>
|
||
<button type="action" name="act_boutton_xp" class="button8">XP</button>
|
||
<button type="action" name="act_7" class="button7" style="margin-left: 96px;">Compendium</button>
|
||
<button type="action" name="act_5" class="button5"><span class="picto" style="padding-left: 5px;">y</span></button>
|
||
</div>
|
||
|
||
<input type="hidden" name="attr_popup_sm" class="popup_sm" value="0">
|
||
<div class="sm_75">
|
||
<div class="wrapper_page_sm">
|
||
<div class="sm_alerte_texte">
|
||
Votre Santé Mentale vient de repasser au dessus de 75%.<br><br>
|
||
Aviser le MJ de cela puis fermer cette popup...
|
||
</div>
|
||
<div class="sm_alerte_illustration_75">
|
||
|
||
</div>
|
||
<div class="sm_alerte_bouton">
|
||
<button type="action" class="button_carac" name="act_fermer-popup" title="Fermer la fenêtre" style="font-family: 'Pictos';font-weight: normal;color: var(--white);font-size: 32px;">*</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sm_50">
|
||
<div class="wrapper_page_sm">
|
||
<div class="sm_alerte_texte">
|
||
Votre Santé Mentale se trouve entre 50% et 26%.<br><br>
|
||
Aviser le MJ de cela puis fermer cette popup...
|
||
</div>
|
||
<div class="sm_alerte_illustration_50">
|
||
|
||
</div>
|
||
<div class="sm_alerte_bouton">
|
||
<button type="action" class="button_carac" name="act_fermer-popup" title="Fermer la fenêtre" style="font-family: 'Pictos';font-weight: normal;color: var(--white);font-size: 32px;">*</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sm_25">
|
||
<div class="wrapper_page_sm">
|
||
<div class="sm_alerte_texte">
|
||
Votre Santé Mentale vient d'atteindre 25%.<br><br>
|
||
Aviser le MJ de cela puis fermer cette popup...
|
||
</div>
|
||
<div class="sm_alerte_illustration_25">
|
||
|
||
</div>
|
||
<div class="sm_alerte_bouton">
|
||
<button type="action" class="button_carac" name="act_fermer-popup" title="Fermer la fenêtre" style="font-family: 'Pictos';font-weight: normal;color: var(--white);font-size: 32px;">*</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="page_complete">
|
||
<!-- Information personnage -->
|
||
<div class="personnage">
|
||
<div class="wrapper_page_1">
|
||
<input type="hidden" name="attr_page" class="choix_page" value="0">
|
||
<!-- Banniere et titre -->
|
||
<!-- <div class="cadre_titre">
|
||
<div class="wrapper_titre">
|
||
<div class="titre_logo"></div>
|
||
<div class="titre_titre">OBSCURITAS AETERNA</div>
|
||
</div>
|
||
</div> -->
|
||
<!-- AURA -->
|
||
<div class="cadre_aura">
|
||
<div class="wrapper_zone_personnage">
|
||
<input type="hidden" name="attr_niveau_aura" class="niveau_aura" value="0">
|
||
<div class="background_aura"></div>
|
||
<div class="background_aura_heresie"></div>
|
||
<div class="background_aura_heroisme"></div>
|
||
<div class="barre_aura"></div>
|
||
<div class="centre_aura"></div>
|
||
<div class="demon_aura"></div>
|
||
<div class="ange_aura"></div>
|
||
<div class="obscuritas">Obscuritas</div>
|
||
<div class="aeterna">Æterna</div>
|
||
<div class="boutton_aura"><button type="action" class="button_aura" name="act_roll-aura" title="Jet d'Aura">AURA</button></div>
|
||
<div class="marqueur_aura_0"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_1"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_2"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_3"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_4"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_5"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_6"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_7"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_8"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_9"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_10"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n1"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n2"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n3"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n4"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n5"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n6"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n7"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n8"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n9"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
<div class="marqueur_aura_n10"><input type="number" class="input_aura" name="attr_aura" value="0" readonly></div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- INFORMATIONS -->
|
||
<input type="hidden" name="attr_info_reduit" class="voir_info" value="0">
|
||
<div class="cadre_info_reduit">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_info_titre">PERSONNAGE<button type="action" class="button_show" name="act_hide_info" title="Afficher / Cacher" ><span class="picto">|</span></button></div>
|
||
</div>
|
||
</div>
|
||
<div class="cadre_info">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_info_titre">PERSONNAGE<button type="action" class="button_show" name="act_hide_info" title="Afficher / Cacher" ><span class="picto">|</span></button></div>
|
||
<!-- Gauche -->
|
||
<div class="zone_info_gauche">
|
||
<div class="wrapper_zone_info">
|
||
<div class="info_data"><input name="attr_character_name" type="text" spellcheck="false" class="input_ligne" /></div>
|
||
<div class="info_titre">NOM</div>
|
||
</div>
|
||
<div class="wrapper_zone_info">
|
||
<div class="info_data" style="margin-right: 15px;"><input name="attr_profession" type="text" spellcheck="false" class="input_ligne" /></div>
|
||
<div class="info_titre">PROFESSION ET RÔLE</div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-right: 25px;">
|
||
<div class="info_data"><input name="attr_apparence1" type="text" spellcheck="false" class="input_ligne" /></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;margin-right: 25px;">
|
||
<div class="info_data"><input name="attr_apparence2" type="text" spellcheck="false" class="input_ligne" /></div>
|
||
<div class="info_titre">APPARENCE</div>
|
||
</div>
|
||
<div class="wrapper_zone_info">
|
||
<div class="info_data" style="margin-right: 15px;"><input name="attr_origine1" type="text" spellcheck="false" class="input_ligne" /></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;">
|
||
<div class="info_data"><input name="attr_origine2" type="text" spellcheck="false" class="input_ligne" /></div>
|
||
<div class="info_titre">ORIGINE</div>
|
||
</div>
|
||
</div>
|
||
<!-- Droite -->
|
||
<div class="zone_info_droite">
|
||
<div class="wrapper_zone_info">
|
||
<div class="info_data"><input name="attr_caractere1" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;margin-left: 7px;">
|
||
<div class="info_data"><input name="attr_caractere2" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;margin-left: 15px;">
|
||
<div class="info_data"><input name="attr_caractere3" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
<div class="info_titre">CARACTÈRE ET PERSONNALITÉ</div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-left: 25px;">
|
||
<div class="info_data"><input name="attr_croyance1" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-left: 25px;">
|
||
<div class="info_data"><input name="attr_croyance2" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
<div class="info_titre">CROYANCES ET CONVICTIONS</div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-left: 15px;"">
|
||
<div class="info_data"><input name="attr_condition1" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;">
|
||
<div class="info_data"><input name="attr_condition2" type="text" spellcheck="false" class="input_ligne_droite" /></div>
|
||
<div class="info_titre">CONDITION PHYSIQUE</div>
|
||
</div>
|
||
</div>
|
||
<!-- Centre -->
|
||
<div class="zone_info_avatar">
|
||
<div class="wrapper_zone_info">
|
||
<input type="hidden" name="attr_avatar" class="choix_avatar" value="0">
|
||
<div class="info_avatar"><img class="portrait" name="attr_character_token"></div>
|
||
<div class="info_avatar_aude"></div>
|
||
<div class="info_avatar_einarth"></div>
|
||
<div class="info_avatar_felix"></div>
|
||
<div class="info_avatar_baudoin"></div>
|
||
<div class="info_avatar_mathilde"></div>
|
||
<div class="info_avatar_robert"></div>
|
||
<div class="zone_bouton_avatar"><button type="action" class="button_avatar" name="act_change_avatar"></button></div>
|
||
</div>
|
||
</div>
|
||
<div class="zone_info_background" style="margin-top: 15px;">
|
||
<div class="wrapper_zone_info">
|
||
<div class="info_titre" style="text-align: center;grid-row: 1;margin-top: -20px;">HISTOIRE PERSONNELLE</div>
|
||
<div class="info_data" style="grid-row: 1;"><input name="attr_background1" type="text" spellcheck="false" class="input_ligne" style="text-align: center;"></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;">
|
||
<div class="info_data"><input name="attr_background2" type="text" spellcheck="false" class="input_ligne" style="text-align: center;"></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;">
|
||
<div class="info_data"><input name="attr_background3" type="text" spellcheck="false" class="input_ligne" style="text-align: center;"></div>
|
||
</div>
|
||
<div class="wrapper_zone_info" style="margin-top: 0px;">
|
||
<div class="info_data"><input name="attr_background4" type="text" spellcheck="false" class="input_ligne" style="text-align: center;"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- HÉROISME HERESIE -->
|
||
<input type="hidden" name="attr_hero_reduit" class="voir_hero" value="0">
|
||
<div class="cadre_hero_reduit">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_hero_titre" style="padding-left: 10px;"><button type="action" class="button_show" name="act_hide_hero" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button> HÉROÏSME et HÉRÉSIE</div>
|
||
</div>
|
||
</div>
|
||
<div class="cadre_hero">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_hero_titre" style="padding-left: 10px;"><button type="action" class="button_show" name="act_hide_hero" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button> HÉROÏSME et HÉRÉSIE</div>
|
||
<!-- Info -->
|
||
<!-- <div class="zone_hero_info">Ce cadre vous permet de mettre à jour vos scores d'Hérésie et d'Héroisme (L'Aura étant elle, automatiquement mise à jour).<br>Chaque palier d'Aura qui aura était atteint fera apparaitre les bonus qui en découlent.</div> -->
|
||
<div class="zone_hero_here_aura_hero">
|
||
<div class="wrapper_zone_hero_here_aura_hero">
|
||
<!-- Titre -->
|
||
<div class="hero_titre_heresie">HÉRÉSIE</div>
|
||
<div class="hero_heresie_illu"></div>
|
||
<div class="hero_heresie_data">
|
||
<button type="action" class="button_here_hero" name="act_heresie_moins" title="Retirer 1 point d'hérésie" style="background: #4a2a27;"><span class="picto">_</span></button>
|
||
<input type="number" class="input_hero_here" name="attr_heresie" value="0" style="background: #4a2a27;" readonly>
|
||
<button type="action" class="button_here_hero" name="act_heresie_plus" title="Ajouter 1 point d'hérésie" style="background: #4a2a27;"><span class="picto">&</span></button></div>
|
||
<div class="hero_titre_aura"><button type="action" class="button_aura" name="act_roll-aura" title="Jet d'Aura">AURA</button></div>
|
||
<div class="hero_aura_data_habillage">
|
||
<input type="number" class="input_hero_here" name="attr_aura" value="0" style="border: none;font-size: 26px;" readonly>
|
||
</div>
|
||
<div class="hero_titre_heroisme">HÉROÏSME</div>
|
||
<div class="hero_heroisme_illu"></div>
|
||
<div class="hero_heroisme_data">
|
||
<button type="action" class="button_here_hero" name="act_heroisme_moins" title="Retirer 1 point d'héroïsme" style="background: #424b6f;"><span class="picto">_</span></button>
|
||
<input type="number" class="input_hero_here" name="attr_heroisme" value="0" style="background: #424b6f;" readonly>
|
||
<button type="action" class="button_here_hero" name="act_heroisme_plus" title="Ajouter 1 point d'héroïsme" style="background: #424b6f;"><span class="picto">&</span></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Gauche -->
|
||
<div class="zone_hero_gauche">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="
|
||
margin-right: 25px;
|
||
">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="
|
||
font-size: 11px;
|
||
background: #4a2a27;
|
||
border: 1px solid black;
|
||
border-radius: 5px 5px 0px 0px;
|
||
color: var(--white);
|
||
">
|
||
Utilisation des Points d’Hérésie :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">1 point</div>
|
||
<div class="hero_tableau_effet">• Malus de 20 sur un jet crucial<br>
|
||
• Le personnage subit les dégâts maximum lors d’une attaque</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">2 Points</div>
|
||
<div class="hero_tableau_effet_4">• Le joueur doit relancer un jet réussi<br>
|
||
• Ajoute un effet de peur ou une vision macabre dans la scène</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">3 Points</div>
|
||
<div class="hero_tableau_effet">• Perte de 20 points de santé mentale<br>
|
||
• Bloque la magie du personnage pour la durée de la scène</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">7 Points</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;font-weight: bold;font-size: 13px;text-align: center !important;">La possession des ténèbres</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Droite -->
|
||
<div class="zone_hero_droite">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="
|
||
margin-left: 25px;
|
||
">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="
|
||
font-size: 11px;
|
||
background: #424b6f;
|
||
border: 1px solid black;
|
||
border-radius: 5px 5px 0px 0px;
|
||
color: var(--white);
|
||
">
|
||
Utilisation des Points d’Héroïsme :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">1 point</div>
|
||
<div class="hero_tableau_effet">• Bonus de +20 sur un jet<br>
|
||
• Dégâts maximum sur une attaque</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">2 Points</div>
|
||
<div class="hero_tableau_effet_4">• Relancer un jet échoué<br>
|
||
• Résister à un effet de peur ou d’influence<br>
|
||
• Lancer gratuitement un sort moyen ou faible</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">3 Points</div>
|
||
<div class="hero_tableau_effet">• Récupérer 20 points de santé mentale<br>
|
||
• Lancer gratuitement un sort puissant</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">7 Points</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;font-weight: bold;font-size: 13px;">Révèle le héros en toi !</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura centre -->
|
||
<div class="zone_hero_aura">
|
||
<div class="wrapper_zone_hero">
|
||
<!-- Affichage dynamique tableau des effets aura -->
|
||
<input type="hidden" name="attr_valeur_aura" class="valeur_aura" value="0">
|
||
<!-- Aura neutre -->
|
||
<div class="niveau_aura_0">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="color: #00000036;">13 à 25</div>
|
||
<div class="hero_tableau_effet" style="color: #00000036;">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/6;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/6;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7" style="border-bottom: 1px solid black;color: #00000036;grid-row: 1/9;">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7" style="border-bottom: 1px solid black;color: #00000036;grid-row: 1/9;">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura +1 -->
|
||
<div class="niveau_aura_1">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">-12 à 12</div>
|
||
<div class="hero_tableau_effet">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">13 à 25</div>
|
||
<div class="hero_tableau_effet">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="color: #00000036;">26 à 49</div>
|
||
<div class="hero_tableau_effet" style="color: #00000036;">• Le personnage est automatiquement stabilisé en arrivant à 0 points de vie</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="border-bottom: 1px solid black;color: #00000036;">50 ou plus</div>
|
||
<div class="hero_tableau_effet_4" style="border-bottom: 1px solid black;color: #00000036;">• Le paradis te connaît et te favorise<br>
|
||
• Certains avantages arrivent spontanément en cas de besoin<br>
|
||
• Chance de résurrection en cas de mort</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura +2 -->
|
||
<div class="niveau_aura_2">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">-12 à 12</div>
|
||
<div class="hero_tableau_effet">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">13 à 25</div>
|
||
<div class="hero_tableau_effet">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">26 à 49</div>
|
||
<div class="hero_tableau_effet">• Le personnage est automatiquement stabilisé en arrivant à 0 points de vie</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="border-bottom: 1px solid black;color: #00000036;">50 ou plus</div>
|
||
<div class="hero_tableau_effet_4" style="border-bottom: 1px solid black;color: #00000036;">• Le paradis te connaît et te favorise<br>
|
||
• Certains avantages arrivent spontanément en cas de besoin<br>
|
||
• Chance de résurrection en cas de mort</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura +3-->
|
||
<div class="niveau_aura_3">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">-12 à 12</div>
|
||
<div class="hero_tableau_effet">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">13 à 25</div>
|
||
<div class="hero_tableau_effet">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">26 à 49</div>
|
||
<div class="hero_tableau_effet">• Le personnage est automatiquement stabilisé en arrivant à 0 points de vie</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="border-bottom: 1px solid black">50 ou plus</div>
|
||
<div class="hero_tableau_effet_4" style="border-bottom: 1px solid black;">• Le paradis te connaît et te favorise<br>
|
||
• Certains avantages arrivent spontanément en cas de besoin<br>
|
||
• Chance de résurrection en cas de mort</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura -1 -->
|
||
<div class="niveau_aura_m1">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/3;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/3;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="color: #00000036;">-26 à -49</div>
|
||
<div class="hero_tableau_effet_4" style="color: #00000036;">• Mort instantanée en arrivant à 0 points de vie<br>
|
||
• L’âme est attendue en enfer<br>
|
||
• Obtient une résistance aux malédictions et sorts<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;color: #00000036;">-50 ou moins</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;color: #00000036;">• Les enfers te connaissent et les démons te recherchent<br>
|
||
• En cas de mort, possibilité de revenir sous une autre forme (au choix du MJ)</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura -2 -->
|
||
<div class="niveau_aura_m2">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/3;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/3;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">-26 à -49</div>
|
||
<div class="hero_tableau_effet_4">• Mort instantanée en arrivant à 0 points de vie<br>
|
||
• L’âme est attendue en enfer<br>
|
||
• Obtient une résistance aux malédictions et sorts<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;color: #00000036;">-50 ou moins</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;color: #00000036;">• Les enfers te connaissent et les démons te recherchent<br>
|
||
• En cas de mort, possibilité de revenir sous une autre forme (au choix du MJ)</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura neutre -3-->
|
||
<div class="niveau_aura_m3">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/3;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/3;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">-26 à -49</div>
|
||
<div class="hero_tableau_effet_4">• Mort instantanée en arrivant à 0 points de vie<br>
|
||
• L’âme est attendue en enfer<br>
|
||
• Obtient une résistance aux malédictions et sorts<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">-50 ou moins</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;">• Les enfers te connaissent et les démons te recherchent<br>
|
||
• En cas de mort, possibilité de revenir sous une autre forme (au choix du MJ)</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- CARACTÉRISTIQUES -->
|
||
<input type="hidden" name="attr_carac_reduit" class="voir_carac" value="0">
|
||
<div class="cadre_caracteristiques_reduit">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_caracteristiques_titre" style="padding-left: 100px;">ATTRIBUTS <button type="action" class="button_show" name="act_hide_carac" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button></div>
|
||
</div>
|
||
</div>
|
||
<div class="cadre_caracteristiques">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_caracteristiques_titre" style="padding-left: 100px;">ATTRIBUTS <button type="action" class="button_show" name="act_hide_carac" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button></div>
|
||
|
||
<div class="switch_dice_slider">
|
||
<label class="switch_prouesse">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="slider_prouesse round_prouesse"></span>
|
||
</label>
|
||
</div>
|
||
<div class="switch_dice_slider_data">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="classic">Jet Classique</span>
|
||
<span class="cache">Jet Caché</span>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_carac">
|
||
<div class="bloc_pentacle">
|
||
<div class="wrapper_zone_carac" style="margin-left: -10px;">
|
||
<div class="caracteristiques_pentacle"></div>
|
||
<div class="caracteristiques_force_data"><input type="number" class="input_carac" name="attr_force" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_dexterite_data"><input type="number" class="input_carac" name="attr_dexterite" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_constitution_data"><input type="number" class="input_carac" name="attr_constitution" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_intelligence_data"><input type="number" class="input_carac" name="attr_intelligence" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_charisme_data"><input type="number" class="input_carac" name="attr_charisme" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_volonte_data"><input type="number" class="input_carac" name="attr_volonte" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_force_titre"><button type="action" class="button_carac" name="act_roll-force" title="Votre puissance physique
|
||
(frapper, porter, briser)">FORCE</button></div>
|
||
<div class="caracteristiques_dexterite_titre"><button type="action" class="button_carac" name="act_roll-dexterite" title="Votre agilité et précision
|
||
(esquive, tir, rapidité)">DEXTÉRITÉ</button></div>
|
||
<div class="caracteristiques_constitution_titre"><button type="action" class="button_carac" name="act_roll-constitution" title="Votre endurance et résistance physique
|
||
(survivre, encaisser)">CONSTITUTION</button></div>
|
||
<div class="caracteristiques_intelligence_titre"><button type="action" class="button_carac" name="act_roll-intelligence" title="Votre savoir et capacité d’analyse
|
||
(résoudre des énigmes, connaissances)">INTELLIGENCE</button></div>
|
||
<div class="caracteristiques_charisme_titre"><button type="action" class="button_carac" name="act_roll-charisme" title="Votre prestance et talent social
|
||
(persuader, charmer)">CHARISME</button></div>
|
||
<div class="caracteristiques_volonte_titre"><button type="action" class="button_carac" name="act_roll-volonte" title=" Votre force mentale
|
||
(résister à la peur, lancer des sorts)">VOLONTÉ</button></div>
|
||
</div>
|
||
</div>
|
||
<div class="caracteristiques_derivees">
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Points de vie</div>
|
||
<div class="derivees_data"><input type="number" class="input_derivees" name="attr_pdv" value="1" min="0" max="99"></div>
|
||
<div class="derivees_sur">sur</div>
|
||
<div class="derivees_max"><input type="number" class="input_derivees_lock" name="attr_pdv_maxi" value="0" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Points de magie</div>
|
||
<div class="derivees_data"><input type="number" class="input_derivees" name="attr_pdm" value="1" min="0" max="99"></div>
|
||
<div class="derivees_sur">sur</div>
|
||
<div class="derivees_max"><input type="number" class="input_derivees_lock" name="attr_pdm_maxi" value="0" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre"><button type="action" class="button_carac" name="act_roll-sm" style="font-size: 24px;font-family: 'Jim Nightshade';font-weight: normal;
|
||
" title="Jet de Santé mentale">Santé mentale</button></div>
|
||
<div class="derivees_data"><input type="number" class="input_derivees" name="attr_sm" value="1" min="0" max="99"></div>
|
||
<div class="derivees_sur">sur</div>
|
||
<div class="derivees_max"><input type="number" class="input_derivees_lock" name="attr_sm_maxi" value="0" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Force</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_force" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Dextérité</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_dexterite" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Encaissement</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_encaissement" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Mouvement</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_mouvement" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Malus de blessures</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_malus_blessure" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Malus d'Esquive</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_malus_esquive_final" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Parade</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_parade_final" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur" style="margin-left: 18px;width: 250px;"></div>
|
||
</div><div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Expérience</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees" name="attr_xp" value="0" min="0" max="99" style="width: 50% !important;"></div>
|
||
</div>
|
||
</div>
|
||
<div class="caracteristiques_separateur"></div>
|
||
</div>
|
||
</div>
|
||
<!-- COMPETENCES -->
|
||
<input type="hidden" name="attr_competence_reduit" class="voir_competence" value="0">
|
||
<div class="cadre_competence_reduit">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_competence_titre" style="padding-left: 50px;"><button type="action" class="button_show" name="act_hide_competence" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button> COMPÉTENCES</div>
|
||
</div>
|
||
</div>
|
||
<div class="cadre_competence">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_competence_titre" style="padding-left: 50px;"><button type="action" class="button_show" name="act_hide_competence" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button> COMPÉTENCES</div>
|
||
<div class="switch_dice_slider_comp">
|
||
<label class="switch_prouesse">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="slider_prouesse round_prouesse"></span>
|
||
</label>
|
||
</div>
|
||
<div class="switch_dice_slider_data_comp">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="classic">Jet Classique</span>
|
||
<span class="cache">Jet Caché</span>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_competence">
|
||
<div class="competence_gauche">
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_athletisme" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-athletisme-force">Athletisme (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_athletisme_force" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-athletisme-dex">Athletisme (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_athletisme_dexterite" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_baratin" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-baratin-charisme">Baratin (Charisme)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_baratin_charisme" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-baratin-force">Baratin (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_baratin_force" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_bibliotheque" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-bibliotheque">Bibliothèque (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_bibliotheque" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_chercher" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-chercher">Chercher (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_chercher" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_combat_cac" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-cac-dex">Combat CaC (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_cac_dexterite" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-cac-force">Combat CaC (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_cac_force" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_combat_pugilat" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-pugilat">Combat Pugilat (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_pugilat" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_combat_distance" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-distance">Combat Distance (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_distance" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_discretion" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-discretion">Discrétion (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_discretion" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_endurance" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-endurance">Endurance (Constitution)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_endurance" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_esquive" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-esquive">Esquive (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_esquive" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_langue" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-langue">Langue (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_langue" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
</div>
|
||
<div class="competence_droite">
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_langue_ancienne" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-ancienne-intel">Langue ancienne (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_langue_ancienne_intelligence" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-ancienne-volonte">Langue ancienne (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_langue_ancienne_volonte" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_medecine" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-medecine">Médecine (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_medecine" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_metier" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-metier-intell">Métier (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_metier_intelligence" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-metier-volonte">Métier (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_metier_volonte" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_perception" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-perception">Perception (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_perception" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_psychologie" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-psychologie">Psychologie (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_psychologie" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_science" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-sciences">Sciences (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_science" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_sciences_occultes" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-sciences-occultes">Sciences occultes (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_sciences_occultes" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_survie" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-survie">Survie (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_survie" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_vigilance" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-vigilance">Vigilance (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_vigilance" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple" style="background: transparent;"><button type="action" class="button_comp" name="act_roll-custom1"><span class="D20">J</span></button></div>
|
||
<div class="competence_nom_double" style="padding-left: 4px;">
|
||
<select class="choix_custom" name="attr_custom_stat_1">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Athlétisme</option>
|
||
<option value="2">Baratin</option>
|
||
<option value="3">Bibliothèque</option>
|
||
<option value="4">Chercher</option>
|
||
<option value="5">Combat CaC</option>
|
||
<option value="6">Combat Pugilat</option>
|
||
<option value="7">Combat Distance</option>
|
||
<option value="8">Discrétion</option>
|
||
<option value="9">Endurance</option>
|
||
<option value="10">Esquive</option>
|
||
<option value="11">Langue ancienne</option>
|
||
<option value="12">Langue</option>
|
||
<option value="13">Médecine</option>
|
||
<option value="14">Métier</option>
|
||
<option value="15">Perception</option>
|
||
<option value="16">Psychologie</option>
|
||
<option value="17">Sciences</option>
|
||
<option value="18">Sciences occultes</option>
|
||
<option value="19">Survie</option>
|
||
<option value="20">Vigilance</option>
|
||
</select>
|
||
|
||
<select class="choix_custom" name="attr_custom_comp_1" style="width: 105px;">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">(Force)</option>
|
||
<option value="2">(Dextérité)</option>
|
||
<option value="3">(Constitution)</option>
|
||
<option value="4">(Intelligence)</option>
|
||
<option value="5">(Charisme)</option>
|
||
<option value="6">(Volonté)</option>
|
||
</select>
|
||
</div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_custom_1" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple" style="background: transparent;"><button type="action" class="button_comp" name="act_roll-custom2"><span class="D20">J</span></button></div>
|
||
<div class="competence_nom_double" style="padding-left: 4px;">
|
||
<select class="choix_custom" name="attr_custom_stat_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Athlétisme</option>
|
||
<option value="2">Baratin</option>
|
||
<option value="3">Bibliothèque</option>
|
||
<option value="4">Chercher</option>
|
||
<option value="5">Combat CaC</option>
|
||
<option value="6">Combat Pugilat</option>
|
||
<option value="7">Combat Distance</option>
|
||
<option value="8">Discrétion</option>
|
||
<option value="9">Endurance</option>
|
||
<option value="10">Esquive</option>
|
||
<option value="11">Langue ancienne</option>
|
||
<option value="12">Langue</option>
|
||
<option value="13">Médecine</option>
|
||
<option value="14">Métier</option>
|
||
<option value="15">Perception</option>
|
||
<option value="16">Psychologie</option>
|
||
<option value="17">Sciences</option>
|
||
<option value="18">Sciences occultes</option>
|
||
<option value="19">Survie</option>
|
||
<option value="20">Vigilance</option>
|
||
</select>
|
||
|
||
<select class="choix_custom" name="attr_custom_comp_2" style="width: 105px;">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">(Force)</option>
|
||
<option value="2">(Dextérité)</option>
|
||
<option value="3">(Constitution)</option>
|
||
<option value="4">(Intelligence)</option>
|
||
<option value="5">(Charisme)</option>
|
||
<option value="6">(Volonté)</option>
|
||
</select>
|
||
</div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_custom_2" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple" style="background: transparent;"><button type="action" class="button_comp" name="act_roll-custom3"><span class="D20">J</span></button></div>
|
||
<div class="competence_nom_double" style="padding-left: 4px;">
|
||
<select class="choix_custom" name="attr_custom_stat_3">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Athlétisme</option>
|
||
<option value="2">Baratin</option>
|
||
<option value="3">Bibliothèque</option>
|
||
<option value="4">Chercher</option>
|
||
<option value="5">Combat CaC</option>
|
||
<option value="6">Combat Pugilat</option>
|
||
<option value="7">Combat Distance</option>
|
||
<option value="8">Discrétion</option>
|
||
<option value="9">Endurance</option>
|
||
<option value="10">Esquive</option>
|
||
<option value="11">Langue ancienne</option>
|
||
<option value="12">Langue</option>
|
||
<option value="13">Médecine</option>
|
||
<option value="14">Métier</option>
|
||
<option value="15">Perception</option>
|
||
<option value="16">Psychologie</option>
|
||
<option value="17">Sciences</option>
|
||
<option value="18">Sciences occultes</option>
|
||
<option value="19">Survie</option>
|
||
<option value="20">Vigilance</option>
|
||
</select>
|
||
|
||
<select class="choix_custom" name="attr_custom_comp_3" style="width: 105px;">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">(Force)</option>
|
||
<option value="2">(Dextérité)</option>
|
||
<option value="3">(Constitution)</option>
|
||
<option value="4">(Intelligence)</option>
|
||
<option value="5">(Charisme)</option>
|
||
<option value="6">(Volonté)</option>
|
||
</select>
|
||
</div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_custom_3" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
</div>
|
||
<div class="competence_crane"></div>
|
||
<div class="competence_separateur_centre"></div>
|
||
<div class="competence_separateur_bas"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ARMEMENT / INVENTAIRE / COMBAT -->
|
||
<input type="hidden" name="attr_armement_reduit" class="voir_armement" value="0">
|
||
<div class="cadre_armement_reduit">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_armement_titre" style="padding-left: 40px;">ARMES ET ARMURES <button type="action" class="button_show" name="act_hide_armement" title="Afficher / Cacher"><span class="picto">|</span></button></div>
|
||
</div>
|
||
</div>
|
||
<!-- DEBUT BLOC APRES TITRE -->
|
||
<div class="cadre_armement">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_armement_titre" style="padding-left: 40px;">ARMES ET ARMURES <button type="action" class="button_show" name="act_hide_armement" title="Afficher / Cacher"><span class="picto">|</span></button></div>
|
||
</div>
|
||
<div class="wrapper_zone_armement">
|
||
<div class="bloc_armes">
|
||
<div class="illustration_armes"></div>
|
||
<div class="wrapper_zone_armes_titre">
|
||
<div class="armes_type_titre">TYPE</div>
|
||
<div class="armes_nom_titre">NOM</div>
|
||
<div class="armes_degats_titre">DÉGÂTS</div>
|
||
<div class="armes_portee_titre">PORTÉE</div>
|
||
<div class="armes_effet_titre">EFFETS</div>
|
||
<div class="armes_roll_titre">JET DE DÉGÂTS</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes">
|
||
|
||
<input type="hidden" class="arme1_etat" name="attr_arme1_etat" value="0">
|
||
<div class="armes_type_unlock_1">
|
||
<select class="choix_armes" name="attr_armes_nom_1">
|
||
<option value="0"></option>
|
||
<option value="10" selected="selected">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_1"><button type="action" class="button_verrou" name="act_lock_arme1" title="Verrouiller l'arme" >)</button></div>
|
||
|
||
<div class="armes_type_lock_1">
|
||
</div>
|
||
<div class="armes_cadenas_lock_1"><button type="action" class="button_verrou" name="act_lock_arme1" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_1" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_1" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_1" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_1" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_1" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_1" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_1}}} {{result=[[@{armes_degats_1}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_1}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes">
|
||
<input type="hidden" class="arme2_etat" name="attr_arme2_etat" value="0">
|
||
<div class="armes_type_unlock_2">
|
||
<select class="choix_armes" name="attr_armes_nom_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="10">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_2"><button type="action" class="button_verrou" name="act_lock_arme2" title="Verrouiller l'arme" >)</button></div>
|
||
<div class="armes_type_lock_2">
|
||
</div>
|
||
<div class="armes_cadenas_lock_2"><button type="action" class="button_verrou" name="act_lock_arme2" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_2" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_2" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_2" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_2" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_2" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_2" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_2}}} {{result=[[@{armes_degats_2}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_2}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes">
|
||
<input type="hidden" class="arme3_etat" name="attr_arme3_etat" value="0">
|
||
<div class="armes_type_unlock_3">
|
||
<select class="choix_armes" name="attr_armes_nom_3">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="10">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_3"><button type="action" class="button_verrou" name="act_lock_arme3" title="Verrouiller l'arme" >)</button></div>
|
||
<div class="armes_type_lock_3">
|
||
</div>
|
||
<div class="armes_cadenas_lock_3"><button type="action" class="button_verrou" name="act_lock_arme3" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_3" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_3" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_3" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_3" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_3" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_3" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_3}}} {{result=[[@{armes_degats_3}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_3}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border"></div>
|
||
</div>
|
||
<div class="separateur_armes"></div>
|
||
<div class="wrapper_zone_armes">
|
||
<input type="hidden" class="arme4_etat" name="attr_arme4_etat" value="0">
|
||
<div class="armes_type_unlock_4">
|
||
<select class="choix_armes" name="attr_armes_nom_4">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="10">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_4"><button type="action" class="button_verrou" name="act_lock_arme4" title="Verrouiller l'arme" >)</button></div>
|
||
<div class="armes_type_lock_4">
|
||
</div>
|
||
<div class="armes_cadenas_lock_4"><button type="action" class="button_verrou" name="act_lock_arme4" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_4" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_4" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_4" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_4" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_4" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_4" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_4}}} {{result=[[@{armes_degats_4}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_4}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border_end"></div>
|
||
</div>
|
||
</div>
|
||
<div class="bloc_armures">
|
||
<div class="wrapper_bloc_armures">
|
||
<input type="hidden" name="attr_armure_affichee" class="choix_armure" value="0">
|
||
<div class="illustration_armures_plaque"></div>
|
||
<div class="illustration_armures_maille"></div>
|
||
<div class="illustration_armures_cuir"></div>
|
||
<div class="illustration_armures_vetement"></div>
|
||
<div class="illustration_armures_aucune"></div>
|
||
<div class="tableau_armures">
|
||
<div class="wrapper_zone_armures_titre" style="background: none;grid-auto-rows: 25px;margin-bottom: 10px;margin-left: -25px;margin-right: -11px;">
|
||
<div class="armures_malus_titre" style="font-size: 11px;letter-spacing: 0px;">MALUS D'ARMURE</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_titre"style="margin-top: -14px;margin-left: -3px;padding-left: 3px;">
|
||
<div class="armures_equipee_titre"></div>
|
||
<div class="armures_type_titre">TYPE</div>
|
||
<div class="armures_encaissement_titre" style="font-size: 10px;margin-left: -50px;">ENCAISSEMENT</div>
|
||
<div class="armures_dexterite_titre">DEX</div>
|
||
<div class="armures_athletisme_titre">ATHLE</div>
|
||
<div class="armures_cac_titre">CAC</div>
|
||
<div class="armures_pugilat_titre">PUGILAT</div>
|
||
<div class="armures_distance_titre">DISTANCE</div>
|
||
<div class="armures_discretion_titre">DISCRETION</div>
|
||
<div class="armures_esquive_titre">ESQUIVE</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures">
|
||
<div class="armures_equipee" title="Cliquer pour équiper l'armure">
|
||
<input type="checkbox" name="attr_armures_equipe_1" value="1" id="armure1">
|
||
<label for="armure1"></label>
|
||
</div>
|
||
<div class="armures_type">
|
||
<select class="choix_custom" name="attr_armures_nom_1">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Vêtements renforcés</option>
|
||
<option value="2">Cuir bouilli</option>
|
||
<option value="3">Armures de mailles</option>
|
||
<option value="4">Armure de plaque</option>
|
||
</select>
|
||
</div>
|
||
<div class="armures_encaissement">
|
||
<input name="attr_armures_encaissement_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_dexterite">
|
||
<input name="attr_armures_malus_dexterite_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_athletisme">
|
||
<input name="attr_armures_malus_athletisme_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_cac">
|
||
<input name="attr_armures_malus_combat_cac_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_pugilat">
|
||
<input name="attr_armures_malus_combat_pugilat_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_distance">
|
||
<input name="attr_armures_malus_combat_distance_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_discretion">
|
||
<input name="attr_armures_malus_discretion_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_esquive">
|
||
<input name="attr_armures_malus_esquive_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_prenotes"></div>
|
||
<div class="armures_notes">
|
||
<input name="attr_armures_notes_1" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armures"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur">
|
||
<div class="separateur_armures_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures">
|
||
<div class="armures_equipee" title="Cliquer pour équiper l'armure.">
|
||
<input type="checkbox" name="attr_armures_equipe_2" value="1" id="armure2">
|
||
<label for="armure2"></label>
|
||
</div>
|
||
<div class="armures_type">
|
||
<select class="choix_custom" name="attr_armures_nom_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Vêtements renforcés</option>
|
||
<option value="2">Cuir bouilli</option>
|
||
<option value="3">Armures de mailles</option>
|
||
<option value="4">Armure de plaque</option>
|
||
</select>
|
||
</div>
|
||
<div class="armures_encaissement">
|
||
<input name="attr_armures_encaissement_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_dexterite">
|
||
<input name="attr_armures_malus_dexterite_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_athletisme">
|
||
<input name="attr_armures_malus_athletisme_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_cac">
|
||
<input name="attr_armures_malus_combat_cac_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_pugilat">
|
||
<input name="attr_armures_malus_combat_pugilat_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_distance">
|
||
<input name="attr_armures_malus_combat_distance_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_discretion">
|
||
<input name="attr_armures_malus_discretion_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_esquive">
|
||
<input name="attr_armures_malus_esquive_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_prenotes"></div>
|
||
<div class="armures_notes">
|
||
<input name="attr_armures_notes_2" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armures"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur">
|
||
<div class="separateur_armures_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures">
|
||
<div class="armures_equipee" title="Cliquer pour équiper l'armure">
|
||
<input type="checkbox" name="attr_armures_equipe_3" value="1" id="armure3">
|
||
<label for="armure3"></label>
|
||
</div>
|
||
<div class="armures_type">
|
||
<select class="choix_custom" name="attr_armures_nom_3">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Vêtements renforcés</option>
|
||
<option value="2">Cuir bouilli</option>
|
||
<option value="3">Armures de mailles</option>
|
||
<option value="4">Armure de plaque</option>
|
||
</select>
|
||
</div>
|
||
<div class="armures_encaissement">
|
||
<input name="attr_armures_encaissement_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_dexterite">
|
||
<input name="attr_armures_malus_dexterite_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_athletisme">
|
||
<input name="attr_armures_malus_athletisme_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_cac">
|
||
<input name="attr_armures_malus_combat_cac_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_pugilat">
|
||
<input name="attr_armures_malus_combat_pugilat_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_distance">
|
||
<input name="attr_armures_malus_combat_distance_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_discretion">
|
||
<input name="attr_armures_malus_discretion_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_esquive">
|
||
<input name="attr_armures_malus_esquive_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_prenotes"></div>
|
||
<div class="armures_notes">
|
||
<input name="attr_armures_notes_3" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="separateur_armures_border_end"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- BLOC bouclier -->
|
||
<div class="wrapper_bloc_boucliers" style="margin-top: 45px;">
|
||
|
||
<input type="hidden" name="attr_bouclier_affichee" class="choix_bouclier" value="0">
|
||
<div class="illustration_pavois"></div>
|
||
<div class="illustration_bouclier_rond"></div>
|
||
<div class="illustration_bouclier_aucun"></div>
|
||
<!-- Tableau bouclier -->
|
||
<div class="tableau_boucliers">
|
||
<div class="wrapper_zone_boucliers_titre" style="grid-auto-rows: 34px;line-height: 12px;margin-top: -14px;margin-left: -3px;padding-left: 3px;">
|
||
<div class="boucliers_equipee">
|
||
</div>
|
||
<div class="boucliers_type_titre">TYPE</div>
|
||
<div class="boucliers_parade_titre">BONUS PARADE</div>
|
||
<div class="boucliers_esquive_titre">MALUS ESQUIVE</div>
|
||
<div class="boucliers_notes_titre">NOTES</div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers" style="grid-auto-rows: 35px;">
|
||
<div class="boucliers_equipee">
|
||
<input type="checkbox" name="attr_boucliers_equipe_1" value="1" id="bouclier1">
|
||
<label for="bouclier1"></label>
|
||
</div>
|
||
<div class="boucliers_type">
|
||
<select class="choix_boucliers" name="attr_boucliers_nom_1">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Bouclier rond</option>
|
||
<option value="2">Pavois</option>
|
||
</select>
|
||
</div>
|
||
<div class="boucliers_parade">
|
||
<input name="attr_boucliers_bonus_parade_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_esquive">
|
||
<input name="attr_boucliers_malus_esquive_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_notes">
|
||
<input name="attr_boucliers_notes_1" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_boucliers"></div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers_separateur">
|
||
<div class="separateur_boucliers_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers">
|
||
<div class="boucliers_equipee">
|
||
<input type="checkbox" name="attr_boucliers_equipe_2" value="1" id="bouclier2">
|
||
<label for="bouclier2"></label>
|
||
</div>
|
||
<div class="boucliers_type">
|
||
<select class="choix_boucliers" name="attr_boucliers_nom_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Bouclier rond</option>
|
||
<option value="2">Pavois</option>
|
||
</select>
|
||
</div>
|
||
<div class="boucliers_parade">
|
||
<input name="attr_boucliers_bonus_parade_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_esquive">
|
||
<input name="attr_boucliers_malus_esquive_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_notes">
|
||
<input name="attr_boucliers_notes_2" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="separateur_boucliers_border_end"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- INVENTAIRE -->
|
||
<input type="hidden" name="attr_inventaire_reduit" class="voir_inventaire" value="0">
|
||
<div class="cadre_inventaire_reduit">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_inventaire_titre"><button type="action" class="button_show" name="act_hide_inventaire" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button> INVENTAIRE</div>
|
||
</div>
|
||
</div>
|
||
<div class="cadre_inventaire">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_inventaire_titre"><button type="action" class="button_show" name="act_hide_inventaire" title="Afficher / Cacher" style="margin-right: 10px;"><span class="picto">|</span></button> INVENTAIRE</div>
|
||
</div>
|
||
<div class="wrapper_bloc_inventaire">
|
||
<div class="texte_sac"><textarea class="sac" spellcheck="false" name="attr_inventaire"></textarea></div>
|
||
<div class="illustration_sac"></div>
|
||
<div class="illustration_bourse"></div>
|
||
<div class="inventaire_bloc_argent">
|
||
<div class="wrapper_bloc_argent">
|
||
<div class="inventaire_livre_couleur"></div>
|
||
<div class="inventaire_sous_couleur"></div>
|
||
<div class="inventaire_denier_couleur"></div>
|
||
<div class="inventaire_livre_data"><input type="number" class="input_comp" name="attr_livre" value="0" min="0" style="background: #fdfdfdbf;width: 50px !important;height: 50px !important;border: 1px solid black;font-family: 'Jim Nightshade';font-size: 18px;background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/cercle_carac.webp);background-size: 49px 49px;background-repeat: no-repeat;"></div>
|
||
<div class="inventaire_sous_data"><input type="number" class="input_comp" name="attr_sous" value="0" min="0" style="background: #fdfdfdbf;width: 50px !important;height: 50px !important;border: 1px solid black;font-family: 'Jim Nightshade';font-size: 18px;background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/cercle_carac.webp);background-size: 49px 49px;background-repeat: no-repeat;"></div>
|
||
<div class="inventaire_denier_data"><input type="number" class="input_comp" name="attr_deniers" value="0" min="0" style="background: #fdfdfdbf;width: 50px !important;height: 50px !important;border: 1px solid black;font-family: 'Jim Nightshade';font-size: 18px;background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/cercle_carac.webp);background-size: 49px 49px;background-repeat: no-repeat;"></div>
|
||
</div>
|
||
</div>
|
||
<div class="inventaire_bloc_argent_titre">
|
||
<div class="wrapper_bloc_argent_titre">
|
||
<div class="inventaire_livre_titre">Livres</div>
|
||
<div class="inventaire_sous_titre">Sous</div>
|
||
<div class="inventaire_denier_titre">Deniers</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_aura">
|
||
<div class="cadre_hero" style="display:block;">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_hero_titre" style="padding-left: 40px;"> HÉROÏSME et HÉRÉSIE</div>
|
||
<!-- Info -->
|
||
<!-- <div class="zone_hero_info">Ce cadre vous permet de mettre à jour vos scores d'Hérésie et d'Héroisme (L'Aura étant elle, automatiquement mise à jour).<br>Chaque palier d'Aura qui aura était atteint fera apparaitre les bonus qui en découlent.</div> -->
|
||
<div class="zone_hero_here_aura_hero">
|
||
<div class="wrapper_zone_hero_here_aura_hero">
|
||
<!-- Titre -->
|
||
<div class="hero_titre_heresie">HÉRÉSIE</div>
|
||
<div class="hero_heresie_illu"></div>
|
||
<div class="hero_heresie_data">
|
||
<button type="action" class="button_here_hero" name="act_heresie_moins" title="Retirer 1 point d'hérésie" style="background: #4a2a27;"><span class="picto">_</span></button>
|
||
<input type="number" class="input_hero_here" name="attr_heresie" value="0" style="background: #4a2a27;" readonly>
|
||
<button type="action" class="button_here_hero" name="act_heresie_plus" title="Ajouter 1 point d'hérésie" style="background: #4a2a27;"><span class="picto">&</span></button></div>
|
||
<div class="hero_titre_aura"><button type="action" class="button_aura" name="act_roll-aura" title="Jet d'Aura">AURA</button></div>
|
||
<div class="hero_aura_data_habillage">
|
||
<input type="number" class="input_hero_here" name="attr_aura" value="0" style="border: none;font-size: 26px;" readonly>
|
||
</div>
|
||
<div class="hero_titre_heroisme">HÉROÏSME</div>
|
||
<div class="hero_heroisme_illu"></div>
|
||
<div class="hero_heroisme_data">
|
||
<button type="action" class="button_here_hero" name="act_heroisme_moins" title="Retirer 1 point d'héroïsme" style="background: #424b6f;"><span class="picto">_</span></button>
|
||
<input type="number" class="input_hero_here" name="attr_heroisme" value="0" style="background: #424b6f;" readonly>
|
||
<button type="action" class="button_here_hero" name="act_heroisme_plus" title="Ajouter 1 point d'héroïsme" style="background: #424b6f;"><span class="picto">&</span></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Gauche -->
|
||
<div class="zone_hero_gauche">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="
|
||
margin-right: 25px;
|
||
">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="
|
||
font-size: 11px;
|
||
background: #4a2a27;
|
||
border: 1px solid black;
|
||
border-radius: 5px 5px 0px 0px;
|
||
color: var(--white);
|
||
">
|
||
Utilisation des Points d’Hérésie :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">1 point</div>
|
||
<div class="hero_tableau_effet">• Malus de 20 sur un jet crucial<br>
|
||
• Le personnage subit les dégâts maximum lors d’une attaque</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">2 Points</div>
|
||
<div class="hero_tableau_effet_4">• Le joueur doit relancer un jet réussi<br>
|
||
• Ajoute un effet de peur ou une vision macabre dans la scène</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">3 Points</div>
|
||
<div class="hero_tableau_effet">• Perte de 20 points de santé mentale<br>
|
||
• Bloque la magie du personnage pour la durée de la scène</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">7 Points</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;font-weight: bold;font-size: 13px;text-align: center !important;">La possession des ténèbres</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Droite -->
|
||
<div class="zone_hero_droite">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="
|
||
margin-left: 25px;
|
||
">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="
|
||
font-size: 11px;
|
||
background: #424b6f;
|
||
border: 1px solid black;
|
||
border-radius: 5px 5px 0px 0px;
|
||
color: var(--white);
|
||
">
|
||
Utilisation des Points d’Héroïsme :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">1 point</div>
|
||
<div class="hero_tableau_effet">• Bonus de +20 sur un jet<br>
|
||
• Dégâts maximum sur une attaque</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">2 Points</div>
|
||
<div class="hero_tableau_effet_4">• Relancer un jet échoué<br>
|
||
• Résister à un effet de peur ou d’influence<br>
|
||
• Lancer gratuitement un sort moyen ou faible</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">3 Points</div>
|
||
<div class="hero_tableau_effet">• Récupérer 20 points de santé mentale<br>
|
||
• Lancer gratuitement un sort puissant</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">7 Points</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;font-weight: bold;font-size: 13px;">Révèle le héros en toi !</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura centre -->
|
||
<div class="zone_hero_aura">
|
||
<div class="wrapper_zone_hero">
|
||
<!-- Affichage dynamique tableau des effets aura -->
|
||
<input type="hidden" name="attr_valeur_aura" class="valeur_aura" value="0">
|
||
<!-- Aura neutre -->
|
||
<div class="niveau_aura_0">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="color: #00000036;">13 à 25</div>
|
||
<div class="hero_tableau_effet" style="color: #00000036;">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/6;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/6;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7" style="border-bottom: 1px solid black;color: #00000036;grid-row: 1/9;">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7" style="border-bottom: 1px solid black;color: #00000036;grid-row: 1/9;">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura +1 -->
|
||
<div class="niveau_aura_1">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">-12 à 12</div>
|
||
<div class="hero_tableau_effet">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">13 à 25</div>
|
||
<div class="hero_tableau_effet">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="color: #00000036;">26 à 49</div>
|
||
<div class="hero_tableau_effet" style="color: #00000036;">• Le personnage est automatiquement stabilisé en arrivant à 0 points de vie</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="border-bottom: 1px solid black;color: #00000036;">50 ou plus</div>
|
||
<div class="hero_tableau_effet_4" style="border-bottom: 1px solid black;color: #00000036;">• Le paradis te connaît et te favorise<br>
|
||
• Certains avantages arrivent spontanément en cas de besoin<br>
|
||
• Chance de résurrection en cas de mort</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura +2 -->
|
||
<div class="niveau_aura_2">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">-12 à 12</div>
|
||
<div class="hero_tableau_effet">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">13 à 25</div>
|
||
<div class="hero_tableau_effet">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">26 à 49</div>
|
||
<div class="hero_tableau_effet">• Le personnage est automatiquement stabilisé en arrivant à 0 points de vie</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="border-bottom: 1px solid black;color: #00000036;">50 ou plus</div>
|
||
<div class="hero_tableau_effet_4" style="border-bottom: 1px solid black;color: #00000036;">• Le paradis te connaît et te favorise<br>
|
||
• Certains avantages arrivent spontanément en cas de besoin<br>
|
||
• Chance de résurrection en cas de mort</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura +3-->
|
||
<div class="niveau_aura_3">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">-12 à 12</div>
|
||
<div class="hero_tableau_effet">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">13 à 25</div>
|
||
<div class="hero_tableau_effet">• Aura "bonne"<br>
|
||
• Permet d’utiliser certains artefacts bénis</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">26 à 49</div>
|
||
<div class="hero_tableau_effet">• Le personnage est automatiquement stabilisé en arrivant à 0 points de vie</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="border-bottom: 1px solid black">50 ou plus</div>
|
||
<div class="hero_tableau_effet_4" style="border-bottom: 1px solid black;">• Le paradis te connaît et te favorise<br>
|
||
• Certains avantages arrivent spontanément en cas de besoin<br>
|
||
• Chance de résurrection en cas de mort</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura -1 -->
|
||
<div class="niveau_aura_m1">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/3;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/3;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4" style="color: #00000036;">-26 à -49</div>
|
||
<div class="hero_tableau_effet_4" style="color: #00000036;">• Mort instantanée en arrivant à 0 points de vie<br>
|
||
• L’âme est attendue en enfer<br>
|
||
• Obtient une résistance aux malédictions et sorts<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;color: #00000036;">-50 ou moins</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;color: #00000036;">• Les enfers te connaissent et les démons te recherchent<br>
|
||
• En cas de mort, possibilité de revenir sous une autre forme (au choix du MJ)</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura -2 -->
|
||
<div class="niveau_aura_m2">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/3;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/3;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">-26 à -49</div>
|
||
<div class="hero_tableau_effet_4">• Mort instantanée en arrivant à 0 points de vie<br>
|
||
• L’âme est attendue en enfer<br>
|
||
• Obtient une résistance aux malédictions et sorts<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;color: #00000036;">-50 ou moins</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;color: #00000036;">• Les enfers te connaissent et les démons te recherchent<br>
|
||
• En cas de mort, possibilité de revenir sous une autre forme (au choix du MJ)</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Aura neutre -3-->
|
||
<div class="niveau_aura_m3">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="habillage_tableau" style="margin-left: 25px;grid-row: 6 / 25;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="font-size: 11px;background: black;border: 1px solid black;border-radius: 5px 5px 0px 0px;color: var(--white);">
|
||
Effet de l'aura :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="grid-row: 1/3;">-12 à 12</div>
|
||
<div class="hero_tableau_effet" style="grid-row: 1/3;">• Aucun effet particulier</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_7">-13 à -25</div>
|
||
<div class="hero_tableau_effet_7">• Aura "néfaste"<br>
|
||
• Impossible d’utiliser certains artefacts bénis (même en mode héroïque)<br>
|
||
• Peut subir des dégâts supplémentaires sur les attaques bénies<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">-26 à -49</div>
|
||
<div class="hero_tableau_effet_4">• Mort instantanée en arrivant à 0 points de vie<br>
|
||
• L’âme est attendue en enfer<br>
|
||
• Obtient une résistance aux malédictions et sorts<br></div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">-50 ou moins</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;">• Les enfers te connaissent et les démons te recherchent<br>
|
||
• En cas de mort, possibilité de revenir sous une autre forme (au choix du MJ)</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_caracteristiques">
|
||
<div class="wrapper_page_1">
|
||
<div class="cadre_caracteristiques" style="display: block;">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_caracteristiques_titre" style="padding-left: 105px;">ATTRIBUTS</div>
|
||
|
||
<div class="switch_dice_slider">
|
||
<label class="switch_prouesse">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="slider_prouesse round_prouesse"></span>
|
||
</label>
|
||
</div>
|
||
<div class="switch_dice_slider_data">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="classic">Jet Classique</span>
|
||
<span class="cache">Jet Caché</span>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_carac" style="margin-left: -10px;">
|
||
<div class="bloc_pentacle">
|
||
<div class="wrapper_zone_carac">
|
||
<div class="caracteristiques_pentacle"></div>
|
||
<div class="caracteristiques_force_data"><input type="number" class="input_carac" name="attr_force" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_dexterite_data"><input type="number" class="input_carac" name="attr_dexterite" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_constitution_data"><input type="number" class="input_carac" name="attr_constitution" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_intelligence_data"><input type="number" class="input_carac" name="attr_intelligence" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_charisme_data"><input type="number" class="input_carac" name="attr_charisme" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_volonte_data"><input type="number" class="input_carac" name="attr_volonte" value="15" min="15" max="99"></div>
|
||
<div class="caracteristiques_force_titre"><button type="action" class="button_carac" name="act_roll-force" title="Votre puissance physique
|
||
(frapper, porter, briser)">FORCE</button></div>
|
||
<div class="caracteristiques_dexterite_titre"><button type="action" class="button_carac" name="act_roll-dexterite" title="Votre agilité et précision
|
||
(esquive, tir, rapidité)">DEXTÉRITÉ</button></div>
|
||
<div class="caracteristiques_constitution_titre"><button type="action" class="button_carac" name="act_roll-constitution" title="Votre endurance et résistance physique
|
||
(survivre, encaisser)">CONSTITUTION</button></div>
|
||
<div class="caracteristiques_intelligence_titre"><button type="action" class="button_carac" name="act_roll-intelligence" title="Votre savoir et capacité d’analyse
|
||
(résoudre des énigmes, connaissances)">INTELLIGENCE</button></div>
|
||
<div class="caracteristiques_charisme_titre"><button type="action" class="button_carac" name="act_roll-charisme" title="Votre prestance et talent social
|
||
(persuader, charmer)">CHARISME</button></div>
|
||
<div class="caracteristiques_volonte_titre"><button type="action" class="button_carac" name="act_roll-volonte" title=" Votre force mentale
|
||
(résister à la peur, lancer des sorts)">VOLONTÉ</button></div>
|
||
</div>
|
||
</div>
|
||
<div class="caracteristiques_derivees">
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Points de vie</div>
|
||
<div class="derivees_data"><input type="number" class="input_derivees" name="attr_pdv" value="1" min="0" max="99"></div>
|
||
<div class="derivees_sur">sur</div>
|
||
<div class="derivees_max"><input type="number" class="input_derivees_lock" name="attr_pdv_maxi" value="0" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Points de magie</div>
|
||
<div class="derivees_data"><input type="number" class="input_derivees" name="attr_pdm" value="1" min="0" max="99"></div>
|
||
<div class="derivees_sur">sur</div>
|
||
<div class="derivees_max"><input type="number" class="input_derivees_lock" name="attr_pdm_maxi" value="0" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre"><button type="action" class="button_carac" name="act_roll-sm" style="font-size: 24px;font-family: 'Jim Nightshade';font-weight: normal;
|
||
" title="Jet de Santé mentale">Santé mentale</button></div>
|
||
<div class="derivees_data"><input type="number" class="input_derivees" name="attr_sm" value="1" min="0" max="99"></div>
|
||
<div class="derivees_sur">sur</div>
|
||
<div class="derivees_max"><input type="number" class="input_derivees_lock" name="attr_sm_maxi" value="0" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Force</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_force" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Dextérité</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_dexterite" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Encaissement</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_encaissement" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Mouvement</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_mouvement" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Malus de blessures</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_malus_blessure" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Malus d'Esquive</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_malus_esquive_final" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Bonus de Parade</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees_lock" name="attr_bonus_parade_final" value="0" min="0" max="99"></div>
|
||
</div>
|
||
<div class="wrapper_zone_derivees">
|
||
<div class="derivees_separateur" style="margin-left: 18px;width: 250px;"></div>
|
||
</div><div class="wrapper_zone_derivees">
|
||
<div class="derivees_titre">Expérience</div>
|
||
<div class="derivees_bonus"><input type="number" class="input_derivees" name="attr_xp" value="0" min="0" max="99" style="width: 50% !important;"></div>
|
||
</div>
|
||
</div>
|
||
<div class="caracteristiques_separateur"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_competences">
|
||
<div class="cadre_competence" style="display: block;">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_competence_titre" style="padding-left: 75px;">COMPÉTENCES</div>
|
||
<div class="switch_dice_slider_comp">
|
||
<label class="switch_prouesse">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="slider_prouesse round_prouesse"></span>
|
||
</label>
|
||
</div>
|
||
<div class="switch_dice_slider_data_comp">
|
||
<input type="checkbox" name="attr_jet_gm" class="sheet-prouesse-switch" value="1">
|
||
<span class="classic">Jet Classique</span>
|
||
<span class="cache">Jet Caché</span>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_competence">
|
||
<div class="competence_gauche">
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_athletisme" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-athletisme-force">Athletisme (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_athletisme_force" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-athletisme-dex">Athletisme (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_athletisme_dexterite" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_baratin" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-baratin-charisme">Baratin (Charisme)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_baratin_charisme" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-baratin-force">Baratin (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_baratin_force" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_bibliotheque" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-bibliotheque">Bibliothèque (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_bibliotheque" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_chercher" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-chercher">Chercher (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_chercher" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_combat_cac" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-cac-dex">Combat CaC (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_cac_dexterite" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-cac-force">Combat CaC (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_cac_force" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_combat_pugilat" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-pugilat">Combat Pugilat (Force)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_pugilat" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_combat_distance" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-distance">Combat Distance (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_combat_distance" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_discretion" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-discretion">Discrétion (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_discretion" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_endurance" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-endurance">Endurance (Constitution)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_endurance" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_esquive" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-esquive">Esquive (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_esquive" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_langue" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-langue">Langue (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_langue" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
</div>
|
||
<div class="competence_droite">
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_langue_ancienne" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-ancienne-intel">Langue ancienne (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_langue_ancienne_intelligence" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-ancienne-volonte">Langue ancienne (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_langue_ancienne_volonte" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_medecine" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-medecine">Médecine (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_medecine" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_double"><input type="number" class="input_comp_double" name="attr_stat_metier" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-metier-intell">Métier (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_metier_intelligence" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-metier-volonte">Métier (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_metier_volonte" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_perception" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-perception">Perception (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_perception" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_psychologie" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-psychologie">Psychologie (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_psychologie" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_science" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-sciences">Sciences (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_science" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_sciences_occultes" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-sciences-occultes">Sciences occultes (Volonté)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_sciences_occultes" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_survie" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-survie">Survie (Intelligence)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_survie" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple"><input type="number" class="input_comp" name="attr_stat_vigilance" value="0" min="0" max="99"></div>
|
||
<div class="competence_nom_double"><button type="action" class="button_comp" name="act_roll-vigilance">Vigilance (Dextérité)</button></div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_vigilance" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple" style="background: transparent;"><button type="action" class="button_comp" name="act_roll-custom1"><span class="D20">J</span></button></div>
|
||
<div class="competence_nom_double" style="padding-left: 4px;">
|
||
<select class="choix_custom" name="attr_custom_stat_1">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Athlétisme</option>
|
||
<option value="2">Baratin</option>
|
||
<option value="3">Bibliothèque</option>
|
||
<option value="4">Chercher</option>
|
||
<option value="5">Combat CaC</option>
|
||
<option value="6">Combat Pugilat</option>
|
||
<option value="7">Combat Distance</option>
|
||
<option value="8">Discrétion</option>
|
||
<option value="9">Endurance</option>
|
||
<option value="10">Esquive</option>
|
||
<option value="11">Langue ancienne</option>
|
||
<option value="12">Langue</option>
|
||
<option value="13">Médecine</option>
|
||
<option value="14">Métier</option>
|
||
<option value="15">Perception</option>
|
||
<option value="16">Psychologie</option>
|
||
<option value="17">Sciences</option>
|
||
<option value="18">Sciences occultes</option>
|
||
<option value="19">Survie</option>
|
||
<option value="20">Vigilance</option>
|
||
</select>
|
||
|
||
<select class="choix_custom" name="attr_custom_comp_1" style="width: 105px;">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">(Force)</option>
|
||
<option value="2">(Dextérité)</option>
|
||
<option value="3">(Constitution)</option>
|
||
<option value="4">(Intelligence)</option>
|
||
<option value="5">(Charisme)</option>
|
||
<option value="6">(Volonté)</option>
|
||
</select>
|
||
</div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_custom_1" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple" style="background: transparent;"><button type="action" class="button_comp" name="act_roll-custom2"><span class="D20">J</span></button></div>
|
||
<div class="competence_nom_double" style="padding-left: 4px;">
|
||
<select class="choix_custom" name="attr_custom_stat_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Athlétisme</option>
|
||
<option value="2">Baratin</option>
|
||
<option value="3">Bibliothèque</option>
|
||
<option value="4">Chercher</option>
|
||
<option value="5">Combat CaC</option>
|
||
<option value="6">Combat Pugilat</option>
|
||
<option value="7">Combat Distance</option>
|
||
<option value="8">Discrétion</option>
|
||
<option value="9">Endurance</option>
|
||
<option value="10">Esquive</option>
|
||
<option value="11">Langue ancienne</option>
|
||
<option value="12">Langue</option>
|
||
<option value="13">Médecine</option>
|
||
<option value="14">Métier</option>
|
||
<option value="15">Perception</option>
|
||
<option value="16">Psychologie</option>
|
||
<option value="17">Sciences</option>
|
||
<option value="18">Sciences occultes</option>
|
||
<option value="19">Survie</option>
|
||
<option value="20">Vigilance</option>
|
||
</select>
|
||
|
||
<select class="choix_custom" name="attr_custom_comp_2" style="width: 105px;">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">(Force)</option>
|
||
<option value="2">(Dextérité)</option>
|
||
<option value="3">(Constitution)</option>
|
||
<option value="4">(Intelligence)</option>
|
||
<option value="5">(Charisme)</option>
|
||
<option value="6">(Volonté)</option>
|
||
</select>
|
||
</div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_custom_2" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
<div class="wrapper_tableau_competence">
|
||
<div class="competence_valeur_simple" style="background: transparent;"><button type="action" class="button_comp" name="act_roll-custom3"><span class="D20">J</span></button></div>
|
||
<div class="competence_nom_double" style="padding-left: 4px;">
|
||
<select class="choix_custom" name="attr_custom_stat_3">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Athlétisme</option>
|
||
<option value="2">Baratin</option>
|
||
<option value="3">Bibliothèque</option>
|
||
<option value="4">Chercher</option>
|
||
<option value="5">Combat CaC</option>
|
||
<option value="6">Combat Pugilat</option>
|
||
<option value="7">Combat Distance</option>
|
||
<option value="8">Discrétion</option>
|
||
<option value="9">Endurance</option>
|
||
<option value="10">Esquive</option>
|
||
<option value="11">Langue ancienne</option>
|
||
<option value="12">Langue</option>
|
||
<option value="13">Médecine</option>
|
||
<option value="14">Métier</option>
|
||
<option value="15">Perception</option>
|
||
<option value="16">Psychologie</option>
|
||
<option value="17">Sciences</option>
|
||
<option value="18">Sciences occultes</option>
|
||
<option value="19">Survie</option>
|
||
<option value="20">Vigilance</option>
|
||
</select>
|
||
|
||
<select class="choix_custom" name="attr_custom_comp_3" style="width: 105px;">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">(Force)</option>
|
||
<option value="2">(Dextérité)</option>
|
||
<option value="3">(Constitution)</option>
|
||
<option value="4">(Intelligence)</option>
|
||
<option value="5">(Charisme)</option>
|
||
<option value="6">(Volonté)</option>
|
||
</select>
|
||
</div>
|
||
<div class="competence_final_double"><input type="number" class="input_comp_lock" name="attr_custom_3" value="0" min="0" max="99" readonly /></div>
|
||
</div>
|
||
</div>
|
||
<div class="competence_crane"></div>
|
||
<div class="competence_separateur_centre"></div>
|
||
<div class="competence_separateur_bas"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_equipement">
|
||
<div class="cadre_armement" style="display: block;">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_armement_titre" style="padding-left: 50px;">ARMES ET ARMURES</div>
|
||
</div>
|
||
<div class="wrapper_zone_armement">
|
||
<div class="bloc_armes">
|
||
<div class="illustration_armes"></div>
|
||
<div class="wrapper_zone_armes_titre">
|
||
<div class="armes_type_titre">TYPE</div>
|
||
<div class="armes_nom_titre">NOM</div>
|
||
<div class="armes_degats_titre">DÉGÂTS</div>
|
||
<div class="armes_portee_titre">PORTÉE</div>
|
||
<div class="armes_effet_titre">EFFETS</div>
|
||
<div class="armes_roll_titre">JET DE DÉGÂTS</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes">
|
||
|
||
<input type="hidden" class="arme1_etat" name="attr_arme1_etat" value="0">
|
||
<div class="armes_type_unlock_1">
|
||
<select class="choix_armes" name="attr_armes_nom_1">
|
||
<option value="0"></option>
|
||
<option value="10" selected="selected">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_1"><button type="action" class="button_verrou" name="act_lock_arme1" title="Verrouiller l'arme" >)</button></div>
|
||
|
||
<div class="armes_type_lock_1">
|
||
</div>
|
||
<div class="armes_cadenas_lock_1"><button type="action" class="button_verrou" name="act_lock_arme1" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_1" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_1" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_1" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_1" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_1" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_1" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_1}}} {{result=[[@{armes_degats_1}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_1}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes">
|
||
<input type="hidden" class="arme2_etat" name="attr_arme2_etat" value="0">
|
||
<div class="armes_type_unlock_2">
|
||
<select class="choix_armes" name="attr_armes_nom_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="10">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_2"><button type="action" class="button_verrou" name="act_lock_arme2" title="Verrouiller l'arme" >)</button></div>
|
||
<div class="armes_type_lock_2">
|
||
</div>
|
||
<div class="armes_cadenas_lock_2"><button type="action" class="button_verrou" name="act_lock_arme2" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_2" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_2" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_2" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_2" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_2" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_2" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_2}}} {{result=[[@{armes_degats_2}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_2}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes">
|
||
<input type="hidden" class="arme3_etat" name="attr_arme3_etat" value="0">
|
||
<div class="armes_type_unlock_3">
|
||
<select class="choix_armes" name="attr_armes_nom_3">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="10">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_3"><button type="action" class="button_verrou" name="act_lock_arme3" title="Verrouiller l'arme" >)</button></div>
|
||
<div class="armes_type_lock_3">
|
||
</div>
|
||
<div class="armes_cadenas_lock_3"><button type="action" class="button_verrou" name="act_lock_arme3" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_3" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_3" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_3" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_3" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_3" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_3" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_3}}} {{result=[[@{armes_degats_3}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_3}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border"></div>
|
||
</div>
|
||
<div class="separateur_armes"></div>
|
||
<div class="wrapper_zone_armes">
|
||
<input type="hidden" class="arme4_etat" name="attr_arme4_etat" value="0">
|
||
<div class="armes_type_unlock_4">
|
||
<select class="choix_armes" name="attr_armes_nom_4">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="10">Mains nues</option>
|
||
<option value="1">Dague</option>
|
||
<option value="2">Épée courte</option>
|
||
<option value="3">Épée longue</option>
|
||
<option value="4">Hache</option>
|
||
<option value="5">Lance</option>
|
||
<option value="6">Masse d'arme</option>
|
||
<option value="7">Arc court</option>
|
||
<option value="8">Arc long</option>
|
||
<option value="9">Arbalète</option>
|
||
</select>
|
||
</div>
|
||
<div class="armes_cadenas_unlock_4"><button type="action" class="button_verrou" name="act_lock_arme4" title="Verrouiller l'arme" >)</button></div>
|
||
<div class="armes_type_lock_4">
|
||
</div>
|
||
<div class="armes_cadenas_lock_4"><button type="action" class="button_verrou" name="act_lock_arme4" title="Déverrouiller l'arme" >(</button></div>
|
||
<div class="armes_nom">
|
||
<input name="attr_armes_designation_4" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_degats">
|
||
<input name="attr_armes_degats_4" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_portee">
|
||
<input name="attr_armes_portee_4" type="text" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armes_effet">
|
||
<input name="attr_armes_effet_4" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="armes_prenotes"></div>
|
||
<div class="armes_notes">
|
||
<input name="attr_armes_notes_4" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="armes_roll">
|
||
<button type="roll" class="button_comp" name="roll-degat_arme_4" value="&{template:thanatos} {{degat=oui}} {{title=@{armes_designation_4}}} {{result=[[@{armes_degats_4}[Dégâts de base]+@{bonus_force}[Bonus de Force]+@{bonus_reussite}[Dégâts de Réussite]]]}} {{effet=@{armes_effet_4}}}"><span class="D20">J</span></button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armes"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armes_separateur">
|
||
<div class="separateur_armes_border_end"></div>
|
||
</div>
|
||
</div>
|
||
<div class="bloc_armures">
|
||
<div class="wrapper_bloc_armures">
|
||
<input type="hidden" name="attr_armure_affichee" class="choix_armure" value="0">
|
||
<div class="illustration_armures_plaque"></div>
|
||
<div class="illustration_armures_maille"></div>
|
||
<div class="illustration_armures_cuir"></div>
|
||
<div class="illustration_armures_vetement"></div>
|
||
<div class="illustration_armures_aucune"></div>
|
||
<div class="tableau_armures">
|
||
<div class="wrapper_zone_armures_titre" style="background: none;grid-auto-rows: 25px;margin-bottom: 10px;margin-left: -25px;margin-right: -11px;">
|
||
<div class="armures_malus_titre" style="font-size: 11px;letter-spacing: 0px;">MALUS D'ARMURE</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_titre"style="margin-top: -14px;margin-left: -3px;padding-left: 3px;">
|
||
<div class="armures_equipee_titre"></div>
|
||
<div class="armures_type_titre">TYPE</div>
|
||
<div class="armures_encaissement_titre" style="font-size: 10px;margin-left: -50px;">ENCAISSEMENT</div>
|
||
<div class="armures_dexterite_titre">DEX</div>
|
||
<div class="armures_athletisme_titre">ATHLE</div>
|
||
<div class="armures_cac_titre">CAC</div>
|
||
<div class="armures_pugilat_titre">PUGILAT</div>
|
||
<div class="armures_distance_titre">DISTANCE</div>
|
||
<div class="armures_discretion_titre">DISCRETION</div>
|
||
<div class="armures_esquive_titre">ESQUIVE</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures">
|
||
<div class="armures_equipee" title="Cliquer pour équiper l'armure">
|
||
<input type="checkbox" name="attr_armures_equipe_1" value="1" id="armure1">
|
||
<label for="armure1"></label>
|
||
</div>
|
||
<div class="armures_type">
|
||
<select class="choix_custom" name="attr_armures_nom_1">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Vêtements renforcés</option>
|
||
<option value="2">Cuir bouilli</option>
|
||
<option value="3">Armures de mailles</option>
|
||
<option value="4">Armure de plaque</option>
|
||
</select>
|
||
</div>
|
||
<div class="armures_encaissement">
|
||
<input name="attr_armures_encaissement_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_dexterite">
|
||
<input name="attr_armures_malus_dexterite_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_athletisme">
|
||
<input name="attr_armures_malus_athletisme_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_cac">
|
||
<input name="attr_armures_malus_combat_cac_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_pugilat">
|
||
<input name="attr_armures_malus_combat_pugilat_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_distance">
|
||
<input name="attr_armures_malus_combat_distance_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_discretion">
|
||
<input name="attr_armures_malus_discretion_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_esquive">
|
||
<input name="attr_armures_malus_esquive_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_prenotes"></div>
|
||
<div class="armures_notes">
|
||
<input name="attr_armures_notes_1" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armures"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur">
|
||
<div class="separateur_armures_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures">
|
||
<div class="armures_equipee" title="Cliquer pour équiper l'armure.">
|
||
<input type="checkbox" name="attr_armures_equipe_2" value="1" id="armure2">
|
||
<label for="armure2"></label>
|
||
</div>
|
||
<div class="armures_type">
|
||
<select class="choix_custom" name="attr_armures_nom_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Vêtements renforcés</option>
|
||
<option value="2">Cuir bouilli</option>
|
||
<option value="3">Armures de mailles</option>
|
||
<option value="4">Armure de plaque</option>
|
||
</select>
|
||
</div>
|
||
<div class="armures_encaissement">
|
||
<input name="attr_armures_encaissement_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_dexterite">
|
||
<input name="attr_armures_malus_dexterite_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_athletisme">
|
||
<input name="attr_armures_malus_athletisme_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_cac">
|
||
<input name="attr_armures_malus_combat_cac_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_pugilat">
|
||
<input name="attr_armures_malus_combat_pugilat_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_distance">
|
||
<input name="attr_armures_malus_combat_distance_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_discretion">
|
||
<input name="attr_armures_malus_discretion_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_esquive">
|
||
<input name="attr_armures_malus_esquive_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_prenotes"></div>
|
||
<div class="armures_notes">
|
||
<input name="attr_armures_notes_2" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_armures"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures_separateur">
|
||
<div class="separateur_armures_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_armures">
|
||
<div class="armures_equipee" title="Cliquer pour équiper l'armure">
|
||
<input type="checkbox" name="attr_armures_equipe_3" value="1" id="armure3">
|
||
<label for="armure3"></label>
|
||
</div>
|
||
<div class="armures_type">
|
||
<select class="choix_custom" name="attr_armures_nom_3">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Vêtements renforcés</option>
|
||
<option value="2">Cuir bouilli</option>
|
||
<option value="3">Armures de mailles</option>
|
||
<option value="4">Armure de plaque</option>
|
||
</select>
|
||
</div>
|
||
<div class="armures_encaissement">
|
||
<input name="attr_armures_encaissement_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_dexterite">
|
||
<input name="attr_armures_malus_dexterite_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_athletisme">
|
||
<input name="attr_armures_malus_athletisme_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_cac">
|
||
<input name="attr_armures_malus_combat_cac_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_pugilat">
|
||
<input name="attr_armures_malus_combat_pugilat_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_distance">
|
||
<input name="attr_armures_malus_combat_distance_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_discretion">
|
||
<input name="attr_armures_malus_discretion_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_esquive">
|
||
<input name="attr_armures_malus_esquive_3" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="armures_prenotes"></div>
|
||
<div class="armures_notes">
|
||
<input name="attr_armures_notes_3" type="text" spellcheck="false" class="input_dotted_gauche" placeholder="Notes...">
|
||
</div>
|
||
<div class="separateur_armures_border_end"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- BLOC bouclier -->
|
||
<div class="wrapper_bloc_boucliers" style="margin-top: 45px;">
|
||
|
||
<input type="hidden" name="attr_bouclier_affichee" class="choix_bouclier" value="0">
|
||
<div class="illustration_pavois"></div>
|
||
<div class="illustration_bouclier_rond"></div>
|
||
<div class="illustration_bouclier_aucun"></div>
|
||
<!-- Tableau bouclier -->
|
||
<div class="tableau_boucliers">
|
||
<div class="wrapper_zone_boucliers_titre" style="grid-auto-rows: 34px;line-height: 12px;margin-top: -14px;margin-left: -3px;padding-left: 3px;">
|
||
<div class="boucliers_equipee">
|
||
</div>
|
||
<div class="boucliers_type_titre">TYPE</div>
|
||
<div class="boucliers_parade_titre">BONUS PARADE</div>
|
||
<div class="boucliers_esquive_titre">MALUS ESQUIVE</div>
|
||
<div class="boucliers_notes_titre">NOTES</div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers" style="grid-auto-rows: 35px;">
|
||
<div class="boucliers_equipee">
|
||
<input type="checkbox" name="attr_boucliers_equipe_1" value="1" id="bouclier1">
|
||
<label for="bouclier1"></label>
|
||
</div>
|
||
<div class="boucliers_type">
|
||
<select class="choix_boucliers" name="attr_boucliers_nom_1">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Bouclier rond</option>
|
||
<option value="2">Pavois</option>
|
||
</select>
|
||
</div>
|
||
<div class="boucliers_parade">
|
||
<input name="attr_boucliers_bonus_parade_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_esquive">
|
||
<input name="attr_boucliers_malus_esquive_1" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_notes">
|
||
<input name="attr_boucliers_notes_1" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers_separateur" style="grid-auto-rows: 1px;">
|
||
<div class="separateur_boucliers"></div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers_separateur">
|
||
<div class="separateur_boucliers_border"></div>
|
||
</div>
|
||
<div class="wrapper_zone_boucliers">
|
||
<div class="boucliers_equipee">
|
||
<input type="checkbox" name="attr_boucliers_equipe_2" value="1" id="bouclier2">
|
||
<label for="bouclier2"></label>
|
||
</div>
|
||
<div class="boucliers_type">
|
||
<select class="choix_boucliers" name="attr_boucliers_nom_2">
|
||
<option value="0" selected="selected"></option>
|
||
<option value="1">Bouclier rond</option>
|
||
<option value="2">Pavois</option>
|
||
</select>
|
||
</div>
|
||
<div class="boucliers_parade">
|
||
<input name="attr_boucliers_bonus_parade_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_esquive">
|
||
<input name="attr_boucliers_malus_esquive_2" type="number" spellcheck="false" class="input_dotted_centre">
|
||
</div>
|
||
<div class="boucliers_notes">
|
||
<input name="attr_boucliers_notes_2" type="text" spellcheck="false" class="input_dotted_gauche">
|
||
</div>
|
||
<div class="separateur_boucliers_border_end"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="cadre_inventaire" style="display: block;">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_inventaire_titre" style="padding-left: 100px;">INVENTAIRE</div>
|
||
</div>
|
||
<div class="wrapper_bloc_inventaire">
|
||
<div class="texte_sac"><textarea class="sac" spellcheck="false" name="attr_inventaire"></textarea></div>
|
||
<div class="illustration_sac"></div>
|
||
<div class="illustration_bourse"></div>
|
||
<div class="inventaire_bloc_argent">
|
||
<div class="wrapper_bloc_argent">
|
||
<div class="inventaire_livre_couleur"></div>
|
||
<div class="inventaire_sous_couleur"></div>
|
||
<div class="inventaire_denier_couleur"></div>
|
||
<div class="inventaire_livre_data"><input type="number" class="input_comp" name="attr_livre" value="0" min="0" style="background: #fdfdfdbf;width: 50px !important;height: 50px !important;border: 1px solid black;font-family: 'Jim Nightshade';font-size: 18px;background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/cercle_carac.webp);background-size: 49px 49px;background-repeat: no-repeat;"></div>
|
||
<div class="inventaire_sous_data"><input type="number" class="input_comp" name="attr_sous" value="0" min="0" style="background: #fdfdfdbf;width: 50px !important;height: 50px !important;border: 1px solid black;font-family: 'Jim Nightshade';font-size: 18px;background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/cercle_carac.webp);background-size: 49px 49px;background-repeat: no-repeat;"></div>
|
||
<div class="inventaire_denier_data"><input type="number" class="input_comp" name="attr_deniers" value="0" min="0" style="background: #fdfdfdbf;width: 50px !important;height: 50px !important;border: 1px solid black;font-family: 'Jim Nightshade';font-size: 18px;background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Obscuritas/images/cercle_carac.webp);background-size: 49px 49px;background-repeat: no-repeat;"></div>
|
||
</div>
|
||
</div>
|
||
<div class="inventaire_bloc_argent_titre">
|
||
<div class="wrapper_bloc_argent_titre">
|
||
<div class="inventaire_livre_titre">Livres</div>
|
||
<div class="inventaire_sous_titre">Sous</div>
|
||
<div class="inventaire_denier_titre">Deniers</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_note">
|
||
<div class="cadre_carnet" style="display: block;">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_carnet_titre" style="padding-left: 60px;">CARNET DE ROUTE</div>
|
||
</div>
|
||
<div class="wrapper_bloc_note">
|
||
<div class="texte_note_gauche"><textarea class="carnet" name="attr_note_1"></textarea></div>
|
||
<div class="texte_note_droite"><textarea class="carnet" name="attr_note_2"></textarea></div>
|
||
<div class="illustration_carnet"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_xp">
|
||
<div class="cadre_xp">
|
||
<div class="wrapper_page_xp">
|
||
<div class="xp_bloc_haut">
|
||
<div class="wrapper_page_xp">
|
||
<div class="entete_xp">
|
||
Dans Obscuritas Aeterna, l’expérience (XP) symbolise l’apprentissage, la progression et la maturation que les personnages acquièrent au fil de leurs aventures.<br><br>
|
||
Qu’il s’agisse de combats éprouvants, de révélations occultes ou de dilemmes moraux, chaque session façonne un peu plus l’âme et les compétences de votre héros.
|
||
</div>
|
||
<div class="xp_disponible">
|
||
<div class="wrapper_xp_dispo">
|
||
<div class="xp_dispo_valeur">
|
||
<input type="number" class="input_carac_xp_dispo" name="attr_xp_temp">
|
||
</div>
|
||
<div class="xp_dispo_texte">
|
||
Expérience disponible
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="xp_bloc_carac_deriv"></div>
|
||
<div class="xp_bloc_carac">
|
||
<div class="wrapper_page_xp" style="margin-bottom: 20px;">
|
||
<div class="xp_titre_bloc">
|
||
ATTRIBUTS
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp">
|
||
<div class="xp_tableau_titre">
|
||
Force
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_force" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_force_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_force_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_force_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp">
|
||
<div class="xp_tableau_titre">
|
||
Dextérité
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_dexterite" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_dexterite_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_dexterite_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_dexterite_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp">
|
||
<div class="xp_tableau_titre">
|
||
Constitution
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_constitution" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_constitution_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_constitution_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_constitution_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp">
|
||
<div class="xp_tableau_titre">
|
||
Intelligence
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_intelligence" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_intelligence_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_intelligence_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_intelligence_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp">
|
||
<div class="xp_tableau_titre">
|
||
Volonté
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_volonte" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_volonte_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_volonte_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_volonte_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp">
|
||
<div class="xp_tableau_titre">
|
||
Charisme
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_charisme" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_charisme_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_charisme_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_charisme_plus">+</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="xp_bloc_separateur"></div>
|
||
<div class="xp_bloc_derivees">
|
||
<div class="wrapper_page_xp" style="margin-bottom: 60px;">
|
||
<div class="xp_titre_bloc">
|
||
DÉRIVÉES
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp_derivees">
|
||
<div class="xp_tableau_titre">
|
||
Points de vie
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_pdv_maxi" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_pdv_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_pdv_maxi_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_pdv_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_xp_derivees">
|
||
<div class="xp_tableau_titre">
|
||
Points de magie
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_pdm_maxi" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_pdm_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_pdm_maxi_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_pdm_plus">+</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="xp_bloc_competences">
|
||
<div class="wrapper_page_xp" style="margin-bottom: 20px;">
|
||
<div class="xp_titre_bloc">
|
||
COMPÉTENCES
|
||
</div>
|
||
<div class="xp_block_comp_gauche">
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Athlétisme
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_athletisme" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_athletisme_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_athletisme_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_athletisme_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Baratin
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_baratin" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_baratin_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_baratin_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_baratin_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Bibliothèque
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_bibliotheque" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_bibliotheque_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_bibliotheque_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_bibliotheque_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Chercher
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_chercher" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_chercher_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_chercher_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_chercher_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Combat CaC
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_combat_cac" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_combat_cac_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_combat_cac_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_combat_cac_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Combat Pugilat
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_combat_pugilat" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_combat_pugilat_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_combat_pugilat_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_combat_pugilat_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Combat Distance
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_combat_distance" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_combat_distance_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_combat_distance_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_combat_distance_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Discrétion
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_discretion" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_discretion_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_discretion_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_discretion_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Endurance
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_endurance" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_endurance_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_endurance_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_endurance_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Esquive
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_esquive" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_esquive_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_esquive_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_esquive_plus">+</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="xp_block_comp_separateur"></div>
|
||
<div class="xp_block_comp_droite">
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Langue
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_langue" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_langue_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_langue_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_langue_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Langue ancienne
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_langue_ancienne" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_langue_ancienne_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_langue_ancienne_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_langue_ancienne_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Médecine
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_medecine" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_medecine_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_medecine_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_medecine_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Métier
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_metier" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_metier_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_metier_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_metier_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Perception
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_perception" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_perception_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_perception_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_perception_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Psychologie
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_psychologie" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_psychologie_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_psychologie_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_psychologie_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Sciences
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_science" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_science_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_science_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_science_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Sciences occultes
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_sciences_occultes" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_sciences_occultes_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_sciences_occultes_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_sciences_occultes_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Survie
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_survie" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_survie_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_survie_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_survie_plus">+</button>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_tableau_comp">
|
||
<div class="xp_tableau_titre">
|
||
Vigilance
|
||
</div>
|
||
<div class="xp_tableau_valeur_base">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_vigilance" readonly>
|
||
</div>
|
||
<div class="xp_tableau_image_up">
|
||
|
||
</div>
|
||
<div class="xp_tableau_minus">
|
||
<button type="action" class="button_xp" name="act_xp_vigilance_minus">-</button>
|
||
</div>
|
||
<div class="xp_tableau_valeur_up">
|
||
<input type="number" class="input_carac_xp" name="attr_stat_vigilance_temp" readonly>
|
||
</div>
|
||
<div class="xp_tableau_plus">
|
||
<button type="action" class="button_xp" name="act_xp_vigilance_plus">+</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="xp_bloc_bas">
|
||
<div class="wrapper_page_xp">
|
||
<input type="hidden" class="test_xp" name="attr_blocage_xp" value="0">
|
||
<div class="valider_xp" style="grid-column: 25/79;background: transparent;">
|
||
<button type="action" class="button_valider_xp" name="act_valider_xp">Valider votre gain d'expérience<br><br>Attention, ce choix sera définitif<br>et vos statistiques seront mises à jour</button>
|
||
</div>
|
||
<div class="erreur_xp" style="grid-column: 25/79;">
|
||
Trop de points dépensés<br>validation impossible
|
||
</div>
|
||
<div class="xp_disponible" style="grid-column: 3/20;">
|
||
<div class="wrapper_xp_dispo">
|
||
<div class="xp_dispo_valeur">
|
||
<input type="number" class="input_carac_xp_dispo" name="attr_xp_temp">
|
||
</div>
|
||
<div class="xp_dispo_texte">
|
||
Expérience disponible
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_config">
|
||
<div class="wrapper_config">
|
||
<div class="config_titre1">Points d'attributs attribués : </div>
|
||
<div class="config_data1"><input type="number" class="input_config" name="attr_points_carac" readonly /> / 235</div>
|
||
<div class="config_titre2">Points de compétences attribués : </div>
|
||
<div class="config_data2"><input type="number" class="input_config" name="attr_points_comp" readonly /> / 300</div>
|
||
</div>
|
||
|
||
<div class="wrapper_config_1" style="margin-top: 35px;">
|
||
<div class="config_titre_tableau">Suivi des points d'hérésie des joueurs</div>
|
||
</div>
|
||
|
||
<div class="wrapper_config_1">
|
||
<div class="config_titre1"><input type="text" class="input_ligne" name="attr_joueur_1" placeholder="Nom du personnage..."></div>
|
||
<div class="config_data1"><input type="number" class="input_config" name="attr_heresie_joueur_1" placeholder="0"></div>
|
||
<div class="config_titre2"><input type="text" class="input_ligne" name="attr_joueur_2" placeholder="Nom du personnage..."></div>
|
||
<div class="config_data2"><input type="number" class="input_config" name="attr_heresie_joueur_2" placeholder="0"></div>
|
||
</div>
|
||
|
||
<div class="wrapper_config_1">
|
||
<div class="config_titre1"><input type="text" class="input_ligne" name="attr_joueur_3" placeholder="Nom du personnage..."></div>
|
||
<div class="config_data1"><input type="number" class="input_config" name="attr_heresie_joueur_3" placeholder="0"></div>
|
||
<div class="config_titre2"><input type="text" class="input_ligne" name="attr_joueur_4" placeholder="Nom du personnage..."></div>
|
||
<div class="config_data2"><input type="number" class="input_config" name="attr_heresie_joueur_4" placeholder="0"></div>
|
||
</div>
|
||
|
||
<div class="wrapper_config_1">
|
||
<div class="config_titre1"><input type="text" class="input_ligne" name="attr_joueur_5" placeholder="Nom du personnage..."></div>
|
||
<div class="config_data1"><input type="number" class="input_config" name="attr_heresie_joueur_5" placeholder="0"></div>
|
||
<div class="config_titre2"><input type="text" class="input_ligne" name="attr_joueur_6" placeholder="Nom du personnage..."></div>
|
||
<div class="config_data2"><input type="number" class="input_config" name="attr_heresie_joueur_6" placeholder="0"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="page_compendium">
|
||
<input type="hidden" name="attr_page_compendium" class="choix_compendium" value="0">
|
||
<div class="wrapper_zone_personnage">
|
||
<div class="zone_compendium_titre" style="padding-left: 70px;grid-row: 4 / 7;">COMPENDIUM</div>
|
||
</div>
|
||
<div class="wrapper_compendium_1col">
|
||
<div class="compendium_1col_texte">Bienvenue dans ce compendium, une ressource destinée à rassembler les informations essentielles pour vos parties de jeu de rôle. Vous y trouverez les concepts clés de l’univers.<br>
|
||
Cette page est conçue pour vous aider à mieux naviguer et enrichir vos aventures.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_1col" style="margin-top: 20px;">
|
||
<div class="compendium_1col_texte">
|
||
<span class="point">◆</span><button type="action" class="button_compendium_sm" name="act_compendium_sm">Santé mentale</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_combat" name="act_compendium_combat">Système de Combat</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_combat" name="act_compendium_combat_tableaux">Système de Combat (Tableaux)</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_aura" name="act_compendium_aura">Aura</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_aura" name="act_compendium_hero">Points d’Héroïsme</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_aura" name="act_compendium_possession">Points d’Hérésie</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_aura" name="act_compendium_aura_priere">Prières</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_equipement" name="act_compendium_equipement">Équipement, Dépenses et Ressources</button><br>
|
||
<span class="point">◆</span><button type="action" class="button_compendium_equipement" name="act_compendium_armes">Armes, Armures et Protection</button><br>
|
||
</div>
|
||
<div class="compendium_1col_separateur"></div>
|
||
</div>
|
||
<div class="compendium_sm">
|
||
<div class="wrapper_compendium_1col">
|
||
<div class="compendium_1col_titre">Perte de Santé Mentale</div>
|
||
<div class="compendium_1col_texte">
|
||
Un personnage peut perdre de la santé mentale lors de :<br><br>
|
||
Événements surnaturels :<br>
|
||
<span class="point">◆</span>Être témoin d’un rituel de magie noire<br>
|
||
<span class="point">◆</span>Voir un monstre pour la première fois<br>
|
||
<span class="point">◆</span>Être possédé ou attaqué par un esprit<br>
|
||
Scènes macabres :<br>
|
||
<span class="point">◆</span>Découvrir un cadavre mutilé.<br>
|
||
<span class="point">◆</span>Assister à une mort violente ou atroce<br>
|
||
<span class="point">◆</span>Subir de terribles visions ou cauchemars<br>
|
||
Actions contre-nature :<br>
|
||
<span class="point">◆</span>Commettre un acte cruel ou immoral (ex. meurtre gratuit)<br>
|
||
<span class="point">◆</span>Utiliser des objets maudits ou des rituels interdits
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_1col">
|
||
<div class="compendium_1col_titre">Échelle de Perte</div>
|
||
<div class="compendium_1col_texte">
|
||
Le Maître du Jeu décide de l’impact psychologique de ces situations :<br>
|
||
<span class="point">◆</span>Choc mineur : 1D4 points<br>
|
||
<span class="point">◆</span>Horreur modérée : 1D6 points<br>
|
||
<span class="point">◆</span>Horreur extrême : 1D10 ou plus<br><br>
|
||
La perte peut être influencée par l'habitude du personnage à être confronté à une telle situation. Dans la
|
||
plupart des cas, un jet de « Volonté » pur, sans la moindre compétence permet de ne prendre qu'une partie de
|
||
l'impact sur la santé mentale, il peut même n'y avoir aucune conséquence...
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_1col">
|
||
<div class="compendium_1col_titre">Tics Temporaires ou Définis</div>
|
||
<div class="compendium_1col_texte">
|
||
Un tic est une réponse nerveuse incontrôlée <br>
|
||
<span class="point">◆</span>Tremblements<br>
|
||
<span class="point">◆</span>Murmures incessants<br>
|
||
<span class="point">◆</span>Regard constamment nerveux
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_combat">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Le Combat : Résolution et Actions</div>
|
||
<div class="compendium_3col_texte">
|
||
Le combat dans Obscuritas Æterna est une composante essentielle du jeu, mêlant stratégie, tension et narration. Chaque affrontement est divisé en rounds, durant lesquels les joueurs et leurs adversaires agissent à tour de rôle. Voici un guide détaillé pour comprendre et utiliser les mécaniques de combat.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Structure d’un Round</div>
|
||
<div class="compendium_3col_texte">
|
||
Un round représente 6 secondes de temps dans
|
||
le monde du jeu. Pendant ce round, chaque
|
||
joueur peut effectuer :<br>
|
||
<span class="point">1</span>Une action simple : Action principale (ex.attaquer, lancer un sort)<br>
|
||
<span class="point">2</span>Une action de mouvement : Déplacement ou action préparatoire<br>
|
||
<span class="point">3</span>Une réaction : Action déclenchée en réponse à une situation (ex. esquiver, riposter)<br><br>
|
||
Les actions simples peuvent être utilisées pour remplacer une action de mouvement, mais pas l’inverse<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Initiative</div>
|
||
<div class="compendium_3col_texte">
|
||
Au début d’un combat, l’initiative détermine l’ordre d’action des participants<br>
|
||
<span class="point">◆</span>Chaque joueur fait un jet de Dextérité<br>
|
||
<span class="point">◆</span>Le nombre de degrés de réussite détermine
|
||
l’ordre d’action :<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>En cas d’égalité, comparez les scores de Dextérité<br>
|
||
<span class="point">○</span>Si l’égalité persiste, les actions simultanées sont possibles. Si un joueur et un PNJ sont à égalité, le joueur agit en premier<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Types d’Actions et Possibilités<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Actions Simples</div>
|
||
<div class="compendium_3col_texte">
|
||
Ce sont les actions principales effectuées lors d’un round<br>
|
||
<span class="point">◆</span>Attaquer : Effectuez une attaque au corps à corps ou avec une arme à distance<br>
|
||
<span class="point">◆</span>Lancer un sort : Canalisez votre énergie magique pour déclencher un sort<br>
|
||
<span class="point">◆</span>Se mettre en défense : Adoptez une posture défensive, augmentant vos chances d’éviter les coups (+10 à la parade et à l’esquive jusqu’au début de votre prochain tour)<br>
|
||
<span class="point">◆</span>Utiliser un objet : Boire une potion, allumer une torche ou interagir avec un équipement<br>
|
||
<span class="point">◆</span>Protéger un allié : Se mettre près de l'allié pour prendre le coup à sa place (nécessite un jet de compétence à définir selon la situation)<br>
|
||
Vous pouvez choisir de préparer une action simple pour la déclencher avec votre réaction<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Actions de Mouvement</div>
|
||
<div class="compendium_3col_texte">
|
||
Ces actions permettent de se repositionner ou de préparer une future action<br>
|
||
<span class="point">◆</span>Se déplacer : Distance maximale = dizaine de Dextérité x 2 mètres (ex. une Dextérité de 50 permet de parcourir 10 mètres)<br>
|
||
<span class="point">◆</span>Viser avant de tirer : Donne un bonus de +10 à votre attaque à distance lors du prochain tour<br>
|
||
<span class="point">◆</span>Charger son coup : Préparez une attaque puissante dans le même tour, ajoutant +2 dégâts si l’attaque touche<br>
|
||
<span class="point">◆</span>Concentrer sur une attaque : Donne un bonus de +10 pour votre prochaine attaque<br>
|
||
<span class="point">◆</span>Recharger son arme : Nécessaire pour les armes nécessitant une recharge (ex. arbalètes)<br>
|
||
<span class="point">◆</span>Préparer un objet : Sortir un objet, rengainer ou dégainer une arme, etc<br>
|
||
<span class="point">◆</span>Parer un coup : Bloquez une attaque avec une arme ou un bouclier (voir plus bas)<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Réactions</div>
|
||
<div class="compendium_3col_texte">
|
||
Les réactions permettent d’agir en dehors de son tour, mais sont limitées à une fois par round<br>
|
||
<span class="point">◆</span>Esquiver une attaque : Tentez d’éviter un coup grâce à votre agilité<br>
|
||
<span class="point">◆</span>Riposte d’opportunité : Attaquez gratuitement un ennemi qui passe à portée sans se protéger (ex. en se relevant ou en fouillant un sac)<br>
|
||
Déclencher une action préparée : Faites l'action que vous avez préparée avec votre action simple, si vous en avez une (ex. un ennemi va attaquer un allié blessé, vous aviez préparé « protéger un allié », vous faites un jets de baratin + force pour intimider l'adversaire, sur une réussite, l'ennemi vous attaquera vous au lieu de votre ami)<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Parer et Esquiver : Règles Spécifiques</div>
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">1</span>Un choix exclusif : Vous ne pouvez pas parer et esquiver une même attaque. Vous devez choisir l’une des deux actions<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>On fait une action de parade par un jet d’attaque associé aux bonus ou malus liés<br>
|
||
<span class="point">○</span>On fait une réation d’esquive par un jet de compétence d’esquive<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">2</span>Parer les attaques à distance : Cela est possible uniquement si vous portez un bouclier<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Réactions</div>
|
||
<div class="compendium_3col_texte">
|
||
Certains objets ont un impact sur vos statistiques de combats. Par exemple :<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Un bouclier offre un bonus de parade, mais inflige un malus à l’esquive<br>
|
||
<span class="point">○</span>Un pavois améliore encore la parade, mais rend l’esquive beaucoup plus difficile<br>
|
||
<span class="point">○</span>Une armure lourde aura un impact sur l'attribut même de dextérité en lui mettant un maximum possible, ce qui réduira une statistique trop haute et pourra rajouter également un malus sur certaines des compétences liées<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Jets d’attaque et dégâts<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Dans Obscuritas Æterna, chaque affrontement repose sur deux éléments principaux : réussir à toucher sa cible et infliger des dégâts. Ces étapes sont résolues par des jets de dés et des calculs simples, détaillés ci-dessous.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Le Jet d’Attaque : Toucher la Cible<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Un jet d’attaque détermine si l’attaque atteint ou non sa cible.<br><br>
|
||
Calcul du Score d’Attaque<br>
|
||
Pour effectuer une attaque, utilisez la compétence correspondante :<br>
|
||
<span class="point">◆</span>Combat corps à corps (pour les armes de mêlée comme épées ou haches)<br>
|
||
<span class="point">◆</span>Combat pugilat (pour les combats à mains nues ou avec des armes improvisées)<br>
|
||
<span class="point">◆</span>Combat distance (pour les arcs, arbalètes ou armes à feu)<br>
|
||
Ajoutez à cette compétence la moitié de l’attribut pertinent (arrondi à l’inférieur) :<br>
|
||
<span class="point">◆</span>Force : Pour le corps à corps et le pugilat<br>
|
||
<span class="point">◆</span>Dextérité : Pour les attaques à distance et les armes de finesse<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Degrés de Réussite sur une Attaque<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Chaque tranche de 10 points en dessous du score requis représente un degré de réussite supplémentaire, ce qui reflète la précision et l’efficacité de l’attaque.<br> Les degrés de réussite influencent directement les dégâts infligés.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Les Dégâts : Frapper Fort<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Une fois l’attaque réussie, il est temps de déterminer les dégâts infligés.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Calcul des Dégâts<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Les dégâts d’une attaque sont calculés ainsi :<br>
|
||
<span style="font-weight: bold;">Dégâts infligés = Dégâts de l’arme + dizaine de l’attribut lié + degrés de réussite</span><br>
|
||
<span class="point">◆</span>Dégâts de l’arme : Chaque arme a un dé de dégâts spécifique (par exemple, une épée longue inflige 1D6)<br>
|
||
<span class="point">◆</span>Dizaine de l’attribut lié<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Force pour les attaques au corps à corps et le pugilat<br>
|
||
<span class="point">○</span>Dextérité pour les attaques à distance<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span>Degrés de réussite : Obtenus lors du jet d’attaque<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Cas des Armes Spéciales<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Certaines armes ont des propriétés particulières :<br>
|
||
<span class="point">◆</span>Arbalète : Peut ignorer une partie de l’armure de la cible<br>
|
||
<span class="point">◆</span>Armes lourdes : Infligent des dégâts plus importants mais demandent un bonus en Force pour être maniées efficacement<br>
|
||
Le MJ peut adapter les règles pour refléter les particularités des armes ou situations.
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Encaissement : Réduire les Dégâts<br></div>
|
||
<div class="compendium_3col_texte">
|
||
La cible peut réduire les dégâts subis grâce à son encaissement, calculé ainsi :<br>
|
||
<span style="font-weight: bold;">Encaissement = valeur d’armure + dizaine de l’attribut de Constitution</span><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Exemple de Résolution d’une Attaque<br></div>
|
||
<div class="compendium_3col_texte">
|
||
Contexte : Un chevalier (Force 50, Constitution 40) attaque un brigand avec une épée longue (1D6 de dégâts).<br>
|
||
Le brigand porte une armure de cuir et une constitution de 35 (encaissement = 2 + 3 = 5).<br>
|
||
<span class="point">1</span>Jet d’attaque :<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Compétence en Combat corps à corps = 30<br>
|
||
<span class="point">○</span>Force (50 → moitié = 25)<br>
|
||
<span class="point">○</span>Score requis = 30 + 25 = 55<br>
|
||
<span class="point">○</span>Jet de D100 = 42 → 1 degré de réussite<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">2</span>Calcul des dégâts :<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Dégâts de l’arme : 1D6 = 4<br>
|
||
<span class="point">○</span>Dizaine de Force : 5<br>
|
||
<span class="point">○</span>Degrés de réussite : 1<br>
|
||
<span class="point">○</span>Total : 4 + 5 + 1 = 10 dégâts<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">3</span>Réduction par l’encaissement :<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Le brigand encaisse 5 points de dégâts<br>
|
||
<span class="point">○</span>Dégâts subis : 10 - 5 = 5<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span style="font-weight: bold;">Résultat : Le brigand encaisse l’attaque mais subit une blessure sérieuse, perdant 5 points de vie</span><br>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_combat_tableaux">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Actions<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Type d’Action</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Actions</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Effet</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action simple</div>
|
||
<div class="compendium_tableau_action">Attaquer</div>
|
||
<div class="compendium_tableau_effet">Réaliser une attaque</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action simple</div>
|
||
<div class="compendium_tableau_action">Lancer un sort</div>
|
||
<div class="compendium_tableau_effet">Déclencher un sort magique</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action simple</div>
|
||
<div class="compendium_tableau_action">Se mettre en défense</div>
|
||
<div class="compendium_tableau_effet">Bonus de 10 à la parade et à l’esquive</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action simple</div>
|
||
<div class="compendium_tableau_action">Utiliser un objet</div>
|
||
<div class="compendium_tableau_effet">Interagir avec un objet</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action simple</div>
|
||
<div class="compendium_tableau_action">Protéger un allié</div>
|
||
<div class="compendium_tableau_effet">Détourne l’ennemi de l’allié vers soi même<br>(jet de compétence nécessaire)</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Se déplacer</div>
|
||
<div class="compendium_tableau_effet">Distance maximale = dizaine de Dextérité x 2 mètres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Viser avant de tirer</div>
|
||
<div class="compendium_tableau_effet">Bonus de 10 à la prochaine attaque à distance</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Charger son coup</div>
|
||
<div class="compendium_tableau_effet">Ajoute 2 de dégâts si l’attaque touche</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Se concentrer sur une attaque</div>
|
||
<div class="compendium_tableau_effet">Bonus de 10 pour la prochaine attaque de corps à corps ou de pugilat</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Recharger son arme</div>
|
||
<div class="compendium_tableau_effet">Permet de recharger une arme</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Préparer un objet</div>
|
||
<div class="compendium_tableau_effet">Réaliser une attaque</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Préparer un objet</div>
|
||
<div class="compendium_tableau_effet">Sortir ou ranger arme ou objet</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Action de mouvement</div>
|
||
<div class="compendium_tableau_action">Parer un coup</div>
|
||
<div class="compendium_tableau_effet">Bloque une attaque ennemie</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Réaction</div>
|
||
<div class="compendium_tableau_action">Esquiver une attaque</div>
|
||
<div class="compendium_tableau_effet">Evite une attaque</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Réaction</div>
|
||
<div class="compendium_tableau_action">Riposter</div>
|
||
<div class="compendium_tableau_effet">Attaque gratuite sur un ennemi imprudent</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Réaction</div>
|
||
<div class="compendium_tableau_action">Déclencher une action</div>
|
||
<div class="compendium_tableau_effet">Réalise une action préparée</div>
|
||
</div>
|
||
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Attaques et Dégâts<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Étape</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Action</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Calcul</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Jet d’attaque</div>
|
||
<div class="compendium_tableau_action">Lancer 1d100</div>
|
||
<div class="compendium_tableau_effet">Compétence + moitié de l’attribut pertinent (arrondi à l’inférieur)</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Degrés de réussite</div>
|
||
<div class="compendium_tableau_action">Chaque tranche de 10 points sous le score requis ajoute un bonus</div>
|
||
<div class="compendium_tableau_effet">Exemple :<br>
|
||
Score requis : 45<br> Jet : 32,<br> On a donc 1 réussite</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Dégâts</div>
|
||
<div class="compendium_tableau_action">Déterminer les dégâts infligés par l’attaque</div>
|
||
<div class="compendium_tableau_effet">Dégâts de l’arme + dizaine de l’attribut utilisé par l’attaque + nombre de degrés de réussite</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col">
|
||
<div class="compendium_tableau_type">Encaissement</div>
|
||
<div class="compendium_tableau_action">Réduire les dégâts</div>
|
||
<div class="compendium_tableau_effet">Valeur d’armure + dizaine de Constitution</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_aura_priere">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">L’Aura et les Prières, entre Foi et Désespoir</div>
|
||
<div class="compendium_3col_texte">
|
||
Les prières représentent l’acte ultime de foi ou de désespoir. Lorsqu’un personnage est confronté à une situation désespérée, il peut lever les yeux vers le ciel… ou plonger dans les ténèbres pour demander une aide.<br>
|
||
L’issue de ces prières dépend de l’Aura du personnage, véritable reflet de son âme, qu’elle soit marquée par la lumière ou corrompue par l’ombre.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Le Principe des Prières</div>
|
||
<div class="compendium_3col_texte">
|
||
Les prières ne sont pas des miracles garantis. Elles sont des appels à des forces supérieures, que ce soit les cieux ou les enfers. Selon la valeur de l’Aura du personnage, ces forces peuvent intervenir, leur réponse variant en fonction de l’orientation morale du priant.<br><br>
|
||
<span style="font-weight: bold;">Conditions pour Prier :</span><br>
|
||
<span class="point">◆</span>Le personnage doit être dans une situation critique ou importante où il ressent le besoin d’appeler une aide extérieure<br>
|
||
<span class="point">◆</span>Le Roleplay du personnage dans une situation clef, le fait murmurer sa détresse ou bien le fait fortement penser qu'il a besoin d'aide<br><br>
|
||
Il fait un jet d’Aura pour déterminer si sa prière est entendue.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Jet d’Aura</div>
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">1</span>Le joueur fait un jet d'Aura via le boutton se trouvant sous la barre d'Aura de la feuille de personnage<br>
|
||
<span class="point">2</span>Si le résultat est inférieur ou égal à la valeur absolue de son Aura, la prière est entendue<br>
|
||
<span class="point">3</span>Les degrés de réussite déterminent l’intensité de la réponse<br><br>
|
||
<span style="font-weight: bold;">Réponses aux Prières :</span><br>
|
||
Les prières sont influencées par l’Aura : une Aura positive attire les forces divines, tandis qu’une Aura négative invoque des réponses infernales.
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Effets d’une Aura Positive : La Lumière Divine</div>
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span><span style="font-weight: bold;">1-2 Degrés de Réussite :</span> Une aide subtile : un ennemi hésite, un PNJ décide de venir parler au joueur, en roulant au sol, il retrouve son arme ...<br>
|
||
<span class="point">◆</span><span style="font-weight: bold;">3-4 Degrés de Réussite :</span> Une aide plus conséquente : il ignore sa dernière blessure, un chasseur dans les parages offre une aide temporaire etc...<br>
|
||
<span class="point">◆</span><span style="font-weight: bold;">5 Degrés de Réussite :</span> Les cieux eux-mêmes interviennent : une lumière divine tombe sur la scène, un ennemi disparaît, le personnage se réveille sans souvenir de la scène loin du danger etc...<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Effets d’une Aura Négative : Les Réponses des Enfers</div>
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span><span style="font-weight: bold;">1-2 Degrés de Réussite :</span> Une force obscure apporte une aide malveillante : un ennemi est pris de panique, un obstacle se brise violemment<br>
|
||
<span class="point">◆</span><span style="font-weight: bold;">3-4 Degrés de Réussite :</span> Une entité infernale agit directement, un démon amusé par la scène prends possession de quelqu'un pour l'aider, il le fera sans se révéler, et puis il essaiera de passer un contrat avec le joueur : « Tu as une dette envers moi », « A charge de revanche » etc...<br>
|
||
<span class="point">◆</span><span style="font-weight: bold;">5 Degrés de Réussite :</span> Les enfers répondent pleinement : un démon s'affiche clairement dans la scène et aide ou fait le ménage en montrant sa puissance et/ou en passant un contrat officiel<br>
|
||
<span class="point">◆</span><span style="font-weight: bold;">6 Degrés de Réussite :</span> Une attention démoniaque ultime : le roi des démons des croisements viendra sur la scène de la façon qu'il souhaitera (en se révélant ou non)<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Les Effets Passifs de l’Aura</div>
|
||
<div class="compendium_3col_texte">
|
||
En dehors des prières, l’Aura influence en permanence la vie du personnage. Ses actions passées façonnent ses interactions avec les mortels comme avec les forces surnaturelles.<br><br>
|
||
<span class="point">◆</span>Une Aura Positive rend le personnage plus charismatique et digne de confiance.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Il est vu comme un héros, attirant respect et alliés<br>
|
||
<span class="point">○</span>En cas de mort, il peut être ramené à la vie par des forces divines<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span>Une Aura Négative inspire crainte et méfiance, mais facilite l’intimidation.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Il est marqué par les ténèbres, devenant une cible pour les forces du bien<br>
|
||
<span class="point">○</span>Les enfers le guettent, prêts à réclamer son âme, mais peut être reviendra-t-il autrement ?<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Danger et Limites des prières</div>
|
||
<div class="compendium_3col_texte">
|
||
Les prières ne sont pas une solution facile ou sans conséquences. Même exaucées, elles modifient la perception du personnage par les mortels ou les entités supérieures.<br>
|
||
<span class="point">◆</span>Une prière divine réussie dans un village superstitieux peut entraîner la vénération ou la peur des habitants<br>
|
||
<span class="point">◆</span>Une prière infernale peut offrir une puissance immédiate, mais au prix d’une perte de santé mentale ou d’un stigmate visible<br>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_aura">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">L’Aura : Le Poids des décisions</div>
|
||
<div class="compendium_3col_texte">
|
||
Dans l’univers sombre et moralement ambigu d’Obscuritas Æterna, chaque décision prise par un personnage laisse une empreinte, un écho qui résonne dans son âme et au-delà. Ces choix, qu’ils soient empreints d’héroïsme ou teintés d’hérésie, façonnent une mécanique essentielle : l’Aura.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Le pouvoir des actions</div>
|
||
<div class="compendium_3col_texte">
|
||
Chaque personnage évolue dans un monde où les ténèbres ne sont pas seulement extérieures, mais aussi intérieures. Lorsque vous affrontez des monstres, surmontez des épreuves ou sauvez des innocents, vos actes peuvent refléter des valeurs nobles, suscitant des points d’héroïsme. À l’inverse, céder à la peur, à l’égoïsme ou à des actions cruelles peut générer des points d’hérésie.<br>
|
||
L’Aura, résultat de cet équilibre entre lumière et ombre, incarne la nature véritable de votre personnage et la manière dont le monde, autant que les forces surnaturelles, interagit avec lui.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Les Enjeux à Court Terme</div>
|
||
<div class="compendium_3col_texte">
|
||
Dans l’immédiat, l’Aura influence directement votre capacité à aviguer dans les défis qui jalonnent votre aventure :<br>
|
||
<span style="font-weight: bold;">Héroïsme : </span>Les points d’héroïsme offrent des opportunités cruciales, permettant de renverser une situation désespérée ou d’accomplir des exploits extraordinaires. Ils sont l’expression de la lumière qui réside encore dans un monde empli d’ombres.<br>
|
||
<span style="font-weight: bold;">Hérésie : </span>Les points d’hérésie, eux, marquent chaque action égoïste ou sombre. Ils attirent sur vous la suspicion, la méfiance, et même l’intérêt des créatures infernales.<br>
|
||
À chaque scène, vos choix immédiats modifient la perception des PNJ, influencent vos interactions sociales et dictent parfois la différence entre la vie et la mort.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Les Répercussions à Long Terme</div>
|
||
<div class="compendium_3col_texte">
|
||
L’Aura ne s’efface pas. Qu’ils soient dépensés ou utilisés comme expérience, vos points d’héroïsme et d’hérésie laissent une empreinte durable sur votre âme. Ce que vous êtes devenus, héros ou damnés, finit par définir votre destin.<br><br>
|
||
<span class="point">◆</span>Une Aura empreinte d’héroïsme vous lie aux forces du bien. Le monde semble conspirer pour vous accorder des moments de répit et des opportunités. Mais cela vous place aussi sous la surveillance des entités célestes, pour le meilleur ou pour le pire.<br>
|
||
<span class="point">◆</span>Une Aura saturée d’hérésie attire la noirceur, vous rendant vulnérable à l’influence démoniaque. Les ténèbres cherchent à faire de vous un outil ou un rival, et même la mort peut ne pas vous offrir la paix.<br><br>
|
||
L’Aura n’est pas qu’un simple outil mécanique ; elle est un miroir de vos actions et de vos dilemmes.<br>
|
||
Chaque choix devient une opportunité de narration, une chance d’explorer les conflits moraux et les conséquences des actes du personnage. Un héros auréolé de lumière peut succomber à la tentation d’une action douteuse, tandis qu’un paria déchu peut tenter de trouver la rédemption.<br>
|
||
Dans Obscuritas Æterna, l’Aura ne représente pas seulement ce que vous faites, mais ce que vous êtes en train de devenir. Et cela, peut-être plus que tout, est l’enjeu ultime.
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_hero">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Les Points d’Héroïsme : Une Lumière dans les Ténèbres</div>
|
||
<div class="compendium_3col_texte">
|
||
Dans Obscuritas Æterna, les points d’héroïsme représentent la force intérieure et la grandeur d’âme des personnages. Ils symbolisent leur capacité à transcender leurs limites, à accomplir des actes extraordinaires, et à devenir des phares d’espoir dans un monde plongé dans l’obscurité.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Gagner des Points d’Héroïsme</div>
|
||
<div class="compendium_3col_texte">
|
||
Les personnages gagnent des points d’héroïsme en accomplissant des actions courageuses, altruistes ou héroïques. Ce ne sont pas de simples récompenses mécaniques, mais des témoignages de la lumière qui réside encore en eux.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span style="font-weight: bold;">Exemples d’Actions Héroïques :</span>
|
||
<span class="point">◆</span>Sauver des innocents en danger<br>
|
||
<span class="point">◆</span>Affronter une créature surnaturelle pour protéger autrui<br>
|
||
<span class="point">◆</span>Refuser la tentation de solutions égoïstes ou immorales malgré un risque élevé.<br>
|
||
Le Maître du Jeu (MJ) attribue ces points lorsqu’un personnage agit de manière significative en faveur du bien ou fait preuve d’un courage exemplaire.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Utiliser des Points d’Héroïsme</div>
|
||
<div class="compendium_3col_texte">
|
||
Les points d’héroïsme peuvent être dépensés pour accomplir des exploits impressionnants, surmonter des épreuves difficiles ou résister aux horreurs qui menacent de briser l’esprit des personnages.<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="habillage_tableau" style="margin-left: 25px;width: 420px;">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="
|
||
font-size: 11px;
|
||
background: black;
|
||
border: 1px solid black;
|
||
border-radius: 5px 5px 0px 0px;
|
||
color: var(--white);
|
||
">
|
||
Utilisation des Points d’Héroïsme :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">1 point</div>
|
||
<div class="hero_tableau_effet">• Bonus de +20 sur un jet<br>
|
||
• Dégâts maximum sur une attaque</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">2 Points</div>
|
||
<div class="hero_tableau_effet_4">• Relancer un jet échoué<br>
|
||
• Résister à un effet de peur ou d’influence<br>
|
||
• Lancer gratuitement un sort moyen ou faible</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">3 Points</div>
|
||
<div class="hero_tableau_effet">• Récupérer 20 points de santé mentale<br>
|
||
• Lancer gratuitement un sort puissant</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">7 Points</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;font-weight: bold;font-size: 13px;">Révèle le héros en toi !</div>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">"Révèle le héros en toi" : L’Ultime Sacrifice</div>
|
||
<div class="compendium_3col_texte">En dépensant 7 points d’héroïsme, un personnage entre dans un état héroïque, devenant le centre de l’attention de la scène.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Effets du Mode Héroïque :</div>
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span><span style="font-weight: bold;">Focus narratif :</span>Le personnage devient le point central del’action, ses décisions et actions dictant le cours des événements. Les autres joueurs ne peuvent que le soutenir.<br>
|
||
<span class="point">◆</span>Degrés de réussite partagés : Les degrés de réussite des actions pertinentes des alliés se cumulent aux siens.<br>
|
||
<span class="point">◆</span>Activation des artefacts : Le personnage peut activer n’importe quel artefact, même si les conditions normales ne sont pas remplies.<br>
|
||
<span class="point">◆</span>Bonus de +20 : À tous ses jets pour la durée de la scène.<br>
|
||
<span class="point">◆</span>10 points de vie temporaires : Absorbent les dégâts avant que le personnage ne subisse des blessures réelles.<br>
|
||
<span class="point">◆</span>Coûts magiques annulés : L’utilisation de magie et d’artefacts ne coûte ni points de magie ni points de vie pendant cette période.<br>
|
||
</div>
|
||
<div class="compendium_3col_illustration_effet"></div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Restrictions du Mode Héroïque :</div>
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span>Décompte des coûts annulés : À la fin du mode héroïque, les points de vie et de magie qui auraient dû être dépensés sont déduits.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col" style="margin-left: 50px;padding-right: 208px;">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">○</span>Si ces valeurs tombent à 0 ou moins, le personnage est plafonné à 0, automatiquement stabilisé, mais sombre dans l’inconscience.<br>
|
||
<span class="point">○</span>Durée d’inconscience : Un minimum d’une heure, plus une heure supplémentaire par point négatif (maximum de 24 heures).<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span class="point">◆</span>Interruption par des dégâts externes : Si le personnage subit des dégâts qui le mettent à 0 points de vie, le mode héroïque s’arrête immédiatement.<br>
|
||
<span class="point">◆</span>Limites d’apprentissage : Annuler les coûts de magie ne permet pas d’apprendre de nouveaux sorts. Cependant, tous les artefacts peuvent être utilisés (sauf mention contraire dans leurs descriptions).<br>
|
||
</div>
|
||
<div class="compendium_3col_illustration_restriction"></div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_possession">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Les Points d’Hérésie : La Marque des Ténèbres</div>
|
||
<div class="compendium_3col_texte">
|
||
Les points d’hérésie symbolisent la corruption de l’âme, les choix égoïstes, lâches ou cruels qui rapprochent les personnages des ténèbres. Ils incarnent la conséquence de céder à la peur, à la tentation ou à la noirceur du cœur humain.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Gagner des Points d’Hérésie</div>
|
||
<div class="compendium_3col_texte">
|
||
Les personnages gagnent des points d’hérésie lorsqu’ils commettent des actions contraires à la morale, que ce soit par égoïsme, lâcheté ou malveillance. Ces points représentent la lente progression de l’ombre sur leur âme.<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span style="font-weight: bold;">Exemples d’Actions hérétiques :<br></span>
|
||
<span class="point">◆</span>Sacrifier autrui pour sa propre survie<br>
|
||
<span class="point">◆</span>Fuir en abandonnant des innocents en danger<br>
|
||
<span class="point">◆</span>Employer des pratiques interdites, comme les rituels sombres ou les pactes démoniaques<br>
|
||
<span class="point">◆</span>Commettre des actes cruels ou inutiles (ex. torture gratuite, meurtre par plaisir)<br><br>
|
||
Le Maître du Jeu (MJ) attribue ces points pour refléter les conséquences morales des choix du personnage.<br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Conséquences des Points d’Hérésie</div>
|
||
<div class="compendium_3col_texte">
|
||
Contrairement aux points d’héroïsme, les points d’hérésie ne peuvent être dépensés volontairement par les joueurs. Ils sont une ressource que le MJ utilise pour punir ou corrompre les personnages, leur rappelant que chaque acte a un prix.<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="habillage_tableau" style="margin-left: 25px;width: 420px; ">
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_aura_titre_effet" style="
|
||
font-size: 11px;
|
||
background: black;
|
||
border: 1px solid black;
|
||
border-radius: 5px 5px 0px 0px;
|
||
color: var(--white);
|
||
">
|
||
Utilisation des Points d’Hérésie :
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">1 point</div>
|
||
<div class="hero_tableau_effet">• Malus de 20 sur un jet crucial<br>
|
||
• Le personnage subit les dégâts maximum lors d’une attaque</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout_4">2 Points</div>
|
||
<div class="hero_tableau_effet_4">• Le joueur doit relancer un jet réussi<br>
|
||
• Ajoute un effet de peur ou une vision macabre dans la scène</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout">3 Points</div>
|
||
<div class="hero_tableau_effet">• Perte de 20 points de santé mentale<br>
|
||
• Bloque la magie du personnage pour la durée de la scène</div>
|
||
</div>
|
||
<div class="wrapper_zone_hero">
|
||
<div class="hero_tableau_cout" style="border-bottom: 1px solid black;">7 Points</div>
|
||
<div class="hero_tableau_effet" style="border-bottom: 1px solid black;font-weight: bold;font-size: 13px;text-align: center !important;">La possession des ténèbres</div>
|
||
</div>
|
||
</div>
|
||
<br>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">La possession des ténèbres : plongée en enfer</div>
|
||
<div class="compendium_3col_texte">
|
||
Lorsque le MJ dépense 7 points d’hérésie, le personnage devient une marionnette des forces infernales pour la durée de la scène.<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span style="font-weight: bold;">Effet de la Possession :<br></span>
|
||
<span class="point">◆</span>Contrôle du personnage par le MJ : Le joueur perd toute maîtrise de ses actions<br>
|
||
<span class="point">◆</span>Manifestation des ténèbres : Le personnage agit de manière destructrice, attaquant alliés et innocents ou accomplissant des actes atroces<br>
|
||
<span class="point">◆</span>Récupération post-possession : Une fois la scène terminée, le personnage reprend le contrôle, mais est marqué par une perte de santé mentale et une suspicion accrue des autres<br><br>
|
||
</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_texte">
|
||
<span style="font-weight: bold;">Impact narratif :<br></span>
|
||
<span class="point">◆</span>Les créatures surnaturelles maléfiques reconnaissent et sont attirées par les âmes corrompues<br>
|
||
<span class="point">◆</span>Les PNJ réagissent avec méfiance, peur ou haine envers un personnage dont l’Aura est imprégnée d’hérésie<br>
|
||
<span class="point">◆</span>L’Aura influence les tests sociaux : les personnages corrompus bénéficient d’un bonus pour intimider, mais subissent un malus pour charmer ou inspirer confiance<br><br>
|
||
Les points d’hérésie ouvrent une porte aux forces obscures. Une Aura négative attire des entités comme les fantômes vengeurs, les démons et d'autres créatures mythologiques, qui exploitent les failles d’un esprit corrompu pour prendre le contrôle.<br>
|
||
La possession n’est pas qu’un simple contrôle temporaire. Elle altère profondément l’Aura du personnage, le plongeant davantage dans les ténèbres. Les actes commis sous marques durables, transformant le héros en danger pour ses compagnons.<br>
|
||
Dans Obscuritas Æterna, céder à l’hérésie, c’est risquer de devenir une arme des ténèbres ou, pire, leur prochaine victime.<br>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_equipement">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Équipements Courants et Matériel d’Aventure<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Équipement</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Notes</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Torche</div>
|
||
<div class="compendium_tableau_action">1 denier</div>
|
||
<div class="compendium_tableau_effet">Lumière pour 1 heure.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Corde (10 mètres)</div>
|
||
<div class="compendium_tableau_action">3 sous</div>
|
||
<div class="compendium_tableau_effet">Indispensable pour les escalades.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Sac à dos</div>
|
||
<div class="compendium_tableau_action">2 sous</div>
|
||
<div class="compendium_tableau_effet">Permet de transporter jusqu’à 10 kg.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Rations (1 jour)</div>
|
||
<div class="compendium_tableau_action">2 deniers</div>
|
||
<div class="compendium_tableau_effet">Nourriture simple et légère.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Gourde</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Contient jusqu’à 2 litres d’eau.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Trousse de soin</div>
|
||
<div class="compendium_tableau_action">5 sous</div>
|
||
<div class="compendium_tableau_effet">Stabilise un personnage blessé, 1 utilisation.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Livres anciens</div>
|
||
<div class="compendium_tableau_action">1 à 5 livres</div>
|
||
<div class="compendium_tableau_effet">Connaissances ou secrets occultes.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Dépenses Courantes<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Service/Dépense</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Notes</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Nuit à l’auberge (modeste)</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Lit rudimentaire, repas simple.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Nuit à l’auberge (confortable)</div>
|
||
<div class="compendium_tableau_action">3 sous</div>
|
||
<div class="compendium_tableau_effet">Chambre privée, repas chaud.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Repas simple</div>
|
||
<div class="compendium_tableau_action">1 denier</div>
|
||
<div class="compendium_tableau_effet">Pain, fromage, soupe.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Repas copieux</div>
|
||
<div class="compendium_tableau_action">3 deniers</div>
|
||
<div class="compendium_tableau_effet">Inclut de la viande et du vin.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Ferrage de cheval</div>
|
||
<div class="compendium_tableau_action">2 sous</div>
|
||
<div class="compendium_tableau_effet">Essentiel pour les longs trajets.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Passage en barque</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Traversée d’une rivière ou d’un petit lac.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Équipements et Matériel d’Aventure<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Équipement</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Notes</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Trousse d’herboriste</div>
|
||
<div class="compendium_tableau_action">8 sous</div>
|
||
<div class="compendium_tableau_effet">Préparer des potions simples (3 utilisations).</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Pioche ou pelle</div>
|
||
<div class="compendium_tableau_action">2 sous</div>
|
||
<div class="compendium_tableau_effet">Creuser ou dégager des obstacles.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Chandelle</div>
|
||
<div class="compendium_tableau_action">1 denier</div>
|
||
<div class="compendium_tableau_effet">Lumière pour 30 minutes.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Hameçon et ligne</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Permet de pêcher, simple mais efficace.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Tente (2 places)</div>
|
||
<div class="compendium_tableau_action">1 livre</div>
|
||
<div class="compendium_tableau_effet">Abri basique contre les intempéries.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Couverture épaisse</div>
|
||
<div class="compendium_tableau_action">3 sous</div>
|
||
<div class="compendium_tableau_effet">Protection contre le froid, essentielle.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Sifflet</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Signalisation ou appel à l’aide.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Pierre à aiguiser</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Entretien des armes tranchantes.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Flèches (par douzaine)</div>
|
||
<div class="compendium_tableau_action">3 sous</div>
|
||
<div class="compendium_tableau_effet">Munition standard pour arcs.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Casque de cuir</div>
|
||
<div class="compendium_tableau_action">2 sous</div>
|
||
<div class="compendium_tableau_effet">Protection basique pour la tête (+1 encaissement).</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Montures et Équipements pour Animaux<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Monture/Animal</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Notes</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Cheval de selle</div>
|
||
<div class="compendium_tableau_action">15 livres</div>
|
||
<div class="compendium_tableau_effet">Monture standard, vitesse doublée.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Cheval de guerre</div>
|
||
<div class="compendium_tableau_action">30 livres</div>
|
||
<div class="compendium_tableau_effet">Entraîné pour les combats.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Âne ou mule</div>
|
||
<div class="compendium_tableau_action">5 livres</div>
|
||
<div class="compendium_tableau_effet">Transporte des charges lourdes.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Chien de garde</div>
|
||
<div class="compendium_tableau_action">3 livres</div>
|
||
<div class="compendium_tableau_effet">Alerte ou défense pour les campements.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Équipement</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Notes</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Selle</div>
|
||
<div class="compendium_tableau_action">2 livres</div>
|
||
<div class="compendium_tableau_effet">Indispensable pour chevaucher une monture.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Sacoches de selle</div>
|
||
<div class="compendium_tableau_action">1 livre</div>
|
||
<div class="compendium_tableau_effet">Ajoute 10 kg de capacité de transport.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Ferrage (par sabot)</div>
|
||
<div class="compendium_tableau_action">2 sous</div>
|
||
<div class="compendium_tableau_effet">Nécessaire pour les longs voyages.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Ration animale (1 jour)</div>
|
||
<div class="compendium_tableau_action">1 sou</div>
|
||
<div class="compendium_tableau_effet">Nourriture pour chevaux ou mules.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Objets de Luxe et Biens Précieux<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_type" style="background: black;border-top: 1px solid black;">Objet</div>
|
||
<div class="compendium_tableau_action" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
<div class="compendium_tableau_effet" style="background: black;border-top: 1px solid black;">Notes</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Bijou en or</div>
|
||
<div class="compendium_tableau_action">5 à 10 livres</div>
|
||
<div class="compendium_tableau_effet">Symbole de richesse et de statut social.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Robe noble</div>
|
||
<div class="compendium_tableau_action">15 livres</div>
|
||
<div class="compendium_tableau_effet"> Habit raffiné, attire l’attention.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Relique sacrée</div>
|
||
<div class="compendium_tableau_action">50 livres</div>
|
||
<div class="compendium_tableau_effet">Propriétés mystiques ou religieuses.</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_3col_equipement">
|
||
<div class="compendium_tableau_type">Arme forgée sur mesure</div>
|
||
<div class="compendium_tableau_action">25 livres</div>
|
||
<div class="compendium_tableau_effet">Dégâts ou maniabilité améliorés.</div>
|
||
</div>
|
||
</div>
|
||
<div class="compendium_armes">
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Armes<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_nom" style="background: black;border-top: 1px solid black;">Type d'arme</div>
|
||
<div class="compendium_tableau_description" style="background: black;border-top: 1px solid black;">Description</div>
|
||
<div class="compendium_tableau_prix" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #6d2727;color: white;grid-column: 3/6;height: 25px;"><span style="font-weight: bold;font-size: 14px;">Armes de mêlée</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Épées</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Épée courte</div>
|
||
<div class="compendium_tableau_description">Arme légère et maniable, idéale pour le combat rapproché.</div>
|
||
<div class="compendium_tableau_prix">1 livre et 10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Épée longue</div>
|
||
<div class="compendium_tableau_description">Arme polyvalente, courante chez les chevaliers.</div>
|
||
<div class="compendium_tableau_prix">3 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Épée bâtarde</div>
|
||
<div class="compendium_tableau_description">Utilisable à une ou deux mains, équilibrée et efficace.</div>
|
||
<div class="compendium_tableau_prix">5 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Fauchon</div>
|
||
<div class="compendium_tableau_description">Épée à lame courbée, souvent utilisée pour trancher.</div>
|
||
<div class="compendium_tableau_prix">2 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_categorie"></div>
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Haches</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Hachette</div>
|
||
<div class="compendium_tableau_description">Hache légère, utilisée pour le combat ou les tâches quotidiennes.</div>
|
||
<div class="compendium_tableau_prix">10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Hache de combat</div>
|
||
<div class="compendium_tableau_description">Hache plus robuste, utilisée sur le champ de bataille.</div>
|
||
<div class="compendium_tableau_prix">1 livre et 5 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Hache danoise</div>
|
||
<div class="compendium_tableau_description">Grande hache à deux mains, redoutable contre les armures.</div>
|
||
<div class="compendium_tableau_prix">4 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Masses et marteaux</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Masse d’arme</div>
|
||
<div class="compendium_tableau_description">Arme lourde pour écraser les armures.</div>
|
||
<div class="compendium_tableau_prix">2 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Marteau de guerre</div>
|
||
<div class="compendium_tableau_description">Arme efficace contre les chevaliers en armure.</div>
|
||
<div class="compendium_tableau_prix">2 livres et 10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Fléau d’armes</div>
|
||
<div class="compendium_tableau_description">Arme à chaînes, difficile à manier mais destructrice.</div>
|
||
<div class="compendium_tableau_prix">3 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_categorie"></div>
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Lances et armes d’hast</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Lance de cavalerie</div>
|
||
<div class="compendium_tableau_description">Arme longue utilisée lors des charges.</div>
|
||
<div class="compendium_tableau_prix">1 livre</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Lance d’infanterie</div>
|
||
<div class="compendium_tableau_description">Lance standard pour les fantassins.</div>
|
||
<div class="compendium_tableau_prix">10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Pique longue</div>
|
||
<div class="compendium_tableau_description">Arme d’hast pour tenir les ennemis à distance.</div>
|
||
<div class="compendium_tableau_prix">1 livre et 5 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Vouge</div>
|
||
<div class="compendium_tableau_description">Arme d’hast à lame, redoutable contre les armures légères.</div>
|
||
<div class="compendium_tableau_prix">2 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_categorie"></div>
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Autres armes blanches</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Poignard</div>
|
||
<div class="compendium_tableau_description">Arme courte, utilisée pour le combat rapproché ou discret.</div>
|
||
<div class="compendium_tableau_prix">10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Coutille</div>
|
||
<div class="compendium_tableau_description">Arme courte de type machette, robuste et polyvalente.</div>
|
||
<div class="compendium_tableau_prix">15 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Faux ou serpe</div>
|
||
<div class="compendium_tableau_description">Armes agricoles souvent utilisées en cas de besoin.</div>
|
||
<div class="compendium_tableau_prix">8 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #6d2727;color: white;grid-column: 3/6;height: 25px;"><span style="font-weight: bold;font-size: 14px;">Armes à distance</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Arcs</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Arc court</div>
|
||
<div class="compendium_tableau_description">Arc léger, maniable et rapide à utiliser.</div>
|
||
<div class="compendium_tableau_prix">2 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Arc long</div>
|
||
<div class="compendium_tableau_description">Arc puissant, nécessitant un entraînement.</div>
|
||
<div class="compendium_tableau_prix">4 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Arc composite</div>
|
||
<div class="compendium_tableau_description">Arc renforcé, efficace à longue distance.</div>
|
||
<div class="compendium_tableau_prix">6 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_categorie"></div>
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Arbalètes</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Arbalète légère</div>
|
||
<div class="compendium_tableau_description">Facile à manier, idéale pour les débutants.</div>
|
||
<div class="compendium_tableau_prix">3 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Arbalète lourde</div>
|
||
<div class="compendium_tableau_description">Puissante, mais lente à recharger.</div>
|
||
<div class="compendium_tableau_prix">6 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Arbalète à pied de biche</div>
|
||
<div class="compendium_tableau_description">Arbalète extrêmement puissante pour briser les armures lourdes.</div>
|
||
<div class="compendium_tableau_prix">8 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_categorie"></div>
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;grid-column: 3/6;"><span style="font-weight: bold;font-size: 14px;">Projectiles</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Flèches</div>
|
||
<div class="compendium_tableau_description">Lot de 20 flèches, pointes adaptées à la chasse ou à la guerre.</div>
|
||
<div class="compendium_tableau_prix">10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Carreaux d’arbalète</div>
|
||
<div class="compendium_tableau_description">Lot de 10 carreaux, standard ou perforants.</div>
|
||
<div class="compendium_tableau_prix">12 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Javelots</div>
|
||
<div class="compendium_tableau_description">Projectiles légers, parfois utilisés comme armes principales.</div>
|
||
<div class="compendium_tableau_prix">5 sous l’unité</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Fronde et pierres</div>
|
||
<div class="compendium_tableau_description">Arme simple et économique, utilisée souvent par les civils.</div>
|
||
<div class="compendium_tableau_prix">5 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #6d2727;color: white;grid-column: 2/6;height: 25px;"><span style="font-weight: bold;font-size: 14px;">Armes improvisées</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Outils agricoles</div>
|
||
<div class="compendium_tableau_description">Fléaux, fourches, houes, adaptés en cas d’urgence.</div>
|
||
<div class="compendium_tableau_prix">5 sous à 1 livre</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Bâtons et gourdins</div>
|
||
<div class="compendium_tableau_description">Arme simple, souvent utilisée par les villageois. </div>
|
||
<div class="compendium_tableau_prix">5 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_3col">
|
||
<div class="compendium_3col_titre">Armures et protections<br><br></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement" style="grid-auto-rows: 30px;font-weight: bold;font-size: 18px;color: var(--white);">
|
||
<div class="compendium_tableau_nom" style="background: black;border-top: 1px solid black;">Nom</div>
|
||
<div class="compendium_tableau_description" style="background: black;border-top: 1px solid black;">Description</div>
|
||
<div class="compendium_tableau_prix" style="background: black;border-top: 1px solid black;">Prix</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;
|
||
grid-column: 3 / 6;"><span style="font-weight: bold;font-size: 14px;">Armures légères</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Gambison</div>
|
||
<div class="compendium_tableau_description">Vêtement rembourré, souvent utilisé sous les autres armures.</div>
|
||
<div class="compendium_tableau_prix">2 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Brigandine</div>
|
||
<div class="compendium_tableau_description">Plaques métalliques rivetées sous du cuir ou du tissu.</div>
|
||
<div class="compendium_tableau_prix">1 livre</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Haubert de mailles</div>
|
||
<div class="compendium_tableau_description">Chemise en anneaux métalliques, couvrant le torse et les bras.</div>
|
||
<div class="compendium_tableau_prix">3 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;
|
||
grid-column: 3 / 6;"><span style="font-weight: bold;font-size: 14px;">Armures intermédiaires</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Cuir bouilli renforcé</div>
|
||
<div class="compendium_tableau_description">Protection locale : brassards, jambières ou épaulières.</div>
|
||
<div class="compendium_tableau_prix">8 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Plastron de mailles</div>
|
||
<div class="compendium_tableau_description">Protection supplémentaire pour le torse, portée par-dessus un gambison.</div>
|
||
<div class="compendium_tableau_prix">2 livres et 10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Coat of Plates</div>
|
||
<div class="compendium_tableau_description">Précurseur de l’armure en plaques, plaques métalliques sous le cuir.</div>
|
||
<div class="compendium_tableau_prix">4 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;
|
||
grid-column: 3 / 6;"><span style="font-weight: bold;font-size: 14px;">Armures lourdes</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Armure complète de mailles</div>
|
||
<div class="compendium_tableau_description">Haubert, coiffe, gants et chausses.</div>
|
||
<div class="compendium_tableau_prix">10 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Armure mixte</div>
|
||
<div class="compendium_tableau_description">Mailles avec éléments en plaques : genouillères, épaulières, coudières.</div>
|
||
<div class="compendium_tableau_prix">15 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;
|
||
grid-column: 3 / 6;"><span style="font-weight: bold;font-size: 14px;">Casques</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Chapeau de fer</div>
|
||
<div class="compendium_tableau_description">Casque conique léger, commun pour les soldats.</div>
|
||
<div class="compendium_tableau_prix">5 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Coiffe de mailles</div>
|
||
<div class="compendium_tableau_description">Protection pour la tête, portée sous un casque ou seule.</div>
|
||
<div class="compendium_tableau_prix">1 livre</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Bassinet</div>
|
||
<div class="compendium_tableau_description">Casque rond, parfois muni d’une visière.</div>
|
||
<div class="compendium_tableau_prix">1 livre et 10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Heaume</div>
|
||
<div class="compendium_tableau_description">Casque intégral couvrant toute la tête, utilisé par les chevaliers.</div>
|
||
<div class="compendium_tableau_prix">3 livres</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom" style="background: #333333;color: white;
|
||
grid-column: 3 / 6;"><span style="font-weight: bold;font-size: 14px;">Boucliers</span></div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Rondache</div>
|
||
<div class="compendium_tableau_description">Petit bouclier circulaire, léger et maniable.</div>
|
||
<div class="compendium_tableau_prix">10 sous</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Écu</div>
|
||
<div class="compendium_tableau_description">Bouclier de taille moyenne en forme d’amande ou triangulaire.</div>
|
||
<div class="compendium_tableau_prix">1 livre</div>
|
||
</div>
|
||
<div class="wrapper_compendium_tableau_4col_equipement">
|
||
<div class="compendium_tableau_nom">Pavois</div>
|
||
<div class="compendium_tableau_description">Grand bouclier, utilisé pour couvrir les archers ou en siège.</div>
|
||
<div class="compendium_tableau_prix">2 livres</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<!-- ------------------------------------------ -->
|
||
<!-- ROLL TEMPLATE -->
|
||
<!-- ------------------------------------------ -->
|
||
|
||
<rolltemplate class="sheet-rolltemplate-thanatos">
|
||
<div class="sheet-toper"></div>
|
||
{{#initiative}}
|
||
<div class="sheet-rolltemplate-thanatos-background sheet-rolltemplate-thanatos-center">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-color">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-header">
|
||
{{title}}
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-subheader">
|
||
{{result}}
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos sheet-template-thanatos-texte">
|
||
{{subheader}}
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{/initiative}}
|
||
{{#jet}}
|
||
{{#rollGreater() des 95}}
|
||
<div class="sheet-rolltemplate-thanatos-background sheet-rolltemplate-thanatos-center">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-color">
|
||
<div class="sheet-titre">
|
||
<div class="sheet-portrait_roll" style="background-image: url({{token}});background-size: 75px 75px;background-repeat: no-repeat;background-position: 100% 49%;"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-titre-roll">
|
||
{{title}} <span style="font-size: 17px;">({{stat}})</span>
|
||
<br><span style="font-size: 20px; font-weight: normal;">{{subheader}}</span>
|
||
</div>
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-subheader-echec-critique">{{des}}</div>
|
||
<div class="sheet-rolltemplate-thanatos sheet-template-thanatos-texte-echec-critique">Échec Critique
|
||
{{#^rollTotal() computed::degre 0}}
|
||
<br><span style="font-size:20px !important;">avec {{computed::degre}} degrés</span>
|
||
{{/^rollTotal() computed::degre 0}}</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-template-thanatos-rappel">
|
||
Modificateur ({{mod}}) | Blessure ({{malus_blessure}})
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{/rollGreater() des 95}}
|
||
{{#^rollGreater() des 95}}
|
||
{{#^rollGreater() des 5}}
|
||
<div class="sheet-rolltemplate-thanatos-background sheet-rolltemplate-thanatos-center">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-color">
|
||
<div class="sheet-titre">
|
||
<div class="sheet-portrait_roll" style="background-image: url({{token}});background-size: 75px 75px;background-repeat: no-repeat;background-position: 100% 49%;"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-titre-roll">
|
||
{{title}} <span style="font-size: 17px;">({{stat}})</span>
|
||
<br><span style="font-size: 20px; font-weight: normal;">{{subheader}}</span>
|
||
</div>
|
||
</div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-subheader-reussite-critique">{{des}}</div>
|
||
<div class="sheet-rolltemplate-thanatos sheet-template-thanatos-texte-reussite-critique">Réussite critique
|
||
{{#^rollTotal() computed::degre 0}}
|
||
<br><span style="font-size:20px !important;">avec {{computed::degre}} degrés</span>
|
||
{{/^rollTotal() computed::degre 0}}
|
||
{{#show_degat}}
|
||
<br>
|
||
<hr>
|
||
<span style="color: #000000; font-size: 20px;">JET DE DÉGÂTS</span>
|
||
<br>
|
||
{{arme1}}
|
||
<br>
|
||
{{arme2}}
|
||
<br>
|
||
{{arme3}}
|
||
<br>
|
||
{{arme4}}
|
||
<br>
|
||
{{/show_degat}}
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-template-thanatos-rappel">
|
||
Modificateur ({{mod}}) | Blessure ({{malus_blessure}})
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{/^rollGreater() des 5}}
|
||
{{#rollGreater() des 5}}
|
||
{{#rollGreater() des computed::roll}}
|
||
<div class="sheet-rolltemplate-thanatos-background sheet-rolltemplate-thanatos-center">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-color">
|
||
<div class="sheet-titre">
|
||
<div class="sheet-portrait_roll" style="background-image: url({{token}});background-size: 75px 75px;background-repeat: no-repeat;background-position: 100% 49%;"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-titre-roll">
|
||
{{title}} <span style="font-size: 17px;">({{stat}})</span>
|
||
<br><span style="font-size: 20px; font-weight: normal;">{{subheader}}</span>
|
||
</div>
|
||
</div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-subheader-echec">{{des}}</div>
|
||
<div class="sheet-rolltemplate-thanatos sheet-template-thanatos-texte-echec">Échec
|
||
{{#^rollTotal() computed::degre 0}}
|
||
<br><span style="font-size:20px !important;">avec {{computed::degre}} degrés</span>
|
||
{{/^rollTotal() computed::degre 0}}
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-template-thanatos-rappel">
|
||
Modificateur ({{mod}}) | Blessure ({{malus_blessure}})
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{/rollGreater() des computed::roll}}
|
||
{{#^rollGreater() des computed::roll}}
|
||
<div class="sheet-rolltemplate-thanatos-background sheet-rolltemplate-thanatos-center">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-color">
|
||
<div class="sheet-titre">
|
||
<div class="sheet-portrait_roll" style="background-image: url({{token}});background-size: 75px 75px;background-repeat: no-repeat;background-position: 100% 49%;"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-titre-roll">
|
||
{{title}} <span style="font-size: 17px;">({{stat}})</span>
|
||
<br><span style="font-size: 20px; font-weight: normal;">{{subheader}}</span>
|
||
</div>
|
||
</div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-subheader-reussite">{{des}}</div>
|
||
<div class="sheet-rolltemplate-thanatos sheet-template-thanatos-texte-reussite">Reussite
|
||
{{#^rollTotal() computed::degre 0}}
|
||
<br><span style="font-size:20px !important;">avec {{computed::degre}} degrés</span>
|
||
{{/^rollTotal() computed::degre 0}}
|
||
{{#show_degat}}
|
||
<br>
|
||
<hr>
|
||
<span style="color: #000000; font-size: 20px;">JET DE DÉGÂTS</span>
|
||
<br>
|
||
{{arme1}}
|
||
<br>
|
||
{{arme2}}
|
||
<br>
|
||
{{arme3}}
|
||
<br>
|
||
{{arme4}}
|
||
<br>
|
||
{{/show_degat}}
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-template-thanatos-rappel">
|
||
Modificateur ({{mod}}) | Blessure ({{malus_blessure}})
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{/^rollGreater() des computed::roll}}
|
||
{{/rollGreater() des 5}}
|
||
{{/^rollGreater() des 95}}
|
||
{{/jet}}
|
||
{{#degat}}
|
||
<div class="sheet-rolltemplate-thanatos-background sheet-rolltemplate-thanatos-center">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-color">
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-header">
|
||
{{title}}
|
||
<br>
|
||
<span style="font-size:24px;">inflige</span>
|
||
</div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-rolltemplate-thanatos-subheader" style="color: #ff0000;font-size: 31px !important;">
|
||
{{#rollTotal() result 1}}
|
||
{{result}} dégât
|
||
{{/rollTotal() result 1}}
|
||
{{#^rollTotal() result 1}}
|
||
{{result}} dégâts
|
||
{{/^rollTotal() result 1}}
|
||
<br><br><span style="font-size: 17px;font-style: italic;color: #000000 !important;">{{effet}}</span>
|
||
</div>
|
||
<div class="sheet-separateur"></div>
|
||
<div class="sheet-rolltemplate-thanatos-center sheet-template-thanatos-rappel"></div>
|
||
</div>
|
||
</div>
|
||
{{/degat}}
|
||
<div class="sheet-bottom"></div>
|
||
</rolltemplate>
|
||
|
||
|
||
|
||
<!-- ------------------------------------------ -->
|
||
<!-- SCRIPT -->
|
||
<!-- ------------------------------------------ -->
|
||
|
||
<!-- Custom Attributs / Menu -->
|
||
<script type="text/worker">
|
||
const buttonlist = ["0", "1", "2", "3", "4", "5", "6", "7", "8"];
|
||
buttonlist.forEach(button => {
|
||
on(`clicked:${button}`, function() {
|
||
setAttrs({
|
||
page: button
|
||
});
|
||
});
|
||
});
|
||
|
||
on("sheet:opened change:character_name change:character_avatar change:character_token", function() {
|
||
getAttrs(["character_name","character_avatar","character_token"], function(v) {
|
||
let name = v.character_name;
|
||
let namelen = name.length;
|
||
let nameclass;
|
||
namelen >= 19 ?
|
||
(nameclass = "smallHeader") :
|
||
(nameclass = "normalHeader");
|
||
setAttrs({ namelength: nameclass,
|
||
"avatar": v.character_avatar,
|
||
"ctoken": v.character_token });
|
||
});
|
||
});
|
||
|
||
|
||
on("sheet:opened change:custom_stat_1 change:custom_stat_2 change:custom_stat_3 change:custom_stat_4 change:custom_comp_1 change:custom_comp_2 change:custom_comp_3 change:custom_comp_4 change:force change:dexterite change:constitution change:intelligence change:charisme change:volonte change:total_armures_malus_demi_dexterite change:total_armures_malus_athletisme change:total_armures_malus_combat_cac change:total_armures_malus_combat_pugilat change:total_armures_malus_combat_distance change:total_armures_malus_discretion change:total_armures_malus_esquive change:total_boucliers_malus_esquive", function() {
|
||
|
||
getAttrs(["custom_stat_1", "custom_stat_2", "custom_stat_3", "custom_stat_4", "custom_comp_1", "custom_comp_2", "custom_comp_3", "custom_comp_4", "force", "dexterite", "constitution", "intelligence", "charisme", "volonte", "stat_athletisme", "stat_baratin", "stat_bibliotheque", "stat_chercher", "stat_combat_cac", "stat_combat_pugilat", "stat_combat_distance", "stat_discretion", "stat_endurance", "stat_esquive", "stat_langue_ancienne", "stat_langue", "stat_medecine", "stat_metier", "stat_perception", "stat_psychologie", "stat_science", "stat_sciences_occultes", "stat_survie", "stat_vigilance", "total_armures_malus_demi_dexterite", "total_armures_malus_athletisme", "total_armures_malus_combat_cac", "total_armures_malus_combat_pugilat", "total_armures_malus_combat_distance", "total_armures_malus_discretion", "total_armures_malus_esquive", "total_boucliers_malus_esquive"], function(values) {
|
||
let custom_stat_1 = parseInt(values["custom_stat_1"]) || 0;
|
||
let custom_stat_2 = parseInt(values["custom_stat_2"]) || 0;
|
||
let custom_stat_3 = parseInt(values["custom_stat_3"]) || 0;
|
||
let custom_stat_4 = parseInt(values["custom_stat_4"]) || 0;
|
||
let custom_comp_1 = parseInt(values["custom_comp_1"]) || 0;
|
||
let custom_comp_2 = parseInt(values["custom_comp_2"]) || 0;
|
||
let custom_comp_3 = parseInt(values["custom_comp_3"]) || 0;
|
||
let custom_comp_4 = parseInt(values["custom_comp_4"]) || 0;
|
||
|
||
let total_armures_malus_demi_dexterite = parseInt(values["total_armures_malus_demi_dexterite"]) || 0;
|
||
let total_armures_malus_athletisme = parseInt(values["total_armures_malus_athletisme"]) || 0;
|
||
let total_armures_malus_combat_cac = parseInt(values["total_armures_malus_combat_cac"]) || 0;
|
||
let total_armures_malus_combat_pugilat = parseInt(values["total_armures_malus_combat_pugilat"]) || 0;
|
||
let total_armures_malus_combat_distance = parseInt(values["total_armures_malus_combat_distance"]) || 0;
|
||
let total_armures_malus_discretion = parseInt(values["total_armures_malus_discretion"]) || 0;
|
||
let total_armures_malus_esquive = parseInt(values["total_armures_malus_esquive"]) || 0;
|
||
let total_boucliers_malus_esquive = parseInt(values["total_boucliers_malus_esquive"]) || 0;
|
||
|
||
let force = parseInt(values["force"]) || 0;
|
||
let dexterite = parseInt(values["dexterite"]) || 0;
|
||
let constitution = parseInt(values["constitution"]) || 0;
|
||
let intelligence = parseInt(values["intelligence"]) || 0;
|
||
let charisme = parseInt(values["charisme"]) || 0;
|
||
let volonte = parseInt(values["volonte"]) || 0;
|
||
let stat_athletisme = parseInt(values["stat_athletisme"]) || 0;
|
||
let stat_baratin = parseInt(values["stat_baratin"]) || 0;
|
||
let stat_bibliotheque = parseInt(values["stat_bibliotheque"]) || 0;
|
||
let stat_chercher = parseInt(values["stat_chercher"]) || 0;
|
||
let stat_combat_cac = parseInt(values["stat_combat_cac"]) || 0;
|
||
let stat_combat_pugilat = parseInt(values["stat_combat_pugilat"]) || 0;
|
||
let stat_combat_distance = parseInt(values["stat_combat_distance"]) || 0;
|
||
let stat_discretion = parseInt(values["stat_discretion"]) || 0;
|
||
let stat_endurance = parseInt(values["stat_endurance"]) || 0;
|
||
let stat_esquive = parseInt(values["stat_esquive"]) || 0;
|
||
let stat_langue_ancienne = parseInt(values["stat_langue_ancienne"]) || 0;
|
||
let stat_langue = parseInt(values["stat_langue"]) || 0;
|
||
let stat_medecine = parseInt(values["stat_medecine"]) || 0;
|
||
let stat_metier = parseInt(values["stat_metier"]) || 0;
|
||
let stat_perception = parseInt(values["stat_perception"]) || 0;
|
||
let stat_psychologie = parseInt(values["stat_psychologie"]) || 0;
|
||
let stat_science = parseInt(values["stat_science"]) || 0;
|
||
let stat_sciences_occultes = parseInt(values["stat_sciences_occultes"]) || 0;
|
||
let stat_survie = parseInt(values["stat_survie"]) || 0;
|
||
let stat_vigilance = parseInt(values["stat_vigilance"]) || 0;
|
||
|
||
if (custom_stat_1 == 1) stat_1 = stat_athletisme - total_armures_malus_athletisme, stat_1_name = "Athlétisme";
|
||
else if (custom_stat_1 == 2) stat_1 = stat_baratin, stat_1_name = "Baratin";
|
||
else if (custom_stat_1 == 3) stat_1 = stat_bibliotheque, stat_1_name = "Bibliothèque";
|
||
else if (custom_stat_1 == 4) stat_1 = stat_chercher, stat_1_name = "Chercher";
|
||
else if (custom_stat_1 == 5) stat_1 = stat_combat_cac - total_armures_malus_combat_cac, stat_1_name = "Corps à corps";
|
||
else if (custom_stat_1 == 6) stat_1 = stat_combat_pugilat - total_armures_malus_combat_pugilat, stat_1_name = "Pugilat";
|
||
else if (custom_stat_1 == 7) stat_1 = stat_combat_distance, stat_1_name = "Distance";
|
||
else if (custom_stat_1 == 8) stat_1 = stat_discretion - total_armures_malus_discretion, stat_1_name = "Discrétion";
|
||
else if (custom_stat_1 == 9) stat_1 = stat_endurance, stat_1_name = "Endurance";
|
||
else if (custom_stat_1 == 10) stat_1 = stat_esquive - total_armures_malus_esquive - total_boucliers_malus_esquive, stat_1_name = "Esquive";
|
||
else if (custom_stat_1 == 11) stat_1 = stat_langue_ancienne, stat_1_name = "Langue ancienne";
|
||
else if (custom_stat_1 == 12) stat_1 = stat_langue, stat_1_name = "Langue";
|
||
else if (custom_stat_1 == 13) stat_1 = stat_medecine, stat_1_name = "Médecine";
|
||
else if (custom_stat_1 == 14) stat_1 = stat_metier, stat_1_name = "Métier";
|
||
else if (custom_stat_1 == 15) stat_1 = stat_perception, stat_1_name = "Perception";
|
||
else if (custom_stat_1 == 16) stat_1 = stat_psychologie, stat_1_name = "Psychologie";
|
||
else if (custom_stat_1 == 17) stat_1 = stat_science, stat_1_name = "Sciences";
|
||
else if (custom_stat_1 == 18) stat_1 = stat_sciences_occultes, stat_1_name = "Sciences occultes";
|
||
else if (custom_stat_1 == 19) stat_1 = stat_survie, stat_1_name = "Survie";
|
||
else if (custom_stat_1 == 20) stat_1 = stat_vigilance, stat_1_name = "Vigilance";
|
||
else stat_1 = 0, stat_1_name = "";
|
||
|
||
if (custom_stat_2 == 1) stat_2 = stat_athletisme - total_armures_malus_athletisme, stat_2_name = "Athlétisme";
|
||
else if (custom_stat_2 == 2) stat_2 = stat_baratin, stat_2_name = "Baratin";
|
||
else if (custom_stat_2 == 3) stat_2 = stat_bibliotheque, stat_2_name = "Bibliothèque";
|
||
else if (custom_stat_2 == 4) stat_2 = stat_chercher, stat_2_name = "Chercher";
|
||
else if (custom_stat_2 == 5) stat_2 = stat_combat_cac - total_armures_malus_combat_cac, stat_2_name = "Corps à corps";
|
||
else if (custom_stat_2 == 6) stat_2 = stat_combat_pugilat - total_armures_malus_combat_pugilat, stat_2_name = "Pugilat";
|
||
else if (custom_stat_2 == 7) stat_2 = stat_combat_distance - total_armures_malus_combat_distance, stat_2_name = "Distance";
|
||
else if (custom_stat_2 == 8) stat_2 = stat_discretion - total_armures_malus_discretion, stat_2_name = "Discrétion";
|
||
else if (custom_stat_2 == 9) stat_2 = stat_endurance, stat_2_name = "Endurance";
|
||
else if (custom_stat_2 == 10) stat_2 = stat_esquive - total_armures_malus_esquive - total_boucliers_malus_esquive, stat_2_name = "Esquive";
|
||
else if (custom_stat_2 == 11) stat_2 = stat_langue_ancienne, stat_2_name = "Langue ancienne";
|
||
else if (custom_stat_2 == 12) stat_2 = stat_langue, stat_2_name = "Langue";
|
||
else if (custom_stat_2 == 13) stat_2 = stat_medecine, stat_2_name = "Médecine";
|
||
else if (custom_stat_2 == 14) stat_2 = stat_metier, stat_2_name = "Métier";
|
||
else if (custom_stat_2 == 15) stat_2 = stat_perception, stat_2_name = "Perception";
|
||
else if (custom_stat_2 == 16) stat_2 = stat_psychologie, stat_2_name = "Psychologie";
|
||
else if (custom_stat_2 == 17) stat_2 = stat_science, stat_2_name = "Sciences";
|
||
else if (custom_stat_2 == 18) stat_2 = stat_sciences_occultes, stat_2_name = "Sciences occultes";
|
||
else if (custom_stat_2 == 19) stat_2 = stat_survie, stat_2_name = "Survie";
|
||
else if (custom_stat_2 == 20) stat_2 = stat_vigilance, stat_2_name = "Vigilance";
|
||
else stat_2 = 0, stat_2_name = "";
|
||
|
||
if (custom_stat_3 == 1) stat_3 = stat_athletisme - total_armures_malus_athletisme, stat_3_name = "Athlétisme";
|
||
else if (custom_stat_3 == 2) stat_3 = stat_baratin, stat_3_name = "Baratin";
|
||
else if (custom_stat_3 == 3) stat_3 = stat_bibliotheque, stat_3_name = "Bibliothèque";
|
||
else if (custom_stat_3 == 4) stat_3 = stat_chercher, stat_3_name = "Chercher";
|
||
else if (custom_stat_3 == 5) stat_3 = stat_combat_cac - total_armures_malus_combat_cac, stat_3_name = "Corps à corps";
|
||
else if (custom_stat_3 == 6) stat_3 = stat_combat_pugilat - total_armures_malus_combat_pugilat, stat_3_name = "Pugilat";
|
||
else if (custom_stat_3 == 7) stat_3 = stat_combat_distance - total_armures_malus_combat_distance, stat_3_name = "Distance";
|
||
else if (custom_stat_3 == 8) stat_3 = stat_discretion - total_armures_malus_discretion, stat_3_name = "Discrétion";
|
||
else if (custom_stat_3 == 9) stat_3 = stat_endurance, stat_3_name = "Endurance";
|
||
else if (custom_stat_3 == 10) stat_3 = stat_esquive - total_armures_malus_esquive - total_boucliers_malus_esquive, stat_3_name = "Esquive";
|
||
else if (custom_stat_3 == 11) stat_3 = stat_langue_ancienne, stat_3_name = "Langue ancienne";
|
||
else if (custom_stat_3 == 12) stat_3 = stat_langue, stat_3_name = "Langue";
|
||
else if (custom_stat_3 == 13) stat_3 = stat_medecine, stat_3_name = "Médecine";
|
||
else if (custom_stat_3 == 14) stat_3 = stat_metier, stat_3_name = "Métier";
|
||
else if (custom_stat_3 == 15) stat_3 = stat_perception, stat_3_name = "Perception";
|
||
else if (custom_stat_3 == 16) stat_3 = stat_psychologie, stat_3_name = "Psychologie";
|
||
else if (custom_stat_3 == 17) stat_3 = stat_science, stat_3_name = "Sciences";
|
||
else if (custom_stat_3 == 18) stat_3 = stat_sciences_occultes, stat_3_name = "Sciences occultes";
|
||
else if (custom_stat_3 == 19) stat_3 = stat_survie, stat_3_name = "Survie";
|
||
else if (custom_stat_3 == 20) stat_3 = stat_vigilance, stat_3_name = "Vigilance";
|
||
else stat_3 = 0, stat_3_name = "";
|
||
|
||
if (custom_stat_4 == 1) stat_4 = stat_athletisme - total_armures_malus_athletisme, stat_4_name = "Athlétisme";
|
||
else if (custom_stat_4 == 2) stat_4 = stat_baratin, stat_4_name = "Baratin";
|
||
else if (custom_stat_4 == 3) stat_4 = stat_bibliotheque, stat_4_name = "Bibliothèque";
|
||
else if (custom_stat_4 == 4) stat_4 = stat_chercher, stat_4_name = "Chercher";
|
||
else if (custom_stat_4 == 5) stat_4 = stat_combat_cac - total_armures_malus_combat_cac, stat_4_name = "Corps à corps";
|
||
else if (custom_stat_4 == 6) stat_4 = stat_combat_pugilat - total_armures_malus_combat_pugilat, stat_4_name = "Pugilat";
|
||
else if (custom_stat_4 == 7) stat_4 = stat_combat_distance - total_armures_malus_combat_distance, stat_4_name = "Distance";
|
||
else if (custom_stat_4 == 8) stat_4 = stat_discretion - total_armures_malus_discretion, stat_4_name = "Discrétion";
|
||
else if (custom_stat_4 == 9) stat_4 = stat_endurance, stat_4_name = "Endurance";
|
||
else if (custom_stat_4 == 10) stat_4 = stat_esquive - total_armures_malus_esquive - total_boucliers_malus_esquive, stat_4_name = "Esquive";
|
||
else if (custom_stat_4 == 11) stat_4 = stat_langue_ancienne, stat_4_name = "Langue ancienne";
|
||
else if (custom_stat_4 == 12) stat_4 = stat_langue, stat_4_name = "Langue";
|
||
else if (custom_stat_4 == 13) stat_4 = stat_medecine, stat_4_name = "Médecine";
|
||
else if (custom_stat_4 == 14) stat_4 = stat_metier, stat_4_name = "Métier";
|
||
else if (custom_stat_4 == 15) stat_4 = stat_perception, stat_4_name = "Perception";
|
||
else if (custom_stat_4 == 16) stat_4 = stat_psychologie, stat_4_name = "Psychologie";
|
||
else if (custom_stat_4 == 17) stat_4 = stat_science, stat_4_name = "Sciences";
|
||
else if (custom_stat_4 == 18) stat_4 = stat_sciences_occultes, stat_4_name = "Sciences occultes";
|
||
else if (custom_stat_4 == 19) stat_4 = stat_survie, stat_4_name = "Survie";
|
||
else if (custom_stat_4 == 20) stat_4 = stat_vigilance, stat_4_name = "Vigilance";
|
||
else stat_4 = 0, stat_4_name = "";
|
||
|
||
if (custom_comp_1 == 1) comp_1 = force, comp_1_name = "Force";
|
||
else if (custom_comp_1 == 2) comp_1 = dexterite - total_armures_malus_demi_dexterite, comp_1_name = "Dextérité";
|
||
else if (custom_comp_1 == 3) comp_1 = constitution, comp_1_name = "Constitution";
|
||
else if (custom_comp_1 == 4) comp_1 = intelligence, comp_1_name = "Intelligence";
|
||
else if (custom_comp_1 == 5) comp_1 = charisme, comp_1_name = "Charisme";
|
||
else if (custom_comp_1 == 6) comp_1 = volonte, comp_1_name = "Volonté";
|
||
else comp_1 = 0, comp_1_name = "";
|
||
|
||
if (custom_comp_2 == 1) comp_2 = force, comp_2_name = "Force";
|
||
else if (custom_comp_2 == 2) comp_2 = dexterite - total_armures_malus_demi_dexterite, comp_2_name = "Dextérité";
|
||
else if (custom_comp_2 == 3) comp_2 = constitution, comp_2_name = "Constitution";
|
||
else if (custom_comp_2 == 4) comp_2 = intelligence, comp_2_name = "Intelligence";
|
||
else if (custom_comp_2 == 5) comp_2 = charisme, comp_2_name = "Charisme";
|
||
else if (custom_comp_2 == 6) comp_2 = volonte, comp_2_name = "Volonté";
|
||
else comp_2 = 0, comp_2_name = "";
|
||
|
||
if (custom_comp_3 == 1) comp_3 = force, comp_3_name = "Force";
|
||
else if (custom_comp_3 == 2) comp_3 = dexterite - total_armures_malus_demi_dexterite, comp_3_name = "Dextérité";
|
||
else if (custom_comp_3 == 3) comp_3 = constitution, comp_3_name = "Constitution";
|
||
else if (custom_comp_3 == 4) comp_3 = intelligence, comp_3_name = "Intelligence";
|
||
else if (custom_comp_3 == 5) comp_3 = charisme, comp_3_name = "Charisme";
|
||
else if (custom_comp_3 == 6) comp_3 = volonte, comp_3_name = "Volonté";
|
||
else comp_3 = 0, comp_3_name = "";
|
||
|
||
if (custom_comp_4 == 1) comp_4 = force, comp_4_name = "Force";
|
||
else if (custom_comp_4 == 2) comp_4 = dexterite - total_armures_malus_demi_dexterite, comp_4_name = "Dextérité";
|
||
else if (custom_comp_4 == 3) comp_4 = constitution, comp_4_name = "Constitution";
|
||
else if (custom_comp_4 == 4) comp_4 = intelligence, comp_4_name = "Intelligence";
|
||
else if (custom_comp_4 == 5) comp_4 = charisme, comp_4_name = "Charisme";
|
||
else if (custom_comp_4 == 6) comp_4 = volonte, comp_4_name = "Volonté";
|
||
else comp_4 = 0, comp_4_name = "";
|
||
|
||
setAttrs({
|
||
"stat_1": stat_1,
|
||
"stat_2": stat_2,
|
||
"stat_3": stat_3,
|
||
"stat_4": stat_4,
|
||
"stat_1_name": stat_1_name,
|
||
"stat_2_name": stat_2_name,
|
||
"stat_3_name": stat_3_name,
|
||
"stat_4_name": stat_4_name,
|
||
"comp_1": comp_1,
|
||
"comp_2": comp_2,
|
||
"comp_3": comp_3,
|
||
"comp_4": comp_4,
|
||
"comp_1_name": comp_1_name,
|
||
"comp_2_name": comp_2_name,
|
||
"comp_3_name": comp_3_name,
|
||
"comp_4_name": comp_4_name
|
||
});
|
||
});
|
||
});
|
||
</script>
|
||
|
||
<!-- Roll modifier / MAJ Stats -->
|
||
<script type="text/worker">
|
||
|
||
on("sheet:opened", function(eventInfo){
|
||
setAttrs({
|
||
rollmodifier: "?{Modificateur|0|+10|+20|+30|+40|+50|-10|-20|-30|-40|-50}",
|
||
});
|
||
});
|
||
|
||
on("sheet:opened", function() {
|
||
|
||
getAttrs(["page"], function(values) {
|
||
|
||
let page = parseInt(values["page"]) || 0;
|
||
let jet_gm = 0;
|
||
let gm = " ";
|
||
|
||
if (page == 8) page = 0;
|
||
|
||
setAttrs({
|
||
"page": page,
|
||
"jet_gm": jet_gm,
|
||
"gm": gm
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:jet_gm", function() {
|
||
|
||
getAttrs(["jet_gm"], function(values) {
|
||
|
||
let jet_gm = parseInt(values["jet_gm"]) || 0;
|
||
|
||
if (jet_gm == 1) gm = "/w gm";
|
||
else gm = " ";
|
||
|
||
setAttrs({
|
||
"gm": gm
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:pdv", function() {
|
||
|
||
getAttrs(["pdv", "pdv_maxi"], function(values) {
|
||
|
||
let pdv = parseInt(values["pdv"]) || 0;
|
||
let pdv_maxi = parseInt(values["pdv_maxi"]) || 0;
|
||
let malus_blessure = 0;
|
||
|
||
if (pdv <= pdv_maxi * 0.25) {
|
||
malus_blessure = -10; // Moins de 25%
|
||
} else if (pdv <= pdv_maxi * 0.5) {
|
||
malus_blessure = -5; // Moins de 50%
|
||
}
|
||
|
||
setAttrs({
|
||
"malus_blessure": malus_blessure
|
||
});
|
||
});
|
||
});
|
||
|
||
|
||
on("sheet:opened change:stat_1 change:stat_2 change:stat_3 change:stat_4 change:comp_1 change:comp_2 change:comp_3 change:comp_4 change:force change:dexterite change:constitution change:intelligence change:charisme change:volonte change:stat_athletisme change:stat_baratin change:stat_bibliotheque change:stat_chercher change:stat_combat_cac change:stat_combat_pugilat change:stat_combat_distance change:stat_discretion change:stat_endurance change:stat_esquive change:stat_langue_ancienne change:stat_langue change:stat_medecine change:stat_metier change:stat_perception change:stat_psychologie change:stat_science change:stat_sciences_occultes change:stat_survie change:stat_vigilance change:xp change:bonus_xp_pdv change: bonus_xp_pdm", function() {
|
||
|
||
getAttrs(["bonus_xp_pdv", "bonus_xp_pdm", "stat_1", "stat_2", "stat_3", "stat_4", "comp_1", "comp_2", "comp_3", "comp_4", "force", "dexterite", "constitution", "intelligence", "charisme", "volonte", "sm", "stat_athletisme", "stat_baratin", "stat_bibliotheque", "stat_chercher", "stat_combat_cac", "stat_combat_pugilat", "stat_combat_distance", "stat_discretion", "stat_endurance", "stat_esquive", "stat_langue_ancienne", "stat_langue", "stat_medecine", "stat_metier", "stat_perception", "stat_psychologie", "stat_science", "stat_sciences_occultes", "stat_survie", "stat_vigilance", "xp"], function(values) {
|
||
let stat_1 = parseInt(values["stat_1"]) || 0;
|
||
let stat_2 = parseInt(values["stat_2"]) || 0;
|
||
let stat_3 = parseInt(values["stat_3"]) || 0;
|
||
let stat_4 = parseInt(values["stat_4"]) || 0;
|
||
let comp_1 = parseInt(values["comp_1"]) || 0;
|
||
let comp_2 = parseInt(values["comp_2"]) || 0;
|
||
let comp_3 = parseInt(values["comp_3"]) || 0;
|
||
let comp_4 = parseInt(values["comp_4"]) || 0;
|
||
let xp = parseInt(values["xp"]) || 0;
|
||
let bonus_xp_pdv = parseInt(values["bonus_xp_pdv"]) || 0;
|
||
let bonus_xp_pdm = parseInt(values["bonus_xp_pdm"]) || 0;
|
||
let force = parseInt(values["force"]) || 0;
|
||
let dexterite = parseInt(values["dexterite"]) || 0;
|
||
let constitution = parseInt(values["constitution"]) || 0;
|
||
let intelligence = parseInt(values["intelligence"]) || 0;
|
||
let charisme = parseInt(values["charisme"]) || 0;
|
||
let volonte = parseInt(values["volonte"]) || 0;
|
||
let sm = parseInt(values["sm"]) || 0;
|
||
let stat_athletisme = parseInt(values["stat_athletisme"]) || 0;
|
||
let stat_baratin = parseInt(values["stat_baratin"]) || 0;
|
||
let stat_bibliotheque = parseInt(values["stat_bibliotheque"]) || 0;
|
||
let stat_chercher = parseInt(values["stat_chercher"]) || 0;
|
||
let stat_combat_cac = parseInt(values["stat_combat_cac"]) || 0;
|
||
let stat_combat_pugilat = parseInt(values["stat_combat_pugilat"]) || 0;
|
||
let stat_combat_distance = parseInt(values["stat_combat_distance"]) || 0;
|
||
let stat_discretion = parseInt(values["stat_discretion"]) || 0;
|
||
let stat_endurance = parseInt(values["stat_endurance"]) || 0;
|
||
let stat_esquive = parseInt(values["stat_esquive"]) || 0;
|
||
let stat_langue_ancienne = parseInt(values["stat_langue_ancienne"]) || 0;
|
||
let stat_langue = parseInt(values["stat_langue"]) || 0;
|
||
let stat_medecine = parseInt(values["stat_medecine"]) || 0;
|
||
let stat_metier = parseInt(values["stat_metier"]) || 0;
|
||
let stat_perception = parseInt(values["stat_perception"]) || 0;
|
||
let stat_psychologie = parseInt(values["stat_psychologie"]) || 0;
|
||
let stat_science = parseInt(values["stat_science"]) || 0;
|
||
let stat_sciences_occultes = parseInt(values["stat_sciences_occultes"]) || 0;
|
||
let stat_survie = parseInt(values["stat_survie"]) || 0;
|
||
let stat_vigilance = parseInt(values["stat_vigilance"]) || 0;
|
||
|
||
let pdv_maxi = Math.floor(constitution / 5) + bonus_xp_pdv;
|
||
let pdm_maxi = Math.floor(volonte / 5) + bonus_xp_pdm;
|
||
let sm_maxi = 100-intelligence;
|
||
let mouvement = Math.floor(dexterite/10)*2;
|
||
let bonus_force = Math.floor(force/10);
|
||
let bonus_dexterite = Math.floor(dexterite/10);
|
||
let points_carac = force + dexterite + constitution + intelligence + charisme + volonte;
|
||
let points_comp = stat_athletisme + stat_baratin + stat_bibliotheque + stat_chercher + stat_combat_cac + stat_combat_pugilat + stat_combat_distance + stat_discretion + stat_endurance + stat_esquive + stat_langue_ancienne + stat_langue + stat_medecine + stat_metier + stat_perception + stat_psychologie + stat_science + stat_sciences_occultes + stat_survie + stat_vigilance;
|
||
|
||
let athletisme_force = Math.floor(stat_athletisme + (force/2));
|
||
let athletisme_dexterite = Math.floor(stat_athletisme + (dexterite/2));
|
||
let baratin_charisme = Math.floor(stat_baratin + (charisme/2));
|
||
let baratin_force = Math.floor(stat_baratin + (force/2));
|
||
let bibliotheque = Math.floor(stat_bibliotheque + (intelligence/2));
|
||
let chercher = Math.floor(stat_chercher + (intelligence/2));
|
||
let combat_cac_dexterite = Math.floor(stat_combat_cac + (dexterite/2));
|
||
let combat_cac_force = Math.floor(stat_combat_cac + (force/2));
|
||
let combat_pugilat = Math.floor(stat_combat_pugilat + (dexterite/2));
|
||
let combat_distance = Math.floor(stat_combat_distance + (dexterite/2));
|
||
let discretion = Math.floor(stat_discretion + (dexterite/2));
|
||
let endurance = Math.floor(stat_endurance + (constitution/2));
|
||
let esquive = Math.floor(stat_esquive + (dexterite/2));
|
||
let langue_ancienne_intelligence = Math.floor(stat_langue_ancienne + (intelligence/2));
|
||
let langue_ancienne_volonte = Math.floor(stat_langue_ancienne + (volonte/2));
|
||
let langue = Math.floor(stat_langue + (intelligence/2));
|
||
let medecine = Math.floor(stat_medecine + (intelligence/2));
|
||
let metier_intelligence = Math.floor(stat_metier + (intelligence/2));
|
||
let metier_volonte = Math.floor(stat_metier + (volonte/2));
|
||
let perception = Math.floor(stat_perception + (volonte/2));
|
||
let psychologie = Math.floor(stat_psychologie + (intelligence/2));
|
||
let science = Math.floor(stat_science + (intelligence/2));
|
||
let sciences_occultes = Math.floor(stat_sciences_occultes + (volonte/2));
|
||
let survie = Math.floor(stat_survie + (intelligence/2));
|
||
let vigilance = Math.floor(stat_vigilance + (dexterite/2));
|
||
let custom_1 = Math.floor(stat_1 + (comp_1/2));
|
||
let custom_2 = Math.floor(stat_2 + (comp_2/2));
|
||
let custom_3 = Math.floor(stat_3 + (comp_3/2));
|
||
let custom_4 = Math.floor(stat_4 + (comp_4/2));
|
||
|
||
|
||
setAttrs({
|
||
"pdv_maxi": pdv_maxi,
|
||
"pdm_maxi": pdm_maxi,
|
||
"sm_maxi": sm_maxi,
|
||
"mouvement": mouvement,
|
||
"bonus_force":bonus_force,
|
||
"bonus_dexterite":bonus_dexterite,
|
||
"athletisme_force": athletisme_force,
|
||
"athletisme_dexterite": athletisme_dexterite,
|
||
"baratin_charisme": baratin_charisme,
|
||
"baratin_force": baratin_force,
|
||
"bibliotheque": bibliotheque,
|
||
"chercher": chercher,
|
||
"combat_cac_dexterite": combat_cac_dexterite,
|
||
"combat_cac_force": combat_cac_force,
|
||
"combat_pugilat": combat_pugilat,
|
||
"combat_distance": combat_distance,
|
||
"discretion": discretion,
|
||
"endurance": endurance,
|
||
"esquive": esquive,
|
||
"langue_ancienne_intelligence": langue_ancienne_intelligence,
|
||
"langue_ancienne_volonte": langue_ancienne_volonte,
|
||
"langue": langue,
|
||
"medecine": medecine,
|
||
"metier_intelligence": metier_intelligence,
|
||
"metier_volonte": metier_volonte,
|
||
"perception": perception,
|
||
"psychologie": psychologie,
|
||
"science": science,
|
||
"sciences_occultes": sciences_occultes,
|
||
"survie": survie,
|
||
"vigilance": vigilance,
|
||
"custom_1": custom_1,
|
||
"custom_2": custom_2,
|
||
"custom_3": custom_3,
|
||
"custom_4": custom_4,
|
||
"points_carac": points_carac,
|
||
"points_comp": points_comp,
|
||
"xp_temp": xp
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:force_base change:dexterite_base change:constitution_base change:intelligence_base change:charisme_base change:volonte_base change:stat_athletisme_base change:stat_baratin_base change:stat_bibliotheque_base change:stat_chercher_base change:stat_combat_cac_base change:stat_combat_pugilat_base change:stat_combat_distance_base change:stat_discretion_base change:stat_endurance_base change:stat_esquive_base change:stat_langue_ancienne_base change:stat_langue_base change:stat_medecine_base change:stat_metier_base change:stat_perception_base change:stat_psychologie_base change:stat_science_base change:stat_sciences_occultes_base change:stat_survie_base change:stat_vigilance_base ", function() {
|
||
|
||
getAttrs(["force_base", "dexterite_base", "constitution_base", "intelligence_base", "charisme_base", "volonte_base", "stat_athletisme_base", "stat_baratin_base", "stat_bibliotheque_base", "stat_chercher_base", "stat_combat_cac_base", "stat_combat_pugilat_base", "stat_combat_distance_base", "stat_discretion_base", "stat_endurance_base", "stat_esquive_base", "stat_langue_ancienne_base", "stat_langue_base", "stat_medecine_base", "stat_metier_base", "stat_perception_base", "stat_psychologie_base", "stat_science_base", "stat_sciences_occultes_base", "stat_survie_base", "stat_vigilance_base"], function(values) {
|
||
|
||
let force_base = parseInt(values["force_base"]) || 0;
|
||
let dexterite_base = parseInt(values["dexterite_base"]) || 0;
|
||
let constitution_base = parseInt(values["constitution_base"]) || 0;
|
||
let intelligence_base = parseInt(values["intelligence_base"]) || 0;
|
||
let charisme_base = parseInt(values["charisme_base"]) || 0;
|
||
let volonte_base = parseInt(values["volonte_base"]) || 0;
|
||
let stat_athletisme_base = parseInt(values["stat_athletisme_base"]) || 0;
|
||
let stat_baratin_base = parseInt(values["stat_baratin_base"]) || 0;
|
||
let stat_bibliotheque_base = parseInt(values["stat_bibliotheque_base"]) || 0;
|
||
let stat_chercher_base = parseInt(values["stat_chercher_base"]) || 0;
|
||
let stat_combat_cac_base = parseInt(values["stat_combat_cac_base"]) || 0;
|
||
let stat_combat_pugilat_base = parseInt(values["stat_combat_pugilat_base"]) || 0;
|
||
let stat_combat_distance_base = parseInt(values["stat_combat_distance_base"]) || 0;
|
||
let stat_discretion_base = parseInt(values["stat_discretion_base"]) || 0;
|
||
let stat_endurance_base = parseInt(values["stat_endurance_base"]) || 0;
|
||
let stat_esquive_base = parseInt(values["stat_esquive_base"]) || 0;
|
||
let stat_langue_ancienne_base = parseInt(values["stat_langue_ancienne_base"]) || 0;
|
||
let stat_langue_base = parseInt(values["stat_langue_base"]) || 0;
|
||
let stat_medecine_base = parseInt(values["stat_medecine_base"]) || 0;
|
||
let stat_metier_base = parseInt(values["stat_metier_base"]) || 0;
|
||
let stat_perception_base = parseInt(values["stat_perception_base"]) || 0;
|
||
let stat_psychologie_base = parseInt(values["stat_psychologie_base"]) || 0;
|
||
let stat_science_base = parseInt(values["stat_science_base"]) || 0;
|
||
let stat_sciences_occultes_base = parseInt(values["stat_sciences_occultes_base"]) || 0;
|
||
let stat_survie_base = parseInt(values["stat_survie_base"]) || 0;
|
||
let stat_vigilance_base = parseInt(values["stat_vigilance_base"]) || 0;
|
||
|
||
let pdv_maxi_base = Math.floor(constitution_base / 5);
|
||
let pdm_maxi_base = Math.floor(volonte_base / 5);
|
||
let sm_maxi_base = 100-intelligence_base;
|
||
let bonus_force_base = Math.floor(force_base/10);
|
||
let bonus_dexterite_base = Math.floor(dexterite_base/10);
|
||
let points_carac_base = force_base + dexterite_base + constitution_base + intelligence_base + charisme_base + volonte_base;
|
||
let points_comp_base = stat_athletisme_base + stat_baratin_base + stat_bibliotheque_base + stat_chercher_base + stat_combat_cac_base + stat_combat_pugilat_base + stat_combat_distance_base + stat_discretion_base + stat_endurance_base + stat_esquive_base + stat_langue_ancienne_base + stat_langue_base + stat_medecine_base + stat_metier_base + stat_perception_base + stat_psychologie_base + stat_science_base + stat_sciences_occultes_base + stat_survie_base + stat_vigilance_base;
|
||
|
||
|
||
setAttrs({
|
||
"pdv_maxi_base": pdv_maxi_base,
|
||
"pdm_maxi_base": pdm_maxi_base,
|
||
"sm_maxi_base": sm_maxi_base,
|
||
"bonus_force_base": bonus_force_base,
|
||
"bonus_dexterite_base": bonus_dexterite_base,
|
||
"points_carac_base": points_carac_base,
|
||
"points_comp_base": points_comp_base
|
||
});
|
||
});
|
||
});
|
||
</script>
|
||
|
||
<!-- MAJ equipement -->
|
||
<script type="text/worker">
|
||
on("change:armes_nom_1 change:armes_nom_2 change:armes_nom_3 change:armes_nom_4", function (eventInfo) {
|
||
const changedAttribute = eventInfo.sourceAttribute; // Attribut déclencheur
|
||
|
||
if (changedAttribute.startsWith("armes_nom_")) {
|
||
getAttrs([changedAttribute], function (values) {
|
||
const armeNom = parseInt(values[changedAttribute]) || 0;
|
||
let arme = {
|
||
designation: "",
|
||
type: "",
|
||
degats: " ",
|
||
portee: "",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
|
||
// Détermine les valeurs en fonction du arme sélectionné
|
||
switch (armeNom) {
|
||
// Dague
|
||
case 1:
|
||
arme = {
|
||
designation: "Dague",
|
||
type: "Dague",
|
||
degats: "1D4",
|
||
portee: "",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Épée courte
|
||
case 2:
|
||
arme = {
|
||
designation: "Épée courte",
|
||
type: "Épée courte",
|
||
degats: "1D6",
|
||
portee: "",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Épée longue
|
||
case 3:
|
||
arme = {
|
||
designation: "Épée longue",
|
||
type: "Épée longue",
|
||
degats: "1D6 +1",
|
||
portee: "",
|
||
effet: "Ignore 1 point d'armure",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Hache
|
||
case 4:
|
||
arme = {
|
||
designation: "Hache",
|
||
type: "Hache",
|
||
degats: "1D8",
|
||
portee: "",
|
||
effet: "Sur une attaque critique, brise un bouclier",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Lance
|
||
case 5:
|
||
arme = {
|
||
designation: "Lance",
|
||
type: "Lance",
|
||
degats: "1D6",
|
||
portee: "2m",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Masse d'armes
|
||
case 6:
|
||
arme = {
|
||
designation: "Masse d'armes",
|
||
type: "Masse d'armes",
|
||
degats: "1D6",
|
||
portee: "",
|
||
effet: "Ignore 2 points d'armure",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Arc court
|
||
case 7:
|
||
arme = {
|
||
designation: "Arc court",
|
||
type: "Arc court",
|
||
degats: "1D6",
|
||
portee: "20m",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Arc long
|
||
case 8:
|
||
arme = {
|
||
designation: "Arc long",
|
||
type: "Arc long",
|
||
degats: "1D6 +1",
|
||
portee: "30m",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
break;
|
||
// Arbalète
|
||
case 9:
|
||
arme = {
|
||
designation: "Arbalète",
|
||
type: "Arbalète",
|
||
degats: "1D8",
|
||
portee: "40m",
|
||
effet: "Ignore 3 points d'armure",
|
||
notes: ""
|
||
};
|
||
break;
|
||
|
||
// Mains nues
|
||
case 10:
|
||
arme = {
|
||
designation: "Mains nues",
|
||
type: "Mains nues",
|
||
degats: "0",
|
||
portee: "",
|
||
effet: "",
|
||
notes: ""
|
||
};
|
||
break;
|
||
}
|
||
|
||
// Détermine l'index de l'attribut modifié (ex. "1", "2", ou "3")
|
||
const num = changedAttribute.match(/\d+/)[0];
|
||
|
||
// Met à jour uniquement les champs liés à l'attribut modifié
|
||
const updates = {};
|
||
updates[`armes_designation_${num}`] = arme.designation;
|
||
updates[`armes_type_${num}`] = arme.type;
|
||
updates[`armes_degats_${num}`] = arme.degats;
|
||
updates[`armes_portee_${num}`] = arme.portee;
|
||
updates[`armes_effet_${num}`] = arme.effet;
|
||
updates[`armes_notes_${num}`] = arme.notes;
|
||
|
||
setAttrs(updates);
|
||
});
|
||
}
|
||
});
|
||
|
||
on("change:armures_nom_1 change:armures_nom_2 change:armures_nom_3", function (eventInfo) {
|
||
const changedAttribute = eventInfo.sourceAttribute; // Attribut déclencheur
|
||
|
||
if (changedAttribute.startsWith("armures_nom_")) {
|
||
getAttrs([changedAttribute], function (values) {
|
||
const armureNom = parseInt(values[changedAttribute]) || 0;
|
||
let armure = {
|
||
designation: "",
|
||
type: "",
|
||
encaissement: "",
|
||
malus_dexterite: "",
|
||
malus_athletisme: "",
|
||
malus_combat_cac: "",
|
||
malus_combat_pugilat: "",
|
||
malus_combat_distance: "",
|
||
malus_discretion: "",
|
||
malus_esquive: "",
|
||
notes: ""
|
||
};
|
||
|
||
// Détermine les valeurs en fonction de l'armure sélectionnée
|
||
switch (armureNom) {
|
||
// Vetements renforcés
|
||
case 1:
|
||
armure = {
|
||
designation: "Vêtements renforcés",
|
||
type: "Vêtements renforcés",
|
||
encaissement: "1",
|
||
malus_dexterite: "0",
|
||
malus_athletisme: "0",
|
||
malus_combat_cac: "0",
|
||
malus_combat_pugilat: "0",
|
||
malus_combat_distance: "0",
|
||
malus_discretion: "0",
|
||
malus_esquive: "0",
|
||
notes: "Peu encombrant, protection minimale"
|
||
};
|
||
break;
|
||
// Cuir bouilli
|
||
case 2:
|
||
armure = {
|
||
designation: "Cuir bouilli",
|
||
type: "Cuir bouilli",
|
||
encaissement: "2",
|
||
malus_dexterite: "5",
|
||
malus_athletisme: "0",
|
||
malus_combat_cac: "0",
|
||
malus_combat_pugilat: "0",
|
||
malus_combat_distance: "0",
|
||
malus_discretion: "0",
|
||
malus_esquive: "0",
|
||
notes: "Couramment utilisé par les chasseurs"
|
||
};
|
||
break;
|
||
// Armure de mailles
|
||
case 3:
|
||
armure = {
|
||
designation: "Armure de maille",
|
||
type: "Armure de maille",
|
||
encaissement: "4",
|
||
malus_dexterite: "10",
|
||
malus_athletisme: "5",
|
||
malus_combat_cac: "2",
|
||
malus_combat_pugilat: "5",
|
||
malus_combat_distance: "5",
|
||
malus_discretion: "5",
|
||
malus_esquive: "5",
|
||
notes: "Équilibre entre protection et mobilité"
|
||
};
|
||
break;
|
||
// Armure de plaque
|
||
case 4:
|
||
armure = {
|
||
designation: "Armure de plaques",
|
||
type: "Armure de plaques",
|
||
encaissement: "6",
|
||
malus_dexterite: "15",
|
||
malus_athletisme: "10",
|
||
malus_combat_cac: "5",
|
||
malus_combat_pugilat: "10",
|
||
malus_combat_distance: "10",
|
||
malus_discretion: "10",
|
||
malus_esquive: "10",
|
||
notes: "Lourde, mais excellente protection"
|
||
};
|
||
break;
|
||
}
|
||
|
||
// Détermine l'index de l'attribut modifié (ex. "1", "2", ou "3")
|
||
const num = changedAttribute.match(/\d+/)[0];
|
||
|
||
// Met à jour uniquement les champs liés à l'attribut modifié
|
||
const updates = {};
|
||
updates[`armures_designation_${num}`] = armure.designation;
|
||
updates[`armures_type_${num}`] = armure.type;
|
||
updates[`armures_encaissement_${num}`] = armure.encaissement;
|
||
updates[`armures_malus_dexterite_${num}`] = armure.malus_dexterite;
|
||
updates[`armures_malus_athletisme_${num}`] = armure.malus_athletisme;
|
||
updates[`armures_malus_combat_cac_${num}`] = armure.malus_combat_cac;
|
||
updates[`armures_malus_combat_pugilat_${num}`] = armure.malus_combat_pugilat;
|
||
updates[`armures_malus_combat_distance_${num}`] = armure.malus_combat_distance;
|
||
updates[`armures_malus_discretion_${num}`] = armure.malus_discretion;
|
||
updates[`armures_malus_esquive_${num}`] = armure.malus_esquive;
|
||
updates[`armures_notes_${num}`] = armure.notes;
|
||
|
||
setAttrs(updates);
|
||
});
|
||
}
|
||
});
|
||
|
||
on("change:boucliers_nom_1 change:boucliers_nom_2", function (eventInfo) {
|
||
const changedAttribute = eventInfo.sourceAttribute; // Attribut déclencheur
|
||
|
||
if (changedAttribute.startsWith("boucliers_nom_")) {
|
||
getAttrs([changedAttribute], function (values) {
|
||
const bouclierNom = parseInt(values[changedAttribute]) || 0;
|
||
let bouclier = {
|
||
designation: "",
|
||
type: "",
|
||
bonus_parade: "",
|
||
malus_esquive: "",
|
||
notes: ""
|
||
};
|
||
|
||
// Détermine les valeurs en fonction du bouclier sélectionné
|
||
switch (bouclierNom) {
|
||
// Bouclier rond
|
||
case 1:
|
||
bouclier = {
|
||
designation: "Bouclier rond",
|
||
type: "Bouclier rond",
|
||
bonus_parade: "1",
|
||
malus_esquive: "5",
|
||
notes: "Facile à manier, améliore la défense"
|
||
};
|
||
break;
|
||
// Pavois
|
||
case 2:
|
||
bouclier = {
|
||
designation: "Pavois",
|
||
type: "Pavois",
|
||
bonus_parade: "2",
|
||
malus_esquive: "10",
|
||
notes: "Idéal pour tenir une position défensive"
|
||
};
|
||
break;
|
||
}
|
||
|
||
// Détermine l'index de l'attribut modifié (ex. "1" ou "2")
|
||
const num = changedAttribute.match(/\d+/)[0];
|
||
|
||
// Met à jour uniquement les champs liés à l'attribut modifié
|
||
const updates = {};
|
||
updates[`boucliers_designation_${num}`] = bouclier.designation;
|
||
updates[`boucliers_type_${num}`] = bouclier.type;
|
||
updates[`boucliers_bonus_parade_${num}`] = bouclier.bonus_parade;
|
||
updates[`boucliers_malus_esquive_${num}`] = bouclier.malus_esquive;
|
||
updates[`boucliers_notes_${num}`] = bouclier.notes;
|
||
|
||
setAttrs(updates);
|
||
});
|
||
}
|
||
});
|
||
|
||
on("change:armures_nom_1 change:armures_nom_2 change:armures_nom_3 change:armures_equipe_1 change:armures_equipe_2 change:armures_equipe_3 change:armures_encaissement_1 change:armures_malus_athletisme_1 change:armures_malus_combat_cac_1 change:armures_malus_combat_pugilat_1 change:armures_malus_combat_pugilat_1 change:armures_malus_combat_distance_1 change:armures_malus_discretion_1 change:armures_malus_esquive_1 change:armures_encaissement_2 change:armures_malus_athletisme_2 change:armures_malus_combat_cac_2 change:armures_malus_combat_pugilat_2 change:armures_malus_combat_pugilat_2 change:armures_malus_combat_distance_2 change:armures_malus_discretion_2 change:armures_malus_esquive_2 change:armures_encaissement_3 change:armures_malus_athletisme_3 change:armures_malus_combat_cac_3 change:armures_malus_combat_pugilat_3 change:armures_malus_combat_pugilat_3 change:armures_malus_combat_distance_3 change:armures_malus_discretion_3 change:armures_malus_esquive_3", function() {
|
||
|
||
getAttrs(["armures_nom_1","armures_nom_2","armures_nom_3","armures_encaissement_1", "armures_malus_dexterite_1", "armures_malus_athletisme_1", "armures_malus_combat_cac_1", "armures_malus_combat_pugilat_1", "armures_malus_combat_distance_1", "armures_malus_discretion_1", "armures_malus_esquive_1", "armures_encaissement_2", "armures_malus_dexterite_2", "armures_malus_athletisme_2", "armures_malus_combat_cac_2", "armures_malus_combat_pugilat_2", "armures_malus_combat_distance_2", "armures_malus_discretion_2", "armures_malus_esquive_2","armures_encaissement_3", "armures_malus_dexterite_3", "armures_malus_athletisme_3", "armures_malus_combat_cac_3", "armures_malus_combat_pugilat_3", "armures_malus_combat_distance_3", "armures_malus_discretion_3", "armures_malus_esquive_3", "armures_equipe_1", "armures_equipe_2", "armures_equipe_3"], function(values) {
|
||
let armures_encaissement_1 = parseInt(values["armures_encaissement_1"]) || 0;
|
||
let armures_malus_dexterite_1 = parseInt(values["armures_malus_dexterite_1"]) || 0;
|
||
let armures_malus_athletisme_1 = parseInt(values["armures_malus_athletisme_1"]) || 0;
|
||
let armures_malus_combat_cac_1 = parseInt(values["armures_malus_combat_cac_1"]) || 0;
|
||
let armures_malus_combat_pugilat_1 = parseInt(values["armures_malus_combat_pugilat_1"]) || 0;
|
||
let armures_malus_combat_distance_1 = parseInt(values["armures_malus_combat_distance_1"]) || 0;
|
||
let armures_malus_discretion_1 = parseInt(values["armures_malus_discretion_1"]) || 0;
|
||
let armures_malus_esquive_1 = parseInt(values["armures_malus_esquive_1"]) || 0;
|
||
let armures_equipe_1 = parseInt(values["armures_equipe_1"]) || 0;
|
||
let armures_nom_1 = parseInt(values["armures_nom_1"]) || 0;
|
||
|
||
let armures_encaissement_2 = parseInt(values["armures_encaissement_2"]) || 0;
|
||
let armures_malus_dexterite_2 = parseInt(values["armures_malus_dexterite_2"]) || 0;
|
||
let armures_malus_athletisme_2 = parseInt(values["armures_malus_athletisme_2"]) || 0;
|
||
let armures_malus_combat_cac_2 = parseInt(values["armures_malus_combat_cac_2"]) || 0;
|
||
let armures_malus_combat_pugilat_2 = parseInt(values["armures_malus_combat_pugilat_2"]) || 0;
|
||
let armures_malus_combat_distance_2 = parseInt(values["armures_malus_combat_distance_2"]) || 0;
|
||
let armures_malus_discretion_2 = parseInt(values["armures_malus_discretion_2"]) || 0;
|
||
let armures_malus_esquive_2 = parseInt(values["armures_malus_esquive_2"]) || 0;
|
||
let armures_equipe_2 = parseInt(values["armures_equipe_2"]) || 0;
|
||
let armures_nom_2 = parseInt(values["armures_nom_2"]) || 0;
|
||
|
||
let armures_encaissement_3 = parseInt(values["armures_encaissement_3"]) || 0;
|
||
let armures_malus_dexterite_3 = parseInt(values["armures_malus_dexterite_3"]) || 0;
|
||
let armures_malus_athletisme_3 = parseInt(values["armures_malus_athletisme_3"]) || 0;
|
||
let armures_malus_combat_cac_3 = parseInt(values["armures_malus_combat_cac_3"]) || 0;
|
||
let armures_malus_combat_pugilat_3 = parseInt(values["armures_malus_combat_pugilat_3"]) || 0;
|
||
let armures_malus_combat_distance_3 = parseInt(values["armures_malus_combat_distance_3"]) || 0;
|
||
let armures_malus_discretion_3 = parseInt(values["armures_malus_discretion_3"]) || 0;
|
||
let armures_malus_esquive_3 = parseInt(values["armures_malus_esquive_3"]) || 0;
|
||
let armures_equipe_3 = parseInt(values["armures_equipe_3"]) || 0;
|
||
let armures_nom_3 = parseInt(values["armures_nom_3"]) || 0;
|
||
|
||
|
||
if (armures_equipe_1 == 1)
|
||
total_armures_encaissement = armures_encaissement_1,
|
||
total_armures_malus_dexterite = armures_malus_dexterite_1,
|
||
total_armures_malus_athletisme = armures_malus_athletisme_1,
|
||
total_armures_malus_combat_cac = armures_malus_combat_cac_1,
|
||
total_armures_malus_combat_pugilat = armures_malus_combat_pugilat_1,
|
||
total_armures_malus_combat_distance = armures_malus_combat_distance_1,
|
||
total_armures_malus_discretion = armures_malus_discretion_1,
|
||
total_armures_malus_esquive = armures_malus_esquive_1,
|
||
armure_affichee = armures_nom_1,
|
||
armures_equipe_2 = 0,
|
||
armures_equipe_3 = 0;
|
||
|
||
else if (armures_equipe_2 == 1)
|
||
total_armures_encaissement = armures_encaissement_2,
|
||
total_armures_malus_dexterite = armures_malus_dexterite_2,
|
||
total_armures_malus_athletisme = armures_malus_athletisme_2,
|
||
total_armures_malus_combat_cac = armures_malus_combat_cac_2,
|
||
total_armures_malus_combat_pugilat = armures_malus_combat_pugilat_2,
|
||
total_armures_malus_combat_distance = armures_malus_combat_distance_2,
|
||
total_armures_malus_discretion = armures_malus_discretion_2,
|
||
total_armures_malus_esquive = armures_malus_esquive_2,
|
||
armure_affichee = armures_nom_2,
|
||
armures_equipe_1 = 0,
|
||
armures_equipe_3 = 0;
|
||
|
||
else if (armures_equipe_3 == 1)
|
||
total_armures_encaissement = armures_encaissement_3,
|
||
total_armures_malus_dexterite = armures_malus_dexterite_3,
|
||
total_armures_malus_athletisme = armures_malus_athletisme_3,
|
||
total_armures_malus_combat_cac = armures_malus_combat_cac_3,
|
||
total_armures_malus_combat_pugilat = armures_malus_combat_pugilat_3,
|
||
total_armures_malus_combat_distance = armures_malus_combat_distance_3,
|
||
total_armures_malus_discretion = armures_malus_discretion_3,
|
||
total_armures_malus_esquive = armures_malus_esquive_3,
|
||
armure_affichee = armures_nom_3,
|
||
armures_equipe_1 = 0,
|
||
armures_equipe_2 = 0;
|
||
|
||
else
|
||
total_armures_encaissement = 0,
|
||
total_armures_malus_dexterite = 0,
|
||
total_armures_malus_athletisme = 0,
|
||
total_armures_malus_combat_cac = 0,
|
||
total_armures_malus_combat_pugilat = 0,
|
||
total_armures_malus_combat_distance = 0,
|
||
total_armures_malus_discretion = 0,
|
||
total_armures_malus_esquive = 0,
|
||
armure_affichee = 0,
|
||
armures_equipe_1 = 0,
|
||
armures_equipe_2 = 0,
|
||
armures_equipe_3 = 0;
|
||
|
||
total_armures_malus_demi_dexterite = Math.floor(total_armures_malus_dexterite/2);
|
||
|
||
setAttrs({
|
||
"total_armures_encaissement": total_armures_encaissement,
|
||
"total_armures_malus_dexterite": total_armures_malus_dexterite,
|
||
"total_armures_malus_demi_dexterite": total_armures_malus_demi_dexterite,
|
||
"total_armures_malus_athletisme": total_armures_malus_athletisme,
|
||
"total_armures_malus_combat_cac": total_armures_malus_combat_cac,
|
||
"total_armures_malus_combat_pugilat": total_armures_malus_combat_pugilat,
|
||
"total_armures_malus_combat_distance": total_armures_malus_combat_distance,
|
||
"total_armures_malus_discretion": total_armures_malus_discretion,
|
||
"total_armures_malus_esquive": total_armures_malus_esquive,
|
||
"armure_affichee": armure_affichee,
|
||
"armures_equipe_1": armures_equipe_1,
|
||
"armures_equipe_2": armures_equipe_2,
|
||
"armures_equipe_3": armures_equipe_3
|
||
|
||
});
|
||
});
|
||
});
|
||
|
||
|
||
on("change:boucliers_nom_1 change:boucliers_nom_2 change:boucliers_equipe_1 change:boucliers_equipe_2 change:boucliers_bonus_parade_1 change:boucliers_bonus_parade_2 change:boucliers_malus_esquive_1 change:boucliers_malus_esquive_2", function() {
|
||
|
||
getAttrs(["boucliers_nom_1", "boucliers_nom_2", "boucliers_equipe_1", "boucliers_equipe_2", "boucliers_bonus_parade_1", "boucliers_bonus_parade_2", "boucliers_malus_esquive_1", "boucliers_malus_esquive_2"], function(values) {
|
||
|
||
let boucliers_equipe_1 = parseInt(values["boucliers_equipe_1"]) || 0;
|
||
let boucliers_equipe_2 = parseInt(values["boucliers_equipe_2"]) || 0;
|
||
let boucliers_nom_1 = parseInt(values["boucliers_nom_1"]) || 0;
|
||
let boucliers_nom_2 = parseInt(values["boucliers_nom_2"]) || 0;
|
||
let boucliers_bonus_parade_1 = parseInt(values["boucliers_bonus_parade_1"]) || 0;
|
||
let boucliers_bonus_parade_2 = parseInt(values["boucliers_bonus_parade_2"]) || 0;
|
||
let boucliers_malus_esquive_1 = parseInt(values["boucliers_malus_esquive_1"]) || 0;
|
||
let boucliers_malus_esquive_2 = parseInt(values["boucliers_malus_esquive_2"]) || 0;
|
||
|
||
|
||
if (boucliers_equipe_1 == 1)
|
||
total_boucliers_bonus_parade = boucliers_bonus_parade_1,
|
||
total_boucliers_malus_esquive = boucliers_malus_esquive_1,
|
||
bouclier_affichee = boucliers_nom_1,
|
||
boucliers_equipe_2 = 0;
|
||
|
||
else if (boucliers_equipe_2 == 1)
|
||
total_boucliers_bonus_parade = boucliers_bonus_parade_2,
|
||
total_boucliers_malus_esquive = boucliers_malus_esquive_2,
|
||
bouclier_affichee = boucliers_nom_2,
|
||
boucliers_equipe_1 = 0;
|
||
|
||
else
|
||
total_boucliers_bonus_parade = 0,
|
||
total_boucliers_malus_esquive = 0,
|
||
bouclier_affichee = 0;
|
||
|
||
|
||
setAttrs({
|
||
"total_boucliers_bonus_parade": total_boucliers_bonus_parade,
|
||
"total_boucliers_malus_esquive": total_boucliers_malus_esquive,
|
||
"bouclier_affichee": bouclier_affichee,
|
||
"boucliers_equipe_1": boucliers_equipe_1,
|
||
"boucliers_equipe_2": boucliers_equipe_2
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:constitution change:total_armures_encaissement change:total_boucliers_bonus_parade change:total_boucliers_malus_esquive change:total_armures_malus_esquive", function() {
|
||
|
||
getAttrs(["total_boucliers_bonus_parade", "total_boucliers_malus_esquive", "total_armures_malus_esquive", "total_armures_encaissement", "constitution"], function(values) {
|
||
|
||
let total_boucliers_bonus_parade = parseInt(values["total_boucliers_bonus_parade"]) || 0;
|
||
let total_boucliers_malus_esquive = parseInt(values["total_boucliers_malus_esquive"]) || 0;
|
||
let total_armures_malus_esquive = parseInt(values["total_armures_malus_esquive"]) || 0;
|
||
let total_armures_encaissement = parseInt(values["total_armures_encaissement"]) || 0;
|
||
let constitution = parseInt(values["constitution"]) || 0;
|
||
let bonus_parade_final = total_boucliers_bonus_parade;
|
||
let malus_esquive_final = total_boucliers_malus_esquive + total_armures_malus_esquive;
|
||
let encaissement = total_armures_encaissement + Math.floor(constitution/10);
|
||
|
||
|
||
setAttrs({
|
||
"bonus_parade_final": bonus_parade_final,
|
||
"malus_esquive_final": malus_esquive_final,
|
||
"encaissement": encaissement
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:aura", function() {
|
||
getAttrs(["aura"], function(values) {
|
||
let aura = parseInt(values["aura"]) || 0;
|
||
let valeur_aura = 0;
|
||
let niveau_aura = 0;
|
||
|
||
// Calcul de `valeur_aura` selon les plages définies
|
||
if (aura >= -12 && aura <= 12) {
|
||
valeur_aura = 0;
|
||
} else if (aura >= 13 && aura <= 25) {
|
||
valeur_aura = 1;
|
||
} else if (aura >= 26 && aura <= 49) {
|
||
valeur_aura = 2;
|
||
} else if (aura >= 50) {
|
||
valeur_aura = 3;
|
||
} else if (aura <= -13 && aura >= -25) {
|
||
valeur_aura = -1;
|
||
} else if (aura <= -26 && aura >= -49) {
|
||
valeur_aura = -2;
|
||
} else if (aura <= -50) {
|
||
valeur_aura = -3;
|
||
}
|
||
|
||
// Calcul de `niveau_aura` avec limitation entre -10 et 10
|
||
niveau_aura = Math.floor(aura / 5);
|
||
niveau_aura = Math.max(-10, Math.min(10, niveau_aura)); // Limite la plage entre -10 et 10
|
||
|
||
setAttrs({
|
||
"valeur_aura": valeur_aura,
|
||
"niveau_aura": niveau_aura
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:heresie_moins', function() {
|
||
getAttrs(["heresie"], function(values) {
|
||
let heresie = parseInt(values["heresie"]) || 0;
|
||
let heresie_mod = heresie - 1;
|
||
|
||
if (heresie_mod < 0) {
|
||
heresie_mod = 0;
|
||
}
|
||
|
||
setAttrs({
|
||
"heresie": heresie_mod
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:heresie_plus', function() {
|
||
getAttrs(["heresie", "aura"], function(values) {
|
||
let heresie = parseInt(values["heresie"]) || 0;
|
||
let aura = parseInt(values["aura"]) || 0;
|
||
let aura_mod = aura -1;
|
||
let heresie_mod = heresie + 1;
|
||
|
||
setAttrs({
|
||
"heresie": heresie_mod,
|
||
"aura": aura_mod
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:heroisme_moins', function() {
|
||
getAttrs(["heroisme"], function(values) {
|
||
let heroisme = parseInt(values["heroisme"]) || 0;
|
||
let heroisme_mod = heroisme - 1;
|
||
|
||
if (heroisme_mod < 0) {
|
||
heroisme_mod = 0;
|
||
}
|
||
|
||
setAttrs({
|
||
"heroisme": heroisme_mod
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:heroisme_plus', function() {
|
||
getAttrs(["heroisme", "aura"], function(values) {
|
||
let heroisme = parseInt(values["heroisme"]) || 0;
|
||
let aura = parseInt(values["aura"]) || 0;
|
||
let aura_mod = aura +1;
|
||
let heroisme_mod = heroisme + 1;
|
||
|
||
setAttrs({
|
||
"heroisme": heroisme_mod,
|
||
"aura": aura_mod
|
||
});
|
||
});
|
||
});
|
||
</script>
|
||
|
||
<!-- JET DE DÉS -->
|
||
<script type="text/worker">
|
||
on('clicked:roll-aura', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}} {{title=Aura}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{aura}[Aura]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
const statValue = Math.abs(stat.result);
|
||
computeObj.roll = mod.result + statValue;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-athletisme-force', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}} {{title=Athlétisme}} {{subheader=Force}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{athletisme_force}[Compétence]-@{total_armures_malus_athletisme}[Malus Armure]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-athletisme-dex', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}} {{title=Athlétisme}} {{subheader=Dextérité}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{athletisme_dexterite}[Compétence]-@{total_armures_malus_athletisme}[Armure - Malus Athlétisme]-@{total_armures_malus_demi_dexterite}[Armure - Malus Dextérité]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-baratin-charisme', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Baratin}} {{subheader=Charisme}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{baratin_charisme}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-baratin-force', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Baratin}} {{subheader=Force}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{baratin_force}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-bibliotheque', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Bibliothèque}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{bibliotheque}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-chercher', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Chercher}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{chercher}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-cac-dex', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{show_degat=oui}} {{title=Corps à corps}} {{subheader=Dextérité}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{combat_cac_dexterite}[Compétence]-@{total_armures_malus_combat_cac}[Armure - Malus CaC]-@{total_armures_malus_demi_dexterite}[Armure - Malus Dextérité]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}} {{arme1=[@{armes_designation_1}](~weapon_dmg_1)}} {{arme2=[@{armes_designation_2}](~weapon_dmg_2)}} {{arme3=[@{armes_designation_3}](~weapon_dmg_3)}} {{arme4=[@{armes_designation_4}](~weapon_dmg_4)}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-cac-force', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{show_degat=oui}} {{title=Corps à corps}} {{subheader=Force}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{combat_cac_force}[Compétence]-@{total_armures_malus_combat_cac}[Armure - Malus CaC]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}} {{arme1=[@{armes_designation_1}](~weapon_dmg_1)}} {{arme2=[@{armes_designation_2}](~weapon_dmg_2)}} {{arme3=[@{armes_designation_3}](~weapon_dmg_3)}} {{arme4=[@{armes_designation_4}](~weapon_dmg_4)}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-pugilat', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{show_degat=oui}} {{title=Pugilat}} {{subheader=Force}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{combat_pugilat}[Compétence]-@{total_armures_malus_combat_pugilat}[Armure - Malus Pugilat]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}} {{arme1=[@{armes_designation_1}](~weapon_dmg_1)}} {{arme2=[@{armes_designation_2}](~weapon_dmg_2)}} {{arme3=[@{armes_designation_3}](~weapon_dmg_3)}} {{arme4=[@{armes_designation_4}](~weapon_dmg_4)}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-distance', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{show_degat=oui}} {{title=Distance}} {{subheader=Dextérité}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{combat_distance}[Compétence]-@{total_armures_malus_combat_distance}[Armure - Malus Distance]-@{total_armures_malus_demi_dexterite}[Armure - Malus Dextérité]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}} {{arme1=[@{armes_designation_1}](~weapon_dmg_1_distance)}} {{arme2=[@{armes_designation_2}](~weapon_dmg_2_distance)}} {{arme3=[@{armes_designation_3}](~weapon_dmg_3_distance)}} {{arme4=[@{armes_designation_4}](~weapon_dmg_4_distance)}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-discretion', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Discrétion}} {{subheader=Dextérité}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{discretion}[Compétence]-@{total_armures_malus_discretion}[Armure - Malus Discrétion]-@{total_armures_malus_demi_dexterite}[Armure - Malus Dextérité]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_discretion}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-endurance', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Endurance}} {{subheader=Constitution}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{endurance}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}}{{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-esquive', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Esquive}} {{subheader=Dextérité}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{esquive}[Compétence]-@{total_armures_malus_esquive}[Armure - Malus Esquive]-@{total_boucliers_malus_esquive}[Bouclier - Malus Esquive]-@{total_armures_malus_demi_dexterite}[Armure - Malus Dextérité]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_discretion}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-ancienne-intel', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Langue ancienne}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{langue_ancienne_intelligence}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-ancienne-volonte', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Langue ancienne}} {{subheader=Volonté}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{langue_ancienne_volonte}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-langue', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Langue}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{langue}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-medecine', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Médecine}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{medecine}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-metier-intell', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Métier}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{metier_intelligence}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-metier-volonte', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Métier}} {{subheader=Volonté}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{metier_volonte}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-perception', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Perception}} {{subheader=Volonté}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{perception}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-psychologie', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Psychologie}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{psychologie}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-sciences', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Sciences}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{science}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-sciences-occultes', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Sciences occultes}} {{subheader=Volonté}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{sciences_occultes}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-survie', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Survie}} {{subheader=Intelligence}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{survie}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-vigilance', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Vigilance}} {{subheader=Dextérité}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{vigilance}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-custom1', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=@{stat_1_name}}} {{subheader=@{comp_1_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{custom_1}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-custom2', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=@{stat_2_name}}} {{subheader=@{comp_2_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{custom_2}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-custom3', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=@{stat_3_name}}} {{subheader=@{comp_3_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{custom_3}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-custom4', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=@{stat_4_name}}} {{subheader=@{comp_4_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{custom_4}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-force', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Force}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{force}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-dexterite', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Dextérité}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{dexterite}[Compétence]-@{total_armures_malus_demi_dexterite}[Armure - Malus Dextérité]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-constitution', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Constitution}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{constitution}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-intelligence', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Intelligence}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{intelligence}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-charisme', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Charisme}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{charisme}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-volonte', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Volonté}} {{subheader=@{character_name}}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{volonte}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{malus_armure=@{total_armures_malus_athletisme}}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus,malus_blessure} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result - malus_blessure.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:roll-sm', async (event) => {
|
||
const roll = await startRoll("@{gm} &{template:thanatos} {{jet=oui}} {{pnj=oui}} {{token=@{ctoken}}}{{title=Santé mentale}} {{subheader=Jet de Volonté}} {{roll=[[0[resultat]]]}} {{malus_blessure=[[@{malus_blessure}]]}} {{stat=[[@{volonte}[Compétence]]]}} {{des=[[1d100[Jet]]]}} {{mod=[[@{rollmodifier}[Modificateur]]]}} {{degre=[[0[resultat]]]}}");
|
||
const {stat,des,mod,malus} = roll.results;
|
||
const computeObj = {};
|
||
computeObj.roll = mod.result + stat.result;
|
||
|
||
const difference = computeObj.roll - des.result;
|
||
const degre = Math.floor(Math.abs(difference) / 10);
|
||
computeObj.degre = degre;
|
||
|
||
setAttrs({
|
||
bonus_reussite: degre
|
||
});
|
||
|
||
finishRoll(roll.rollId,computeObj);
|
||
})
|
||
|
||
on('clicked:hide_info', async (event) => {
|
||
getAttrs(["info_reduit"], function(values) {
|
||
let info_reduit = parseInt(values["info_reduit"]) || 0;
|
||
if (info_reduit == 0) info_reduit = 1;
|
||
else info_reduit = 0;
|
||
setAttrs({
|
||
"info_reduit": info_reduit
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:hide_hero', async (event) => {
|
||
getAttrs(["hero_reduit"], function(values) {
|
||
let hero_reduit = parseInt(values["hero_reduit"]) || 0;
|
||
if (hero_reduit == 0) hero_reduit = 1;
|
||
else hero_reduit = 0;
|
||
setAttrs({
|
||
"hero_reduit": hero_reduit
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:hide_carac', async (event) => {
|
||
getAttrs(["carac_reduit"], function(values) {
|
||
let carac_reduit = parseInt(values["carac_reduit"]) || 0;
|
||
if (carac_reduit == 0) carac_reduit = 1;
|
||
else carac_reduit = 0;
|
||
setAttrs({
|
||
"carac_reduit": carac_reduit
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:hide_competence', async (event) => {
|
||
getAttrs(["competence_reduit"], function(values) {
|
||
let competence_reduit = parseInt(values["competence_reduit"]) || 0;
|
||
if (competence_reduit == 0) competence_reduit = 1;
|
||
else competence_reduit = 0;
|
||
setAttrs({
|
||
"competence_reduit": competence_reduit
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:hide_armement', async (event) => {
|
||
getAttrs(["armement_reduit"], function(values) {
|
||
let armement_reduit = parseInt(values["armement_reduit"]) || 0;
|
||
if (armement_reduit == 0) armement_reduit = 1;
|
||
else armement_reduit = 0;
|
||
setAttrs({
|
||
"armement_reduit": armement_reduit
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:hide_inventaire', async (event) => {
|
||
getAttrs(["inventaire_reduit"], function(values) {
|
||
let inventaire_reduit = parseInt(values["inventaire_reduit"]) || 0;
|
||
if (inventaire_reduit == 0) inventaire_reduit = 1;
|
||
else inventaire_reduit = 0;
|
||
setAttrs({
|
||
"inventaire_reduit": inventaire_reduit
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:change_avatar', async (event) => {
|
||
getAttrs(["avatar"], function(values) {
|
||
let avatar = (parseInt(values["avatar"]) || 0) + 1;
|
||
avatar %= 7; // Remet à 0 après 6
|
||
setAttrs({
|
||
"avatar": avatar
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:fermer-popup', async (event) => {
|
||
getAttrs(["popup_sm"], function(values) {
|
||
let popup_sm = 0;
|
||
setAttrs({
|
||
"popup_sm": popup_sm
|
||
});
|
||
});
|
||
});
|
||
|
||
const pageMapping = {
|
||
"compendium_sm": 1,
|
||
"compendium_hero": 2,
|
||
"compendium_combat": 3,
|
||
"compendium_combat_tableaux": 4,
|
||
"compendium_aura_priere": 5,
|
||
"compendium_aura": 6,
|
||
"compendium_possession": 7,
|
||
"compendium_equipement": 8,
|
||
"compendium_armes": 9
|
||
};
|
||
|
||
Object.keys(pageMapping).forEach(button => {
|
||
on(`clicked:${button}`, async (event) => {
|
||
setAttrs({
|
||
"page_compendium": pageMapping[button]
|
||
});
|
||
});
|
||
});
|
||
|
||
|
||
</script>
|
||
|
||
<!-- GESTION PALIERS SM -->
|
||
<script type="text/worker">
|
||
on("change:intelligence change:sm", function() {
|
||
getAttrs(["intelligence", "sm", "alerte_sm_50", "alerte_sm_25", "alerte_sm_75"], function(values) {
|
||
|
||
let intelligence = parseInt(values["intelligence"]) || 0;
|
||
let sm = parseInt(values["sm"]) || 0;
|
||
let sm_maxi = 100 - intelligence; // Calcul du niveau maximal de santé mentale
|
||
let niveau_sm = Math.floor((sm / sm_maxi) * 100);
|
||
|
||
// Récupération des anciennes alertes
|
||
let old_alerte_sm_75 = parseInt(values["alerte_sm_75"]) || 0;
|
||
let old_alerte_sm_50 = parseInt(values["alerte_sm_50"]) || 0;
|
||
let old_alerte_sm_25 = parseInt(values["alerte_sm_25"]) || 0;
|
||
|
||
// Initialisation des nouvelles alertes
|
||
let new_alerte_sm_75 = 0;
|
||
let new_alerte_sm_50 = 0;
|
||
let new_alerte_sm_25 = 0;
|
||
|
||
// Attribut pour la gestion du popup
|
||
let popup_sm = "";
|
||
|
||
// Vérification des seuils et mise à jour des alertes
|
||
if (niveau_sm > 75) {
|
||
new_alerte_sm_75 = 1;
|
||
if (old_alerte_sm_75 === 0) popup_sm = "75";
|
||
}
|
||
if (niveau_sm <= 50 && niveau_sm > 25) {
|
||
new_alerte_sm_50 = 1;
|
||
if (old_alerte_sm_50 === 0) popup_sm = "50";
|
||
}
|
||
if (niveau_sm <= 25) {
|
||
new_alerte_sm_25 = 1;
|
||
if (old_alerte_sm_25 === 0) popup_sm = "25";
|
||
}
|
||
|
||
// Mise à jour des attributs
|
||
setAttrs({
|
||
"niveau_sm": niveau_sm,
|
||
"alerte_sm_75": new_alerte_sm_75,
|
||
"alerte_sm_50": new_alerte_sm_50,
|
||
"alerte_sm_25": new_alerte_sm_25,
|
||
"popup_sm": popup_sm // Attribut qui déclenche le popup
|
||
});
|
||
});
|
||
});
|
||
</script>
|
||
|
||
<!-- CREATION, XP ET LOCK ARMES-->
|
||
<script type="text/worker">
|
||
on('clicked:lock_arme1', async (event) => {
|
||
getAttrs(["arme1_etat"], function(values) {
|
||
let arme1_etat = parseInt(values["arme1_etat"]) || 0;
|
||
if (arme1_etat == 0) arme1_etat = 1;
|
||
else arme1_etat = 0;
|
||
setAttrs({
|
||
"arme1_etat": arme1_etat
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:lock_arme2', async (event) => {
|
||
getAttrs(["arme2_etat"], function(values) {
|
||
let arme2_etat = parseInt(values["arme2_etat"]) || 0;
|
||
if (arme2_etat == 0) arme2_etat = 1;
|
||
else arme2_etat = 0;
|
||
setAttrs({
|
||
"arme2_etat": arme2_etat
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:lock_arme3', async (event) => {
|
||
getAttrs(["arme3_etat"], function(values) {
|
||
let arme3_etat = parseInt(values["arme3_etat"]) || 0;
|
||
if (arme3_etat == 0) arme3_etat = 1;
|
||
else arme3_etat = 0;
|
||
setAttrs({
|
||
"arme3_etat": arme3_etat
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:lock_arme4', async (event) => {
|
||
getAttrs(["arme4_etat"], function(values) {
|
||
let arme4_etat = parseInt(values["arme4_etat"]) || 0;
|
||
if (arme4_etat == 0) arme4_etat = 1;
|
||
else arme4_etat = 0;
|
||
setAttrs({
|
||
"arme4_etat": arme4_etat
|
||
});
|
||
});
|
||
});
|
||
|
||
|
||
on('clicked:creation_perso_temp', async (event) => {
|
||
getAttrs(["nouveau_personnage"], function(values) {
|
||
let nouveau_personnage = parseInt(values["nouveau_personnage"]) || 0;
|
||
if (nouveau_personnage == 0) nouveau_personnage = 1;
|
||
else nouveau_personnage = 0;
|
||
setAttrs({
|
||
"nouveau_personnage": nouveau_personnage
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:xp_temp", function() {
|
||
|
||
getAttrs(["xp_temp"], function(values) {
|
||
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0;
|
||
let blocage_xp = 0;
|
||
|
||
if (xp_temp < 0) blocage_xp = 1;
|
||
|
||
setAttrs({
|
||
"blocage_xp": blocage_xp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:valider_creation', async (event) => {
|
||
getAttrs(["nouveau_personnage", "force_base", "dexterite_base", "constitution_base", "intelligence_base", "charisme_base", "volonte_base", "stat_athletisme_base", "stat_baratin_base", "stat_bibliotheque_base", "stat_chercher_base", "stat_combat_cac_base", "stat_combat_pugilat_base", "stat_combat_distance_base", "stat_discretion_base", "stat_endurance_base", "stat_esquive_base", "stat_langue_ancienne_base", "stat_langue_base", "stat_medecine_base", "stat_metier_base", "stat_perception_base", "stat_psychologie_base", "stat_science_base", "stat_sciences_occultes_base", "stat_survie_base", "stat_vigilance_base", "pdv_maxi", "pdm_maxi", "sm_maxi"], function(values) {
|
||
let nouveau_personnage = 0;
|
||
let force = parseInt(values["force_base"]) || 0;
|
||
let dexterite = parseInt(values["dexterite_base"]) || 0;
|
||
let constitution = parseInt(values["constitution_base"]) || 0;
|
||
let intelligence = parseInt(values["intelligence_base"]) || 0;
|
||
let charisme = parseInt(values["charisme_base"]) || 0;
|
||
let volonte = parseInt(values["volonte_base"]) || 0;
|
||
let stat_athletisme = parseInt(values["stat_athletisme_base"]) || 0;
|
||
let stat_baratin = parseInt(values["stat_baratin_base"]) || 0;
|
||
let stat_bibliotheque = parseInt(values["stat_bibliotheque_base"]) || 0;
|
||
let stat_chercher = parseInt(values["stat_chercher_base"]) || 0;
|
||
let stat_combat_cac = parseInt(values["stat_combat_cac_base"]) || 0;
|
||
let stat_combat_pugilat = parseInt(values["stat_combat_pugilat_base"]) || 0;
|
||
let stat_combat_distance = parseInt(values["stat_combat_distance_base"]) || 0;
|
||
let stat_discretion = parseInt(values["stat_discretion_base"]) || 0;
|
||
let stat_endurance = parseInt(values["stat_endurance_base"]) || 0;
|
||
let stat_esquive = parseInt(values["stat_esquive_base"]) || 0;
|
||
let stat_langue_ancienne = parseInt(values["stat_langue_ancienne_base"]) || 0;
|
||
let stat_langue = parseInt(values["stat_langue_base"]) || 0;
|
||
let stat_medecine = parseInt(values["stat_medecine_base"]) || 0;
|
||
let stat_metier = parseInt(values["stat_metier_base"]) || 0;
|
||
let stat_perception = parseInt(values["stat_perception_base"]) || 0;
|
||
let stat_psychologie = parseInt(values["stat_psychologie_base"]) || 0;
|
||
let stat_science = parseInt(values["stat_science_base"]) || 0;
|
||
let stat_sciences_occultes = parseInt(values["stat_sciences_occultes_base"]) || 0;
|
||
let stat_survie = parseInt(values["stat_survie_base"]) || 0;
|
||
let stat_vigilance = parseInt(values["stat_vigilance_base"]) || 0;
|
||
|
||
let pdv_maxi = parseInt(values["pdv_maxi"]) || 0;
|
||
let pdm_maxi = parseInt(values["pdm_maxi"]) || 0;
|
||
let sm_maxi = parseInt(values["sm_maxi"]) || 0;
|
||
|
||
|
||
|
||
setAttrs({
|
||
"nouveau_personnage": nouveau_personnage,
|
||
"force": force,
|
||
"dexterite": dexterite,
|
||
"constitution": constitution,
|
||
"intelligence": intelligence,
|
||
"charisme": charisme,
|
||
"volonte": volonte,
|
||
"stat_athletisme": stat_athletisme,
|
||
"stat_baratin": stat_baratin,
|
||
"stat_bibliotheque": stat_bibliotheque,
|
||
"stat_chercher": stat_chercher,
|
||
"stat_combat_cac": stat_combat_cac,
|
||
"stat_combat_pugilat": stat_combat_pugilat,
|
||
"stat_combat_distance": stat_combat_distance,
|
||
"stat_discretion": stat_discretion,
|
||
"stat_endurance": stat_endurance,
|
||
"stat_esquive": stat_esquive,
|
||
"stat_langue_ancienne": stat_langue_ancienne,
|
||
"stat_langue": stat_langue,
|
||
"stat_medecine": stat_medecine,
|
||
"stat_metier": stat_metier,
|
||
"stat_perception": stat_perception,
|
||
"stat_psychologie": stat_psychologie,
|
||
"stat_science": stat_science,
|
||
"stat_sciences_occultes": stat_sciences_occultes,
|
||
"stat_survie": stat_survie,
|
||
"stat_vigilance": stat_vigilance,
|
||
"pdv": pdv_maxi,
|
||
"pdm": pdm_maxi,
|
||
"sm": sm_maxi,
|
||
"alerte_sm_75": 1
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:boutton_xp', async (event) => {
|
||
getAttrs(["force", "dexterite", "constitution", "intelligence", "charisme", "volonte", "stat_athletisme", "stat_baratin", "stat_bibliotheque", "stat_chercher", "stat_combat_cac", "stat_combat_pugilat", "stat_combat_distance", "stat_discretion", "stat_endurance", "stat_esquive", "stat_langue_ancienne", "stat_langue", "stat_medecine", "stat_metier", "stat_perception", "stat_psychologie", "stat_science", "stat_sciences_occultes", "stat_survie", "stat_vigilance", "pdv_maxi", "pdm_maxi", "xp"], function(values) {
|
||
let page = 8;
|
||
let force_temp = parseInt(values["force"]) || 0;
|
||
let dexterite_temp = parseInt(values["dexterite"]) || 0;
|
||
let constitution_temp = parseInt(values["constitution"]) || 0;
|
||
let intelligence_temp = parseInt(values["intelligence"]) || 0;
|
||
let charisme_temp = parseInt(values["charisme"]) || 0;
|
||
let volonte_temp = parseInt(values["volonte"]) || 0;
|
||
let stat_athletisme_temp = parseInt(values["stat_athletisme"]) || 0;
|
||
let stat_baratin_temp = parseInt(values["stat_baratin"]) || 0;
|
||
let stat_bibliotheque_temp = parseInt(values["stat_bibliotheque"]) || 0;
|
||
let stat_chercher_temp = parseInt(values["stat_chercher"]) || 0;
|
||
let stat_combat_cac_temp = parseInt(values["stat_combat_cac"]) || 0;
|
||
let stat_combat_pugilat_temp = parseInt(values["stat_combat_pugilat"]) || 0;
|
||
let stat_combat_distance_temp = parseInt(values["stat_combat_distance"]) || 0;
|
||
let stat_discretion_temp = parseInt(values["stat_discretion"]) || 0;
|
||
let stat_endurance_temp = parseInt(values["stat_endurance"]) || 0;
|
||
let stat_esquive_temp = parseInt(values["stat_esquive"]) || 0;
|
||
let stat_langue_ancienne_temp = parseInt(values["stat_langue_ancienne"]) || 0;
|
||
let stat_langue_temp = parseInt(values["stat_langue"]) || 0;
|
||
let stat_medecine_temp = parseInt(values["stat_medecine"]) || 0;
|
||
let stat_metier_temp = parseInt(values["stat_metier"]) || 0;
|
||
let stat_perception_temp = parseInt(values["stat_perception"]) || 0;
|
||
let stat_psychologie_temp = parseInt(values["stat_psychologie"]) || 0;
|
||
let stat_science_temp = parseInt(values["stat_science"]) || 0;
|
||
let stat_sciences_occultes_temp = parseInt(values["stat_sciences_occultes"]) || 0;
|
||
let stat_survie_temp = parseInt(values["stat_survie"]) || 0;
|
||
let stat_vigilance_temp = parseInt(values["stat_vigilance"]) || 0;
|
||
let pdv_maxi = parseInt(values["pdv_maxi"]) || 0;
|
||
let pdm_maxi = parseInt(values["pdm_maxi"]) || 0;
|
||
let xp_temp = parseInt(values["xp"]) || 0;
|
||
let blocage_xp = 0;
|
||
|
||
|
||
setAttrs({
|
||
"page": page,
|
||
"force_temp": force_temp,
|
||
"dexterite_temp": dexterite_temp,
|
||
"constitution_temp": constitution_temp,
|
||
"intelligence_temp": intelligence_temp,
|
||
"charisme_temp": charisme_temp,
|
||
"volonte_temp": volonte_temp,
|
||
"stat_athletisme_temp": stat_athletisme_temp,
|
||
"stat_baratin_temp": stat_baratin_temp,
|
||
"stat_bibliotheque_temp": stat_bibliotheque_temp,
|
||
"stat_chercher_temp": stat_chercher_temp,
|
||
"stat_combat_cac_temp": stat_combat_cac_temp,
|
||
"stat_combat_pugilat_temp": stat_combat_pugilat_temp,
|
||
"stat_combat_distance_temp": stat_combat_distance_temp,
|
||
"stat_discretion_temp": stat_discretion_temp,
|
||
"stat_endurance_temp": stat_endurance_temp,
|
||
"stat_esquive_temp": stat_esquive_temp,
|
||
"stat_langue_ancienne_temp": stat_langue_ancienne_temp,
|
||
"stat_langue_temp": stat_langue_temp,
|
||
"stat_medecine_temp": stat_medecine_temp,
|
||
"stat_metier_temp": stat_metier_temp,
|
||
"stat_perception_temp": stat_perception_temp,
|
||
"stat_psychologie_temp": stat_psychologie_temp,
|
||
"stat_science_temp": stat_science_temp,
|
||
"stat_sciences_occultes_temp": stat_sciences_occultes_temp,
|
||
"stat_survie_temp": stat_survie_temp,
|
||
"stat_vigilance_temp": stat_vigilance_temp,
|
||
"pdv_maxi_temp": pdv_maxi,
|
||
"pdm_maxi_temp": pdm_maxi,
|
||
"xp_temp": xp_temp,
|
||
"blocage_xp": blocage_xp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_force_plus', async (event) => {
|
||
getAttrs(["force_temp", "xp_temp"], function(values) {
|
||
let force_temp = parseInt(values["force_temp"]) || 0; // Force temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP
|
||
let dizaine = Math.floor(force_temp / 10); // Récupère la dizaine actuelle
|
||
let cout_xp = dizaine; // Coût pour passer au point suivant
|
||
|
||
if (force_temp == 9) cout_xp = dizaine +1;
|
||
else if (force_temp == 19) cout_xp = dizaine +1;
|
||
else if (force_temp == 29) cout_xp = dizaine +1;
|
||
else if (force_temp == 39) cout_xp = dizaine +1;
|
||
else if (force_temp == 49) cout_xp = dizaine +1;
|
||
else if (force_temp == 59) cout_xp = dizaine +1;
|
||
else if (force_temp == 69) cout_xp = dizaine +1;
|
||
else if (force_temp == 79) cout_xp = dizaine +1;
|
||
else if (force_temp == 89) cout_xp = dizaine +1;
|
||
else if (force_temp == 99) cout_xp = dizaine +1;
|
||
|
||
// Augmente la force temporaire et réduit l'XP (même si cela rend xp_temp négatif)
|
||
force_temp += 1; // Augmente la force temporaire
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"force_temp": force_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_force_minus', async (event) => {
|
||
getAttrs(["force", "force_temp", "xp_temp"], function(values) {
|
||
let force = parseInt(values["force"]) || 0; // Valeur réelle de force
|
||
let force_temp = parseInt(values["force_temp"]) || 0; // Force temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (force_temp > force) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let dizaine = Math.floor((force_temp - 1) / 10); // Dizaine du point précédent
|
||
let cout_xp = dizaine; // Coût pour ajouter ce point au départ
|
||
|
||
if ((force_temp - 1) % 10 === 9) {
|
||
cout_xp += 1; // Ajuste pour le palier supérieur (à la dizaine suivante)
|
||
}
|
||
|
||
// Diminue la force temporaire et augmente l'XP
|
||
force_temp -= 1; // Réduit la force temporaire
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"force_temp": force_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_dexterite_plus', async (event) => {
|
||
getAttrs(["dexterite_temp", "xp_temp"], function(values) {
|
||
let dexterite_temp = parseInt(values["dexterite_temp"]) || 0; // Dextérité temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP
|
||
let dizaine = Math.floor(dexterite_temp / 10); // Récupère la dizaine actuelle
|
||
let cout_xp = dizaine; // Coût pour passer au point suivant
|
||
|
||
// Augmente la dextérité temporaire et réduit l'XP (même si cela rend xp_temp négatif)
|
||
dexterite_temp += 1; // Augmente la dextérité temporaire
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"dexterite_temp": dexterite_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_dexterite_minus', async (event) => {
|
||
getAttrs(["dexterite", "dexterite_temp", "xp_temp"], function(values) {
|
||
let dexterite = parseInt(values["dexterite"]) || 0; // Valeur réelle de dextérité
|
||
let dexterite_temp = parseInt(values["dexterite_temp"]) || 0; // Dextérité temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (dexterite_temp > dexterite) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let dizaine = Math.floor((dexterite_temp - 1) / 10); // Dizaine du point précédent
|
||
let cout_xp = dizaine; // Coût pour ajouter ce point au départ
|
||
|
||
if ((dexterite_temp - 1) % 10 === 9) {
|
||
cout_xp += 1; // Ajuste pour le palier supérieur (à la dizaine suivante)
|
||
}
|
||
|
||
// Diminue la dextérité temporaire et augmente l'XP
|
||
dexterite_temp -= 1; // Réduit la dextérité temporaire
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"dexterite_temp": dexterite_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_constitution_plus', async (event) => {
|
||
getAttrs(["constitution_temp", "xp_temp"], function(values) {
|
||
let constitution_temp = parseInt(values["constitution_temp"]) || 0; // Constitution temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP
|
||
let dizaine = Math.floor(constitution_temp / 10); // Récupère la dizaine actuelle
|
||
let cout_xp = dizaine; // Coût pour passer au point suivant
|
||
|
||
// Augmente la constitution temporaire et réduit l'XP (même si cela rend xp_temp négatif)
|
||
constitution_temp += 1; // Augmente la constitution temporaire
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"constitution_temp": constitution_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_constitution_minus', async (event) => {
|
||
getAttrs(["constitution", "constitution_temp", "xp_temp"], function(values) {
|
||
let constitution = parseInt(values["constitution"]) || 0; // Valeur réelle de constitution
|
||
let constitution_temp = parseInt(values["constitution_temp"]) || 0; // Constitution temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (constitution_temp > constitution) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let dizaine = Math.floor((constitution_temp - 1) / 10); // Dizaine du point précédent
|
||
let cout_xp = dizaine; // Coût pour ajouter ce point au départ
|
||
|
||
if ((constitution_temp - 1) % 10 === 9) {
|
||
cout_xp += 1; // Ajuste pour le palier supérieur (à la dizaine suivante)
|
||
}
|
||
|
||
// Diminue la constitution temporaire et augmente l'XP
|
||
constitution_temp -= 1; // Réduit la constitution temporaire
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"constitution_temp": constitution_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_intelligence_plus', async (event) => {
|
||
getAttrs(["intelligence_temp", "xp_temp"], function(values) {
|
||
let intelligence_temp = parseInt(values["intelligence_temp"]) || 0; // Intelligence temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP
|
||
let dizaine = Math.floor(intelligence_temp / 10); // Récupère la dizaine actuelle
|
||
let cout_xp = dizaine; // Coût pour passer au point suivant
|
||
|
||
// Augmente l'intelligence temporaire et réduit l'XP (même si cela rend xp_temp négatif)
|
||
intelligence_temp += 1; // Augmente l'intelligence temporaire
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"intelligence_temp": intelligence_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_intelligence_minus', async (event) => {
|
||
getAttrs(["intelligence", "intelligence_temp", "xp_temp"], function(values) {
|
||
let intelligence = parseInt(values["intelligence"]) || 0; // Valeur réelle d'intelligence
|
||
let intelligence_temp = parseInt(values["intelligence_temp"]) || 0; // Intelligence temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (intelligence_temp > intelligence) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let dizaine = Math.floor((intelligence_temp - 1) / 10); // Dizaine du point précédent
|
||
let cout_xp = dizaine; // Coût pour ajouter ce point au départ
|
||
|
||
if ((intelligence_temp - 1) % 10 === 9) {
|
||
cout_xp += 1; // Ajuste pour le palier supérieur (à la dizaine suivante)
|
||
}
|
||
|
||
// Diminue l'intelligence temporaire et augmente l'XP
|
||
intelligence_temp -= 1; // Réduit l'intelligence temporaire
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"intelligence_temp": intelligence_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_charisme_plus', async (event) => {
|
||
getAttrs(["charisme_temp", "xp_temp"], function(values) {
|
||
let charisme_temp = parseInt(values["charisme_temp"]) || 0; // Charisme temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP
|
||
let dizaine = Math.floor(charisme_temp / 10); // Récupère la dizaine actuelle
|
||
let cout_xp = dizaine; // Coût pour passer au point suivant
|
||
|
||
// Augmente le charisme temporaire et réduit l'XP (même si cela rend xp_temp négatif)
|
||
charisme_temp += 1; // Augmente le charisme temporaire
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"charisme_temp": charisme_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_charisme_minus', async (event) => {
|
||
getAttrs(["charisme", "charisme_temp", "xp_temp"], function(values) {
|
||
let charisme = parseInt(values["charisme"]) || 0; // Valeur réelle de charisme
|
||
let charisme_temp = parseInt(values["charisme_temp"]) || 0; // Charisme temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (charisme_temp > charisme) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let dizaine = Math.floor((charisme_temp - 1) / 10); // Dizaine du point précédent
|
||
let cout_xp = dizaine; // Coût pour ajouter ce point au départ
|
||
|
||
if ((charisme_temp - 1) % 10 === 9) {
|
||
cout_xp += 1; // Ajuste pour le palier supérieur (à la dizaine suivante)
|
||
}
|
||
|
||
// Diminue le charisme temporaire et augmente l'XP
|
||
charisme_temp -= 1; // Réduit le charisme temporaire
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"charisme_temp": charisme_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_volonte_plus', async (event) => {
|
||
getAttrs(["volonte_temp", "xp_temp"], function(values) {
|
||
let volonte_temp = parseInt(values["volonte_temp"]) || 0; // Volonté temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP
|
||
let dizaine = Math.floor(volonte_temp / 10); // Récupère la dizaine actuelle
|
||
let cout_xp = dizaine; // Coût pour passer au point suivant
|
||
|
||
// Augmente la volonté temporaire et réduit l'XP (même si cela rend xp_temp négatif)
|
||
volonte_temp += 1; // Augmente la volonté temporaire
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"volonte_temp": volonte_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_volonte_minus', async (event) => {
|
||
getAttrs(["volonte", "volonte_temp", "xp_temp"], function(values) {
|
||
let volonte = parseInt(values["volonte"]) || 0; // Valeur réelle de volonté
|
||
let volonte_temp = parseInt(values["volonte_temp"]) || 0; // Volonté temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (volonte_temp > volonte) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let dizaine = Math.floor((volonte_temp - 1) / 10); // Dizaine du point précédent
|
||
let cout_xp = dizaine; // Coût pour ajouter ce point au départ
|
||
|
||
if ((volonte_temp - 1) % 10 === 9) {
|
||
cout_xp += 1; // Ajuste pour le palier supérieur (à la dizaine suivante)
|
||
}
|
||
|
||
// Diminue la volonté temporaire et augmente l'XP
|
||
volonte_temp -= 1; // Réduit la volonté temporaire
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"volonte_temp": volonte_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_pdv_plus', async (event) => {
|
||
getAttrs(["pdv_maxi_temp", "xp_temp"], function(values) {
|
||
let pdv_maxi_temp = parseInt(values["pdv_maxi_temp"]) || 0; // Points de Vie temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si le up est possible
|
||
if (pdv_maxi_temp < 29) {
|
||
// Calcul du coût en XP
|
||
let cout_xp = 0;
|
||
if (pdv_maxi_temp < 10) cout_xp = 2;
|
||
else if (pdv_maxi_temp < 20) cout_xp = 3;
|
||
else if (pdv_maxi_temp < 29) cout_xp = 4;
|
||
else if (pdv_maxi_temp == 29) cout_xp = 10;
|
||
|
||
// Augmente les PDV max temporaires et réduit l'XP (même si cela rend xp_temp négatif)
|
||
pdv_maxi_temp += 1; // Augmente les points de vie temporairement
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"pdv_maxi_temp": pdv_maxi_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_pdv_minus', async (event) => {
|
||
getAttrs(["pdv_maxi", "pdv_maxi_temp", "xp_temp"], function(values) {
|
||
let pdv_maxi = parseInt(values["pdv_maxi"]) || 0; // Valeur réelle des points de vie
|
||
let pdv_maxi_temp = parseInt(values["pdv_maxi_temp"]) || 0; // Points de Vie temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (pdv_maxi_temp > pdv_maxi) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let cout_xp = 0;
|
||
if (pdv_maxi_temp < 10) cout_xp = 2;
|
||
else if (pdv_maxi_temp < 20) cout_xp = 3;
|
||
else if (pdv_maxi_temp < 29) cout_xp = 4;
|
||
else if (pdv_maxi_temp == 30) cout_xp = 10;
|
||
|
||
// Diminue les PDV max temporaires et augmente l'XP
|
||
pdv_maxi_temp -= 1; // Réduit les points de vie temporairement
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"pdv_maxi_temp": pdv_maxi_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_pdm_plus', async (event) => {
|
||
getAttrs(["pdm_maxi_temp", "xp_temp"], function(values) {
|
||
let pdm_maxi_temp = parseInt(values["pdm_maxi_temp"]) || 0; // Points de Magie temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si le up est possible
|
||
if (pdm_maxi_temp < 29) {
|
||
// Calcul du coût en XP
|
||
let cout_xp = 0;
|
||
if (pdm_maxi_temp < 10) cout_xp = 2;
|
||
else if (pdm_maxi_temp < 20) cout_xp = 3;
|
||
else if (pdm_maxi_temp < 29) cout_xp = 4;
|
||
else if (pdm_maxi_temp == 29) cout_xp = 10;
|
||
|
||
// Augmente les PDM max temporaires et réduit l'XP (même si cela rend xp_temp négatif)
|
||
pdm_maxi_temp += 1; // Augmente les points de magie temporairement
|
||
xp_temp -= cout_xp; // Déduit le coût en XP
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"pdm_maxi_temp": pdm_maxi_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_pdm_minus', async (event) => {
|
||
getAttrs(["pdm_maxi", "pdm_maxi_temp", "xp_temp"], function(values) {
|
||
let pdm_maxi = parseInt(values["pdm_maxi"]) || 0; // Valeur réelle des points de magie
|
||
let pdm_maxi_temp = parseInt(values["pdm_maxi_temp"]) || 0; // Points de Magie temporaire pour simulation
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si la diminution est possible
|
||
if (pdm_maxi_temp > pdm_maxi) {
|
||
// Calcul du coût en XP pour le point à retirer
|
||
let cout_xp = 0;
|
||
if (pdm_maxi_temp < 10) cout_xp = 2;
|
||
else if (pdm_maxi_temp < 20) cout_xp = 3;
|
||
else if (pdm_maxi_temp < 29) cout_xp = 4;
|
||
else if (pdm_maxi_temp == 30) cout_xp = 10;
|
||
|
||
// Diminue les PDM max temporaires et augmente l'XP
|
||
pdm_maxi_temp -= 1; // Réduit les points de magie temporairement
|
||
xp_temp += cout_xp; // Récupère l'XP correspondant
|
||
|
||
// Met à jour uniquement les valeurs temporaires
|
||
setAttrs({
|
||
"pdm_maxi_temp": pdm_maxi_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_athletisme_plus', async (event) => {
|
||
getAttrs(["stat_athletisme_temp", "xp_temp"], function(values) {
|
||
let stat_athletisme_temp = parseInt(values["stat_athletisme_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_athletisme_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_athletisme_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_athletisme_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_athletisme_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_athletisme_temp < 30) {
|
||
stat_athletisme_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_athletisme_temp": stat_athletisme_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_athletisme_minus', async (event) => {
|
||
getAttrs(["stat_athletisme_temp", "stat_athletisme", "xp_temp"], function(values) {
|
||
let stat_athletisme_temp = parseInt(values["stat_athletisme_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_athletisme = parseInt(values["stat_athletisme"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_athletisme_temp > stat_athletisme) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_athletisme_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_athletisme_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_athletisme_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_athletisme_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_athletisme_temp <= 10) {
|
||
stat_athletisme_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_athletisme_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_athletisme_temp": stat_athletisme_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_baratin_plus', async (event) => {
|
||
getAttrs(["stat_baratin_temp", "xp_temp"], function(values) {
|
||
let stat_baratin_temp = parseInt(values["stat_baratin_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_baratin_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_baratin_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_baratin_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_baratin_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_baratin_temp < 30) {
|
||
stat_baratin_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_baratin_temp": stat_baratin_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_baratin_minus', async (event) => {
|
||
getAttrs(["stat_baratin_temp", "stat_baratin", "xp_temp"], function(values) {
|
||
let stat_baratin_temp = parseInt(values["stat_baratin_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_baratin = parseInt(values["stat_baratin"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_baratin_temp > stat_baratin) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_baratin_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_baratin_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_baratin_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_baratin_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_baratin_temp <= 10) {
|
||
stat_baratin_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_baratin_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_baratin_temp": stat_baratin_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_bibliotheque_plus', async (event) => {
|
||
getAttrs(["stat_bibliotheque_temp", "xp_temp"], function(values) {
|
||
let stat_bibliotheque_temp = parseInt(values["stat_bibliotheque_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_bibliotheque_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_bibliotheque_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_bibliotheque_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_bibliotheque_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_bibliotheque_temp < 30) {
|
||
stat_bibliotheque_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_bibliotheque_temp": stat_bibliotheque_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_bibliotheque_minus', async (event) => {
|
||
getAttrs(["stat_bibliotheque_temp", "stat_bibliotheque", "xp_temp"], function(values) {
|
||
let stat_bibliotheque_temp = parseInt(values["stat_bibliotheque_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_bibliotheque = parseInt(values["stat_bibliotheque"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_bibliotheque_temp > stat_bibliotheque) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_bibliotheque_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_bibliotheque_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_bibliotheque_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_bibliotheque_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_bibliotheque_temp <= 10) {
|
||
stat_bibliotheque_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_bibliotheque_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_bibliotheque_temp": stat_bibliotheque_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_chercher_plus', async (event) => {
|
||
getAttrs(["stat_chercher_temp", "xp_temp"], function(values) {
|
||
let stat_chercher_temp = parseInt(values["stat_chercher_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_chercher_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_chercher_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_chercher_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_chercher_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_chercher_temp < 30) {
|
||
stat_chercher_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_chercher_temp": stat_chercher_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_chercher_minus', async (event) => {
|
||
getAttrs(["stat_chercher_temp", "stat_chercher", "xp_temp"], function(values) {
|
||
let stat_chercher_temp = parseInt(values["stat_chercher_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_chercher = parseInt(values["stat_chercher"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_chercher_temp > stat_chercher) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_chercher_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_chercher_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_chercher_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_chercher_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_chercher_temp <= 10) {
|
||
stat_chercher_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_chercher_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_chercher_temp": stat_chercher_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_combat_cac_plus', async (event) => {
|
||
getAttrs(["stat_combat_cac_temp", "xp_temp"], function(values) {
|
||
let stat_combat_cac_temp = parseInt(values["stat_combat_cac_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_combat_cac_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_combat_cac_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_combat_cac_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_combat_cac_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_combat_cac_temp < 30) {
|
||
stat_combat_cac_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_combat_cac_temp": stat_combat_cac_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_combat_cac_minus', async (event) => {
|
||
getAttrs(["stat_combat_cac_temp", "stat_combat_cac", "xp_temp"], function(values) {
|
||
let stat_combat_cac_temp = parseInt(values["stat_combat_cac_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_combat_cac = parseInt(values["stat_combat_cac"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_combat_cac_temp > stat_combat_cac) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_combat_cac_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_combat_cac_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_combat_cac_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_combat_cac_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_combat_cac_temp <= 10) {
|
||
stat_combat_cac_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_combat_cac_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_combat_cac_temp": stat_combat_cac_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_combat_pugilat_plus', async (event) => {
|
||
getAttrs(["stat_combat_pugilat_temp", "xp_temp"], function(values) {
|
||
let stat_combat_pugilat_temp = parseInt(values["stat_combat_pugilat_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_combat_pugilat_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_combat_pugilat_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_combat_pugilat_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_combat_pugilat_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_combat_pugilat_temp < 30) {
|
||
stat_combat_pugilat_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_combat_pugilat_temp": stat_combat_pugilat_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_combat_pugilat_minus', async (event) => {
|
||
getAttrs(["stat_combat_pugilat_temp", "stat_combat_pugilat", "xp_temp"], function(values) {
|
||
let stat_combat_pugilat_temp = parseInt(values["stat_combat_pugilat_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_combat_pugilat = parseInt(values["stat_combat_pugilat"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_combat_pugilat_temp > stat_combat_pugilat) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_combat_pugilat_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_combat_pugilat_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_combat_pugilat_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_combat_pugilat_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_combat_pugilat_temp <= 10) {
|
||
stat_combat_pugilat_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_combat_pugilat_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_combat_pugilat_temp": stat_combat_pugilat_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_combat_distance_plus', async (event) => {
|
||
getAttrs(["stat_combat_distance_temp", "xp_temp"], function(values) {
|
||
let stat_combat_distance_temp = parseInt(values["stat_combat_distance_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_combat_distance_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_combat_distance_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_combat_distance_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_combat_distance_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_combat_distance_temp < 30) {
|
||
stat_combat_distance_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_combat_distance_temp": stat_combat_distance_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_combat_distance_minus', async (event) => {
|
||
getAttrs(["stat_combat_distance_temp", "stat_combat_distance", "xp_temp"], function(values) {
|
||
let stat_combat_distance_temp = parseInt(values["stat_combat_distance_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_combat_distance = parseInt(values["stat_combat_distance"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_combat_distance_temp > stat_combat_distance) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_combat_distance_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_combat_distance_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_combat_distance_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_combat_distance_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_combat_distance_temp <= 10) {
|
||
stat_combat_distance_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_combat_distance_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_combat_distance_temp": stat_combat_distance_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_discretion_plus', async (event) => {
|
||
getAttrs(["stat_discretion_temp", "xp_temp"], function(values) {
|
||
let stat_discretion_temp = parseInt(values["stat_discretion_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_discretion_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_discretion_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_discretion_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_discretion_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_discretion_temp < 30) {
|
||
stat_discretion_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_discretion_temp": stat_discretion_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_discretion_minus', async (event) => {
|
||
getAttrs(["stat_discretion_temp", "stat_discretion", "xp_temp"], function(values) {
|
||
let stat_discretion_temp = parseInt(values["stat_discretion_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_discretion = parseInt(values["stat_discretion"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_discretion_temp > stat_discretion) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_discretion_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_discretion_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_discretion_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_discretion_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_discretion_temp <= 10) {
|
||
stat_discretion_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_discretion_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_discretion_temp": stat_discretion_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_endurance_plus', async (event) => {
|
||
getAttrs(["stat_endurance_temp", "xp_temp"], function(values) {
|
||
let stat_endurance_temp = parseInt(values["stat_endurance_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_endurance_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_endurance_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_endurance_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_endurance_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_endurance_temp < 30) {
|
||
stat_endurance_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_endurance_temp": stat_endurance_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_endurance_minus', async (event) => {
|
||
getAttrs(["stat_endurance_temp", "stat_endurance", "xp_temp"], function(values) {
|
||
let stat_endurance_temp = parseInt(values["stat_endurance_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_endurance = parseInt(values["stat_endurance"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_endurance_temp > stat_endurance) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_endurance_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_endurance_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_endurance_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_endurance_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_endurance_temp <= 10) {
|
||
stat_endurance_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_endurance_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_endurance_temp": stat_endurance_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_esquive_plus', async (event) => {
|
||
getAttrs(["stat_esquive_temp", "xp_temp"], function(values) {
|
||
let stat_esquive_temp = parseInt(values["stat_esquive_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_esquive_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_esquive_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_esquive_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_esquive_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_esquive_temp < 30) {
|
||
stat_esquive_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_esquive_temp": stat_esquive_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_esquive_minus', async (event) => {
|
||
getAttrs(["stat_esquive_temp", "stat_esquive", "xp_temp"], function(values) {
|
||
let stat_esquive_temp = parseInt(values["stat_esquive_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_esquive = parseInt(values["stat_esquive"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_esquive_temp > stat_esquive) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_esquive_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_esquive_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_esquive_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_esquive_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_esquive_temp <= 10) {
|
||
stat_esquive_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_esquive_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_esquive_temp": stat_esquive_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_langue_plus', async (event) => {
|
||
getAttrs(["stat_langue_temp", "xp_temp"], function(values) {
|
||
let stat_langue_temp = parseInt(values["stat_langue_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_langue_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_langue_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_langue_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_langue_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_langue_temp < 30) {
|
||
stat_langue_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_langue_temp": stat_langue_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_langue_minus', async (event) => {
|
||
getAttrs(["stat_langue_temp", "stat_langue", "xp_temp"], function(values) {
|
||
let stat_langue_temp = parseInt(values["stat_langue_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_langue = parseInt(values["stat_langue"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_langue_temp > stat_langue) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_langue_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_langue_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_langue_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_langue_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_langue_temp <= 10) {
|
||
stat_langue_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_langue_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_langue_temp": stat_langue_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_langue_ancienne_plus', async (event) => {
|
||
getAttrs(["stat_langue_ancienne_temp", "xp_temp"], function(values) {
|
||
let stat_langue_ancienne_temp = parseInt(values["stat_langue_ancienne_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_langue_ancienne_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_langue_ancienne_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_langue_ancienne_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_langue_ancienne_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_langue_ancienne_temp < 30) {
|
||
stat_langue_ancienne_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_langue_ancienne_temp": stat_langue_ancienne_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_langue_ancienne_minus', async (event) => {
|
||
getAttrs(["stat_langue_ancienne_temp", "stat_langue_ancienne", "xp_temp"], function(values) {
|
||
let stat_langue_ancienne_temp = parseInt(values["stat_langue_ancienne_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_langue_ancienne = parseInt(values["stat_langue_ancienne"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_langue_ancienne_temp > stat_langue_ancienne) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_langue_ancienne_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_langue_ancienne_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_langue_ancienne_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_langue_ancienne_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_langue_ancienne_temp <= 10) {
|
||
stat_langue_ancienne_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_langue_ancienne_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_langue_ancienne_temp": stat_langue_ancienne_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_medecine_plus', async (event) => {
|
||
getAttrs(["stat_medecine_temp", "xp_temp"], function(values) {
|
||
let stat_medecine_temp = parseInt(values["stat_medecine_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_medecine_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_medecine_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_medecine_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_medecine_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_medecine_temp < 30) {
|
||
stat_medecine_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_medecine_temp": stat_medecine_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_medecine_minus', async (event) => {
|
||
getAttrs(["stat_medecine_temp", "stat_medecine", "xp_temp"], function(values) {
|
||
let stat_medecine_temp = parseInt(values["stat_medecine_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_medecine = parseInt(values["stat_medecine"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_medecine_temp > stat_medecine) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_medecine_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_medecine_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_medecine_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_medecine_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_medecine_temp <= 10) {
|
||
stat_medecine_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_medecine_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_medecine_temp": stat_medecine_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_metier_plus', async (event) => {
|
||
getAttrs(["stat_metier_temp", "xp_temp"], function(values) {
|
||
let stat_metier_temp = parseInt(values["stat_metier_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_metier_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_metier_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_metier_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_metier_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_metier_temp < 30) {
|
||
stat_metier_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_metier_temp": stat_metier_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_metier_minus', async (event) => {
|
||
getAttrs(["stat_metier_temp", "stat_metier", "xp_temp"], function(values) {
|
||
let stat_metier_temp = parseInt(values["stat_metier_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_metier = parseInt(values["stat_metier"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_metier_temp > stat_metier) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_metier_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_metier_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_metier_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_metier_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_metier_temp <= 10) {
|
||
stat_metier_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_metier_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_metier_temp": stat_metier_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_perception_plus', async (event) => {
|
||
getAttrs(["stat_perception_temp", "xp_temp"], function(values) {
|
||
let stat_perception_temp = parseInt(values["stat_perception_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_perception_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_perception_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_perception_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_perception_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_perception_temp < 29) {
|
||
stat_perception_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_perception_temp": stat_perception_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_perception_minus', async (event) => {
|
||
getAttrs(["stat_perception_temp", "stat_perception", "xp_temp"], function(values) {
|
||
let stat_perception_temp = parseInt(values["stat_perception_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_perception = parseInt(values["stat_perception"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_perception_temp > stat_perception) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_perception_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_perception_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_perception_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_perception_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_perception_temp <= 10) {
|
||
stat_perception_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_perception_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_perception_temp": stat_perception_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_psychologie_plus', async (event) => {
|
||
getAttrs(["stat_psychologie_temp", "xp_temp"], function(values) {
|
||
let stat_psychologie_temp = parseInt(values["stat_psychologie_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_psychologie_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_psychologie_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_psychologie_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_psychologie_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_psychologie_temp < 30) {
|
||
stat_psychologie_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_psychologie_temp": stat_psychologie_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_psychologie_minus', async (event) => {
|
||
getAttrs(["stat_psychologie_temp", "stat_psychologie", "xp_temp"], function(values) {
|
||
let stat_psychologie_temp = parseInt(values["stat_psychologie_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_psychologie = parseInt(values["stat_psychologie"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_psychologie_temp > stat_psychologie) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_psychologie_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_psychologie_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_psychologie_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_psychologie_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_psychologie_temp <= 10) {
|
||
stat_psychologie_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_psychologie_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_psychologie_temp": stat_psychologie_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_science_plus', async (event) => {
|
||
getAttrs(["stat_science_temp", "xp_temp"], function(values) {
|
||
let stat_science_temp = parseInt(values["stat_science_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_science_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_science_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_science_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_science_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_science_temp < 30) {
|
||
stat_science_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_science_temp": stat_science_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_science_minus', async (event) => {
|
||
getAttrs(["stat_science_temp", "stat_science", "xp_temp"], function(values) {
|
||
let stat_science_temp = parseInt(values["stat_science_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_science = parseInt(values["stat_science"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_science_temp > stat_science) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_science_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_science_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_science_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_science_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_science_temp <= 10) {
|
||
stat_science_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_science_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_science_temp": stat_science_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_sciences_occultes_plus', async (event) => {
|
||
getAttrs(["stat_sciences_occultes_temp", "xp_temp"], function(values) {
|
||
let stat_sciences_occultes_temp = parseInt(values["stat_sciences_occultes_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_sciences_occultes_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_sciences_occultes_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_sciences_occultes_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_sciences_occultes_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_sciences_occultes_temp < 30) {
|
||
stat_sciences_occultes_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_sciences_occultes_temp": stat_sciences_occultes_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_sciences_occultes_minus', async (event) => {
|
||
getAttrs(["stat_sciences_occultes_temp", "stat_sciences_occultes", "xp_temp"], function(values) {
|
||
let stat_sciences_occultes_temp = parseInt(values["stat_sciences_occultes_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_sciences_occultes = parseInt(values["stat_sciences_occultes"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_sciences_occultes_temp > stat_sciences_occultes) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_sciences_occultes_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_sciences_occultes_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_sciences_occultes_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_sciences_occultes_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_sciences_occultes_temp <= 10) {
|
||
stat_sciences_occultes_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_sciences_occultes_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_sciences_occultes_temp": stat_sciences_occultes_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_survie_plus', async (event) => {
|
||
getAttrs(["stat_survie_temp", "xp_temp"], function(values) {
|
||
let stat_survie_temp = parseInt(values["stat_survie_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_survie_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_survie_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_survie_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_survie_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_survie_temp < 30) {
|
||
stat_survie_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_survie_temp": stat_survie_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_survie_minus', async (event) => {
|
||
getAttrs(["stat_survie_temp", "stat_survie", "xp_temp"], function(values) {
|
||
let stat_survie_temp = parseInt(values["stat_survie_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_survie = parseInt(values["stat_survie"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_survie_temp > stat_survie) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_survie_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_survie_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_survie_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_survie_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_survie_temp <= 10) {
|
||
stat_survie_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_survie_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_survie_temp": stat_survie_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_vigilance_plus', async (event) => {
|
||
getAttrs(["stat_vigilance_temp", "xp_temp"], function(values) {
|
||
let stat_vigilance_temp = parseInt(values["stat_vigilance_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Calcul du coût en XP et augmentation selon la tranche
|
||
let cout_xp = 0;
|
||
let augmentation = 0;
|
||
|
||
if (stat_vigilance_temp < 10) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 2; // Augmente de 2 points
|
||
} else if (stat_vigilance_temp < 20) {
|
||
cout_xp = 1; // 1 XP dépensé
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_vigilance_temp < 29) {
|
||
cout_xp = 2; // 2 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point
|
||
} else if (stat_vigilance_temp === 29) {
|
||
cout_xp = 4; // 4 XP dépensés
|
||
augmentation = 1; // Augmente de 1 point (de 29 à 30)
|
||
}
|
||
|
||
// Vérifie si on peut augmenter
|
||
if (stat_vigilance_temp < 30) {
|
||
stat_vigilance_temp += augmentation; // Augmente la compétence temporaire
|
||
xp_temp -= cout_xp; // Réduit l'XP temporaire
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_vigilance_temp": stat_vigilance_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
on('clicked:xp_vigilance_minus', async (event) => {
|
||
getAttrs(["stat_vigilance_temp", "stat_vigilance", "xp_temp"], function(values) {
|
||
let stat_vigilance_temp = parseInt(values["stat_vigilance_temp"]) || 0; // Valeur temporaire pour la compétence
|
||
let stat_vigilance = parseInt(values["stat_vigilance"]) || 0; // Valeur réelle de la compétence
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0; // XP temporaire disponible
|
||
|
||
// Vérifie si on peut diminuer (ne pas descendre en dessous de la valeur réelle)
|
||
if (stat_vigilance_temp > stat_vigilance) {
|
||
let cout_xp_recupere = 0;
|
||
|
||
// Détermine combien d'XP récupérer selon la tranche
|
||
if (stat_vigilance_temp > 29) {
|
||
cout_xp_recupere = 4; // Récupère 4 XP si on diminue de 30 à 29
|
||
} else if (stat_vigilance_temp > 19) {
|
||
cout_xp_recupere = 2; // Récupère 2 XP si on diminue entre 20 et 29
|
||
} else if (stat_vigilance_temp > 9) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP si on diminue entre 10 et 19
|
||
} else if (stat_vigilance_temp > 0) {
|
||
cout_xp_recupere = 1; // Récupère 1 XP pour chaque 2 points diminués entre 0 et 9
|
||
}
|
||
|
||
// Diminue la compétence temporaire
|
||
if (stat_vigilance_temp <= 10) {
|
||
stat_vigilance_temp -= 2; // Diminue de 2 points si dans la tranche 0-9
|
||
} else {
|
||
stat_vigilance_temp -= 1; // Diminue de 1 point sinon
|
||
}
|
||
|
||
xp_temp += cout_xp_recupere; // Récupère les XP correspondants
|
||
|
||
// Met à jour les valeurs temporaires
|
||
setAttrs({
|
||
"stat_vigilance_temp": stat_vigilance_temp,
|
||
"xp_temp": xp_temp
|
||
});
|
||
}
|
||
});
|
||
});
|
||
|
||
|
||
on('clicked:valider_xp', async (event) => {
|
||
getAttrs(["force_temp", "dexterite_temp", "constitution_temp", "intelligence_temp", "charisme_temp", "volonte_temp", "stat_athletisme_temp", "stat_baratin_temp", "stat_bibliotheque_temp", "stat_chercher_temp", "stat_combat_cac_temp", "stat_combat_pugilat_temp", "stat_combat_distance_temp", "stat_discretion_temp", "stat_endurance_temp", "stat_esquive_temp", "stat_langue_ancienne_temp", "stat_langue_temp", "stat_medecine_temp", "stat_metier_temp", "stat_perception_temp", "stat_psychologie_temp", "stat_science_temp", "stat_sciences_occultes_temp", "stat_survie_temp", "stat_vigilance_temp", "pdv_maxi_temp", "pdm_maxi_temp", "pdv_maxi", "pdm_maxi", "xp_temp", "bonus_xp_pdv", "bonus_xp_pdm", "bonus_xp_pdv_temp", "bonus_xp_pdm_temp"], function(values) {
|
||
|
||
let force_temp = parseInt(values["force_temp"]) || 0;
|
||
let dexterite_temp = parseInt(values["dexterite_temp"]) || 0;
|
||
let constitution_temp = parseInt(values["constitution_temp"]) || 0;
|
||
let intelligence_temp = parseInt(values["intelligence_temp"]) || 0;
|
||
let charisme_temp = parseInt(values["charisme_temp"]) || 0;
|
||
let volonte_temp = parseInt(values["volonte_temp"]) || 0;
|
||
|
||
let bonus_xp_pdv = parseInt(values["bonus_xp_pdv"]) || 0;
|
||
let bonus_xp_pdm = parseInt(values["bonus_xp_pdm"]) || 0;
|
||
let bonus_xp_pdv_temp = parseInt(values["bonus_xp_pdv_temp"]) || 0;
|
||
let bonus_xp_pdm_temp = parseInt(values["bonus_xp_pdm_temp"]) || 0;
|
||
let pdv_maxi = parseInt(values["pdv_maxi"]) || 0;
|
||
let pdm_maxi = parseInt(values["pdm_maxi"]) || 0;
|
||
let xp_temp = parseInt(values["xp_temp"]) || 0;
|
||
let pdv_maxi_temp = parseInt(values["pdv_maxi_temp"]) || 0;
|
||
let pdm_maxi_temp = parseInt(values["pdm_maxi_temp"]) || 0;
|
||
|
||
bonus_xp_pdv = pdv_maxi_temp - pdv_maxi + bonus_xp_pdv;
|
||
bonus_xp_pdm = pdm_maxi_temp - pdm_maxi + bonus_xp_pdm;
|
||
|
||
let stat_athletisme_temp = parseInt(values["stat_athletisme_temp"]) || 0;
|
||
let stat_baratin_temp = parseInt(values["stat_baratin_temp"]) || 0;
|
||
let stat_bibliotheque_temp = parseInt(values["stat_bibliotheque_temp"]) || 0;
|
||
let stat_chercher_temp = parseInt(values["stat_chercher_temp"]) || 0;
|
||
let stat_combat_cac_temp = parseInt(values["stat_combat_cac_temp"]) || 0;
|
||
let stat_combat_pugilat_temp = parseInt(values["stat_combat_pugilat_temp"]) || 0;
|
||
let stat_combat_distance_temp = parseInt(values["stat_combat_distance_temp"]) || 0;
|
||
let stat_discretion_temp = parseInt(values["stat_discretion_temp"]) || 0;
|
||
let stat_endurance_temp = parseInt(values["stat_endurance_temp"]) || 0;
|
||
let stat_esquive_temp = parseInt(values["stat_esquive_temp"]) || 0;
|
||
let stat_langue_ancienne_temp = parseInt(values["stat_langue_ancienne_temp"]) || 0;
|
||
let stat_langue_temp = parseInt(values["stat_langue_temp"]) || 0;
|
||
let stat_medecine_temp = parseInt(values["stat_medecine_temp"]) || 0;
|
||
let stat_metier_temp = parseInt(values["stat_metier_temp"]) || 0;
|
||
let stat_perception_temp = parseInt(values["stat_perception_temp"]) || 0;
|
||
let stat_psychologie_temp = parseInt(values["stat_psychologie_temp"]) || 0;
|
||
let stat_science_temp = parseInt(values["stat_science_temp"]) || 0;
|
||
let stat_sciences_occultes_temp = parseInt(values["stat_sciences_occultes_temp"]) || 0;
|
||
let stat_survie_temp = parseInt(values["stat_survie_temp"]) || 0;
|
||
let stat_vigilance_temp = parseInt(values["stat_vigilance_temp"]) || 0;
|
||
|
||
let page = 0;
|
||
|
||
|
||
setAttrs({
|
||
"bonus_xp_pdv": bonus_xp_pdv,
|
||
"bonus_xp_pdm": bonus_xp_pdm,
|
||
"xp": xp_temp,
|
||
"force": force_temp,
|
||
"dexterite": dexterite_temp,
|
||
"constitution": constitution_temp,
|
||
"intelligence": intelligence_temp,
|
||
"charisme": charisme_temp,
|
||
"volonte": volonte_temp,
|
||
"stat_athletisme": stat_athletisme_temp,
|
||
"stat_baratin": stat_baratin_temp,
|
||
"stat_bibliotheque": stat_bibliotheque_temp,
|
||
"stat_chercher": stat_chercher_temp,
|
||
"stat_combat_cac": stat_combat_cac_temp,
|
||
"stat_combat_pugilat": stat_combat_pugilat_temp,
|
||
"stat_combat_distance": stat_combat_distance_temp,
|
||
"stat_discretion": stat_discretion_temp,
|
||
"stat_endurance": stat_endurance_temp,
|
||
"stat_esquive": stat_esquive_temp,
|
||
"stat_langue_ancienne": stat_langue_ancienne_temp,
|
||
"stat_langue": stat_langue_temp,
|
||
"stat_medecine": stat_medecine_temp,
|
||
"stat_metier": stat_metier_temp,
|
||
"stat_perception": stat_perception_temp,
|
||
"stat_psychologie": stat_psychologie_temp,
|
||
"stat_science": stat_science_temp,
|
||
"stat_sciences_occultes": stat_sciences_occultes_temp,
|
||
"stat_survie": stat_survie_temp,
|
||
"stat_vigilance": stat_vigilance_temp,
|
||
"page": page
|
||
});
|
||
});
|
||
});
|
||
</script>
|