Compare commits

...

11 Commits

15 changed files with 362 additions and 111 deletions

15
.gitignore vendored
View File

@@ -1 +1,14 @@
.history/
.vscode/settings.json
.idea
.history
todo.md
/.vscode
/ignored/
/node_modules/
/jsconfig.json
/package.json
/package-lock.json
/packs/*/
/packs/*/CURRENT
/packs/*/LOG
/packs/*/LOCK

View File

@@ -124,7 +124,7 @@ export class HawkmoonActorSheet extends ActorSheet {
})
html.find('.roll-initiative').click((event) => {
this.actor.rollAttribut("pre", true)
this.actor.rollAttribut("adr", true)
})
html.find('.roll-attribut').click((event) => {

View File

@@ -77,12 +77,16 @@ export class HawkmoonActor extends Actor {
arme.system.totalOffensif = this.system.attributs.pui.value + arme.system.competence.system.niveau + arme.system.bonusmaniementoff
arme.system.totalDefensif = combat.defenseTotal + arme.system.competence.system.niveau + arme.system.seuildefense + bonusDefense
arme.system.isdefense = true
arme.system.isMelee = true
arme.system.isDistance = false
}
if (arme.system.typearme == "jet" || arme.system.typearme == "tir") {
arme.system.competence = duplicate(this.items.find(item => item.type == "competence" && item.name.toLowerCase() == "armes à distance"))
arme.system.attrKey = "adr"
arme.system.totalOffensif = this.system.attributs.adr.value + arme.system.competence.system.niveau + arme.system.bonusmaniementoff
arme.system.totalDegats = arme.system.degats
arme.system.isMelee = false
arme.system.isDistance = true
if (arme.system.isdefense) {
arme.system.totalDefensif = combat.defenseTotal + arme.system.competence.system.niveau + arme.system.seuildefense
}
@@ -222,7 +226,7 @@ export class HawkmoonActor extends Actor {
if (this.type == 'personnage') {
let talentBonus = this.getVigueurBonus()
let vigueur = Math.floor((this.system.attributs.pui.value + this.system.attributs.tre.value) / 2) + talentBonus
let vigueur = Math.floor((this.system.attributs.pui.value + this.system.attributs.tre.value) / 2) + talentBonus + this.system.sante.vigueurmodifier
if (vigueur != this.system.sante.vigueur) {
this.update({ 'system.sante.vigueur': vigueur })
}
@@ -588,13 +592,25 @@ export class HawkmoonActor extends Actor {
}
/* -------------------------------------------- */
async rollArmeDegats(armeId, targetVigueur = undefined) {
async rollArmeDegats(armeId, targetVigueur = undefined, rollDataInput = undefined) {
let arme = this.items.get(armeId)
if (arme.type == "arme") {
arme = this.prepareArme(arme)
}
console.log("DEGATS", arme)
let roll = new Roll("1d10+" + arme.system.totalDegats).roll({ async: false })
let roll
let bonus = 0
if (rollDataInput?.isHeroique) {
if (rollDataInput?.attaqueCharge) {
bonus = 5
}
roll = new Roll("2d10rr10+" + arme.system.totalDegats + "+" + bonus).roll({ async: false })
} else {
if (rollDataInput?.attaqueCharge) {
bonus = 3
}
roll = new Roll("1d10+" + arme.system.totalDegats + "+" + bonus).roll({ async: false })
}
await HawkmoonUtility.showDiceSoNice(roll, game.settings.get("core", "rollMode"));
let nbEtatPerdus = 0
if (targetVigueur) {

View File

@@ -185,7 +185,7 @@ export class HawkmoonItemSheet extends ItemSheet {
html.find('#add-automation').click(ev => {
let autom = duplicate(this.object.system.automations)
autom.push( { eventtype: "on-drop", name: "Automatisation 1", competence: "", minLevel: 0, id: randomID(16) })
autom.push( { eventtype: "on-drop", name: "Automatisation 1", bonusname: "vigueur", bonus: 0, competence: "", minLevel: 0, baCost: 0, id: randomID(16) })
this.object.update( { 'system.automations': autom })
})
html.find('.delete-automation').click(ev => {

View File

@@ -127,11 +127,6 @@ Hooks.once("ready", function () {
registerUsageCount('fvtt-hawkmoon-cyd')
welcomeMessage()
// CSS patch for v9
if (game.version) {
let sidebar = document.getElementById("sidebar");
sidebar.style.width = "min-content";
}
});
/* -------------------------------------------- */

View File

@@ -72,9 +72,43 @@ export class HawkmoonRollDialog extends Dialog {
html.find('#competence-talents').change((event) => {
this.rollData.selectedTalents = $('#competence-talents').val()
})
html.find('#taille-cible').change((event) => {
this.rollData.tailleCible = String(event.currentTarget.value)
})
html.find('#tireur-deplacement').change((event) => {
this.rollData.tireurDeplacement = String(event.currentTarget.value)
})
html.find('#cible-couvert').change((event) => {
this.rollData.cibleCouvert = String(event.currentTarget.value)
})
html.find('#distance-tir').change((event) => {
this.rollData.distanceTir = String(event.currentTarget.value)
})
html.find('#bonus-malus-context').change((event) => {
this.rollData.bonusMalusContext = Number(event.currentTarget.value)
})
html.find('#defenseur-au-sol').change((event) => {
this.rollData.defenseurAuSol = event.currentTarget.checked
})
html.find('#defenseur-aveugle').change((event) => {
this.rollData.defenseurAveugle = event.currentTarget.checked
})
html.find('#defenseur-de-dos').change((event) => {
this.rollData.defenseurDeDos = event.currentTarget.checked
})
html.find('#defenseur-restreint').change((event) => {
this.rollData.defenseurRestreint = event.currentTarget.checked
})
html.find('#defenseur-immobilise').change((event) => {
this.rollData.defenseurImmobilise = event.currentTarget.checked
})
html.find('#attaque-charge').change((event) => {
this.rollData.attaqueCharge = event.currentTarget.checked
})
html.find('#attaque-desarme').change((event) => {
this.rollData.attaqueDesarme = event.currentTarget.checked
})
}
}

View File

@@ -2,6 +2,12 @@
import { HawkmoonCombat } from "./hawkmoon-combat.js";
import { HawkmoonCommands } from "./hawkmoon-commands.js";
/* -------------------------------------------- */
const __distanceDifficulte = { "porteecourte": 5, "porteemoyenne": 9, "porteelongue": 14}
const __tireurDeplacement = { immobile: 0, lent: 3, rapide: 5}
const __cibleCouvert = { aucun: 0, leger: 5, complet: 10}
const __tailleCible = { normal: 0, main: 10, enfant: 3, maison: -10}
/* -------------------------------------------- */
export class HawkmoonUtility {
@@ -145,7 +151,7 @@ export class HawkmoonUtility {
let message = game.messages.get(messageId)
let rollData = message.getFlag("world", "hawkmoon-roll")
let actor = this.getActorFromRollData(rollData)
actor.rollArmeDegats(rollData.arme._id, rollData.targetVigueur)
actor.rollArmeDegats(rollData.arme._id, rollData.targetVigueur, rollData)
})
}
@@ -319,7 +325,7 @@ export class HawkmoonUtility {
let pa = Math.floor((valueSC - (po * 400)) / 20)
let sc = valueSC - (po * 400) - (pa * 20)
return {
po: po, pa: pa, sc: sc, valueSC: valueSC
po, pa, sc, valueSC
}
}
@@ -393,7 +399,38 @@ export class HawkmoonUtility {
} else {
rollData.diceFormula += `+${rollData.attr.value}*${rollData.multiplier}+${rollData.modificateur}+${rollData.bonusMalusContext}`
}
// Bonus arme naturelle en défense
if (rollData.bonusArmeNaturelle) {
rollData.diceFormula += `+${rollData.bonusArmeNaturelle}`
}
if (rollData.defenseurAuSol) {
rollData.diceFormula += `+3`
}
if (rollData.defenseurAveugle) {
rollData.diceFormula += `+10`
}
if (rollData.defenseurDeDos) {
rollData.diceFormula += `+5`
}
if (rollData.defenseurRestreint) {
rollData.diceFormula += `+3`
}
if (rollData.defenseurImmobilise) {
rollData.diceFormula += `+5`
}
if (rollData.arme?.system.isDistance) {
rollData.difficulte = __distanceDifficulte[rollData.distanceTir]
rollData.difficulte += __tireurDeplacement[rollData.tireurDeplacement]
rollData.difficulte += __cibleCouvert[rollData.cibleCouvert]
rollData.difficulte += __tailleCible[rollData.tailleCible]
rollData.difficulte += rollData.cibleDeplace ? 3 : 0
rollData.difficulte += rollData.cibleCaC ? 3 : 0
}
if (rollData.attaqueDesarme) {
rollData.difficulte += 10
}
// Ajout adversités
rollData.diceFormula += `-${rollData.nbAdversites}`
@@ -403,7 +440,7 @@ export class HawkmoonUtility {
let myRoll = new Roll(rollData.diceFormula).roll({ async: false })
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
rollData.roll = myRoll
rollData.roll = duplicate(myRoll)
console.log(">>>> ", myRoll)
rollData.finalResult = myRoll.total
@@ -424,7 +461,7 @@ export class HawkmoonUtility {
let bonusRoll = new Roll(rollData.bonusFormula).roll({ async: false })
await this.showDiceSoNice(bonusRoll, game.settings.get("core", "rollMode"));
rollData.bonusRoll = bonusRoll
rollData.bonusRoll = duplicate(bonusRoll)
rollData.finalResult += rollData.bonusRoll.total
@@ -528,7 +565,19 @@ export class HawkmoonUtility {
pointAmeOptions: this.getPointAmeOptions(),
difficulte: 0,
modificateur: 0,
bonusMalusContext: 0
bonusMalusContext: 0,
bonusArmeNaturelle: 0,
defenseurAveugle: false,
defenseurDeDos: false,
defenseurAuSol: false,
defenseurRestreint: false,
defenseurImmobilise: false,
tailleCible: "normal",
tireurDeplacement: "immobile",
cibleCouvert: "aucun",
distanceTir: "porteemoyenne",
attaqueCharge: false,
attaqueDesarme: false
}
return rollData
}
@@ -541,8 +590,14 @@ export class HawkmoonUtility {
let defender = game.canvas.tokens.get(rollData.defenderTokenId).actor
rollData.armeDefense = defender.getBestDefenseValue()
rollData.targetVigueur = defender.getVigueur()
rollData.protectionDefenseur = defender.getProtection()
if (rollData.armeDefense) {
rollData.difficulte = rollData.armeDefense.system.totalDefensif
if ( !rollData.arme.system.armenaturelle && !rollData.arme.system.armefortune ){
if (rollData.armeDefense.system.armenaturelle || rollData.armeDefense.system.armefortune) {
rollData.bonusArmeNaturelle = 3
}
}
} else {
ui.notifications.warn("Aucune arme de défense équipée, difficulté manuelle à positionner.")
}

View File

@@ -40,7 +40,6 @@
--debug-box-shadow-blue: inset 0 0 2px blue;
--debug-box-shadow-green: inset 0 0 2px green;
}
/*@import url("https://fonts.googleapis.com/css2?family=Martel:wght@400;800&family=Roboto:wght@300;400;500&display=swap");*/
/* Global styles & Font */
.window-app {
@@ -527,7 +526,6 @@ section.sheet-body:after {
h1, h2, h3, h4 {
font-weight: bold;
}
ul, ol {
margin: 0;
padding: 0;
@@ -828,7 +826,6 @@ ul, li {
#sidebar {
font-size: 1rem;
background-position: 100%;
color: rgba(220,220,220,0.75);
}
/* background: rgb(105,85,65) url("../images/ui/texture_feuille_perso_onglets.webp") no-repeat right bottom;*/
@@ -946,22 +943,11 @@ ul, li {
height: 15%;
font-size: 15px;
padding: 10px;
padding-bottom: 20px;
/*padding-bottom: 20px;*/
padding-top: .2rem;
padding-bottom: .2rem;
}
.div-river-full {
height: 5rem;
align-items: flex-start;
}
.div-river {
align-content: center;
margin-left: 8px;
align-content:space-around;
justify-content: space-around;
}
.div-center {
align-self: center;
@@ -999,13 +985,10 @@ ul, li {
}
#sidebar #sidebar-tabs i{
width: 25px;
height: 25px;
display: inline-block;
background-position:center;
background-size:cover;
text-shadow: 1px 1px 0 rgba(0,0,0,0.75);
}
/*#sidebar #sidebar-tabs i.fa-comments:before, #sidebar #sidebar-tabs i.fa-fist-raised:before, #sidebar #sidebar-tabs i.fa-users:before, #sidebar #sidebar-tabs i.fa-map:before, #sidebar #sidebar-tabs i.fa-suitcase:before, #sidebar #sidebar-tabs i.fa-book-open:before, #sidebar #sidebar-tabs i.fa-th-list:before, #sidebar #sidebar-tabs i.fa-music:before, #sidebar #sidebar-tabs i.fa-atlas:before, #sidebar #sidebar-tabs i.fa-cogs:before {content: "";}
@@ -1277,24 +1260,6 @@ ul, li {
padding-left: 2rem;
}
.drop-equipment-effect,
.drop-power-effect,
.drop-perk-effect,
.drop-ability-effect,
.drop-effect-specaffected,
.drop-effect-spec,
.drop-ability-weapon,
.drop-ability-armor,
.drop-race-perk,
.drop-spec-perk,
.drop-ability-power,
.drop-ability-spec,
.drop-spec-power,
.drop-abilities,
.drop-optionnal-abilities,
.drop-specialperk1,
.drop-perk2,
.drop-spec1 ,
.drop-spec2 {
background: linear-gradient(to bottom, #6c95b9fc 5%, #105177ab 100%);
background-color: #7d5d3b00;
@@ -1449,4 +1414,19 @@ ul, li {
}
.argent-total-text {
margin-left: 4px;
}
}
.compendium h4.entry-name.document-name {
color: black;
}
.page-title {
color: black;
}
textarea {
font-family: "Charlemagne";
font-size: 0.8rem;
}
.fxmaster {
background: #443e37E0;
background-color: #443e37E0;
}

View File

@@ -1,7 +1,7 @@
{
"id": "fvtt-hawkmoon-cyd",
"description": "Hawkmoon RPG for FoundryVTT (CYD system - French)",
"version": "10.1.12",
"version": "11.0.7",
"authors": [
{
"name": "Uberwald/LeRatierBretonnien",
@@ -35,7 +35,7 @@
"gridUnits": "m",
"license": "LICENSE.txt",
"manifest": "https://www.uberwald.me/gitea/public/fvtt-hawkmoon-cyd/raw/branch/master/system.json",
"download": "https://www.uberwald.me/gitea/public/fvtt-hawkmoon-cyd/archive/fvtt-hawkmoon-cyd-10.1.12.zip",
"download": "https://www.uberwald.me/gitea/public/fvtt-hawkmoon-cyd/archive/fvtt-hawkmoon-cyd-11.0.7.zip",
"languages": [
{
"lang": "fr",
@@ -49,100 +49,133 @@
"type": "Item",
"label": "Compétences",
"name": "skills",
"path": "packs/competences.db",
"path": "packs/competences",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Compétences de Créatures",
"name": "skills-creatures",
"path": "packs/competences-creatures.db",
"path": "packs/competences-creatures",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Historiques",
"name": "historiques",
"path": "packs/historiques.db",
"path": "packs/historiques",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Armes",
"name": "armes",
"path": "packs/armes.db",
"path": "packs/armes",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Protections",
"name": "protections",
"path": "packs/protections.db",
"path": "packs/protections",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Equipement",
"name": "equipement",
"path": "packs/equipement.db",
"path": "packs/equipement",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Profils",
"name": "profils",
"path": "packs/profils.db",
"path": "packs/profils",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Talents de Personnage",
"name": "talents",
"path": "packs/talents.db",
"path": "packs/talents",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "Item",
"label": "Talents de Cellule",
"name": "talents-cellule",
"path": "packs/talents-cellule.db",
"path": "packs/talents-cellule",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "RollTable",
"label": "Tables",
"name": "tables",
"path": "packs/tables.db",
"path": "packs/tables",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"type": "JournalEntry",
"label": "Aides de Jeu",
"name": "aides-de-jeu",
"path": "packs/aides-de-jeu.db",
"path": "packs/aides-de-jeu",
"system": "fvtt-hawkmoon-cyd",
"private": false,
"flags": {}
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
}
],
"primaryTokenAttribute": "sante.vigueur",
@@ -156,6 +189,6 @@
"background": "systems/fvtt-hawkmoon-cyd/assets/ui/fond_hawkmoon.webp",
"compatibility": {
"minimum": "10",
"verified": "10"
"verified": "11"
}
}

View File

@@ -69,7 +69,8 @@
},
"sante": {
"vigueur": 0,
"etat": 0
"etat": 0,
"vigueurmodifier": 0
},
"adversite": {
"bleue": 0,
@@ -209,6 +210,8 @@
},
"arme": {
"typearme": "",
"armenaturelle": false,
"armefortune": false,
"bonusmaniementoff": 0,
"seuildefense": 0,
"onlevelonly": false,

View File

@@ -112,6 +112,13 @@
</li>
{{/each}}
</ul>
{{#if isGM}}
<div class="flexrow">
<span class="item-name-label competence-name item-field-label-medium">Modificateur de Vigueur</span>
<input type="text" class="item-field-label-short" name="system.sante.vigueurmodifier"
value="{{system.sante.vigueurmodifier}}" data-dtype="Number" />
</div>
{{/if}}
</div>
</div>

View File

@@ -42,10 +42,19 @@
<li>Total : {{finalResult}}</li>
{{#if attaqueCharge}}
<li>Vous avez chargé : vos adversaires bénéficient de +3 pour vous attaquer</li>
{{/if}}
{{#if difficulte}}
<li>SD : {{difficulte}}</li>
{{#if isSuccess}}
<li class="chat-success">Succés...
</li>
{{#if attaqueDesarme}}
<li>Vous désarmez votre adversaire ! Son arme tombe hors de sa portée.</li>
{{/if}}
{{else}}
<li class="chat-failure">Echec...</li>
{{/if}}
@@ -53,6 +62,9 @@
{{#if isHeroique}}
<li class="chat-success">Héroïque !!!</li>
{{#if attaqueDesarme}}
<li>... Et en plus vous récupérez l'arme de votre adversaire dans votre main (si vous le souhaitez) !.</li>
{{/if}}
{{/if}}
{{#if isDramatique}}
<li class="chat-failure">Dramatique !!!</li>

View File

@@ -23,6 +23,14 @@
{{/select}}
</select>
</li>
<li class="flexrow item">
<label class="generic-label item-field-label-long2">Arme naturelle ? </label>
<input type="checkbox" name="system.armenaturelle" {{checked system.armenaturelle}} />
</li>
<li class="flexrow item">
<label class="generic-label item-field-label-long2">Arme de fortune ? </label>
<input type="checkbox" name="system.armefortune" {{checked system.armefortune}} />
</li>
<li class="flexrow item">
<label class="generic-label item-field-label-long">Bonus offensif : </label>
<input type="text" class="padd-right numeric-input item-field-label-short" name="system.bonusmaniementoff"

View File

@@ -62,6 +62,85 @@
</div>
{{/if}}
{{#if arme}}
{{#if arme.system.isMelee}}
{{#if bonusArmeNaturelle}}
<div class="flexrow">
<span class="roll-dialog-label">Arme naturelle/fortune en défense</span>
<span class="small-label roll-dialog-label">{{bonusArmeNaturelle}}</span>
</div>
{{/if}}
<div class="flexrow">
<span class="roll-dialog-label">En surplomb ou défenseur au sol (+3)?</span>
<input type="checkbox" id="defenseur-au-sol" {{checked defenseurAuSol}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Défenseur aveuglé (+10)?</span>
<input type="checkbox" id="defenseur-aveugle" {{checked defenseurAveugle}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Défenseur de dos (+5)?</span>
<input type="checkbox" id="defenseur-de-dos" {{checked defenseurDeDos}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Défenseur dans espace restreint (+3)?</span>
<input type="checkbox" id="defenseur-restreint" {{checked defenseurRestreint}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Défenseur immobilisé (+5)?</span>
<input type="checkbox" id="defenseur-immobilise" {{checked defenseurImmobilise}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Charge ?</span>
<input type="checkbox" id="attaque-charge" {{checked attaqueCharge}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Désarmer (SD+10)?</span>
<input type="checkbox" id="attaque-desarme" {{checked attaqueDesarme}} />
</div>
{{else}}
<div class="flexrow">
<span class="roll-dialog-label">Tireur en déplacement ?</span>
<select class="item-field-label-long" type="text" id="tireur-deplacement" data-dtype="string">
{{#select tireurDeplacement}}
<option value="immobile">Immobile (SD+0)</option>
<option value="lent">Lent (SD+3)</option>
<option value="rapide">Rapide (SD+5)</option>
{{/select}}
</select>
</div>
<div class="flexrow">
<span class="roll-dialog-label">Couvert de la cible ?</span>
<select class="item-field-label-long" type="text" id="cible-couvert" data-dtype="string">
{{#select cibleCouvert}}
<option value="aucun">Aucun</option>
<option value="leger">Léger (SD+5)</option>
<option value="complet">Quasi complet (SD+10)</option>
{{/select}}
</select>
</div>
<div class="flexrow">
<span class="roll-dialog-label">Cible se déplace vite (SD+3)?</span>
<input type="checkbox" id="tireur-cible-deplace" {{checked cibleDeplace}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Cible corps à corps (SD+3)?</span>
<input type="checkbox" id="tireur-cible-cac" {{checked cibleCaC}} />
</div>
<div class="flexrow">
<span class="roll-dialog-label">Taille de la cible ?</span>
<select class="item-field-label-long" type="text" id="taille-cible" data-dtype="string">
{{#select tailleCible}}
<option value="normal">Normal (SD+0)</option>
<option value="main">Main (SD+10)</option>
<option value="enfant">Enfant (SD+3)</option>
<option value="maison">Maison (SD-10)</option>
{{/select}}
</select>
</div>
{{/if}}
{{/if}}
<div class="flexrow">
<span class="roll-dialog-label">Bonus/Malus </span>
<select class="roll-dialog-label" id="bonus-malus-context" type="text" value="{{bonusMalusContext}}"
@@ -80,31 +159,47 @@
</select>
</div>
{{#if armeDefense}}
<div class="flexrow">
<span class="roll-dialog-label">Défense adversaire : </span>
<span class="roll-dialog-label"><strong>{{difficulte}}</strong> </span>
</div>
{{#if (or armeDefense arme.system.isDistance)}}
{{#if arme.system.isDistance}}
<div class="flexrow">
<span class="roll-dialog-label">SD de distance</span>
<select class="item-field-label-long" type="text" id="distance-tir" data-dtype="string">
{{#select distanceTir}}
<option value="porteecourte">Courte ({{protectionDefenseur}}+5)</option>
<option value="porteemoyenne">Moyenne ({{protectionDefenseur}}+9)</option>
<option value="porteelongue">Longue ({{protectionDefenseur}}+14)</option>
{{/select}}
</select>
</div>
{{else}}
<div class="flexrow">
<span class="roll-dialog-label">Défense adversaire : </span>
<span class="roll-dialog-label"><strong>{{difficulte}}</strong> </span>
</div>
{{/if}}
{{else}}
{{#if isInit}}
{{else}}
<div class="flexrow">
<span class="roll-dialog-label">Difficulté : </span>
<select class="roll-dialog-label" id="difficulte" type="text" name="difficulte" value="{{difficulte}}"
data-dtype="Number">
{{#select difficulte}}
<option value="0">Aucune/Inconnue</option>
<option value="5">Facile (5)</option>
<option value="10">Moyenne (10)</option>
<option value="15">Ardue (15)</option>
<option value="20">Hasardeuse (20)</option>
<option value="25">Insensée (25)</option>
<option value="30">Pure Folie (30)</option>
{{/select}}
</select>
<div class="flexrow">
<span class="roll-dialog-label">Difficulté : </span>
<select class="roll-dialog-label" id="difficulte" type="text" name="difficulte" value="{{difficulte}}"
data-dtype="Number">
{{#select difficulte}}
<option value="0">Aucune/Inconnue</option>
<option value="5">Facile (5)</option>
<option value="10">Moyenne (10)</option>
<option value="15">Ardue (15)</option>
<option value="20">Hasardeuse (20)</option>
<option value="25">Insensée (25)</option>
<option value="30">Pure Folie (30)</option>
{{/select}}
</select>
</div>
{{/if}}
</div>
{{/if}}
</div>