Compare commits

..

25 Commits

Author SHA1 Message Date
0c502a2188 Meilleure gestion initiative 2023-03-15 17:35:07 +01:00
5df2b7e624 Minot fixes 2023-02-19 19:35:03 +01:00
f6554f6945 New release 2023-02-03 23:55:59 +01:00
fbe232266f Spell changes to support v1.7 2023-02-01 10:16:21 +01:00
4b9c3bcd1e Spell changes to support v1.7 2023-02-01 10:15:56 +01:00
05f09aa3f5 Add dice selection 2023-01-26 20:50:56 +01:00
727db74545 Update sheet 2023-01-23 20:50:48 +01:00
ccb3a458c0 Add pages 2023-01-05 17:00:11 +01:00
1ac9605f08 Fix init creature + minor changes 2023-01-04 09:57:13 +01:00
1bbefd3499 Astrologie ! 2022-12-25 18:00:42 +01:00
bcb377db7a Gestion de l'astrologie 2022-12-23 23:24:09 +01:00
7a8cf9f8fd Welcome page and init info message 2022-12-23 16:38:41 +01:00
d74f7784bb Fix bougette sur PNJ/Creatures 2022-12-04 13:49:00 +01:00
6d6fec99b0 Fix bougette sur PNJ/Creatures 2022-12-04 13:48:37 +01:00
884823a1bc Init again !!!! 2022-12-02 13:16:42 +01:00
399c22d623 Init again !!!! 2022-12-02 13:15:48 +01:00
085265df5d initiative bugfix 2022-12-01 23:57:33 +01:00
593db9ba5b initiative bugfix 2022-12-01 23:46:27 +01:00
ac96f3ca67 Enhance initiative + fix combat 2022-11-30 20:58:27 +01:00
b2fe67ab05 Enhance tokens/actor management + auto effects 2022-11-30 12:12:44 +01:00
47178d7359 Use bougette v1.2 2022-11-29 15:23:05 +01:00
e1c7304551 Add a PC list summary 2022-11-25 20:47:28 +01:00
7b4e5bcbfa Add a PC list summary 2022-11-25 15:50:12 +01:00
31bd83b0ab Add a PC list summary 2022-11-25 15:50:07 +01:00
e35187433e Fix malus dice (again) and scroll rendering 2022-11-25 14:24:03 +01:00
61 changed files with 2294 additions and 5450 deletions

109
.gitignore vendored
View File

@ -1,108 +1 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
package-lock.json
# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
*.lcov
# nyc test coverage
.nyc_output
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# TypeScript v1 declaration files
typings/
# TypeScript cache
*.tsbuildinfo
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
.env
.env.test
# parcel-bundler cache (https://parceljs.org/)
.cache
# Next.js build output
.next
# Nuxt.js build / generate output
.nuxt
dist
# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and *not* Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public
# vuepress build output
.vuepress/dist
# Serverless directories
.serverless/
# FuseBox cache
.fusebox/
# DynamoDB Local files
.dynamodb/
# TernJS port file
.tern-port
# BOL Data
#/data/
.history/

Binary file not shown.

After

Width:  |  Height:  |  Size: 253 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 541 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

View File

@ -442,12 +442,16 @@ ul.no-bullets {
.bol .inc-dec-btns {
color: #4b4a44;
}
.summmary-number {
padding-left: 4rem;
}
/* Items List */
.items-list {
list-style: none;
margin: 7px 0;
padding: 0;
overflow-y: auto;
overflow-y:hidden;
/*overflow-y: auto;*/
}
.items-list .item-header {
font-family: 'Signika', sans-serif;
@ -518,6 +522,18 @@ ul.no-bullets {
.items-list .item .item-control {
color: #4b4a44;
}
.items-list .item-name-fixed-medium {
min-width: 8rem;
width: 8rem;
}
.items-list .item-field-fixed-short {
max-width: 3rem;
min-width: 3rem;
width: 3rem;
}
.bougette-dice-img {
color:rgba(150, 44, 44, 0.70);
}
/* ----------------------------------------- */
/* Premade colors */
@ -1052,4 +1068,10 @@ body.system-bol img#logo {
.bol-margin-tb-2 {
margin-top: 2px;
margin-bottom: 2px;
}
}
.character-summary-container {
  opacity: 0.95;
}
.character-summary-rollable {
text-decoration: underline;
}

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 372 KiB

View File

@ -33,6 +33,7 @@
"BOL.ui.tab.description": "Description",
"BOL.ui.tab.details": "Details",
"BOL.ui.tab.spellalchemy": "Spells & Alchemy",
"BOL.ui.tab.astrologer": "Astrologer",
"BOL.ui.properties": "Properties",
"BOL.ui.description": "Description",
@ -115,6 +116,7 @@
"BOL.ui.isSorcerer": "Is Sorcerer ?",
"BOL.ui.isAlchemist": "Is Alchemist ?",
"BOL.ui.isPriest": "Is Priest/Druid ?",
"BOL.ui.isAstrologer": "Is Astrologer?",
"BOL.ui.circle": "Circle",
"BOL.ui.spells": "Spells",
"BOL.ui.focusSpell": "Cast a spell",

576
lang/fr-honor.json Normal file
View File

@ -0,0 +1,576 @@
{
"ACTOR.TypeCharacter": "Personnage",
"ACTOR.TypeEncounter": "Rencontre",
"ACTOR.TypeVehicle": "Véhicule",
"ITEM.TypeItem": "Objet",
"ITEM.TypeFeature": "Trait",
"ITEM.TypeWeapon": "Arme",
"ITEM.TypeArmor": "Armure",
"BOL.attributes.vigor": "Vigueur",
"BOL.attributes.halfvigor": "Demi-vigueur",
"BOL.attributes.agility": "Agilité",
"BOL.attributes.mind": "Esprit",
"BOL.attributes.appeal": "Aura",
"BOL.attributes.hull": "Coque",
"BOL.attributes.crew": "Equipage",
"BOL.attributes.resources": "Resources",
"BOL.attributes.row": "Rames",
"BOL.aptitudes.init": "Initiative",
"BOL.aptitudes.melee": "Mêlée",
"BOL.aptitudes.ranged": "Tir",
"BOL.aptitudes.def": "Défense",
"BOL.aptitudes.prot": "Protection",
"BOL.resources.hp": "Vitalité",
"BOL.resources.hero": "Héroïsme",
"BOL.resources.faith": "Foi",
"BOL.resources.creation": "Création",
"BOL.resources.power": "Pouvoir",
"BOL.resources.villainy": "Vilénie",
"BOL.resources.alchemypoints": "Points de Creation",
"BOL.resources.astrologypoints": "Points d'Astrologie",
"BOL.traits.xp": "Expérience",
"BOL.ui.tab.stats": "Attributs",
"BOL.ui.tab.combat": "Combat",
"BOL.ui.tab.actions": "Actions",
"BOL.ui.tab.features": "Traits",
"BOL.ui.tab.equipment": "Equipement",
"BOL.ui.tab.description": "Description",
"BOL.ui.tab.details": "Details",
"BOL.ui.tab.spellalchemy": "Mystères",
"BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes",
"BOL.ui.horoscopesBonus": "Horoscopes (Bonus)",
"BOL.ui.horoscopesMalus": "Horoscopes (Malus)",
"BOL.ui.groupHoroscope": "Horoscrope de Groupe de ",
"BOL.ui.properties": "Propriétés",
"BOL.ui.description": "Description",
"BOL.ui.actions": "Actions",
"BOL.ui.capacities": "Capacités",
"BOL.ui.damages": "Dommages",
"BOL.ui.details": "Détails",
"BOL.ui.category": "Catégorie",
"BOL.ui.subcategory": "Sous-catégorie",
"BOL.ui.type": "Type",
"BOL.ui.subtype": "Sous-type",
"BOL.ui.attribute": "Attribut",
"BOL.ui.aptitude": "Aptitude",
"BOL.ui.advantages": "Avantages/Désavantages",
"BOL.ui.modifiers": "Modificateurs",
"BOL.ui.item": "Objet",
"BOL.ui.edit": "Editer",
"BOL.ui.unequip": "Déséquiper",
"BOL.ui.equip": "Équiper",
"BOL.ui.delete": "Supprimer",
"BOL.ui.roll": "Utiliser",
"BOL.ui.equipment": "Équipement",
"BOL.ui.equipmentProperties": "Propriétés d'équipement",
"BOL.ui.weaponAttack": "Attaque d'arme",
"BOL.ui.weaponProperties": "Propriétés offensives",
"BOL.ui.protectionProperties": "Protection",
"BOL.ui.magicalProperties": "Propriétés magiques",
"BOL.ui.capacityProperties": "Propriétés de capacité",
"BOL.ui.alchemyProperties": "Propriétés des Préparations Alchimiques",
"BOL.ui.armor": "Armure",
"BOL.ui.reach": "Allonge",
"BOL.ui.weapon": "Arme",
"BOL.ui.melee": "Arme de contact",
"BOL.ui.ranged": "Arme à distance",
"BOL.ui.protection": "Protection",
"BOL.ui.shield": "Bouclier",
"BOL.ui.blocking": "Blocage",
"BOL.ui.range": "Portée",
"BOL.ui.quantity": "Quantité",
"BOL.ui.qty": "Qté",
"BOL.ui.slot": "Empl.",
"BOL.ui.weight": "Poids",
"BOL.ui.price": "Prix",
"BOL.ui.cancel": "Annuler",
"BOL.ui.submit": "OK",
"BOL.ui.attributeCheck": "Test d'attribut",
"BOL.ui.aptitudeCheck": "Test d'aptitude",
"BOL.ui.weaponCheck": "Jet d'attaque",
"BOL.ui.spellCheck": "Jet de sort",
"BOL.ui.careers": "Carrières",
"BOL.ui.boons": "Avantages",
"BOL.ui.flaws": "Désavantages",
"BOL.ui.rank": "Rang",
"BOL.ui.success": "Succès",
"BOL.ui.failure": "Échec",
"BOL.ui.fumble": "Échec critique",
"BOL.ui.critical": "Succès Héroïque",
"BOL.ui.criticallegend": "Succès Légendaire !",
"BOL.ui.maneuvers": "Actions de combat",
"BOL.ui.stacksize": "Taille de pile (max)",
"BOL.ui.weapons": "Armes",
"BOL.ui.protections": "Protections",
"BOL.ui.ammos": "Munitions",
"BOL.ui.containers": "Conteneurs",
"BOL.ui.treasure": "Trésor",
"BOL.ui.vehicles": "Véhicules/Montures",
"BOL.ui.misc": "Divers",
"BOL.ui.vehicleProperties": " Propriétés de véhicule",
"BOL.ui.speed": "Vitesse",
"BOL.ui.noWeaponName": "Arme Inconnue",
"BOL.ui.targetDefence": "Défense",
"BOL.ui.applyShieldMalus": "Appliquer le Malus de Petit Bouclier",
"BOL.ui.shieldMalus": "Malus de Bouclier",
"BOL.ui.defenseScore": "Score de Defense",
"BOL.ui.defender": "Défenseur",
"BOL.ui.difficulty": "Difficulté",
"BOL.ui.spellProperties": "Propriétés du Sort",
"BOL.ui.duration": "Durée",
"BOL.ui.spellkeep": "Prolongation",
"BOL.ui.concentrate": "Concentration",
"BOL.ui.registerInit": "Enregistrer comme Init. de combat",
"BOL.ui.isSorcerer": "Carrière de Sorcier ?",
"BOL.ui.isAlchemist": "Carrière d'Alchimiste ?",
"BOL.ui.isPriest": "Carrière de Prêtre/Druide ?",
"BOL.ui.isAstrologer": "Carrière d'Astrologue?",
"BOL.ui.circle": "Cercle",
"BOL.ui.spells": "Sorts",
"BOL.ui.focusSpell": "Lance un sort",
"BOL.ui.sorcererRank": "Rang du Sorcier",
"BOL.ui.alchemistRank": "Rang de l'Alchimiste",
"BOL.ui.mandatoryconditions": "Conditions obligatoires",
"BOL.ui.optionnalconditions": "Conditions optionnelles",
"BOL.ui.ppcost": "Cout en Points de Pouvoir",
"BOL.ui.ppAvailable": "Points de Pouvoir actuels",
"BOL.ui.pccost": "Coût en Points de Création",
"BOL.ui.pcnow": "Points de Création actuels",
"BOL.ui.alchemyType": "Type",
"BOL.ui.alchemy": "Préparations Alchimiques",
"BOL.ui.makeAlchemy": "Réaliser une Préparation Alchmique",
"BOL.ui.alchemyCostTotal": "Points de Création nécessaires pour la Préparation",
"BOL.ui.alchemyInvest": "Points de Création investis",
"BOL.ui.alchemyCurrent": "Points de Création actuel dans la Préparation",
"BOL.ui.astrology": "Astrologie et Horoscopes",
"BOL.ui.astrologyMinor": "Etablir un Horoscope Mineur",
"BOL.ui.astrologyMajor": "Etablir un Horoscope Majeur",
"BOL.ui.astrologyMajorGroup": "Etablir un Horoscope Majeur de Groupe",
"BOL.ui.makeHoroscope": "Etablir un Horoscope",
"BOL.ui.astrologerRank": "Rang de l'Astrologue",
"BOL.ui.horoscopeCost": "Cout en Points d'Astrologie",
"BOL.ui.minor": "Mineur",
"BOL.ui.major": "Majeur",
"BOL.ui.majorgroup": "Majeur de Groupe",
"BOL.ui.horoscopeGroup": "Horoscopes de Groupe",
"BOL.ui.horoscopeDiceRemaining": "Dés restants",
"BOL.ui.horoscopeDiceMax": "Dés Max",
"BOL.ui.astrologyNoPoints": "Vous n'avez pas assez de Points d'Astrologie!",
"BOL.ui.advance": "Avancement",
"BOL.ui.isbonusdice": "Fourni un dé bonus?",
"BOL.ui.ismalusdice": "Fourni un dé malus?",
"BOL.ui.bonusmalus": "Dés Bonus/Malus additionnels",
"BOL.ui.nbdices": "Nombre de dés",
"BOL.ui.totalmod": "Total Mod.",
"BOL.ui.rangeModifiers": "Mod. de Portée",
"BOL.ui.money": "Bougette",
"BOL.ui.moneyTitle": "Or et Piecettes",
"BOL.ui.fightOption": "Options de Combat",
"BOL.ui.none": "Aucune",
"BOL.ui.fightOptionType": "Types d'options de Combat",
"BOL.ui.activated": "Active",
"BOL.ui.deactivated": "Inactive",
"BOL.ui.toactivated": "Active (>Désactiver)",
"BOL.ui.todeactivated": "Inactive (>Activer)",
"BOL.ui.status": "Statut",
"BOL.ui.armorAgiMalus": "Malus d'Armure+Bouclier (Agi)",
"BOL.ui.armorInitMalus": "Malus d'Armure (Init)",
"BOL.ui.attackValue": "Valeur d'attaque",
"BOL.ui.vehicleWeapons": "Armes de véhicules",
"BOL.ui.hullDamage": "D.coque",
"BOL.ui.crewDamage": "D.équipage",
"BOL.ui.fireDamage": "Feu ?",
"BOL.ui.weaponbonus": "Cette arme bénéficie déja d'un Dé de Bonus (Arme Favorite prise en compte, par exemple)",
"BOL.ui.creature": "Creature",
"BOL.ui.rabble": "Piétaille",
"BOL.ui.tough": "Coriace",
"BOL.ui.villain": "Rival",
"BOL.ui.attributaptitude": "Attribut ou Aptitude",
"BOL.ui.always": "Tout les jets (ie toujours)",
"BOL.ui.effectbonusmalus": "Bonus ou Malus à appliquer",
"BOL.ui.boleffects": "Effets (automatiques)",
"BOL.ui.modifier": "Modificateur",
"BOL.ui.effects": "Effets en cours",
"BOL.ui.pcname": "PJs",
"BOL.ui.npcname": "PNJs",
"BOL.ui.pclistbutton": "Vue compacte",
"BOL.ui.noactorfound": "PNJ inconnu, le PNJ doit être présent dans le monde pour s'afficher ici.",
"BOL.ui.deletetitle": "Suppression",
"BOL.ui.confirmdelete": "Vous êtes sûr de vouloir supprimer cet item ?",
"BOL.ui.nomorealchemypoints": "Plus assez de Points de Création !",
"BOL.ui.armornoformula": "L'armure {protect.name} n'a pas de formule pour la protection !",
"BOL.ui.selectactor": "Selectionnez votre personnage pour utiliser la macro",
"BOL.ui.itemnotfound": "Impossible de trouver l'objet de cette macro",
"BOL.ui.noinit": "Pas d'initiative trouvée, veuillez en enregistrer une.",
"BOL.ui.warninitiative": "Votre initiative n'est pas disponible. Effectuez un jet d'Initiative pour ce combat.",
"BOL.featureCategory.origins": "Origines",
"BOL.featureCategory.races": "Races",
"BOL.featureCategory.careers": "Carrières",
"BOL.featureCategory.boons": "Avantages",
"BOL.featureCategory.flaws": "Désavantages",
"BOL.featureCategory.languages": "Langues",
"BOL.featureCategory.fightoptions": "Options de Combat",
"BOL.bougette.nomoney": "A sec",
"BOL.bougette.tolive": "De quoi vivre",
"BOL.bougette.easylife": "A l'aise",
"BOL.bougette.luxury": "Luxe&Volupté",
"BOL.bougette.rich": "Richissime",
"BOL.featureSubtypes.origin": "Origine",
"BOL.featureSubtypes.race": "Race",
"BOL.featureSubtypes.career": "Carrière",
"BOL.featureSubtypes.boon": "Avantage",
"BOL.featureSubtypes.flaw": "Désavantage",
"BOL.featureSubtypes.language": "Langue",
"BOL.featureSubtypes.gods": "Dieux & Foi",
"BOL.featureSubtypes.fightOption": "Option de Combat",
"BOL.featureSubtypes.effect": "Effet",
"BOL.featureSubtypes.effects": "Effets",
"BOL.featureSubtypes.boleffect": "Effet",
"BOL.featureSubtypes.horoscope": "Horoscope",
"BOL.fightOptionTypes.armor": "Attaque au défaut d'armure",
"BOL.fightOptionTypes.intrepid": "Attaque intrépide",
"BOL.fightOptionTypes.twoweaponsdef": "Combat à 2 armes (Défense)",
"BOL.fightOptionTypes.twoweaponsatt": "Combat à 2 armes (Attaque)",
"BOL.fightOptionTypes.fulldefense": "Défense totale",
"BOL.fightOptionTypes.defense": "Posture défensive",
"BOL.fightOptionTypes.attack": "Posture offensive",
"BOL.itemCategory.object": "Objet",
"BOL.itemCategory.equipment": "Équipement",
"BOL.itemCategory.consumable": "Consommable",
"BOL.itemCategory.spell": "Sort",
"BOL.itemCategory.vehicle": "Monture/Véhicule",
"BOL.itemCategory.other": "Autre",
"BOL.itemCategory.capacity": "Capacité",
"BOL.itemCategory.alchemy": "Préparation Alchimique",
"BOL.itemCategory.vehicleweapon": "Armes de Véhicule",
"BOL.combatCategory.protections": "Protections",
"BOL.combatCategory.shields": "Boucliers",
"BOL.combatCategory.melee": "Armes de contact",
"BOL.combatCategory.ranged": "Armes à distance",
"BOL.combatCategory.fightOptions": "Options de combat",
"BOL.combatCategory.natural": "Armes Naturelless",
"BOL.equipmentCategory.weapon": "Arme",
"BOL.equipmentCategory.armor": "Armure",
"BOL.equipmentCategory.protection": "Protection",
"BOL.equipmentCategory.shield": "Bouclier",
"BOL.equipmentCategory.helm": "Casque",
"BOL.equipmentCategory.jewel": "Bijou",
"BOL.equipmentCategory.scroll": "Parchemin",
"BOL.equipmentCategory.ammunition": "Munition",
"BOL.equipmentCategory.container": "Conteneur",
"BOL.equipmentCategory.currency": "Monnaie",
"BOL.equipmentCategory.other": "Autre",
"BOL.protectionCategory.armor": "Armure",
"BOL.protectionCategory.shield": "Bouclier",
"BOL.protectionCategory.helm": "Casque",
"BOL.protectionCategory.other": "Autre",
"BOL.spellItem.charm": "Charme",
"BOL.spellItem.circle1": "Premier Cercle",
"BOL.spellItem.circle2": "Second Cercle",
"BOL.spellItem.circle3": "Troisième Cercle",
"BOL.alchemyItem.common": "Courante",
"BOL.alchemyItem.scarce": "Rare",
"BOL.alchemyItem.legend": "Légendaire",
"BOL.alchemyItem.mythic": "Mythique",
"BOL.weaponCategory.melee": "Arme de mêlée",
"BOL.weaponCategory.ranged": "Arme de tir",
"BOL.weaponCategory.other": "Autre",
"BOL.itemProperty.damageMultiplier": "Multiplicateur de dommages",
"BOL.itemProperty.attackBonusDice": "Dé de Bonus d'attaque",
"BOL.itemProperty.equipable": "Équipable",
"BOL.itemProperty.protection": "Protection",
"BOL.itemProperty.blocking": "Blocage",
"BOL.itemProperty.magical": "Magique",
"BOL.itemProperty.concealable": "Dissimulable",
"BOL.itemProperty.2H": "Arme à 2 mains",
"BOL.itemProperty.helm": "Casque",
"BOL.itemProperty.improvised": "Improvisée",
"BOL.itemProperty.shield": "Bouclier",
"BOL.itemProperty.melee": "Arme de contact",
"BOL.itemProperty.throwable": "Peut être lancée",
"BOL.itemProperty.ignoreshield": "Ignore les boucliers",
"BOL.itemProperty.bashing": "Dégâts non létaux",
"BOL.itemProperty.stackable": "Empilable",
"BOL.itemProperty.ranged": "A distance",
"BOL.itemProperty.weapon": "Offensive",
"BOL.itemProperty.reloadable": "Rechargeable",
"BOL.itemProperty.worn": "Équipé",
"BOL.itemProperty.spell": "Sort",
"BOL.itemProperty.armor": "Armure",
"BOL.itemProperty.consumable": "Consommable",
"BOL.itemProperty.bow": "Arc",
"BOL.itemProperty.crossbow": "Arbalète",
"BOL.itemProperty.throwing": "Arme de jet",
"BOL.itemProperty.activable": "Activable",
"BOL.itemProperty.powder": "Arme à poudre",
"BOL.itemProperty.attackAttribute": "Attaque (Attribut)",
"BOL.itemProperty.attackAptitude": "Attaque (Aptitude)",
"BOL.itemProperty.attackModifiers": "Attaque (Modificateurs)",
"BOL.itemProperty.attackReroll1": "Attaque (Relancer les 1)",
"BOL.itemProperty.damage": "Dommages (Dés)",
"BOL.itemProperty.damageModifiers": "Dommages (Modificateurs)",
"BOL.itemProperty.damageAttribute": "Dommages (Attribut)",
"BOL.itemProperty.damageSpecial": "Dommages (Spécial)",
"BOL.itemProperty.damageReroll1": "Relancer les 1",
"BOL.itemProperty.range": "Portée (en m)",
"BOL.itemProperty.soakFormula": "Encaissement (Formule)",
"BOL.itemProperty.soakModifiers": "Encaissement (Modificateur)",
"BOL.itemProperty.soakValue": "Encaissement (Valeur par défaut)",
"BOL.itemProperty.armorQuality": "Qualité d'armure",
"BOL.itemProperty.blockingMalus": "Malus de blocage",
"BOL.itemProperty.blockingAttacksBlocked": "Attaques bloquée",
"BOL.itemProperty.blocking1Attack": "Bloque 1 attaque",
"BOL.itemProperty.blockingAllAttacks": "Bloque toutes les attaques",
"BOL.itemProperty.slot": "Emplacement utilisé",
"BOL.itemProperty.reload": "Rechargement (Actions)",
"BOL.itemProperty.weaponSize": "Classe d'arme",
"BOL.itemProperty.difficulty": "Difficulté",
"BOL.itemProperty.natural": "Arme naturelle",
"BOL.itemProperty.onlymodifier": "Modificateur uniquement (ie attaques de créatures)",
"BOL.itemProperty.vehicleDamageType": "Type de dommages de véhicules",
"BOL.itemProperty.isfiredamage": "Dommages de Feu",
"BOL.itemProperty.ishulldamage": "Dommages à la coque",
"BOL.itemProperty.iscrewdamage": "Dommages à l'équipage",
"BOL.itemProperty.hulldamage": "Valeur des dommages à la coque",
"BOL.itemProperty.crewdamage": "Valeur des dommages à l'équipage",
"BOL.itemProperty.hullDamageMultiplier": "Multiplicateur",
"BOL.itemProperty.crewDamageMultiplier": "Multiplicateur",
"BOL.itemProperty.isboarding": "Abordage",
"BOL.itemProperty.isspur": "Eperonnage",
"BOL.itemProperty.isbreakrow": "Briser les rames",
"BOL.itemStat.quantity": "Quantité",
"BOL.itemStat.weight": "Poids",
"BOL.itemStat.price": "Prix",
"BOL.itemStat.range": "Portée",
"BOL.itemStat.damage": "Dommages",
"BOL.itemStat.reload": "Rechargement (Actions)",
"BOL.itemStat.soak": "Valeur de protection",
"BOL.itemStat.blocking": "Bloquage",
"BOL.itemStat.modifiers": "Modificateurs",
"BOL.weaponSize.unarmed": "Mains nues",
"BOL.weaponSize.improvised": "Arme improvisée",
"BOL.weaponSize.light": "Légère",
"BOL.weaponSize.medium": "Moyenne",
"BOL.weaponSize.heavy": "Lourde",
"BOL.itemModifiers.init": "Malus (Initiative)",
"BOL.itemModifiers.social": "Malus (Social)",
"BOL.itemModifiers.agility": "Malus (Agilité)",
"BOL.itemModifiers.powercost": "Malus (Coût supplémentaire en PP)",
"BOL.itemBlocking.malus": "Social",
"BOL.itemBlocking.nbAttacksPerRound": "Agilité",
"BOL.soakFormula.none": "-",
"BOL.soakFormula.light": "Légère (Annule d6-3 dégâts subis)",
"BOL.soakFormula.medium": "Moyenne (Annule d6-2 dégâts subis)",
"BOL.soakFormula.heavy": "Lourde (Annule d6-1 dégâts subis)",
"BOL.armorQuality.none": "-",
"BOL.armorQuality.light": "Légère",
"BOL.armorQuality.lightQ": "Légère de qualité",
"BOL.armorQuality.lightSup": "Légère Supérieure",
"BOL.armorQuality.lightLeg": "Légère Légendaire",
"BOL.armorQuality.medium": "Moyenne",
"BOL.armorQuality.mediumQ": "Moyenne de qualité",
"BOL.armorQuality.mediumSup": "Moyenne Supérieure",
"BOL.armorQuality.mediumLeg": "Moyenne Légendaire",
"BOL.armorQuality.heavy": "Lourde",
"BOL.armorQuality.heavyQ": "Lourde de qualité",
"BOL.armorQuality.heavySup": "Lourde Supérieure",
"BOL.armorQuality.heavyLeg": "Lourde Légendaire",
"BOL.equipmentSlots.none": "-",
"BOL.equipmentSlots.head": "Tête",
"BOL.equipmentSlots.neck": "Cou",
"BOL.equipmentSlots.shoulders": "Épaules",
"BOL.equipmentSlots.body": "Corps",
"BOL.equipmentSlots.rhand": "Main droite",
"BOL.equipmentSlots.lhand": "Main gauche",
"BOL.equipmentSlots.2hands": "2 mains",
"BOL.equipmentSlots.rarm": "Bras droit",
"BOL.equipmentSlots.larm": "Bras gauche",
"BOL.equipmentSlots.chest": "Torse",
"BOL.equipmentSlots.belt": "Ceinture",
"BOL.equipmentSlots.legs": "Jambes",
"BOL.equipmentSlots.feet": "Pieds",
"BOL.equipmentSlots.finder": "Doigt",
"BOL.equipmentSlots.ear": "Oreille",
"BOL.vehicleCategory.mount": "Monture terrestre",
"BOL.vehicleCategory.flying": "Monture volante",
"BOL.vehicleCategory.boat": "Bateau",
"BOL.vehicleCategory.other": "Autre",
"BOL.range.PointBlank": "Bout portant",
"BOL.range.Short": "Courte",
"BOL.range.Medium": "Moyenne",
"BOL.range.Long": "Long",
"BOL.range.VeryLong": "Très longue",
"BOL.range.Extreme": "Extrême",
"BOL.range.Maximum": "Maximale",
"BOL.notification.MacroMultipleTokensSelected": "Vous avez sélectionné plusieurs tokens",
"BOL.notification.MacroNoActorAvailable": "Aucun acteur n'a pu être ciblé",
"BOL.notification.MacroNoTokenSelected": "Vous devez sélectionner un token",
"BOL.size.tiny": "Minuscule",
"BOL.size.verysmall": "Très petite",
"BOL.size.small": "Petite",
"BOL.size.medium": "Moyenne",
"BOL.size.large": "Grande",
"BOL.size.verylarge": "Très grande",
"BOL.size.huge": "Enorme",
"BOL.size.massive": "Massive",
"BOL.size.enormous": "Colossale",
"BOL.size.gigantic": "Gigantesque",
"BOL.size.immense": "Immense",
"BOL.size.colossal": "Monstrueuse",
"BOL.chat.fightactive": "{name} active son option de combat {foName} pour ce round !",
"BOL.chat.fightunactive": "{name} désactive son option de combat {foName} pour ce round !",
"BOL.chat.isdead": "{name} est mort !",
"BOL.chat.epitaph": "Que son nom soit honoré sur les champs de batailles de Lémurie !",
"BOL.chat.vitalityzero": "La Vitalité de {name} est {hp} : il va s'écrouler au sol et sombrer dans l'inconscience !",
"BOL.chat.vitalityheroism": "Vous pouvez dépenser 1 Point d'Héroisme pour reprendre vos esprits pendant 1 round.",
"BOL.chat.vitalityheroismhint": "Dans ce cas votre vitalité remonte à son maximum divisé par 2 (arrondi au supérieur).",
"BOL.chat.vitalitydying": "La Vitalité de {name} est de {hp} ! Il est mourant ...",
"BOL.chat.vitalitydyingheroism": "Vous pouvez cependant dépenser 1 Point d'Héroisme pour Défier la Mort (cf. page 58).",
"BOL.chat.alchemytitle": "Préparation Alchimique : {name}",
"BOL.chat.alchemypoints": "Points de Création Investis : {pcCostCurrent}",
"BOL.chat.alchemysuccess": "La préparation alchimique a été réalisée avec succès !<br>Créez l'item ou l'effet correspondant dans votre Inventaire.<br>L'avancement dans la préparation a été remis à 0.",
"BOL.chat.alchemyfailure": "La préparation alchimique a échouée !<br>L'avancement dans la préparation a été remis à 0.",
"BOL.chat.rolldamage": "Lancer les dommages",
"BOL.chat.rolldamage6": "Lancer les dommages +6",
"BOL.chat.rolldamage12": "Dommages +12 (1 Pt. d'Heroisme)",
"BOL.chat.damageresult": "Dommages de {name} : {total}",
"BOL.chat.damagetarget": "Cible : {target}",
"BOL.chat.applydamagetotarget": "Appliquer les dommages à la cible",
"BOL.chat.fightoption": "Option de combat",
"BOL.chat.reroll": "Relancer (1 P. Heroisme)",
"BOL.chat.toheroic": "Transformer en succés Héroïque (1 P. Héroisme)",
"BOL.chat.tolegend": "Transformer en succes Légendaire (1 P. Heroisme)",
"BOL.chat.hurttitle": "{name} va encaisser {damageTotal} dégats !",
"BOL.chat.armordefault": "C'est une attaque au défaut de l'armure : vous devez encaisser SANS la protection de l'armure !",
"BOL.chat.witharmor": "Encaisser avec la protection de l'armure",
"BOL.chat.withoutarmor": "Encaisser sans la protection de l'armure",
"BOL.chat.shakeoff": "Juste une égratignure (1 Point d'Héroisme)",
"BOL.chat.splinteredshield": "Parade in Extremis avec {name} (1 Point d'Héroisme)",
"BOL.chat.damagesummary": "Dégats subis par {name}",
"BOL.chat.protectvalue": "Protection de l'armure",
"BOL.chat.noprotectvalue": "Aucune protection d'armure !",
"BOL.chat.heroreducedamage": "Un point d'héroisme dépensé, pour une réduction des dommages supplémentaire de {total}.",
"BOL.chat.herosplintered": "Aucun dommage encaissé, grâce à la parade in-extremis avec {weaponHero.name}. L'arme a été détruite pendant cette parade ! Un point d'héroisme a également été dépensé.",
"BOL.chat.finaldamage": "Encaissement final : {finalDamage} dégats !",
"BOL.chat.spell": "Sort",
"BOL.chat.spellcost": "Cout en Points de Pouvoir",
"BOL.chat.spellremaining": "Points de Pouvoir restants",
"BOL.chat.nodamagesummary": "Aucun dégats n'a été subi ....",
"BOL.chat.damageresume": "{name} a subi des blessures ...",
"BOL.chat.fumblemessage": "Si vous acceptez les conséquences d'un echec catastrophique (au choix du MJ), vous pourrez bénéficier d'1 point d'Héroïsme supplémentaire",
"BOL.chat.rangeinfo": "Tir/Lancer de {attackerName} vers {defenderName}",
"BOL.chat.rangeweaponinfo": "Arme : {weaponName} - Portée de base {weaponRange}",
"BOL.chat.rangeout": "Modificateur : Hors de portée",
"BOL.chat.range0": "Modificateur : Bout portant (+1)",
"BOL.chat.range1": "Modificateur : Portée courte (0)",
"BOL.chat.range2": "Modificateur : Portée moyenne (-1)",
"BOL.chat.range3": "Modificateur : Portée longue (-2)",
"BOL.chat.range4": "Modificateur : Portée très longue (-4)",
"BOL.chat.range5": "Modificateur : Portée extrême (-6)",
"BOL.chat.range6": "Modificateur : Portée maximale (-8)",
"BOL.chat.rangeprefix": "Distance évaluée : ",
"BOL.chat.rangevisible": "La ligne de vue est dégagée entre les protagonistes.",
"BOL.chat.rangenotvisible": "La ligne de vue est bloquée entre les protagonistes.",
"BOL.chat.rangetitle": "Information MJ",
"BOL.chat.weaponreroll1": "Pour information, cette arme relance les 1 sur ses dégâts.",
"BOL.chat.rollbougette": "Jet de Bougette",
"BOL.chat.bougettesuccess": "Votre bougette reste inchangée !",
"BOL.chat.bougettefailure": "Vous avez trop dépensé, votre bougette s'est réduite...",
"BOL.chat.initiative": "Rang d'intiative (10 à 1)",
"BOL.chat.horoscope": "Horoscope",
"BOL.chat.horoscopepoints": "Coût : {points} Points d'Astrologie",
"BOL.chat.horoscopeminorsuccess": "Votre horoscope mineur est un succès : éditez le nom de l'horoscope sur votre fiche. Vous bénéficiez d'1 dé Bonus pour cette situation.",
"BOL.chat.horoscopeminorfailure": "Votre horoscope mineur est un échec : éditez le nom de l'horoscope sur votre fiche. Vous souffrez d'1 dé Malus pour cette situation.",
"BOL.chat.horoscopemajorsuccess": "Votre horoscope majeur est un succès : vous bénéficiez d'1 point d'Héroisme pour cette aventure. Ce point a été ajouté automatiquement.",
"BOL.chat.horoscopemajorfailure": "Votre horoscope majeur est un échec : vous perdez 1 point d'Héroisme pour cette aventure. Ce point a été enlevé automatiquement.",
"BOL.chat.horoscopemajorgroupsuccess": "Votre horoscope majeur de groupe est un succès. Vous et vos amis bénéficiez de {careerBonus} dés bonus pendant cette aventure.",
"BOL.chat.horoscopemajorgroupfailure": "Votre horoscope majeur de groupe est un échec. Vous et vos amis souffrez de {careerBonus} dés malus pendant cette aventure.",
"BOL.chat.usedhoroscope": "Horoscope utilisé",
"BOL.chat.horoscopedeleted": "Le(s) Horoscopes utilisé(s) a/ont été supprimé(s) automatiquement.",
"BOL.chat.criticaloptions": "Succès critique !! Vous pouvez faire (1 option au choix) :",
"BOL.chat.criticalcarnage": "Faire un Carnage : vous avez une attaque gratuite supplémentaire. Cette seconde attaque ne peut bénéficier d'un Point d'Héroisme.",
"BOL.chat.criticalplus6": "Coup Dévastateur : +6 aux dommages (cf bouton ci-dessous).",
"BOL.chat.criticalprecise": "Coup Précis : Vous frappez pour diminuer les capacités de votre adversaire. Décrivez ce que vous faites, et si le MJ l'accepte, votre opposant subira un Dé de Malus pour les actions concernées.",
"BOL.chat.criticalunarm": "Désarmement : Si votre adversaire a une arme en main, vous le désarmez.",
"BOL.chat.criticalrabble": "Massacrer la piétaille : Si vous combattez de la Piétaille, les résultats des dommages indiquent le nombre d'adversaires mis hors de combat.",
"BOL.chat.criticalpush": "Renversement : Si la taille le permet, vous poussez votre adversaire au sol, il souffrira d'1 Dé de Malus pour toutes ses actions au round suivant.",
"BOL.chat.criticalup": "Transformer en Légendaire : En dépensant 1 point d'Héroisme, vous pouvez transformer ce Succès Héroïque en Légendaire, qui vous permet de prendre 2 options dans la liste ci-dessus (cf. bouton pour un +12 aux dommages par exemple).",
"BOL.chat.criticalinfo": "C'est un succès Héroïque ou Légendaire ! Choisissez vos options et effets !",
"BOL.chat.criticalbuttonjournal": "Succès Héroïque/Légendaire",
"BOL.dialog.soeasy": "Inmanquable (+4)",
"BOL.dialog.veryeasy": "Trés Facile (+2)",
"BOL.dialog.easy": "Facile (+1)",
"BOL.dialog.moderate": "Moyenne (0)",
"BOL.dialog.hard": "Ardue (-1)",
"BOL.dialog.tough": "Difficile (-2)",
"BOL.dialog.demanding": "Très Difficile (-4)",
"BOL.dialog.formidable": "Impossible (-6)",
"BOL.dialog.heroic": "Héroïque (-8)",
"BOL.dialog.mythic": "Mythique (-10)",
"BOL.dialog.divine": "Divine (-12)",
"BOL.dialog.pointblank": "Bout portant (+1)",
"BOL.dialog.close": "Courte (0)",
"BOL.dialog.medium": "Moyenne (-1))",
"BOL.dialog.long": "Longue (-2)",
"BOL.dialog.distant": "Très longue (-4)",
"BOL.dialog.extreme": "Extrême (-6)",
"BOL.dialog.utmost": "Maximale (-8)",
"BOL.ui.name": "Nom",
"BOL.ui.xp": "Experience",
"BOL.ui.xpspent": "Dépensée",
"BOL.ui.xptotal": "Totale",
"BOL.ui.biosize": "Taille",
"BOL.ui.bioweight": "Poids",
"BOL.ui.bioage": "Age",
"BOL.ui.biohair": "Cheveux",
"BOL.ui.bioeyes": "Yeux",
"BOL.ui.biosigns": "Signes distinctifs",
"BOL.ui.biodescription": "Description",
"BOL.ui.bionotes": "Notes",
"BOL.chat.welcome1": "Bienvenue dans Barbarians of Lemuria (Ludospherik version)",
"BOL.chat.welcome2": "Les livres nécessaires pour jouer sont disponibles sur le site de <a href='http://www.ludospherik.fr/content/14-barbarians-of-lemuria'>l'éditeur Ludospherik.</a>",
"BOL.chat.welcome3": "Les cartes intégrées au système le sont grace à l'aimable autorisation de leur auteur Guillaume Tavernier et des éditions Ludospherik. Merci à eux !.",
"BOL.chat.welcome4": "Tout le support et le suivi de ce système est disponible via le <a href='https://discord.gg/pPSDNJk'>Discord Foundry FR</a>.",
"BOL.chat.welcome5": "Consulter l'aide en ligne pour plus d'informations : @UUID[Compendium.bol.aides-de-jeu.97rugQOtiwt8zPfQ]{Aide du Jeu}.",
"BOL.chat.welcome6": "Bon jeu en Lemurie !"
}

View File

@ -28,7 +28,9 @@
"BOL.resources.power": "Pouvoir",
"BOL.resources.villainy": "Vilénie",
"BOL.resources.alchemypoints": "Points de Creation",
"BOL.resources.astrologypoints": "Points d'Astrologie",
"BOL.traits.xp": "Expérience",
"BOL.ui.tab.stats": "Attributs",
"BOL.ui.tab.combat": "Combat",
"BOL.ui.tab.actions": "Actions",
@ -36,7 +38,19 @@
"BOL.ui.tab.equipment": "Equipement",
"BOL.ui.tab.description": "Description",
"BOL.ui.tab.details": "Details",
"BOL.ui.tab.spellalchemy": "Sorts&Alchimie",
"BOL.ui.tab.spellalchemy": "Mystères",
"BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes",
"BOL.ui.horoscopesBonus": "Horoscopes (Bonus)",
"BOL.ui.horoscopesMalus": "Horoscopes (Malus)",
"BOL.ui.groupHoroscope": "Horoscrope de Groupe de ",
"BOL.ui.properties": "Propriétés",
"BOL.ui.description": "Description",
"BOL.ui.actions": "Actions",
@ -92,8 +106,8 @@
"BOL.ui.success": "Succès",
"BOL.ui.failure": "Échec",
"BOL.ui.fumble": "Échec critique",
"BOL.ui.critical": "Succès critique",
"BOL.ui.criticallegend": "Succès légendaire !",
"BOL.ui.critical": "Succès Héroïque",
"BOL.ui.criticallegend": "Succès Légendaire !",
"BOL.ui.maneuvers": "Actions de combat",
"BOL.ui.stacksize": "Taille de pile (max)",
"BOL.ui.weapons": "Armes",
@ -114,12 +128,16 @@
"BOL.ui.difficulty": "Difficulté",
"BOL.ui.spellProperties": "Propriétés du Sort",
"BOL.ui.duration": "Durée",
"BOL.ui.spellkeep": "Prolongation",
"BOL.ui.concentrate": "Concentration",
"BOL.ui.spellkeep": "Prolongation possible ?",
"BOL.ui.concentrate": "Concentration à maintenir ?",
"BOL.ui.aggressive": "Sort aggressif ?",
"BOL.ui.registerInit": "Enregistrer comme Init. de combat",
"BOL.ui.magicnewrules": "Règles supplémentaires (cf. supplément fan-made Sorcellerie!)",
"BOL.ui.isSorcerer": "Carrière de Sorcier ?",
"BOL.ui.isAlchemist": "Carrière d'Alchimiste ?",
"BOL.ui.isPriest": "Carrière de Prêtre/Druide ?",
"BOL.ui.isAstrologer": "Carrière d'Astrologue?",
"BOL.ui.circle": "Cercle",
"BOL.ui.spells": "Sorts",
"BOL.ui.focusSpell": "Lance un sort",
@ -137,6 +155,21 @@
"BOL.ui.alchemyCostTotal": "Points de Création nécessaires pour la Préparation",
"BOL.ui.alchemyInvest": "Points de Création investis",
"BOL.ui.alchemyCurrent": "Points de Création actuel dans la Préparation",
"BOL.ui.astrology": "Astrologie et Horoscopes",
"BOL.ui.astrologyMinor": "Etablir un Horoscope Mineur",
"BOL.ui.astrologyMajor": "Etablir un Horoscope Majeur",
"BOL.ui.astrologyMajorGroup": "Etablir un Horoscope Majeur de Groupe",
"BOL.ui.makeHoroscope": "Etablir un Horoscope",
"BOL.ui.astrologerRank": "Rang de l'Astrologue",
"BOL.ui.horoscopeCost": "Cout en Points d'Astrologie",
"BOL.ui.minor": "Mineur",
"BOL.ui.major": "Majeur",
"BOL.ui.majorgroup": "Majeur de Groupe",
"BOL.ui.horoscopeGroup": "Horoscopes de Groupe",
"BOL.ui.horoscopeDiceRemaining": "Dés restants",
"BOL.ui.horoscopeDiceMax": "Dés Max",
"BOL.ui.astrologyNoPoints": "Vous n'avez pas assez de Points d'Astrologie!",
"BOL.ui.advance": "Avancement",
"BOL.ui.isbonusdice": "Fourni un dé bonus?",
"BOL.ui.ismalusdice": "Fourni un dé malus?",
@ -172,7 +205,19 @@
"BOL.ui.boleffects": "Effets (automatiques)",
"BOL.ui.modifier": "Modificateur",
"BOL.ui.effects": "Effets en cours",
"BOL.ui.pcname": "PJs",
"BOL.ui.npcname": "PNJs",
"BOL.ui.pclistbutton": "Vue compacte",
"BOL.ui.noactorfound": "PNJ inconnu, le PNJ doit être présent dans le monde pour s'afficher ici.",
"BOL.ui.deletetitle": "Suppression",
"BOL.ui.confirmdelete": "Vous êtes sûr de vouloir supprimer cet item ?",
"BOL.ui.nomorealchemypoints": "Plus assez de Points de Création !",
"BOL.ui.armornoformula": "L'armure {protect.name} n'a pas de formule pour la protection !",
"BOL.ui.selectactor": "Selectionnez votre personnage pour utiliser la macro",
"BOL.ui.itemnotfound": "Impossible de trouver l'objet de cette macro",
"BOL.ui.noinit": "Pas d'initiative trouvée, veuillez en enregistrer une.",
"BOL.ui.warninitiative": "Votre initiative n'est pas disponible. Effectuez un jet d'Initiative pour ce combat.",
"BOL.featureCategory.origins": "Origines",
"BOL.featureCategory.races": "Races",
"BOL.featureCategory.careers": "Carrières",
@ -197,6 +242,7 @@
"BOL.featureSubtypes.effect": "Effet",
"BOL.featureSubtypes.effects": "Effets",
"BOL.featureSubtypes.boleffect": "Effet",
"BOL.featureSubtypes.horoscope": "Horoscope",
"BOL.fightOptionTypes.armor": "Attaque au défaut d'armure",
"BOL.fightOptionTypes.intrepid": "Attaque intrépide",
@ -464,6 +510,30 @@
"BOL.chat.rangenotvisible": "La ligne de vue est bloquée entre les protagonistes.",
"BOL.chat.rangetitle": "Information MJ",
"BOL.chat.weaponreroll1": "Pour information, cette arme relance les 1 sur ses dégâts.",
"BOL.chat.rollbougette": "Jet de Bougette",
"BOL.chat.bougettesuccess": "Votre bougette reste inchangée !",
"BOL.chat.bougettefailure": "Vous avez trop dépensé, votre bougette s'est réduite...",
"BOL.chat.initiative": "Rang d'intiative (10 à 1)",
"BOL.chat.horoscope": "Horoscope",
"BOL.chat.horoscopepoints": "Coût : {points} Points d'Astrologie",
"BOL.chat.horoscopeminorsuccess": "Votre horoscope mineur est un succès : éditez le nom de l'horoscope sur votre fiche. Vous bénéficiez d'1 dé Bonus pour cette situation.",
"BOL.chat.horoscopeminorfailure": "Votre horoscope mineur est un échec : éditez le nom de l'horoscope sur votre fiche. Vous souffrez d'1 dé Malus pour cette situation.",
"BOL.chat.horoscopemajorsuccess": "Votre horoscope majeur est un succès : vous bénéficiez d'1 point d'Héroisme pour cette aventure. Ce point a été ajouté automatiquement.",
"BOL.chat.horoscopemajorfailure": "Votre horoscope majeur est un échec : vous perdez 1 point d'Héroisme pour cette aventure. Ce point a été enlevé automatiquement.",
"BOL.chat.horoscopemajorgroupsuccess": "Votre horoscope majeur de groupe est un succès. Vous et vos amis bénéficiez de {careerBonus} dés bonus pendant cette aventure.",
"BOL.chat.horoscopemajorgroupfailure": "Votre horoscope majeur de groupe est un échec. Vous et vos amis souffrez de {careerBonus} dés malus pendant cette aventure.",
"BOL.chat.usedhoroscope": "Horoscope utilisé",
"BOL.chat.horoscopedeleted": "Le(s) Horoscopes utilisé(s) a/ont été supprimé(s) automatiquement.",
"BOL.chat.criticaloptions": "Succès critique !! Vous pouvez faire (1 option au choix) :",
"BOL.chat.criticalcarnage": "Faire un Carnage : vous avez une attaque gratuite supplémentaire. Cette seconde attaque ne peut bénéficier d'un Point d'Héroisme.",
"BOL.chat.criticalplus6": "Coup Dévastateur : +6 aux dommages (cf bouton ci-dessous).",
"BOL.chat.criticalprecise": "Coup Précis : Vous frappez pour diminuer les capacités de votre adversaire. Décrivez ce que vous faites, et si le MJ l'accepte, votre opposant subira un Dé de Malus pour les actions concernées.",
"BOL.chat.criticalunarm": "Désarmement : Si votre adversaire a une arme en main, vous le désarmez.",
"BOL.chat.criticalrabble": "Massacrer la piétaille : Si vous combattez de la Piétaille, les résultats des dommages indiquent le nombre d'adversaires mis hors de combat.",
"BOL.chat.criticalpush": "Renversement : Si la taille le permet, vous poussez votre adversaire au sol, il souffrira d'1 Dé de Malus pour toutes ses actions au round suivant.",
"BOL.chat.criticalup": "Transformer en Légendaire : En dépensant 1 point d'Héroisme, vous pouvez transformer ce Succès Héroïque en Légendaire, qui vous permet de prendre 2 options dans la liste ci-dessus (cf. bouton pour un +12 aux dommages par exemple).",
"BOL.chat.criticalinfo": "C'est un succès Héroïque ou Légendaire ! Choisissez vos options et effets !",
"BOL.chat.criticalbuttonjournal": "Succès Héroïque/Légendaire",
"BOL.dialog.soeasy": "Inmanquable (+4)",
"BOL.dialog.veryeasy": "Trés Facile (+2)",

View File

@ -94,8 +94,8 @@ export class BoLActorSheet extends ActorSheet {
// Delete Inventory Item
html.find('.item-delete').click(ev => {
Dialog.confirm({
title: "Suppression",
content: `Vous êtes sûr de vouloir supprimer cet item ?`,
title: game.i18n.localize("BOL.ui.deletetitle"),
content: game.i18n.localize("BOL.ui.confirmdelete"),
yes: () => {
const li = $(ev.currentTarget).parents(".item");
this.actor.deleteEmbeddedDocuments("Item", [li.data("itemId")])
@ -136,25 +136,31 @@ export class BoLActorSheet extends ActorSheet {
formData.treasure = this.actor.treasure
formData.boleffects = this.actor.boleffects
formData.alchemyrecipe = this.actor.alchemyrecipe
formData.horoscopes = this.actor.horoscopes
formData.vehicles = this.actor.vehicles
formData.fightoptions = this.actor.fightoptions
formData.ammos = this.actor.ammos
formData.misc = this.actor.misc
formData.combat = this.actor.buildCombat()
formData.initiativeRank = this.actor.getInitiativeRank()
//formData.combatCreature = this.actor.buildCombatCreature()
formData.features = this.actor.buildFeatures()
formData.isGM = game.user.isGM
formData.options = this.options
formData.owner = this.document.isOwner
formData.editScore = this.options.editScore
formData.useBougette = BoLUtility.getUseBougette()
formData.useBougette = (this.actor.type == "character" && BoLUtility.getUseBougette()) || false
formData.bougette = this.actor.getBougette()
formData.charType = this.actor.getCharType()
formData.villainy = this.actor.getVillainy()
formData.biography = await TextEditor.enrichHTML(this.object.system.details.biography, {async: true})
formData.notes = await TextEditor.enrichHTML(this.object.system.details.notes, {async: true})
formData.biography = await TextEditor.enrichHTML(this.object.system.details?.biography || "", {async: true})
formData.notes = await TextEditor.enrichHTML(this.object.system.details.notes || "", {async: true})
formData.isSorcerer = this.actor.isSorcerer()
formData.isAlchemist = this.actor.isAlchemist()
formData.isAstrologer = this.actor.isAstrologer()
formData.isMysteries = formData.isSorcerer || formData.isAlchemist || formData.isAstrologer
formData.isPriest = this.actor.isPriest()
formData.horoscopeGroupList = game.settings.get("bol", "horoscope-group")
formData.isGM = game.user.isGM
@ -236,10 +242,22 @@ export class BoLActorSheet extends ActorSheet {
case "attributexp":
this.actor.incAttributeXP(dataset.key)
break;
case "bougette":
this.actor.rollBougette()
break;
case "careerxp":
this.actor.incCareerXP( li.data("item-id"))
break;
case "horoscope-minor":
BoLRoll.horoscopeCheck(this.actor, event, "minor")
break
case "horoscope-major":
BoLRoll.horoscopeCheck(this.actor, event, "major")
break
case "horoscope-major-group":
BoLRoll.horoscopeCheck(this.actor, event, "majorgroup")
break
default: break;
}
}

View File

@ -1,5 +1,6 @@
import { BoLDefaultRoll } from "../controllers/bol-rolls.js";
import { BoLUtility } from "../system/bol-utility.js";
import { BoLRoll } from "../controllers/bol-rolls.js";
/**
* Extend the base Actor entity by defining a custom roll data structure which is ideal for the Simple system.
@ -24,7 +25,7 @@ export class BoLActor extends Actor {
/* -------------------------------------------- */
getCharType() {
if (this.type === 'character') {
return 'player'
return "player"
}
return this.system.chartype
}
@ -37,6 +38,37 @@ export class BoLActor extends Actor {
return true
}
/* -------------------------------------------- */
getBougette() {
if ( this.type == "character") {
let b = duplicate(this.system.bougette)
b.label = game.i18n.localize( game.bol.config.bougetteState[String(this.system.bougette.value)] )
b.diceImg = "icons/dice/" + game.bol.config.bougetteDice[String(this.system.bougette.value)] + "black.svg"
return b
}
return undefined
}
/* -------------------------------------------- */
async rollBougette() {
if ( this.type == "character") {
let attribute = duplicate(this.system.attributes.vigor)
let rollData = BoLRoll.getCommonRollData(this, "bougette", attribute, undefined )
rollData.formula = game.bol.config.bougetteDice[String(this.system.bougette.value)]
let r = new BoLDefaultRoll(rollData)
r.roll()
}
}
/* -------------------------------------------- */
decBougette() {
if ( this.type == "character") {
let bougette = duplicate(this.system.bougette)
bougette.value = Math.max( Number(bougette.value) - 1, 0)
this.update( { 'system.bougette': bougette } )
}
}
/* -------------------------------------------- */
updateResourcesData() {
if (this.type == 'character') {
@ -217,6 +249,9 @@ export class BoLActor extends Actor {
get boleffects() {
return this.items.filter(i => i.type === "feature" && i.system.subtype === "boleffect")
}
get horoscopes() {
return this.items.filter(i => i.type === "feature" && i.system.subtype === "horoscope")
}
get boons() {
return duplicate(this.items.filter(i => i.type === "feature" && i.system.subtype === "boon") || []);
}
@ -322,6 +357,11 @@ export class BoLActor extends Actor {
return true
return false
}
isAstrologer() {
if (this.careers.find(item => item.system.properties.astrologer == true))
return true
return false
}
isPriest() {
if (this.careers.find(item => item.system.properties.priest == true))
return true
@ -343,7 +383,7 @@ export class BoLActor extends Actor {
getDamageAttributeValue(attrDamage) {
let attrDamageValue = 0
if (attrDamage.includes("vigor")) {
attrDamageValue = actor.system.attributes.vigor.value
attrDamageValue = this.system.attributes.vigor.value
if (attrDamage.includes("half")) {
attrDamageValue = Math.floor(attrDamageValue / 2)
}
@ -392,6 +432,80 @@ export class BoLActor extends Actor {
this.updateEmbeddedDocuments('Item', [{ _id: alchemy.id, 'system.properties.pccurrent': 0 }])
}
}
/*-------------------------------------------- */
spentAstrologyPoints(points) {
let astrology = duplicate(this.system.resources.astrologypoints)
astrology.value -= points
astrology.value = Math.max(astrology.value,0)
this.update( { 'system.resources.astrologypoints': astrology} )
}
/*-------------------------------------------- */
getHoroscopesBonus() {
let astro = this.items.filter(it => it.type == "feature" && it.system.subtype == "horoscope" && !it.system.properties.ishoroscopemajor
&& it.system.properties.horoscopeanswer == "favorable")
return astro
}
/*-------------------------------------------- */
getHoroscopesMalus() {
let astro = this.items.filter(it => it.type == "feature" && it.system.subtype == "horoscope" && !it.system.properties.ishoroscopemajor
&& it.system.properties.horoscopeanswer == "unfavorable")
return astro
}
/*-------------------------------------------- */
manageHoroscope(rollData) {
//Spent points
this.spentAstrologyPoints(rollData.astrologyPointsCost)
if ( rollData.horoscopeType == "minor") {
let horoscope = { name: "SITUATION A SPECIFIER", type :"feature",
img: "icons/magic/perception/eye-ringed-glow-angry-large-red.webp",
system :{subtype: "horoscope", properties: {
ishoroscopemajor: false,
horoscopeanswer: (rollData.isSuccess) ? "favorable": "unfavorable",
rank: rollData.careerBonus
}
}
}
this.createEmbeddedDocuments('Item', [horoscope])
}
if ( rollData.horoscopeType == "major" ) {
if ( rollData.isSuccess) {
this.subHeroPoints(1)
} else {
this.addHeroPoints(1)
}
}
if ( rollData.horoscopeType == "majorgroup" ) {
let rID = randomID(16)
let horoscopes = duplicate(game.settings.get("bol", "horoscope-group"))
horoscopes[rID] = {
id: rID,
name: game.i18n.localize("BOL.ui.groupHoroscope") + this.name,
maxDice: rollData.careerBonus,
availableDice: rollData.careerBonus,
type: (rollData.isSuccess) ? "bonus": "malus"
}
game.settings.set("bol", "horoscope-group", horoscopes)
}
}
/*-------------------------------------------- */
getAstrologyPoints() {
return this.system.resources.astrologypoints.value
}
/*-------------------------------------------- */
removeHoroscopeMinor( rollData) {
let toDel = []
for(let horo of rollData.selectedHoroscope) {
toDel.push( horo._id )
}
if (toDel.length > 0) {
this.deleteEmbeddedDocuments('Item', toDel)
}
}
/*-------------------------------------------- */
async spendAlchemyPoint(alchemyId, pcCost) {
@ -405,11 +519,18 @@ export class BoLActor extends Actor {
newPC = alchemy.system.properties.pccurrent + pcCost
await this.updateEmbeddedDocuments('Item', [{ _id: alchemy.id, 'system.properties.pccurrent': newPC }])
} else {
ui.notifications.warn("Plus assez de Points de Création !")
ui.notifications.warn( game.i18n.localize("BOL.ui.nomorealchemypoints") )
}
}
}
/*-------------------------------------------- */
getAstrologerBonus() {
let astrologer = this.careers.find(item => item.system.properties.astrologer == true)
if (astrologer) {
return astrologer.system.rank
}
return 0;
}
/*-------------------------------------------- */
getAlchemistBonus() {
let sorcerer = this.careers.find(item => item.system.properties.alchemist == true)
@ -429,7 +550,7 @@ export class BoLActor extends Actor {
/*-------------------------------------------- */
heroReroll() {
if (this.villainy == 'character') {
if (this.type == 'character') {
return this.system.resources.hero.value > 0;
} else {
if (this.system.villainy == 'adversary') {
@ -595,32 +716,112 @@ export class BoLActor extends Actor {
let lastHP = await this.getFlag("world", hpID)
if (lastHP != this.system.resources.hp.value && game.user.isGM) { // Only GM sends this
await this.setFlag("world", hpID, this.system.resources.hp.value)
let prone = this.effects.find( ef => ef.label == "EFFECT.StatusProne")
let dead = this.effects.find( ef => ef.label == "EFFECT.StatusDead")
if (this.system.resources.hp.value <= 0) {
if ( !prone) {
await this.createEmbeddedDocuments("ActiveEffect", [
{label: 'EFFECT.StatusProne', icon: 'icons/svg/falling.svg', flags: { core: { statusId: 'prone' } } }
])
}
if ( this.system.resources.hp.value < -5 && !dead) {
await this.createEmbeddedDocuments("ActiveEffect", [
{label: 'EFFECT.StatusDead', icon: 'icons/svg/skull.svg', flags: { core: { statusId: 'dead' } } }
])
}
ChatMessage.create({
alias: this.name,
whisper: BoLUtility.getWhisperRecipientsAndGMs(this.name),
content: await renderTemplate('systems/bol/templates/chat/chat-vitality-zero.hbs', { name: this.name, img: this.img, hp: this.system.resources.hp.value })
})
} else {
if ( prone ) {
await this.deleteEmbeddedDocuments("ActiveEffect", [ prone.id ] )
}
if ( dead ) {
await this.deleteEmbeddedDocuments("ActiveEffect", [ dead.id ] )
}
}
}
}
/*-------------------------------------------- */
registerInit(initScore, isCritical, isFumble) {
this.update({ 'system.combat.lastinit': initScore, 'system.combat.iscritical': isCritical, 'system.combat.isfumble': isFumble })
async registerInit(rollData) {
rollData.actor = undefined // Cleanup if present
await this.setFlag("world", "last-initiative", rollData)
}
/*-------------------------------------------- */
getLastInitData() {
return this.system.combat
clearInitiative() {
this.unsetFlag("world", "last-initiative" )
}
/*-------------------------------------------- */
getSize() {
if (this.system.details.size.length > 0 && game.bol.config.creatureSize[this.system.details.size]) {
return game.bol.config.creatureSize[this.system.details.size].order
}
return game.bol.config.creatureSize["medium"].order // Medium size per default
}
/*-------------------------------------------- */
getInitiativeRank(rollData = undefined, isCombat = false, combatData) {
if (!rollData) {
rollData = this.getFlag("world", "last-initiative")
}
let fvttInit = 4 // Pietaille par defaut
if (this.type == 'character' ) {
fvttInit = 5
if (!rollData) {
fvttInit = -1
if ( isCombat ) {
ui.notifications.info(game.i18n.localize("BOL.ui.warninitiative"))
BoLRoll.aptitudeCheck(this, "init", undefined, combatData )
}
} else {
if (rollData.isLegendary) {
fvttInit = 10
} else if (rollData.isCritical) {
fvttInit = 9
} else if (rollData.isSuccess ) {
fvttInit = 8
} else if (rollData.isFumble) {
fvttInit = 3
}
}
}
if ( this.getCharType() == 'adversary') {
fvttInit = 7
}
if ( this.getCharType() == 'tough') {
fvttInit = 6
}
if ( this.getCharType() == 'creature') {
let mySize = this.getSize()
let sizeSmall = game.bol.config.creatureSize["small"].order
let sizeMedium = game.bol.config.creatureSize["medium"].order
if ( mySize >= sizeSmall && mySize <= sizeMedium) {
fvttInit = 6
}
if ( mySize > sizeMedium) {
fvttInit = 7
}
}
return fvttInit
}
/*-------------------------------------------- */
async subHeroPoints(nb) {
let newHeroP = this.system.resources.hero.value - nb;
newHeroP = (newHeroP < 0) ? 0 : newHeroP;
await this.update({ 'system.resources.hero.value': newHeroP });
}
/*-------------------------------------------- */
async addHeroPoints(nb) {
let newHeroP = this.system.resources.hero.value + nb;
newHeroP = (newHeroP < 0) ? 0 : newHeroP;
await this.update({ 'system.resources.hero.value': newHeroP });
}
/*-------------------------------------------- */
async sufferDamage(damage) {
@ -638,13 +839,13 @@ export class BoLActor extends Actor {
} else if (protect.system.subtype == 'armor') {
if (BoLUtility.getRollArmor()) {
if (!protect.system.properties.soak.formula || protect.system.properties.soak.formula == "") {
ui.notifications.warn(`L'armure ${protect.name} n'a pas de formule pour la protection !`)
ui.notifications.warn( game.i18n.localize("BOL.ui.armornoformula", protect.name) )
} else {
formula += "+" + " max(" + protect.system.properties.soak.formula + ",0)"
}
} else {
if (protect.system.properties.soak.value == undefined) {
ui.notifications.warn(`L'armure ${protect.name} n'a pas de valeur fixe pour la protection !`)
ui.notifications.warn( game.i18n.localize("BOL.ui.armornoformula", protect.name) )
} else {
formula += "+ " + protect.system.properties.soak.value
}

View File

@ -16,6 +16,7 @@ import { BoLTokenHud } from "./system/bol-action-hud.js"
import { BoLHotbar } from "./system/bol-hotbar.js"
import { BoLAdventureGenerator } from "./system/bol-adventure-generator.js"
import { BoLCommands} from "./system/bol-commands.js"
import { BoLCharacterSummary} from "./system/bol-character-summary.js"
/* -------------------------------------------- */
Hooks.once('init', async function () {
@ -40,7 +41,7 @@ Hooks.once('init', async function () {
*/
CONFIG.Combat.initiative = {
formula: "2d6+@attributes.mind.value+@aptitudes.init.value",
decimals: 3
decimals: 2
};
// Define custom Entity classes
@ -117,7 +118,10 @@ function welcomeMessage() {
/* -------------------------------------------- */
Hooks.once('ready', async function () {
BoLUtility.ready()
BoLCharacterSummary.ready()
registerUsageCount('bol')

View File

@ -18,36 +18,56 @@ export class BoLRoll {
/* -------------------------------------------- */
static updateApplicableEffects(rollData) {
let appEffects = []
for( let effect of rollData.bolEffects) {
if(effect.system.properties.identifier =="always") {
appEffects.push(effect)
for (let effect of rollData.bolEffects) {
if (effect.system.properties.identifier == "always") {
appEffects.push(effect)
} else if (effect.system.properties.identifier.includes(rollData.attribute.key)) {
appEffects.push(effect)
} else if ( rollData.aptitude && effect.system.properties.identifier.includes(rollData.aptitude.key)) {
appEffects.push(effect)
appEffects.push(effect)
} else if (rollData.aptitude && effect.system.properties.identifier.includes(rollData.aptitude.key)) {
appEffects.push(effect)
}
}
return appEffects
}
/* -------------------------------------------- */
static getCommonRollData(actor, mode, attribute, aptitude = undefined ) {
static buildHoroscopeGroupList() {
let horoscopes = game.settings.get("bol", "horoscope-group")
let horoList = [{ id: -1, name: "Aucun", type: "malus", nbDice: 0 }]
for (let id in horoscopes) {
let horo = horoscopes[id]
for (let i = 0; i < horo.availableDice; i++) {
horoList.push({ id: id, name: horo.name, type: horo.type, nbDice: i + 1 })
}
}
return horoList
}
/* -------------------------------------------- */
static getCommonRollData(actor, mode, attribute, aptitude = undefined) {
let rollData = {
mode: mode,
actorId: actor.id,
tokenId: actor.token?.id,
img: actor.img,
attribute: attribute,
attrValue: attribute.value,
aptValue: 0,
careerBonus: 0,
horoscopeBonus: 0,
horoscopeMalus: 0,
selectedHoroscope: [],
armorAgiMalus: actor.getArmorAgiMalus(),
armorInitMalus: actor.getArmorInitMalus(),
horoscopeBonusList: actor.getHoroscopesBonus(),
horoscopeMalusList: actor.getHoroscopesMalus(),
adv: "0",
mod: 0,
modRanged: 0,
aptValue: 0,
bolEffects: actor.boleffects
bolEffects: actor.boleffects,
horoscopeGroupList: this.buildHoroscopeGroupList()
}
if (aptitude) {
rollData.aptitude = aptitude
@ -58,10 +78,10 @@ export class BoLRoll {
}
/* -------------------------------------------- */
static attributeCheck(actor, key) {
static attributeCheck(actor, key, event, combatData) {
let attribute = eval(`actor.system.attributes.${key}`)
let rollData = this.getCommonRollData(actor, "attribute", attribute)
rollData.description = game.i18n.localize('BOL.ui.attributeCheck') + " - " + game.i18n.localize(attribute.label)
rollData.label = (attribute.label) ? game.i18n.localize(attribute.label) : null
@ -71,7 +91,7 @@ export class BoLRoll {
}
/* -------------------------------------------- */
static aptitudeCheck(actor, key) {
static aptitudeCheck(actor, key, event, combatData) {
let aptitude = eval(`actor.system.aptitudes.${key}`)
let attrKey = this.getDefaultAttribute(key)
@ -81,32 +101,33 @@ export class BoLRoll {
rollData.label = (aptitude.label) ? game.i18n.localize(aptitude.label) : null
rollData.description = game.i18n.localize('BOL.ui.aptitudeCheck') + " - " + game.i18n.localize(aptitude.label)
rollData.combatData = combatData // For initiative mainly
return this.displayRollDialog( rollData)
return this.displayRollDialog(rollData)
}
/* -------------------------------------------- */
static async detectDistance( weapon, target ) {
static async detectDistance(weapon, target) {
let visible, dist
if (weapon.system.properties.ranged || weapon.system.properties.throwing) {
if (target && (weapon.system.properties.ranged || weapon.system.properties.throwing)) {
console.log("target", target, weapon)
visible = canvas.effects.visibility.testVisibility(target.center, { object: _token })
dist = Number(canvas.grid.measureDistances([{ ray: new Ray(_token.center, target.center) }], { gridSpaces: false })).toFixed(2)
let range = Number(weapon.system.properties.range)
let rangeMsg = "BOL.chat.rangeout"
if ( dist <= range) {
if (dist <= range) {
rangeMsg = "BOL.chat.range0"
} else if (dist < range*2) {
} else if (dist < range * 2) {
rangeMsg = "BOL.chat.range1"
} else if (dist < range*3) {
} else if (dist < range * 3) {
rangeMsg = "BOL.chat.range2"
} else if (dist < range*4) {
} else if (dist < range * 4) {
rangeMsg = "BOL.chat.range3"
} else if (dist < range*5) {
} else if (dist < range * 5) {
rangeMsg = "BOL.chat.range4"
} else if (dist < range*6) {
} else if (dist < range * 6) {
rangeMsg = "BOL.chat.range5"
} else if (dist < range*7) {
} else if (dist < range * 7) {
rangeMsg = "BOL.chat.range6"
}
ChatMessage.create({
@ -120,7 +141,7 @@ export class BoLRoll {
rangeMsg: rangeMsg
})
})
}
}
}
/* -------------------------------------------- */
@ -135,7 +156,7 @@ export class BoLRoll {
let rollData = this.getCommonRollData(actor, "weapon", attribute, aptitude)
// Compute distance
this.detectDistance( weapon, target)
this.detectDistance(weapon, target)
// Manage specific case
let fightOption = actor.getActiveFightOption()
@ -143,14 +164,14 @@ export class BoLRoll {
ui.notifications.warn(`{{actor.name}} est en Défense Totale ! Il ne peut pas attaquer ce round.`)
return
}
// Update the roll structure
rollData.weapon = weapon
rollData.weapon = weapon
rollData.isRanged = weaponData.properties.ranged || weaponData.properties.throwing
rollData.targetId = target?.id
rollData.fightOption = fightOption
rollData.defenderId = target?.actor.id
rollData.label = (weapon.name) ? weapon.name : game.i18n.localize('BOL.ui.noWeaponName')
rollData.defenderId = target?.actor.id
rollData.label = (weapon.name) ? weapon.name : game.i18n.localize('BOL.ui.noWeaponName')
rollData.description = game.i18n.localize('BOL.ui.weaponAttack') + " : " + weapon.name
return this.displayRollDialog(rollData)
@ -193,23 +214,43 @@ export class BoLRoll {
rollData.label = alchemy.name
rollData.description = game.i18n.localize('BOL.ui.makeAlchemy') + "+" + alchemy.name
console.log("ALCHEMY!", alchemyDef);
return this.displayRollDialog(alchemyDef);
console.log("ALCHEMY!", rollData);
return this.displayRollDialog(rollData);
}
/* -------------------------------------------- */
static spellCheckWithSpell( actor, spell ) {
static horoscopeCheck(actor, event, horoscopeType) {
let cost = (horoscopeType == "minor") ? 1 : 2
if (cost > actor.getAstrologyPoints()) {
ui.notifications.warn(game.i18n.localize("BOL.ui.astrologyNoPoints"))
return
}
let rollData = this.getCommonRollData(actor, "horoscope", actor.system.attributes.mind)
rollData.careerBonus = actor.getAstrologerBonus()
rollData.horoscopeType = horoscopeType
rollData.horoscopeTypeLabel = "BOL.ui." + horoscopeType
rollData.astrologyPointsCost = cost
rollData.label = game.i18n.localize('BOL.ui.makeHoroscope')
rollData.description = game.i18n.localize('BOL.ui.makeHoroscope') + " " + game.i18n.localize(rollData.horoscopeTypeLabel)
console.log("HOROSCOPE!", rollData);
return this.displayRollDialog(rollData);
}
/* -------------------------------------------- */
static spellCheckWithSpell(actor, spell) {
let rollData = this.getCommonRollData(actor, "spell", actor.system.attributes.mind)
rollData.spell = spell
rollData.ppCurrent = Number(actor.system.resources.power.value),
rollData.careerBonus = actor.getSorcererBonus(),
rollData.ppCostArmor = actor.getPPCostArmor(),
rollData.ppCost = Number(spell.system.properties.ppcost),
rollData.mod = Number(spell.system.properties.difficulty),
rollData.label = spell.name,
rollData.description = game.i18n.localize('BOL.ui.focusSpell') + " : " + spell.name
rollData.careerBonus = actor.getSorcererBonus(),
rollData.ppCostArmor = actor.getPPCostArmor(),
rollData.ppCost = Number(spell.system.properties.ppcost),
rollData.mod = Number(spell.system.properties.difficulty),
rollData.label = spell.name,
rollData.description = game.i18n.localize('BOL.ui.focusSpell') + " : " + spell.name
//console.log("SPELL!", spellDef)
return this.displayRollDialog(rollData)
}
@ -227,7 +268,7 @@ export class BoLRoll {
return
}
spell = duplicate(spell)
return this.spellCheckWithSpell( actor, spell)
return this.spellCheckWithSpell(actor, spell)
}
/* -------------------------------------------- */
@ -244,15 +285,21 @@ export class BoLRoll {
if (effect.system.properties.modifier == "1B") {
this.rollData.bmDice++;
} else if (effect.system.properties.modifier == "1B") {
this.rollData.bmDice+=2;
this.rollData.bmDice += 2;
} else if (effect.system.properties.modifier == "1M") {
this.rollData.bmDice--;
} else if (effect.system.properties.modifier == "2M") {
this.rollData.bmDice-=2;
} else if (effect.system.properties.modifier == "2M") {
this.rollData.bmDice -= 2;
} else {
effectModifier += Number(effect.system.properties.modifier)
}
}
this.rollData.bmDice += this.rollData.horoscopeBonus
this.rollData.bmDice -= this.rollData.horoscopeMalus
if (this.rollData.selectedGroupHoroscopeIndex && this.rollData.selectedGroupHoroscopeIndex > 0) {
let horo = this.rollData.horoscopeGroupList[this.rollData.selectedGroupHoroscopeIndex]
this.rollData.bmDice += (horo.type == "malus") ? -horo.nbDice : horo.nbDice;
}
// Keep track of the final effect modifier
this.rollData.effectModifier = effectModifier
@ -266,7 +313,7 @@ export class BoLRoll {
$('#roll-nbdice').val("2 + " + String(Math.abs(this.rollData.bmDice)) + letter)
}
let rollbase = this.rollData.attrValue + "+" + this.rollData.aptValue
if ( this.rollData.weapon && this.rollData.weapon.system.properties.onlymodifier ) {
if (this.rollData.weapon && this.rollData.weapon.system.properties.onlymodifier) {
rollbase = ""
}
$('#roll-modifier').val(rollbase + "+" + this.rollData.careerBonus + "+" + this.rollData.mod + "+" +
@ -275,7 +322,7 @@ export class BoLRoll {
// Rebuild lits of applicable effects
let selectEffects = ""
for(let effect of this.rollData.bolApplicableEffects) {
for (let effect of this.rollData.bolApplicableEffects) {
selectEffects += `<option value="${effect.id}" selected>${effect.name}</option>`
}
$('#applicable-effects').html(selectEffects)
@ -338,7 +385,7 @@ export class BoLRoll {
html.find('#optcond').change((event) => { // Dynamic change of PP cost of spell
let pp = BoLUtility.computeSpellCost(this.rollData.spell, event.currentTarget.selectedOptions.length)
this.rollData.ppCost = pp
this.updatePPCost( this.rollData)
this.updatePPCost(this.rollData)
})
html.find('#mod').change((event) => {
@ -352,7 +399,7 @@ export class BoLRoll {
html.find('#attr').change((event) => {
let attrKey = event.currentTarget.value
let actor = game.actors.get( this.rollData.actorId)
let actor = BoLUtility.getActorFromRollData(this.rollData)
this.rollData.attribute = duplicate(actor.system.attributes[attrKey])
this.rollData.attrValue = actor.system.attributes[attrKey].value
this.rollData.bolApplicableEffects = this.updateApplicableEffects(this.rollData)
@ -360,7 +407,7 @@ export class BoLRoll {
})
html.find('#apt').change((event) => {
let aptKey = event.currentTarget.value
let actor = game.actors.get( this.rollData.actorId)
let actor = BoLUtility.getActorFromRollData(this.rollData)
this.rollData.aptitude = duplicate(actor.system.aptitudes[aptKey])
this.rollData.aptValue = actor.system.aptitudes[aptKey].value
this.rollData.bolApplicableEffects = this.updateApplicableEffects(this.rollData)
@ -400,6 +447,31 @@ export class BoLRoll {
this.rollData.mDice = Number(event.currentTarget.value)
this.updateTotalDice()
})
html.find('#horoscope-bonus-applied').change((event) => {
this.rollData.selectedHoroscope = []
for (let option of event.currentTarget.selectedOptions) {
this.rollData.selectedHoroscope.push(duplicate(this.rollData.horoscopeBonusList[Number(option.index)]))
}
let horoscopes = $('#horoscope-bonus-applied').val()
this.rollData.horoscopeBonus = (!horoscopes || horoscopes.length == 0) ? 0 : horoscopes.length
this.updateTotalDice()
})
html.find('#horoscope-malus-applied').change((event) => {
this.rollData.selectedHoroscope = []
for (let option of event.currentTarget.selectedOptions) {
this.rollData.selectedHoroscope.push(duplicate(this.rollData.horoscopeBonusList[Number(option.index)]))
}
let horoscopes = $('#horoscope-malus-applied').val()
this.rollData.horoscopeMalus = (!horoscopes || horoscopes.length == 0) ? 0 : horoscopes.length
this.updateTotalDice()
})
html.find('#horoscope-group-applied').change((event) => {
this.rollData.selectedGroupHoroscopeIndex = event.currentTarget.value
this.updateTotalDice()
})
}
/* -------------------------------------------- */
@ -407,7 +479,7 @@ export class BoLRoll {
if (rollData.mode == "weapon") {
rollData.weaponModifier = rollData.weapon.system.properties.attackModifiers ?? 0
rollData.attackBonusDice = rollData.weapon.system.properties.attackBonusDice
if ( rollData.attackBonusDice) {
if (rollData.attackBonusDice) {
rollData.adv = "1B"
rollData.bDice = 1
}
@ -432,9 +504,9 @@ export class BoLRoll {
// initialize default flags/values
const rollOptionTpl = `systems/bol/templates/dialogs/${rollData.mode}-roll-dialog.hbs`
let actor = game.actors.get( rollData.actorId )
let actor = BoLUtility.getActorFromRollData(rollData)
let defender
if ( rollData.targetId) {
if (rollData.targetId) {
let token = game.scenes.current.tokens.get(rollData.targetId)
defender = token.actor
}
@ -497,16 +569,18 @@ export class BoLRoll {
//console.log("ROLLMALUS", rollData)
rollData.registerInit = (rollData.aptitude && rollData.aptitude.key == 'init') ? $('#register-init').is(":checked") : false;
const isMalus = rollData.nbFlaws > rollData.nbBoons
const isMalus = (rollData.bmDice < 0)
//rollData.nbDice += (rollData.attackBonusDice) ? 1 : 0
let rollbase = rollData.attrValue + rollData.aptValue
if ( rollData.weapon && rollData.weapon.system.properties.onlymodifier ) {
if (rollData.weapon && rollData.weapon.system.properties.onlymodifier) {
rollbase = 0
}
}
let diceData = BoLUtility.getDiceData()
const modifiers = rollbase + rollData.careerBonus + rollData.mod + rollData.weaponModifier - rollData.defence - rollData.modArmorMalus + rollData.shieldMalus + rollData.attackModifier + rollData.appliedArmorMalus + rollData.effectModifier
const formula = (isMalus) ? rollData.nbDice + "d6kl2 + " + modifiers : rollData.nbDice + "d6kh2 + " + modifiers
const formula = (isMalus) ? rollData.nbDice + "d" + diceData.diceFormula + "kl2 + " + modifiers : rollData.nbDice + "d" + diceData.diceFormula + "kh2 + " + modifiers
rollData.formula = formula
rollData.modifiers = modifiers
@ -534,10 +608,10 @@ export class BoLDefaultRoll {
this.rollData.isFumble = false;
}
if (this.rollData.optionsId) {
BoLUtility.cleanupButtons( this.rollData.optionsId)
BoLUtility.cleanupButtons(this.rollData.optionsId)
}
if (this.rollData.applyId) {
BoLUtility.cleanupButtons( this.rollData.applyId)
BoLUtility.cleanupButtons(this.rollData.applyId)
}
this.rollData.optionsId = randomID(16)
this.rollData.applyId = randomID(16)
@ -547,44 +621,62 @@ export class BoLDefaultRoll {
async roll() {
const r = new Roll(this.rollData.formula)
// console.log("Roll formula", this.rollData.formula)
//console.log("Roll formula", this.rollData.formula)
await r.roll({ "async": false })
let diceData = BoLUtility.getDiceData()
//console.log("DICEDATA", diceData)
const activeDice = r.terms[0].results.filter(r => r.active)
const diceTotal = activeDice.map(r => r.result).reduce((a, b) => a + b)
this.rollData.roll = r
this.rollData.isSuccess = (r.total >= 9)
this.rollData.isCritical = (diceTotal === 12)
this.rollData.isRealCritical = (diceTotal === 12)
this.rollData.isHeroic = (diceTotal === 12)
this.rollData.isSuccess = (r.total >= diceData.successValue)
this.rollData.isCritical = (diceTotal >= diceData.criticalSuccessValue)
this.rollData.isRealCritical = (diceTotal >= diceData.criticalSuccessValue)
this.rollData.isHeroic = (diceTotal >= diceData.criticalSuccessValue)
this.rollData.isLegendary = false
this.rollData.isFumble = (diceTotal === 2)
this.rollData.isFumble = (diceTotal <= diceData.criticalFailureValue)
this.rollData.isFailure = !this.rollData.isSuccess
//this.rollData.isRealCritical = true
//this.rollData.isFumble = true
let actor = game.actors.get( this.rollData.actorId)
let actor = BoLUtility.getActorFromRollData(this.rollData)
if (this.rollData.reroll == undefined) {
this.rollData.reroll = actor.heroReroll()
}
if (this.rollData.registerInit) {
actor.registerInit(r.total, this.rollData.isCritical, this.rollData.isFumble)
actor.registerInit(this.rollData)
this.rollData.initiativeRank = actor.getInitiativeRank(this.rollData)
if (this.rollData.combatData) { // If combatData present
let combat = game.combats.get(this.rollData.combatData.combatId)
combat.setInitiative(this.rollData.combatData.combatantId, this.rollData.initiativeRank)
}
}
if (this.rollData.isSuccess && this.rollData.mode == "spell") { // PP cost management
this.rollData.remainingPP = actor.spendPowerPoint(this.rollData.ppCost + this.rollData.ppCostArmor)
}
if (this.rollData.mode == "alchemy") { // PP cost management
actor.resetAlchemyStatus(this.rollData.alchemy._id)
}
if (this.rollData.mode == "bougette" && this.rollData.isFailure) {
actor.decBougette()
}
await this.sendChatMessage()
if (this.rollData.mode == "horoscope") { // PP cost management
actor.manageHoroscope(this.rollData)
}
if (this.rollData.selectedHoroscope.length > 0) { // PP cost management
actor.removeHoroscopeMinor(this.rollData)
}
if (this.rollData.selectedGroupHoroscopeIndex && this.rollData.selectedGroupHoroscopeIndex > 0) { // PP cost management
BoLUtility.removeGroupHoroscope(this.rollData)
}
}
/* -------------------------------------------- */
async sendChatMessage() {
let actor = game.actors.get( this.rollData.actorId)
this._buildChatMessage(this.rollData).then( async msgFlavor => {
let actor = BoLUtility.getActorFromRollData(this.rollData)
this._buildChatMessage(this.rollData).then(async msgFlavor => {
let msg = await this.rollData.roll.toMessage({
user: game.user.id,
rollMode: game.settings.get("core", "rollMode"),
@ -599,12 +691,15 @@ export class BoLDefaultRoll {
/* -------------------------------------------- */
upgradeToLegendary() {
// Force to Critical roll
let diceData = BoLUtility.getDiceData()
let maxValue = Number(diceData.diceFormula) * 2
this.rollData.isCritical = true
this.rollData.isLegendary = true
this.rollData.isRealCritical = false
this.rollData.isSuccess = true
this.rollData.isFailure = false
this.rollData.roll = new Roll("12+" + this.rollData.modifiers)
this.rollData.roll = new Roll(maxValue + "+" + this.rollData.modifiers)
this.rollData.reroll = false
this.sendChatMessage()
}
@ -612,17 +707,20 @@ export class BoLDefaultRoll {
/* -------------------------------------------- */
upgradeToHeroic() {
// Force to Critical roll
let diceData = BoLUtility.getDiceData()
let maxValue = Number(diceData.diceFormula) * 2
this.rollData.isCritical = true
this.rollData.isHeroic = true
this.rollData.isLegendary = false
this.rollData.isRealCritical = false
this.rollData.isSuccess = true
this.rollData.isFailure = false
this.rollData.roll = new Roll("12+" + this.rollData.modifiers)
this.rollData.roll = new Roll(maxValue + "+" + this.rollData.modifiers)
this.rollData.reroll = false
this.sendChatMessage()
}
/* -------------------------------------------- */
setSuccess(flag) {
this.rollData.isSuccess = flag
@ -630,7 +728,7 @@ export class BoLDefaultRoll {
/* -------------------------------------------- */
async sendDamageMessage() {
let actor = game.actors.get( this.rollData.actorId)
let actor = BoLUtility.getActorFromRollData(this.rollData)
this._buildDamageChatMessage(this.rollData).then(async msgFlavor => {
let msg = await this.rollData.damageRoll.toMessage({
user: game.user.id,
@ -645,8 +743,8 @@ export class BoLDefaultRoll {
/* -------------------------------------------- */
getDamageAttributeValue(attrDamage, actorId = undefined) {
let actor = game.actors.get( (actorId) ? actorId: this.rollData.actorId)
return actor.getDamageAttributeValue( attrDamage )
let actor = BoLUtility.getActorFromRollData(this.rollData)
return actor.getDamageAttributeValue(attrDamage)
}
/* -------------------------------------------- */
@ -689,8 +787,8 @@ export class BoLDefaultRoll {
/* -------------------------------------------- */
_buildChatMessage(rollData) {
const rollMessageTpl = 'systems/bol/templates/chat/rolls/default-roll-card.hbs';
return renderTemplate(rollMessageTpl, rollData);
const rollMessageTpl = 'systems/bol/templates/chat/rolls/default-roll-card.hbs'
return renderTemplate(rollMessageTpl, rollData)
}
}

View File

@ -40,7 +40,7 @@ export class BoLCalendar extends Application {
constructor() {
super();
// position
this.calendarPos = duplicate(game.settings.get(SYSTEM_RDD, "calendar-pos"));
this.calendarPos = duplicate(game.settings.get("bol", "calendar-pos"));
if (this.calendarPos == undefined || this.calendarPos.top == undefined) {
this.calendrierPos = BoLCalendar.createCalendarPos()
game.settings.set("bol", "calendar-pos", this.calendarPos)

View File

@ -0,0 +1,162 @@
/* -------------------------------------------- */
import { BoLUtility } from "./bol-utility.js";
import { BoLRoll } from "../controllers/bol-rolls.js";
/* -------------------------------------------- */
export class BoLCharacterSummary extends Application {
/* -------------------------------------------- */
static displayPCSummary(){
game.bol.charSummary.render(true)
}
/* -------------------------------------------- */
updatePCSummary(){
if ( this.rendered) {
this.render(true)
}
}
/* -------------------------------------------- */
static createSummaryPos() {
return { top: 200, left: 200 };
}
/* -------------------------------------------- */
static ready() {
if ( !game.user.isGM ) { // Uniquement si GM
return
}
let charSummary = new BoLCharacterSummary()
game.bol.charSummary = charSummary
}
/* -------------------------------------------- */
constructor() {
super();
//game.settings.set("world", "character-summary-data", {npcList: [], x:0, y:0})
this.settings = game.settings.get("world", "character-summary-data")
}
/* -------------------------------------------- */
static get defaultOptions() {
return mergeObject(super.defaultOptions, {
template: "systems/bol/templates/apps/character-summary-template.html",
popOut: true,
resizable: true,
dragDrop: [{ dragSelector: ".items-list .item", dropSelector: null }],
classes: ["bol", "dialog"], width: 820, height: 'fit-content'
})
}
/* -------------------------------------------- */
getData() {
let formData = super.getData();
formData.pcs = game.actors.filter( ac => ac.type == "character" && ac.hasPlayerOwner )
formData.npcs = []
let newList = []
let toUpdate = false
for( let actorId of this.settings.npcList ) {
let actor = game.actors.get(actorId)
if (actor) {
formData.npcs.push( actor )
newList.push(actorId)
} else {
toUpdate = true
}
}
formData.config = game.bol.config
formData.horoscopeGroupList = game.settings.get("bol", "horoscope-group")
if ( toUpdate ) {
this.settings.npcList = newList
//console.log("Going to update ...", this.settings)
game.settings.set("world", "character-summary-data", this.settings)
}
return formData
}
/* -------------------------------------------- */
updateNPC() {
game.settings.set("world", "character-summary-data", game.bol.charSummary.settings)
game.bol.charSummary.close()
setTimeout( function() { game.bol.charSummary.render(true)}, 500)
}
/* -------------------------------------------- */
async _onDrop(event) {
//console.log("Dragged data are : ", dragData)
let data = event.dataTransfer.getData('text/plain')
let dataItem = JSON.parse( data)
let actor = fromUuidSync(dataItem.uuid)
if (actor) {
game.bol.charSummary.settings.npcList.push( actor.id )
game.bol.charSummary.updateNPC()
} else {
ui.notifications.warn( game.i18n.localize("BOL.ui.noactorfound") )
}
}
/* -------------------------------------------- */
/** @override */
async activateListeners(html) {
super.activateListeners(html);
html.find('.actor-open').click((event) => {
const li = $(event.currentTarget).parents(".item")
const actor = game.actors.get(li.data("actor-id"))
actor.sheet.render(true)
})
html.find('.summary-roll').click((event) => {
const li = $(event.currentTarget).parents(".item")
const actor = game.actors.get(li.data("actor-id"))
let type = $(event.currentTarget).data("type")
let key = $(event.currentTarget).data("key")
if ( type == "attribute") {
BoLRoll.attributeCheck(actor, key, event)
} else if (type == "aptitude") {
BoLRoll.aptitudeCheck(actor, key, event)
}
})
html.find('.actor-delete').click(event => {
const li = $(event.currentTarget).parents(".item");
let actorId = li.data("actor-id")
let newList = game.bol.charSummary.settings.npcList.filter(id => id != actorId)
game.bol.charSummary.settings.npcList = newList
game.bol.charSummary.updateNPC()
})
html.find('#horoscope-group-edit-available').change(event => {
const horoId = $(event.currentTarget).data("horo-id")
let newValue = event.currentTarget.value
let horoscopes = duplicate(game.settings.get("bol", "horoscope-group"))
if ( horoId && horoscopes[horoId]) {
horoscopes[horoId].availableDice = Number(newValue)
if (newValue <= 0) {
horoscopes[horoId] = undefined
}
game.settings.set("bol", "horoscope-group", horoscopes)
setTimeout(function() { BoLUtility.updateSheets()}, 800 )
}
})
html.find('#horoscope-group-edit-max').change(event => {
const horoId = $(event.currentTarget).data("horo-id")
let newValue = event.currentTarget.value
let horoscopes = duplicate(game.settings.get("bol", "horoscope-group"))
if ( horoId && horoscopes[horoId]) {
horoscopes[horoId].maxDice = Number(newValue)
if (newValue <= 0) {
horoscopes[horoId] = undefined
}
game.settings.set("bol", "horoscope-group", horoscopes)
setTimeout(function() { BoLUtility.updateSheets()}, 800 )
}
})
}
}

View File

@ -10,6 +10,8 @@ Init order =
3 - Echec critique
*/
import { BoLUtility } from "../system/bol-utility.js";
export class BoLCombatManager extends Combat {
@ -18,35 +20,12 @@ export class BoLCombatManager extends Combat {
console.log(`${game.system.title} | Combat.rollInitiative()`, ids, formula, messageOptions);
// Structure input data
ids = typeof ids === "string" ? [ids] : ids;
const currentId = this.combatant._id;
//const currentId = this.combatant.id;
// calculate initiative
for (let cId = 0; cId < ids.length; cId++) {
const combatant = this.combatants.get(ids[cId]);
let fvttInit = 5
//console.log("TYPE", combatant.actor.type)
if (combatant.actor.type == 'character') {
let initData = combatant.actor.getLastInitData()
console.log("Init data !!!", initData)
if (initData.isLegendary) {
fvttInit = 10
} else if (initData.isCritical) {
fvttInit = 9
} else if (initData.lastinit >= 9) {
fvttInit = 8
} else if (initData.isFumble) {
fvttInit = 3
}
} else {
fvttInit = 4 // Pietaille par defautco
//console.log("ACTOR", combatant.actor.getCharType())
if ( combatant.actor.getCharType() == 'adversary') {
fvttInit = 7
}
if ( combatant.actor.getCharType() == 'tough') {
fvttInit = 6
}
}
const combatant = this.combatants.get(ids[cId])
let fvttInit = combatant.actor.getInitiativeRank(false, true, {combatId: this.id, combatantId: combatant.id } )
fvttInit += (cId / 100)
await this.updateEmbeddedDocuments("Combatant", [{ _id: ids[cId], initiative: fvttInit }]);
}
@ -56,12 +35,21 @@ export class BoLCombatManager extends Combat {
nextRound() {
let combatants = this.combatants.contents
for (let c of combatants) {
let actor = game.actors.get( c.data.actorId )
let actor = game.actors.get( c.actorId )
actor.clearRoundModifiers()
}
super.nextRound()
}
/************************************************************************************/
_onDelete() {
let combatants = this.combatants.contents
for (let c of combatants) {
let actor = game.actors.get(c.actorId)
actor.clearInitiative()
}
super._onDelete()
}
}

View File

@ -1,5 +1,6 @@
/* -------------------------------------------- */
import { BoLAdventureGenerator } from "./bol-adventure-generator.js"
import { BoLCharacterSummary } from "./bol-character-summary.js"
/* -------------------------------------------- */
export class BoLCommands {
@ -8,6 +9,7 @@ export class BoLCommands {
if (!game.bol.commands) {
const bolCommands = new BoLCommands()
bolCommands.registerCommand({ path: ["/adventure"], func: (content, msg, params) => BoLAdventureGenerator.createAdventure(), descr: "Nouvelle idée d'aventure!" });
bolCommands.registerCommand({ path: ["/pcview"], func: (content, msg, params) => BoLCharacterSummary.displayPCSummary(), descr: "Affiche la liste des PJs!" });
game.bol.commands = bolCommands
}

View File

@ -48,12 +48,12 @@ export class BoLHotbar {
if (speaker.token) actor = game.actors.tokens[speaker.token]
if (!actor) actor = game.actors.get(speaker.actor)
if (!actor) {
return ui.notifications.warn(`Selectionnez votre personnage pour utiliser la macro`)
return ui.notifications.warn( game.i18n.localize("BOL.ui.selectactor") )
}
let item = actor.items.find(it => it.name === itemName && it.type == itemType)
if (!item ) {
return ui.notifications.warn(`Impossible de trouver l'objet de cette macro`)
return ui.notifications.warn( game.i18n.localize("BOL.ui.itemnotfound") )
}
// Trigger the item roll
if (item.system.category === "equipment" && item.system.subtype === "weapon") {

View File

@ -2,7 +2,7 @@ import { BoLDefaultRoll } from "../controllers/bol-rolls.js";
// Spell circle to min PP cost
const __circle2minpp = { 0: 0, 1: 2, 2: 6, 3: 11 }
const __validDices = {"6": 1, "8": 1, "10": 1, "12": 1}
export class BoLUtility {
@ -28,6 +28,73 @@ export class BoLUtility {
type: Boolean,
onChange: lang => window.location.reload()
})
game.settings.register("bol", "dice-formula", {
name: "Formule de dés",
hint: "Sélectionne la formule de dés (par défaut 2d6)",
scope: "world",
config: true,
default: "2d6",
type: String,
choices: { "6": "2d6", "8":"2d8", "10":"2d10", "12":"2d12", "20":"2d20"},
onChange: value => {
BoLUtility.setDiceFormula(value)
}
})
game.settings.register("bol", "dice-success-value", {
name: "Seuil de succès",
hint: "Sélectionne le seuil de succès (9 par défaut pour 2d6)",
scope: "world",
config: true,
default: 9,
range: {
min: 2,
max: 40,
step: 1
},
type: Number,
onChange: value => {
BoLUtility.setSuccessValue(value)
}
})
game.settings.register("bol", "dice-critical-success-value", {
name: "Valeur min de réussite critique",
hint: "Indique le seuil minimum de réussite critique (12 par défaut pour 2d6). Si les réussites critiques sont sur 19 et 20, alors indiquez 19.",
scope: "world",
config: true,
default: 12,
range: {
min: 2,
max: 40,
step: 1
},
type: Number,
onChange: value => {
BoLUtility.setCriticalSuccessValue(value)
}
})
game.settings.register("bol", "dice-critical-failure-value", {
name: "Valeur max d'échec critique",
hint: "Indique le seuil maximum d'échec critique (2 par défaut pour 2d6). Si les échecs critiques sont sur 2 et 3, alors indiquez 3.",
scope: "world",
config: true,
default: 2,
range: {
min: 2,
max: 40,
step: 1
},
type: Number,
onChange: value => {
BoLUtility.setCriticalFailureValue(value)
}
})
game.settings.register("world", "character-summary-data", {
name: "character-summary-data",
scope: "world",
config: false,
default: { npcList: [], x: 200, y: 200 },
type: Object
})
game.settings.register("bol", "logoActorSheet", {
name: "Chemin du logo des fiches de perso",
hint: "Vous pouvez changer le logo BoL des fiches de perso, pour jouer dans un autre univers (idéalement 346 x 200, défaut : /systems/bol/ui/logo.webp)",
@ -46,13 +113,50 @@ export class BoLUtility {
type: String,
onChange: lang => window.location.reload()
})
game.settings.register("bol", "horoscope-group", {
name: "horoscope-group",
scope: "world",
config: false,
default: {},
type: Object
})
this.rollArmor = game.settings.get("bol", "rollArmor") // Roll armor or not
this.useBougette = game.settings.get("bol", "useBougette") // Use optionnal bougette rules
this.actorSheetLogo = game.settings.get("bol", "logoActorSheet") || "/systems/bol/ui/logo.webp"
this.logoTopLeft = game.settings.get("bol", "logoTopLeft") || "/systems/bol/ui/logo2.webp"
this.diceFormula = game.settings.get("bol", "dice-formula")
this.successValue = Number(game.settings.get("bol", "dice-success-value"))
this.criticalSuccessValue = Number(game.settings.get("bol", "dice-critical-success-value"))
this.criticalFailureValue = Number(game.settings.get("bol", "dice-critical-failure-value"))
}
/* -------------------------------------------- */
static setDiceFormula(value) {
this.diceFormula = value
}
static setSuccessValue(value) {
this.successValue = Number(value)
}
static setCriticalSuccessValue(value) {
this.criticalSuccessValue = Number(value)
}
static setCriticalFailureValue(value) {
this.criticalFailureValue = Number(value)
}
static getDiceData() {
let df = this.diceFormula
if ( !__validDices[String(this.diceFormula)]) {
df = "6"
}
return {
diceFormula: this.diceFormula,
successValue : this.successValue,
criticalSuccessValue: this.criticalSuccessValue,
criticalFailureValue: this.criticalFailureValue
}
}
/* -------------------------------------------- */
static getRollArmor() {
return this.rollArmor
@ -69,11 +173,24 @@ export class BoLUtility {
static getLogoTopLeft() {
return this.logoTopLeft
}
/* -------------------------------------------- */
static getActorFromRollData(rollData) {
let actor = game.actors.get(rollData.actorId)
if (rollData.tokenId) {
let token = canvas.tokens.placeables.find(t => t.id == rollData.tokenId)
if (token) {
actor = token.actor
}
}
return actor
}
/* -------------------------------------------- */
static async ready() {
//$("#logo").attr("src", this.getLogoTopLeft() )
$("#logo").css("content",`url(${this.getLogoTopLeft()})`)
$("#logo").css("content", `url(${this.getLogoTopLeft()})`)
CONFIG.statusEffects = duplicate(game.bol.config.statusEffects)
}
/* -------------------------------------------- */
@ -271,7 +388,7 @@ export class BoLUtility {
let attackId = event.currentTarget.attributes['data-attack-id'].value
let defenseMode = event.currentTarget.attributes['data-defense-mode'].value
let weaponId = (event.currentTarget.attributes['data-weapon-id']) ? event.currentTarget.attributes['data-weapon-id'].value : -1
// Remove message for all
let msgId = BoLUtility.findChatMessageId(event.currentTarget)
if (game.user.isGM) {
@ -287,7 +404,7 @@ export class BoLUtility {
if (!game.user.isGM) {
return
}
BoLUtility.removeChatMessageId( msgId )
BoLUtility.removeChatMessageId(msgId)
console.log("Damage Handling", attackId, defenseMode, weaponId)
// Only GM process this
let attackDef = this.attackStore[attackId]
@ -334,10 +451,10 @@ export class BoLUtility {
let defenderUser
for (let user of game.users) {
if ( user.character && user.character.id == defender.id ) {
if (user.character && user.character.id == defender.id) {
defenderUser = user
}
}
}
let damageResults = {
attackId: attackDef.id,
attacker: attackDef.attacker,
@ -534,31 +651,53 @@ export class BoLUtility {
}
/* -------------------------------------------- */
static async confirmDelete(actorSheet, li) {
let itemId = li.data("item-id");
let msgTxt = "<p>Are you sure to remove this Item ?";
let buttons = {
delete: {
icon: '<i class="fas fa-check"></i>',
label: "Yes, remove it",
callback: () => {
actorSheet.actor.deleteEmbeddedDocuments("Item", [itemId]);
li.slideUp(200, () => actorSheet.render(false));
}
},
cancel: {
icon: '<i class="fas fa-times"></i>',
label: "Cancel"
}
}
msgTxt += "</p>";
let d = new Dialog({
title: "Confirm removal",
content: msgTxt,
buttons: buttons,
default: "cancel"
});
d.render(true);
static async loadCompendiumData(compendium) {
const pack = game.packs.get(compendium);
return await pack?.getDocuments() ?? [];
}
/* -------------------------------------------- */
static async loadCompendium(compendium, filter = item => true) {
let compendiumData = await this.loadCompendiumData(compendium);
return compendiumData.filter(filter);
}
/* -------------------------------------------- */
static async searchItem(dataItem) {
let item
if (dataItem.pack) {
let id = dataItem.id || dataItem._id
let items = await this.loadCompendium(dataItem.pack, item => item.id == id)
item = items[0] || undefined
} else {
item = game.items.get(dataItem.id)
}
return item
}
/* -------------------------------------------- */
static updateSheets() {
// Then force opened actor refresh if needed
for (let actor of game.actors) {
if (actor.sheet.rendered) {
actor.sheet.render()
}
}
game.bol.charSummary.updatePCSummary() // Refresh if needed
}
/* -------------------------------------------- */
static removeGroupHoroscope(rollData) {
let horo = rollData.horoscopeGroupList[rollData.selectedGroupHoroscopeIndex]
let horoscopes = duplicate(game.settings.get("bol", "horoscope-group"))
let toChange = duplicate(horoscopes[horo.id])
toChange.availableDice -= horo.nbDice // Remove the dice
if (toChange.availableDice <= 0) {
horoscopes[horo.id] = undefined
} else {
horoscopes[horo.id] = toChange
}
game.settings.set("bol", "horoscope-group", horoscopes)
this.updateSheets()
}
}

View File

@ -115,6 +115,14 @@ BOL.aptitudes = {
"def" : "BOL.aptitudes.def"
}
BOL.resources = {
"hp" : "BOL.resources.hp",
"hero" : "BOL.resources.hero",
"faith" : "BOL.resources.faith",
"power" : "BOL.resources.power",
"alchemypoints" : "BOL.resources.alchemypoints"
}
BOL.weaponSizes = {
"unarmed" : "BOL.weaponSize.unarmed",
"improvised" : "BOL.weaponSize.improvised",
@ -262,6 +270,7 @@ BOL.featureSubtypes = {
"godsfaith" : "BOL.featureSubtypes.gods",
"fightoption" : "BOL.featureSubtypes.fightOption",
"boleffect": "BOL.featureSubtypes.effect",
"horoscope": "BOL.featureSubtypes.horoscope",
}
BOL.fightOptionTypes = {
@ -289,26 +298,38 @@ BOL.actorIcons = {
}
BOL.bougetteState = {
"nomoney": "BOL.bougette.nomoney",
"tolive": "BOL.bougette.tolive",
"easylife": "BOL.bougette.easylife",
"luxury": "BOL.bougette.luxury",
"rich": "BOL.bougette.rich"
"0": "BOL.bougette.nomoney",
"1": "BOL.bougette.tolive",
"2": "BOL.bougette.easylife",
"3": "BOL.bougette.luxury",
"4": "BOL.bougette.rich"
}
BOL.bougetteDice = {
"0": "0",
"1": "2d6-1",
"2": "2d6",
"3": "2d6+1",
"4": "2d6+2"
}
BOL.creatureSize = {
"tiny": "BOL.size.tiny",
"verysmall": "BOL.size.verysmall",
"small": "BOL.size.small",
"medium": "BOL.size.medium",
"large": "BOL.size.large",
"verylarge": "BOL.size.verylarge",
"huge": "BOL.size.huge",
"massive": "BOL.size.massive",
"enormous": "BOL.size.enormous",
"gigantic": "BOL.size.gigantic",
"immense": "BOL.size.immense",
"colossal": "BOL.size.colossal"
"tiny": {order: 1, label: "BOL.size.tiny"},
"verysmall": {order: 2, label: "BOL.size.verysmall"},
"small": {order: 3, label: "BOL.size.small"},
"medium": {order: 4, label: "BOL.size.medium"},
"large": {order: 5, label: "BOL.size.large"},
"verylarge": {order: 6, label: "BOL.size.verylarge"},
"huge": {order: 7, label: "BOL.size.huge"},
"massive": {order: 8, label: "BOL.size.massive"},
"enormous": {order: 9, label: "BOL.size.enormous"},
"gigantic": {order: 10, label: "BOL.size.gigantic"},
"immense": {order: 11, label: "BOL.size.immense"},
"colossal": {order: 12, label: "BOL.size.colossal"}
}
BOL.horoscopeAnswer = {
"favorable": "BOL.ui.horoscopefavorable",
"unfavorable": "BOL.ui.horoscopeunfavorable",
}
BOL.bolEffectModifier = {
@ -327,4 +348,113 @@ BOL.bolEffectModifier = {
"+6": "+6",
"+8": "+8",
}
BOL.statusEffects = [
{
"id": "dead",
"label": "EFFECT.StatusDead",
"icon": "icons/svg/skull.svg"
},
{
"id": "unconscious",
"label": "EFFECT.StatusUnconscious",
"icon": "icons/svg/unconscious.svg"
},
{
"id": "sleep",
"label": "EFFECT.StatusAsleep",
"icon": "icons/svg/sleep.svg"
},
{
"id": "stun",
"label": "EFFECT.StatusStunned",
"icon": "icons/svg/daze.svg"
},
{
"id": "prone",
"label": "EFFECT.StatusProne",
"icon": "icons/svg/falling.svg"
},
{
"id": "restrain",
"label": "EFFECT.StatusRestrained",
"icon": "icons/svg/net.svg"
},
{
"id": "paralysis",
"label": "EFFECT.StatusParalysis",
"icon": "icons/svg/paralysis.svg"
},
{
"id": "fly",
"label": "EFFECT.StatusFlying",
"icon": "icons/svg/wing.svg"
},
{
"id": "blind",
"label": "EFFECT.StatusBlind",
"icon": "icons/svg/blind.svg"
},
{
"id": "deaf",
"label": "EFFECT.StatusDeaf",
"icon": "icons/svg/deaf.svg"
},
{
"id": "silence",
"label": "EFFECT.StatusSilenced",
"icon": "icons/svg/silenced.svg"
},
{
"id": "fear",
"label": "EFFECT.StatusFear",
"icon": "icons/svg/terror.svg"
},
{
"id": "burning",
"label": "EFFECT.StatusBurning",
"icon": "icons/svg/fire.svg"
},
{
"id": "frozen",
"label": "EFFECT.StatusFrozen",
"icon": "icons/svg/frozen.svg"
},
{
"id": "shock",
"label": "EFFECT.StatusShocked",
"icon": "icons/svg/lightning.svg"
},
{
"id": "disease",
"label": "EFFECT.StatusDisease",
"icon": "icons/svg/biohazard.svg"
},
{
"id": "poison",
"label": "EFFECT.StatusPoison",
"icon": "icons/svg/poison.svg"
},
{
"id": "curse",
"label": "EFFECT.StatusCursed",
"icon": "icons/svg/sun.svg"
},
{
"id": "invisible",
"label": "EFFECT.StatusInvisible",
"icon": "icons/svg/invisible.svg"
},
{
"id": "target",
"label": "EFFECT.StatusTarget",
"icon": "icons/svg/target.svg"
},
{
"id": "eye",
"label": "EFFECT.StatusMarked",
"icon": "icons/svg/eye.svg"
}
]
BOL.debug = false;

View File

@ -76,6 +76,10 @@ export const registerHandlebarsHelpers = function () {
Handlebars.registerHelper('count', function (list) {
return list.length;
})
Handlebars.registerHelper('countKeys', function (obj) {
return Object.keys(obj).length;
})
Handlebars.registerHelper('isEnabled', function (configKey) {
return game.settings.get("bol", configKey);
})
@ -103,6 +107,12 @@ export const registerHandlebarsHelpers = function () {
Handlebars.registerHelper('sub', function (a, b) {
return parseInt(a) - parseInt(b);
})
Handlebars.registerHelper('abbrev2', function (a) {
return a.substring(0,2);
})
Handlebars.registerHelper('abbrev3', function (a) {
return a.substring(0,3);
})
Handlebars.registerHelper('valueAtIndex', function (arr, idx) {
return arr[idx];
})
@ -123,7 +133,14 @@ export const registerHandlebarsHelpers = function () {
}
return false
})
Handlebars.registerHelper('upperFirst', function (text) {
if (typeof text !== 'string') return text
return text.charAt(0).toUpperCase() + text.slice(1)
})
Handlebars.registerHelper('upperFirstOnly', function (text) {
if (typeof text !== 'string') return text
return text.charAt(0).toUpperCase()
})
}

View File

@ -75,4 +75,18 @@ export default function registerHooks() {
}
return false;
});
/********************************************************************************** */
Hooks.on("renderActorDirectory", (app, html, data) => {
if (game.user.isGM) {
const button = document.createElement('button');
button.style.width = '95%';
button.innerHTML = game.i18n.localize("BOL.ui.pclistbutton")
button.addEventListener('click', () => {
game.bol.charSummary.render(true)
})
html.find('.header-actions').after(button)
}
})
}

View File

@ -16,6 +16,7 @@ export const preloadHandlebarsTemplates = async function () {
"systems/bol/templates/actor/parts/tabs/actor-equipment.hbs",
"systems/bol/templates/actor/parts/tabs/actor-spellalchemy.hbs",
"systems/bol/templates/actor/parts/tabs/actor-biodata.hbs",
"systems/bol/templates/actor/parts/tabs/actor-horoscope-group.hbs",
"systems/bol/templates/actor/parts/tabs/creature-stats.hbs",
"systems/bol/templates/actor/parts/tabs/creature-actions.hbs",
"systems/bol/templates/actor/parts/tabs/vehicle-stats.hbs",
@ -41,11 +42,14 @@ export const preloadHandlebarsTemplates = async function () {
"systems/bol/templates/item/parts/properties/feature/race-properties.hbs",
"systems/bol/templates/item/parts/properties/feature/fightoption-properties.hbs",
"systems/bol/templates/item/parts/properties/item/weapon-vehicle-properties.hbs",
"systems/bol/templates/item/parts/properties/feature/horoscope-properties.hbs",
// DIALOGS
"systems/bol/templates/chat/rolls/attack-damage-card.hbs",
"systems/bol/templates/chat/rolls/spell-roll-card.hbs",
"systems/bol/templates/chat/rolls/alchemy-roll-card.hbs",
"systems/bol/templates/chat/rolls/selected-horoscope-roll-card.hbs",
"systems/bol/templates/chat/rolls/horoscope-roll-card.hbs",
"systems/bol/templates/dialogs/aptitude-roll-part.hbs",
"systems/bol/templates/dialogs/attribute-roll-part.hbs",
"systems/bol/templates/dialogs/mod-roll-part.hbs",
@ -56,6 +60,7 @@ export const preloadHandlebarsTemplates = async function () {
"systems/bol/templates/dialogs/flaws-roll-part.hbs",
"systems/bol/templates/dialogs/total-roll-part.hbs",
"systems/bol/templates/dialogs/fightoptions-roll-part.hbs",
"systems/bol/templates/dialogs/horoscope-roll-part.hbs"
];
// Load the template parts

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,54 +1,54 @@
{"_id":"19p4FnLRVdw6cx7Y","name":"Arbalète","type":"item","img":"icons/weapons/crossbows/crossbow-blue.webp","effects":[],"folder":null,"sort":0,"flags":{},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Arbalète</h1><p>une arme de tir qui nécessite peu dentraînement et offre beaucoup de puissance. Les lourds projectiles tirés par une arbalète portent le nom de carreaux. Il faut un round complet pour charger une arbalète.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6","range":30,"reload":1,"slot":"2hands","attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"damageAttribute":"half-vigor","damageModifiers":null,"damageReroll1":false,"weaponSize":"medium","attackBonusDice":false,"damageMultiplier":"1","natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":null,"modifiedTime":1669209273712,"lastModifiedBy":"zN9ZZg5J7XzNELjd"}}
{"_id":"3U9Gl7g8D5Ih72HQ","name":"Hache","type":"item","img":"icons/weapons/axes/axe-broad-engraved.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Hache</h1><p>un fer à un ou deux tranchants (qui peut être en bronze, en fer ou en acier) monté sur un manche en bois.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"3UUZjuD4Esgj4ENP","name":"Épée","type":"item","img":"icons/weapons/swords/greatsword-guard-gem-blue.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Épée</h1><p>larme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres dabordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de larme que vous voulez sur la fiche de votre personnage en fonction de limage que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer lennemi.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"3xSSlnw9CDhwg67c","name":"Lance","type":"item","img":"icons/weapons/polearms/glaive-simple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Lance</h1><p>une hampe de bois de 1,80 m de long (parfois davantage), pourvue dune pointe, qui peut être lancée ou utilisée au corps à corps, notamment contre des adversaires montés.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":6,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"42mZZxenOD5tDtog","name":"Javelot","type":"item","img":"icons/weapons/polearms/javelin-simple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Javelot</h1><p>une arme de jet constituée dune courte hampe surmontée dune tête pointue. En général, un guerrier qui utilise le javelot en emporte deux ou trois avec lui. Cette arme a la faveur des hommes-oiseaux de lAxos.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":true,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":true,"damage":"d6M","range":6,"slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"4GyTrBGnvlyqoh38","name":"Dague","type":"item","img":"icons/weapons/daggers/dagger-jeweled-purple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"4NEaikxe0k1vzeqI","name":"Morgenstern","type":"item","img":"icons/weapons/maces/flail-spiked-grey.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Morgenstern</h1><p>une grosse boule de métal hérissée de pointes, montée à lextrémité dune longue hampe de 1,20 à 1,50 m de long. Rudimentaire, mais efficace.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"heavy","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Lance (Lancer)","type":"item","img":"icons/weapons/polearms/glaive-simple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Lance</h1><p>une hampe de bois de 1,80 m de long (parfois davantage), pourvue dune pointe, qui peut être lancée ou utilisée au corps à corps, notamment contre des adversaires montés.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":6,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"kQghu0tL1dft5xLu":3},"flags":{"core":{"sourceId":"Compendium.bol.equipment.3xSSlnw9CDhwg67c"}},"_id":"4k3SUYYCnqc9uNCm"}
{"name":"Projectiles","type":"item","img":"icons/weapons/artillery/ballista-wood-green.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>L&rsquo;&eacute;quipage du navire envoie une vol&eacute;e de projectiles (javelines, fl&egrave;ches, billes de fronde) sur le vaisseau ennemi, &agrave; condition que ce dernier se trouve au maximum &agrave; port&eacute;e Longue.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":false,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{},"_stats":{"systemId":"bol","systemVersion":"10.2.1","coreVersion":"10.287","createdTime":1665332723905,"modifiedTime":1665384335829,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"55CWxwKSYgBCbLrG","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"name":"Cimeterre","type":"item","img":"icons/weapons/swords/scimitar-guard-red.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.3UUZjuD4Esgj4ENP"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Épée</h1><p>larme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres dabordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de larme que vous voulez sur la fiche de votre personnage en fonction de limage que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer lennemi.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":1,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":1669206284323,"modifiedTime":1669206324202,"lastModifiedBy":"zN9ZZg5J7XzNELjd"},"folder":null,"sort":0,"_id":"9WkrG0m6w04nq2CG"}
{"name":"Massue (Lancer)","type":"item","img":"icons/weapons/clubs/club-simple-stone-purple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù son autre nom de casse-tête.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":true,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"kQghu0tL1dft5xLu":3},"flags":{"core":{"sourceId":"Compendium.bol.equipment.pncWIrD5z7mk6dbc"}},"_id":"9dk1DqMpZXCgvS2r"}
{"_id":"9mDDJnPsOCZRGPJN","name":"Gourdin","type":"item","img":"icons/weapons/clubs/club-barbed-square-black.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Gourdin</h1><p>cest larme la plus rudimentaire qui soit. Un gourdin consiste généralement en un bâton de bois noueux, extrêmement dur et mesurant moins de 90 cm de long. Par commodité, on regroupe sous ce terme toute autre arme contondante du même genre (matraque, etc.). Il est possible dutiliser un gourdin pour infliger des dégâts non létaux et assommer son ennemi plutôt que de le tuer.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":true,"damage":"d6M","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"AMDFMOvMhdapUJJF","name":"Dague (Lancer)","type":"item","img":"icons/weapons/daggers/dagger-jeweled-purple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"kQghu0tL1dft5xLu":3},"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}}}
{"_id":"AQu9KVm0hAdwUBWV","name":"Fouet","type":"item","img":"icons/weapons/misc/whip-red-yellow.webp","data":{"category":"equipment","subtype":"weapon","description":"<p><span dir=\"ltr\" style=\"left: 609.197px; top: 442.965px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.92363);\" role=\"presentation\">Outil indispensable pour des &eacute;leveurs, </span><span dir=\"ltr\" style=\"left: 595.026px; top: 466.304px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.930262);\" role=\"presentation\">le fouet peut devenir une v&eacute;ritable arme </span><span dir=\"ltr\" style=\"left: 595.026px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.868979);\" role=\"presentation\">de</span><span dir=\"ltr\" style=\"left: 610.059px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 621.719px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.924893);\" role=\"presentation\">guerre</span><span dir=\"ltr\" style=\"left: 665.004px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 676.664px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.954368);\" role=\"presentation\">entre</span><span dir=\"ltr\" style=\"left: 711.626px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 723.286px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.83588);\" role=\"presentation\">des</span><span dir=\"ltr\" style=\"left: 743.709px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 755.369px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.956849);\" role=\"presentation\">mains</span><span dir=\"ltr\" style=\"left: 797.279px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 808.939px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.889718);\" role=\"presentation\">expertes. </span><span dir=\"ltr\" style=\"left: 595.026px; top: 512.98px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.955811);\" role=\"presentation\">Certains cavaliers ghata&iuml; s&rsquo;en sont fait </span><span dir=\"ltr\" style=\"left: 595.026px; top: 536.319px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.901031);\" role=\"presentation\">une sp&eacute;cialit&eacute;.</span></p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damage":"d6M","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"slot":"none","bashing":false,"throwable":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"vpqjUad9wWS9Gk5R":3},"flags":{"core":{"sourceId":"Item.3skum93qKmROU62c"}}}
{"_id":"ASQ7aSeqgUqKubY2","name":"Armure lourde","type":"item","img":"icons/equipment/chest/breastplate-metal-scaled-grey.webp","data":{"category":"equipment","subtype":"armor","description":"<h1>Armure lourde</h1><p>Ce type darmure est porté par des gladiateurs, des chevaliers partant à la guerre, ou par ceux prévoyant de participer à une bataille sanglante dans un proche avenir. Ce n est pas une armure que lon peut porter la journée entière, et encore moins pour voyager ou sadonner aux activités ordinaires du quotidien. Il peut sagir dun haubert de mailles descendant jusquaux genoux ou dune cuirasse en acier, complétée de grèves et de gantelets, ou encore dune brigandine (une veste de cuir cousue de plaques de métal) avec gantelets et hautes bottes.</p><p>Un personnage portant une armure lourde peut généralement ôter certaines parties de celle-ci pour la transformer en armure moyenne sil le souhaite.</p><p>Les personnages ayant moins de 0 en vigueur ne peuvent pas porter darmure lourde (ils ne sont pas assez robustes pour supporter un pareil attirail).</p><h2>Effets des armures lourdes</h2><ul><li>protection d6-1 (0-5 points de réduction des dégâts) ;</li><li>si vous préférez un chiffre fixe, une armure lourde offre 3 points de protection ;</li><li>le port dune armure lourde saccompagne dun malus de -2 en agilité du fait de l encombrement ;</li><li>le port dune armure lourde handicape un sorcier et augmente de 3 points de pouvoir le coût de ses sorts.</li></ul>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":true,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"agility":-2,"powercost":3,"init":0},"soak":{"formula":"1d6-1","value":1},"slot":"none","armorQuality":"heavy"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"AUqk1SXktM4iDXvr","name":"Masse darmes","type":"item","img":"icons/weapons/maces/mace-flanged-steel.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Masse darmes</h1><p>cette arme a la même forme quun gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou dailettes pour plus defficacité. Les masses darmes à une main peuvent se lancer, mais à courte distance, car elles ne sont pas vraiment prévues pour cet usage.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":1.5,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Masse darmes (Lancer)","type":"item","img":"icons/weapons/maces/mace-flanged-steel.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Masse darmes</h1><p>cette arme a la même forme quun gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou dailettes pour plus defficacité. Les masses darmes à une main peuvent se lancer, mais à courte distance, car elles ne sont pas vraiment prévues pour cet usage.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":1.5,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"kQghu0tL1dft5xLu":3},"flags":{"core":{"sourceId":"Compendium.bol.equipment.AUqk1SXktM4iDXvr"}},"_id":"BcYQ4pigZSXp1jWb"}
{"_id":"D1UjDptdZGFg6Ggx","name":"Hache (Lancer)","type":"item","img":"icons/weapons/axes/axe-broad-engraved.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Hache</h1><p>un fer à un ou deux tranchants (qui peut être en bronze, en fer ou en acier) monté sur un manche en bois.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"kQghu0tL1dft5xLu":3},"flags":{"core":{"sourceId":"Compendium.bol.equipment.3U9Gl7g8D5Ih72HQ"}}}
{"_id":"E8XHWMpwVHjPZV3M","name":"Hâche à deux mains","type":"item","img":"icons/weapons/axes/axe-double-brown.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Hâche à deux mains</h1><p>Une lourde hache sutilisant à deux mains.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"heavy","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Kriss","type":"item","img":"icons/weapons/daggers/dagger-jeweled-purple.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":1,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":true},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":1662130019228,"modifiedTime":1669197345576,"lastModifiedBy":"zN9ZZg5J7XzNELjd"},"folder":null,"sort":0,"_id":"EbvPPc9hFGudZYeP"}
{"name":"Catapulte (Pierre)","type":"item","img":"icons/weapons/artillery/catapult-simple.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>Les catapultes peuvent tirer des pierres ou des pots de goudron enflamm&eacute; jusqu&rsquo;&agrave; une port&eacute;e<br>Extr&ecirc;me. Les pierres font des d&eacute;g&acirc;ts &agrave; la coque et au gr&eacute;ement du navire, mais peuvent aussi<br>tuer des matelots. Un pot &agrave; feu qui explose sur le pont arrose la coque et l&rsquo;&eacute;quipage de goudron<br>enflamm&eacute;, qui continue &agrave; br&ucirc;ler jusqu&rsquo;&agrave; ce que l&rsquo;incendie soit ma&icirc;tris&eacute;.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":true,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d3","crewDamageMultiplier":"1"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{},"_stats":{"systemId":"bol","systemVersion":"10.2.1","coreVersion":"10.287","createdTime":1665332723905,"modifiedTime":1665384335828,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"FEEgNQr54HLmbxb4","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"_id":"G0qpJmjQPSJshPsC","name":"Bâton-Fronde","type":"item","img":"icons/weapons/slings/slingshot-wood.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Bâton-Fronde</h1><p>Version plus puissante de la fronde, montée au bout dun bâton (ce qui en fait une arme à deux mains), qui permet des tirs à plus longue portée.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6M","range":18,"reload":0,"slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"Gm8Qpfuay4hu2ihq","name":"Grand bouclier","type":"item","img":"icons/equipment/shield/wardoor-wooden-boss-brown.webp","data":{"category":"equipment","subtype":"shield","description":"<h1>Grand bouclier</h1><p>Un personnage ne peut bénéficier de son bouclier que sil est conscient de lattaque qui le vise, et donc sil est prêt à la parer.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":false,"helm":false,"shield":true,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"agility":-1,"init":0,"powercost":0,"social":false},"blocking":{"malus":-1,"nbAttacksPerRound":"1","blocking1":false,"blockingAll":true},"slot":"none"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Outils de Crochetage","type":"item","img":"icons/sundries/misc/key-angular-white.webp","data":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"HZpsorw1Okd07bvh"}
{"_id":"LDklxAUh1IPNPnyi","name":"Mains Nues","type":"item","img":"icons/skills/melee/unarmed-punch-fist.webp","data":{"category":"equipment","subtype":"weapon","description":"","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"unarmed","damage":"d3","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"bashing":true,"throwable":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.BSoDfbLMBtwZllDb"}}}
{"name":"Corde + Grappin","type":"item","img":"icons/sundries/survival/rope-wrapped-brown.webp","data":{"category":"equipment","subtype":"armor","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"NRBT2VmdzhjDL4fW"}
{"name":"Abordage","type":"item","img":"icons/weapons/swords/scimitar-guard-gold.webp","system":{"category":"vehicleweapon","subtype":"weapon","description":"<p>Une action d&rsquo;Abordage peut &ecirc;tre tent&eacute;e si deux navires sont bloqu&eacute;s l&rsquo;un contre l&rsquo;autre suite &agrave; une action r&eacute;ussie d&rsquo;&Eacute;peronner ou de Lancer les grappins. L&rsquo;Abordage est la seule action pour laquelle il n&rsquo;y a pas de limite aux points de ressources que vous pouvez engager afin d&rsquo;avoir un bonus au jet d&rsquo;attaque. L&rsquo;Abordage est aussi l&rsquo;occasion pour des h&eacute;ros d&rsquo;entreprendre des Actions h&eacute;ro&iuml;ques en mer, de la m&ecirc;me fa&ccedil;on qu&rsquo;ils peuvent le faire lors de batailles terrestres. Ces actions formeront une petite aventure &agrave; part enti&egrave;re, par exemple si les h&eacute;ros doivent fouiller le navire ennemi tout en affrontant son &eacute;quipage.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":false,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1","isboarding":true,"isspur":false,"isbreakrow":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":1665332723905,"modifiedTime":1669197331084,"lastModifiedBy":"zN9ZZg5J7XzNELjd"},"_id":"Oyz8RcFNq6MzDUBO","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"name":"Armes Improvisée","type":"item","img":"icons/tools/hand/shovel-spade-steel-grey.webp","data":{"category":"equipment","subtype":"weapon","description":"","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"improvised","damage":"d3","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"bashing":true,"throwable":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.BSoDfbLMBtwZllDb"}},"_id":"RNHBCCGlpPNIkbFu"}
{"name":"Armes Improvisée (Lancer)","type":"item","img":"icons/tools/cooking/knife-cleaver-steel-grey.webp","effects":[],"flags":{"core":{"sourceId":"Item.BSoDfbLMBtwZllDb"}},"system":{"category":"equipment","subtype":"weapon","description":"","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"improvised","damage":"d3","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"bashing":true,"throwable":false,"range":null},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":1669197361967,"modifiedTime":1669197361967,"lastModifiedBy":"zN9ZZg5J7XzNELjd"},"folder":null,"sort":0,"_id":"URCyzJr7vFAIuN3b"}
{"name":"Couteau de Lancer","type":"item","img":"icons/weapons/daggers/dagger-twin-curved-black.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":2,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":1669209202825,"modifiedTime":1669209256671,"lastModifiedBy":"zN9ZZg5J7XzNELjd"},"folder":null,"sort":0,"_id":"W3q72Hop6XYopxpU"}
{"name":"Gourdin Clouté","type":"item","img":"icons/weapons/clubs/club-barbed-square-black.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.9mDDJnPsOCZRGPJN"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Gourdin</h1><p>cest larme la plus rudimentaire qui soit. Un gourdin consiste généralement en un bâton de bois noueux, extrêmement dur et mesurant moins de 90 cm de long. Par commodité, on regroupe sous ce terme toute autre arme contondante du même genre (matraque, etc.). Il est possible dutiliser un gourdin pour infliger des dégâts non létaux et assommer son ennemi plutôt que de le tuer.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":true,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":2,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.3.2","coreVersion":"10.290","createdTime":1669208789210,"modifiedTime":1669208814086,"lastModifiedBy":"zN9ZZg5J7XzNELjd"},"folder":null,"sort":0,"_id":"Wq2zN2XVbYwqw2ki"}
{"name":"Bottes","type":"item","img":"icons/equipment/feet/boots-collared-leather-brown.webp","data":{"category":"equipment","subtype":"armor","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"X3AR5En9mQhGUrOA"}
{"_id":"Z2AaQKweMljBAgt6","name":"Arc","type":"item","img":"icons/weapons/bows/longbow-leather-green.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Arc</h1><p>une longue tige flexible en bois dont les extrémités sont reliées par une corde et qui permet de tirer des flèches. Il existe différentes formes darcs.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6","range":22,"reload":0,"slot":"none","attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"damageAttribute":"half-vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"medium","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Sac","type":"item","img":"icons/containers/bags/pack-leather-black-brown.webp","data":{"category":"equipment","subtype":"container","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"aclqGClakTbXVwAK"}
{"name":"Briser les Rames","type":"item","img":"icons/tools/nautical/steering-wheel.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>Le navire attaquant fr&ocirc;le le navire ennemi dans le but de briser ses rang&eacute;es de rames afin de<br>l&rsquo;immobiliser sans le couler. Pour cette man&oelig;uvre, les navires doivent commencer le round &agrave; Bout<br>portant ou &agrave; port&eacute;e Courte. L&rsquo;attaquant effectue un jet d&rsquo;action. Le d&eacute;fenseur peut utiliser ses<br>ressources pour &eacute;viter l&rsquo;attaque (ce qui lui octroie un bonus en d&eacute;fense).</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":true,"iscrewdamage":false,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1","isboarding":false,"isspur":false,"isbreakrow":true},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{},"_stats":{"systemId":"bol","systemVersion":"10.2.1","coreVersion":"10.287","createdTime":1665332723905,"modifiedTime":1665384335828,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"c8XSKMNX8hFr1Lgf","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"_id":"cS2LGlXLZegvRGOo","name":"Arbalète lourde","type":"item","img":"icons/weapons/crossbows/crossbow-golden-bolt.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Arbalète lourde</h1><p>plus lourde et plus puissante quune arbalète normale, larbalète lourde est peu usitée en Lémurie, sauf comme arme de siège portative. Il faut 2 rounds complets pour charger une arbalète lourde.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6B","range":45,"reload":2,"slot":"none","attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"damageAttribute":"half-vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"heavy","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"d7UV55xQXXfMiGQI","name":"Fronde","type":"item","img":"icons/weapons/slings/slingshot-wood.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Fronde</h1><p>simple pièce de cuir équipée de lanières, une fronde permet de projeter de petites pierres ou des billes de plomb avec une certaine force. Cest une arme peu coûteuse et facile à fabriquer. Il existe une version plus puissante, montée au bout dun bâton (ce qui en fait une arme à deux mains), qui permet des tirs à plus longue portée.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6M","range":9,"reload":0,"slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"unarmed","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"gCbETPg0ROGdDfHS","name":"Arc Ghataï","type":"item","img":"icons/weapons/bows/longbow-recurve-brown.webp","data":{"category":"equipment","subtype":"weapon","description":"<p>L&rsquo;arme embl&eacute;matique des Ghata&iuml; est un arc composite, particuli&egrave;rement adapt&eacute; pour des cavaliers. Les archers de cavalerie forment le gros des forces gatha&iuml;, qui utilisent des tactiques de harc&egrave;lement plut&ocirc;t que de charge frontale.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"unarmed","damage":"d6","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"slot":"2hands","bashing":false,"throwable":false,"range":22},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"vpqjUad9wWS9Gk5R":3},"flags":{"core":{"sourceId":"Item.ltAvk5pqfNeqF8gO"}}}
{"_id":"jjdzMgx8zru2A28V","name":"Armure moyenne","type":"item","img":"icons/equipment/chest/breastplate-layered-leather-studded-black.webp","data":{"category":"equipment","subtype":"armor","description":"<h1>Armure moyenne</h1><p>Ce type darmure, compromis entre la maniabilité de larmure légère et la protection de larmure lourde, est le choix favori des aventuriers qui sattendent à affronter des combats de manière régulière. Il peut sagir dune armure de cuir couvrant la majeure partie du corps, avec des parties en cuir bouilli pour protéger les points vitaux, ou dune armure mêlant le cuir et la cotte de mailles, ou encore dune cuirasse en acier, simple mais efficace.</p><p>Un personnage portant une armure moyenne peut généralement en ôter certaines parties pour la transformer en armure légère sil le souhaite.</p><h2>Effets des armures moyennes</h2><ul><li>protection d6-2 (0-4 points de réduction des dégâts) ;</li><li>si vous préférez un chiffre fixe, une armure moyenne offre 2 points de protection ;</li><li>le port dune armure moyenne saccompagne dun malus de -1 en agilité du fait de lencombrement ;</li><li>le port dune armure moyenne handicape un sorcier et augmente de 2 points de pouvoir le coût de ses sorts.</li></ul>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":true,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"agility":-1,"powercost":2,"init":0},"soak":{"formula":"1d6-2","value":2},"slot":"none","armorQuality":"medium"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"me4GVat8gcs94hri","name":"Armure légère","type":"item","img":"icons/equipment/chest/shirt-simple-grey.webp","data":{"category":"equipment","subtype":"armor","description":"<h1>Amure légère</h1><p>Si votre personnage préfère éviter les combats mais sait quil risque de ne pas y couper, vous souhaiterez peut-être quil bénéficie au moins dune petite protection. La catégorie des armures légères comprend les différentes sortes darmures de cuir et les chemises de mailles. Votre personnage pourrait ainsi porter un robuste gilet et des brassards en cuir, ou un pourpoint doublé, accompagné de bottes et de gants en cuir souple. À moins que vous ne décidiez quil soit vêtu dune légère chemise de mailles et de rien dautre.</p><p>Une armure légère est généralement dissimulable (à moins dêtre inspecté de près ou davoir affaire à lœil exercé dun soldat vétéran) et ne vous désigne pas au premier regard comme un guerrier.</p><h2>Effets des armures légères</h2><ul><li>protection d6-3 (0-3 points de réduction des dégâts) ;</li><li>si vous préférez un chiffre fixe, une armure légère offre 1 point de protection ;</li><li>le port dune armure légère handicape un sorcier et augmente de 1 point de pouvoir le coût de ses sorts.</li></ul>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":true,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"d6B":false,"d6M":false,"stackable":false,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"agility":0,"powercost":1,"init":0},"soak":{"formula":"1d6-3","value":1},"slot":"none","armorQuality":"light"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Tenue de Marchand","type":"item","img":"icons/equipment/shoulder/cloak-plain-leather-brown.webp","data":{"category":"equipment","subtype":"armor","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"oRhIBU041D3QEYaX"}
{"_id":"obNHhN1wvcWFaVrS","name":"Petit bouclier","type":"item","img":"icons/equipment/shield/buckler-wooden-boss-brown.webp","data":{"category":"equipment","subtype":"shield","description":"<h1>Petit bouclier</h1><p>Un personnage ne peut bénéficier de son bouclier que sil est conscient de lattaque qui le vise, et donc sil est prêt à la parer.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":false,"helm":false,"shield":true,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"blocking":{"malus":-1,"nbAttacksPerRound":"1","blocking1":true,"blockingAll":false},"slot":"none","modifiers":{"init":null,"agility":null,"powercost":null,"social":false}},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"pncWIrD5z7mk6dbc","name":"Massue","type":"item","img":"icons/weapons/clubs/club-simple-stone-purple.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù son autre nom de casse-tête.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"qG5Jlhjjh7vDtBB1","name":"Fléau","type":"item","img":"icons/weapons/maces/flail-triple-grey.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Fléau</h1><p>un fléau consiste en un manche de bois prolongé dune chaîne, à lextrémité de laquelle est fixée une boule hérissée de pointes métalliques. Les fléaux ne sont pas des armes employées couramment en Lémurie, mais les gladiateurs en utilisent parfois dans les arènes. Les attaques au fléau ignorent le bonus en défense accordé par lemploi dun bouclier.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":true,"powder":false,"bashing":false,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"rVLqiqxtfsZ7z6Hw","name":"Rapière","type":"item","img":"icons/weapons/swords/greatsword-flamberge.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Rapière</h1><p>cette épée fine et légère est essentiellement utilisée par les bellâtres et les courtisans des cités-états de Lémurie, chez qui lescrime a été élevé au rang dart. La rapière sutilise généralement en conjonction avec une dague de parade (aussi appelée main gauche), un petit bouclier, ou une simple cape roulée en boule.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6M","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Crache Feu","type":"item","img":"icons/weapons/artillery/cannon-engraved-gold.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>L&rsquo;usage de cet appareil d&rsquo;alchimiste exige des comp&eacute;tences particuli&egrave;res. Sa conception comme<br>la formule du produit qui l&rsquo;alimente sont des secrets jalousement gard&eacute;s. Le crache-feu est un<br>gros r&eacute;servoir pressuris&eacute; &eacute;quip&eacute; d&rsquo;un tube &agrave; son sommet. La machine tire un jet de liquide br&ucirc;lant<br>&agrave; de grandes distances (jusqu&rsquo;&agrave; port&eacute;e Longue).</p>\n<p>Les flammes sont presque impossibles &agrave; &eacute;teindre.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":true,"ishulldamage":true,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1","isboarding":false,"isspur":false,"isbreakrow":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{},"_stats":{"systemId":"bol","systemVersion":"10.2.1","coreVersion":"10.287","createdTime":1665332723905,"modifiedTime":1665384335828,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"uBTjNOW9I8dAJPdv","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"_id":"vN3CHxyOrXuXHQRY","name":"Bâton","type":"item","img":"icons/weapons/staves/staff-simple-gold.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Bâton</h1><p>une longueur de bois robuste (environ 1,80 m de hauteur), qui sert aussi bien de bâton de marche que darme.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":true,"damage":"d6","slot":"none","throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"damageAttribute":"vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"unarmed","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"name":"Somnifère","type":"item","img":"icons/consumables/potions/bottle-bulb-corked-labeled-blue.webp","data":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"vgJSyqc6VVxfbWsC"}
{"name":"Catapulte (Feu)","type":"item","img":"icons/weapons/artillery/catapult-simple.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>Les catapultes peuvent tirer des pierres ou des pots de goudron enflamm&eacute; jusqu&rsquo;&agrave; une port&eacute;e<br>Extr&ecirc;me. Les pierres font des d&eacute;g&acirc;ts &agrave; la coque et au gr&eacute;ement du navire, mais peuvent aussi<br>tuer des matelots. Un pot &agrave; feu qui explose sur le pont arrose la coque et l&rsquo;&eacute;quipage de goudron<br>enflamm&eacute;, qui continue &agrave; br&ucirc;ler jusqu&rsquo;&agrave; ce que l&rsquo;incendie soit ma&icirc;tris&eacute;.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":true,"ishulldamage":true,"iscrewdamage":true,"hulldamage":"d3","hullDamageMultiplier":"1","crewdamage":"d3","crewDamageMultiplier":"1"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{},"_stats":{"systemId":"bol","systemVersion":"10.2.1","coreVersion":"10.287","createdTime":1665332723905,"modifiedTime":1665384335828,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"vgyGk9PEKJOqfZH2","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"name":"Lanterne + Huile + Silex","type":"item","img":"icons/sundries/lights/lantern-iron-yellow.webp","data":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"zN9ZZg5J7XzNELjd":3},"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"x86khXdimiKSujjy"}
{"_id":"xH95daHpPAQWuiYp","name":"Arme dhast","type":"item","img":"icons/weapons/polearms/halberd-crescent-small-spiked.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Arme dhast</h1><p>ce nom recouvre une catégorie darmes possédant toutes un fer destiné à frapper, fixé au bout dune longue hampe en bois, qui offre à son utilisateur une grande allonge. Selon leur forme, ces armes à deux mains portent le nom de hallebarde, coutille, guisarme, vouge…</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"damageAttribute":"vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"unarmed","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"xYWeGSCfnPwTq0rV","name":"Épée à deux mains","type":"item","img":"icons/weapons/swords/greatsword-crossguard-silver.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Épée à deux mains</h1><p>Une lourde épée pouvant mesurer jusquà 1,80 m de long pour les plus grandes, et sutilisant à deux mains. Elle peut porter différents noms selon les modèles : claymore, espadon, épée bâtarde…</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"heavy","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"yDmQXkTLeaPTF44S","name":"Fléchettes","type":"item","img":"icons/weapons/thrown/dart-feathered.webp","data":{"category":"equipment","subtype":"weapon","description":"<h1>Fléchettes</h1><p>de petits projectiles ressemblant à des flèches miniatures, destinés à être lancés à la main. En général, un personnage qui utilise des fléchettes en possède un petit stock.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":true,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":true,"damage":"d6M","range":6,"slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"zAuda7upJnZW8EZf","name":"Casque","type":"item","img":"icons/equipment/head/helm-barbute-horned-grey.webp","data":{"category":"equipment","subtype":"helm","description":"<h1>Casque</h1><p>Si vous êtes équipé dun casque, celui-ci ajoute +1 à la protection de votre armure, dans le cas où vous en portez une. Si vous portez par exemple une armure légère et un casque, votre dé de protection sera égal à d6-2 (d6-1 en armure moyenne et d6 en armure lourde).</p><p>En revanche, un casque vous inflige un malus à linitiative (il est plus difficile de remarquer ce qui se passe autour de vous avec un casque qui limite votre champ de vision), ainsi que dans certaines situations sociales.</p><p>En général, un héros ne porte pas son casque en permanence et ne le met que lorsquil se prépare au combat.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":false,"helm":true,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"init":-1,"agility":0,"powercost":0},"soak":{"formula":"+1","value":1,"modifier":null},"slot":"none"},"quantity":null,"weight":null,"price":0,"worn":false},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"EEnCVoPAR7pMjRym":3},"flags":{}}
{"_id":"19p4FnLRVdw6cx7Y","name":"Arbalète","type":"item","img":"icons/weapons/crossbows/crossbow-blue.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.19p4FnLRVdw6cx7Y"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Arbalète</h1><p>une arme de tir qui nécessite peu dentraînement et offre beaucoup de puissance. Les lourds projectiles tirés par une arbalète portent le nom de carreaux. Il faut un round complet pour charger une arbalète.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6","range":30,"reload":1,"slot":"2hands","attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"damageAttribute":"half-vigor","damageModifiers":null,"damageReroll1":false,"weaponSize":"medium","attackBonusDice":false,"damageMultiplier":"1","natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093877,"modifiedTime":1676829219958,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"3U9Gl7g8D5Ih72HQ","name":"Hache","type":"item","img":"icons/weapons/axes/axe-broad-engraved.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.3U9Gl7g8D5Ih72HQ"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Hache</h1><p>un fer à un ou deux tranchants (qui peut être en bronze, en fer ou en acier) monté sur un manche en bois.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093877,"modifiedTime":1676829219963,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"3UUZjuD4Esgj4ENP","name":"Épée","type":"item","img":"icons/weapons/swords/greatsword-guard-gem-blue.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.3UUZjuD4Esgj4ENP"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Épée</h1><p>larme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres dabordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de larme que vous voulez sur la fiche de votre personnage en fonction de limage que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer lennemi.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093877,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"3xSSlnw9CDhwg67c","name":"Lance","type":"item","img":"icons/weapons/polearms/glaive-simple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.3xSSlnw9CDhwg67c"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Lance</h1><p>une hampe de bois de 1,80 m de long (parfois davantage), pourvue dune pointe, qui peut être lancée ou utilisée au corps à corps, notamment contre des adversaires montés.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":6,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093877,"modifiedTime":1676829219964,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"42mZZxenOD5tDtog","name":"Javelot","type":"item","img":"icons/weapons/polearms/javelin-simple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.42mZZxenOD5tDtog"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Javelot</h1><p>une arme de jet constituée dune courte hampe surmontée dune tête pointue. En général, un guerrier qui utilise le javelot en emporte deux ou trois avec lui. Cette arme a la faveur des hommes-oiseaux de lAxos.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":true,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":true,"damage":"d6M","range":6,"slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093877,"modifiedTime":1676829219964,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"4GyTrBGnvlyqoh38","name":"Dague","type":"item","img":"icons/weapons/daggers/dagger-jeweled-purple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093878,"modifiedTime":1676829219961,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"4NEaikxe0k1vzeqI","name":"Morgenstern","type":"item","img":"icons/weapons/maces/flail-spiked-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.4NEaikxe0k1vzeqI"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Morgenstern</h1><p>une grosse boule de métal hérissée de pointes, montée à lextrémité dune longue hampe de 1,20 à 1,50 m de long. Rudimentaire, mais efficace.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"heavy","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093878,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Lance (Lancer)","type":"item","img":"icons/weapons/polearms/glaive-simple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.3xSSlnw9CDhwg67c"}},"_id":"4k3SUYYCnqc9uNCm","system":{"category":"equipment","subtype":"weapon","description":"<h1>Lance</h1><p>une hampe de bois de 1,80 m de long (parfois davantage), pourvue dune pointe, qui peut être lancée ou utilisée au corps à corps, notamment contre des adversaires montés.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":6,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093878,"modifiedTime":1676829219964,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Projectiles","type":"item","img":"icons/weapons/artillery/ballista-wood-green.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>L&rsquo;&eacute;quipage du navire envoie une vol&eacute;e de projectiles (javelines, fl&egrave;ches, billes de fronde) sur le vaisseau ennemi, &agrave; condition que ce dernier se trouve au maximum &agrave; port&eacute;e Longue.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":false,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.55CWxwKSYgBCbLrG"}},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1665332723905,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"55CWxwKSYgBCbLrG","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"name":"Cimeterre","type":"item","img":"icons/weapons/swords/scimitar-guard-red.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.3UUZjuD4Esgj4ENP"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Épée</h1><p>larme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres dabordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de larme que vous voulez sur la fiche de votre personnage en fonction de limage que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer lennemi.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":1,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1669206284323,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"},"folder":null,"sort":0,"_id":"9WkrG0m6w04nq2CG"}
{"name":"Massue (Lancer)","type":"item","img":"icons/weapons/clubs/club-simple-stone-purple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.pncWIrD5z7mk6dbc"}},"_id":"9dk1DqMpZXCgvS2r","system":{"category":"equipment","subtype":"weapon","description":"<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù son autre nom de casse-tête.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":true,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093879,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"9mDDJnPsOCZRGPJN","name":"Gourdin","type":"item","img":"icons/weapons/clubs/club-barbed-square-black.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.9mDDJnPsOCZRGPJN"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Gourdin</h1><p>cest larme la plus rudimentaire qui soit. Un gourdin consiste généralement en un bâton de bois noueux, extrêmement dur et mesurant moins de 90 cm de long. Par commodité, on regroupe sous ce terme toute autre arme contondante du même genre (matraque, etc.). Il est possible dutiliser un gourdin pour infliger des dégâts non létaux et assommer son ennemi plutôt que de le tuer.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":true,"damage":"d6M","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093879,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"AMDFMOvMhdapUJJF","name":"Dague (Lancer)","type":"item","img":"icons/weapons/daggers/dagger-jeweled-purple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093879,"modifiedTime":1676829219961,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"AQu9KVm0hAdwUBWV","name":"Fouet","type":"item","img":"icons/weapons/misc/whip-red-yellow.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.3skum93qKmROU62c"}},"system":{"category":"equipment","subtype":"weapon","description":"<p><span dir=\"ltr\" style=\"left: 609.197px; top: 442.965px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.92363);\" role=\"presentation\">Outil indispensable pour des &eacute;leveurs, </span><span dir=\"ltr\" style=\"left: 595.026px; top: 466.304px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.930262);\" role=\"presentation\">le fouet peut devenir une v&eacute;ritable arme </span><span dir=\"ltr\" style=\"left: 595.026px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.868979);\" role=\"presentation\">de</span><span dir=\"ltr\" style=\"left: 610.059px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 621.719px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.924893);\" role=\"presentation\">guerre</span><span dir=\"ltr\" style=\"left: 665.004px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 676.664px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.954368);\" role=\"presentation\">entre</span><span dir=\"ltr\" style=\"left: 711.626px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 723.286px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.83588);\" role=\"presentation\">des</span><span dir=\"ltr\" style=\"left: 743.709px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 755.369px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.956849);\" role=\"presentation\">mains</span><span dir=\"ltr\" style=\"left: 797.279px; top: 489.642px; font-size: 18.3333px; font-family: serif;\" role=\"presentation\"> </span><span dir=\"ltr\" style=\"left: 808.939px; top: 489.642px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.889718);\" role=\"presentation\">expertes. </span><span dir=\"ltr\" style=\"left: 595.026px; top: 512.98px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.955811);\" role=\"presentation\">Certains cavaliers ghata&iuml; s&rsquo;en sont fait </span><span dir=\"ltr\" style=\"left: 595.026px; top: 536.319px; font-size: 18.3333px; font-family: serif; transform: scaleX(0.901031);\" role=\"presentation\">une sp&eacute;cialit&eacute;.</span></p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damage":"d6M","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"slot":"none","bashing":false,"throwable":false},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"vpqjUad9wWS9Gk5R":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093879,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"ASQ7aSeqgUqKubY2","name":"Armure lourde","type":"item","img":"icons/equipment/chest/breastplate-metal-scaled-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.ASQ7aSeqgUqKubY2"}},"system":{"category":"equipment","subtype":"armor","description":"<h1>Armure lourde</h1><p>Ce type darmure est porté par des gladiateurs, des chevaliers partant à la guerre, ou par ceux prévoyant de participer à une bataille sanglante dans un proche avenir. Ce n est pas une armure que lon peut porter la journée entière, et encore moins pour voyager ou sadonner aux activités ordinaires du quotidien. Il peut sagir dun haubert de mailles descendant jusquaux genoux ou dune cuirasse en acier, complétée de grèves et de gantelets, ou encore dune brigandine (une veste de cuir cousue de plaques de métal) avec gantelets et hautes bottes.</p><p>Un personnage portant une armure lourde peut généralement ôter certaines parties de celle-ci pour la transformer en armure moyenne sil le souhaite.</p><p>Les personnages ayant moins de 0 en vigueur ne peuvent pas porter darmure lourde (ils ne sont pas assez robustes pour supporter un pareil attirail).</p><h2>Effets des armures lourdes</h2><ul><li>protection d6-1 (0-5 points de réduction des dégâts) ;</li><li>si vous préférez un chiffre fixe, une armure lourde offre 3 points de protection ;</li><li>le port dune armure lourde saccompagne dun malus de -2 en agilité du fait de l encombrement ;</li><li>le port dune armure lourde handicape un sorcier et augmente de 3 points de pouvoir le coût de ses sorts.</li></ul>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":true,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"agility":-2,"powercost":3,"init":0},"soak":{"formula":"1d6-1","value":1},"slot":"none","armorQuality":"heavy"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"AUqk1SXktM4iDXvr","name":"Masse darmes","type":"item","img":"icons/weapons/maces/mace-flanged-steel.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.AUqk1SXktM4iDXvr"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Masse darmes</h1><p>cette arme a la même forme quun gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou dailettes pour plus defficacité. Les masses darmes à une main peuvent se lancer, mais à courte distance, car elles ne sont pas vraiment prévues pour cet usage.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":1.5,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Masse darmes (Lancer)","type":"item","img":"icons/weapons/maces/mace-flanged-steel.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.AUqk1SXktM4iDXvr"}},"_id":"BcYQ4pigZSXp1jWb","system":{"category":"equipment","subtype":"weapon","description":"<h1>Masse darmes</h1><p>cette arme a la même forme quun gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou dailettes pour plus defficacité. Les masses darmes à une main peuvent se lancer, mais à courte distance, car elles ne sont pas vraiment prévues pour cet usage.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":1.5,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"D1UjDptdZGFg6Ggx","name":"Hache (Lancer)","type":"item","img":"icons/weapons/axes/axe-broad-engraved.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.3U9Gl7g8D5Ih72HQ"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Hache</h1><p>un fer à un ou deux tranchants (qui peut être en bronze, en fer ou en acier) monté sur un manche en bois.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"medium","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219963,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"E8XHWMpwVHjPZV3M","name":"Hâche à deux mains","type":"item","img":"icons/weapons/axes/axe-double-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.E8XHWMpwVHjPZV3M"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Hâche à deux mains</h1><p>Une lourde hache sutilisant à deux mains.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"heavy","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219964,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Kriss","type":"item","img":"icons/weapons/daggers/dagger-jeweled-purple.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":1,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":true},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1662130019228,"modifiedTime":1676829219964,"lastModifiedBy":"kQghu0tL1dft5xLu"},"folder":null,"sort":0,"_id":"EbvPPc9hFGudZYeP"}
{"name":"Catapulte (Pierre)","type":"item","img":"icons/weapons/artillery/catapult-simple.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>Les catapultes peuvent tirer des pierres ou des pots de goudron enflamm&eacute; jusqu&rsquo;&agrave; une port&eacute;e<br>Extr&ecirc;me. Les pierres font des d&eacute;g&acirc;ts &agrave; la coque et au gr&eacute;ement du navire, mais peuvent aussi<br>tuer des matelots. Un pot &agrave; feu qui explose sur le pont arrose la coque et l&rsquo;&eacute;quipage de goudron<br>enflamm&eacute;, qui continue &agrave; br&ucirc;ler jusqu&rsquo;&agrave; ce que l&rsquo;incendie soit ma&icirc;tris&eacute;.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":true,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d3","crewDamageMultiplier":"1"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.FEEgNQr54HLmbxb4"}},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1665332723905,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"FEEgNQr54HLmbxb4","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"_id":"G0qpJmjQPSJshPsC","name":"Bâton-Fronde","type":"item","img":"icons/weapons/slings/slingshot-wood.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.G0qpJmjQPSJshPsC"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Bâton-Fronde</h1><p>Version plus puissante de la fronde, montée au bout dun bâton (ce qui en fait une arme à deux mains), qui permet des tirs à plus longue portée.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6M","range":18,"reload":0,"slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"Gm8Qpfuay4hu2ihq","name":"Grand bouclier","type":"item","img":"icons/equipment/shield/wardoor-wooden-boss-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.Gm8Qpfuay4hu2ihq"}},"system":{"category":"equipment","subtype":"shield","description":"<h1>Grand bouclier</h1><p>Un personnage ne peut bénéficier de son bouclier que sil est conscient de lattaque qui le vise, et donc sil est prêt à la parer.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":false,"helm":false,"shield":true,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"agility":-1,"init":0,"powercost":0,"social":false},"blocking":{"malus":-1,"nbAttacksPerRound":"1","blocking1":false,"blockingAll":true},"slot":"none"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093880,"modifiedTime":1676829219963,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Outils de Crochetage","type":"item","img":"icons/sundries/misc/key-angular-white.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"HZpsorw1Okd07bvh","system":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093881,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"LDklxAUh1IPNPnyi","name":"Mains Nues","type":"item","img":"icons/skills/melee/unarmed-punch-fist.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.BSoDfbLMBtwZllDb"}},"system":{"category":"equipment","subtype":"weapon","description":"","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"unarmed","damage":"d3","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"bashing":true,"throwable":false},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093881,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Corde + Grappin","type":"item","img":"icons/sundries/survival/rope-wrapped-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"NRBT2VmdzhjDL4fW","system":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093882,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Abordage","type":"item","img":"icons/weapons/swords/scimitar-guard-gold.webp","system":{"category":"vehicleweapon","subtype":"weapon","description":"<p>Une action d&rsquo;Abordage peut &ecirc;tre tent&eacute;e si deux navires sont bloqu&eacute;s l&rsquo;un contre l&rsquo;autre suite &agrave; une action r&eacute;ussie d&rsquo;&Eacute;peronner ou de Lancer les grappins. L&rsquo;Abordage est la seule action pour laquelle il n&rsquo;y a pas de limite aux points de ressources que vous pouvez engager afin d&rsquo;avoir un bonus au jet d&rsquo;attaque. L&rsquo;Abordage est aussi l&rsquo;occasion pour des h&eacute;ros d&rsquo;entreprendre des Actions h&eacute;ro&iuml;ques en mer, de la m&ecirc;me fa&ccedil;on qu&rsquo;ils peuvent le faire lors de batailles terrestres. Ces actions formeront une petite aventure &agrave; part enti&egrave;re, par exemple si les h&eacute;ros doivent fouiller le navire ennemi tout en affrontant son &eacute;quipage.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":false,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1","isboarding":true,"isspur":false,"isbreakrow":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.Oyz8RcFNq6MzDUBO"}},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1665332723905,"modifiedTime":1676829219957,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"Oyz8RcFNq6MzDUBO","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"name":"Armes Improvisée","type":"item","img":"icons/tools/hand/shovel-spade-steel-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.BSoDfbLMBtwZllDb"}},"_id":"RNHBCCGlpPNIkbFu","system":{"category":"equipment","subtype":"weapon","description":"","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"improvised","damage":"d3","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"bashing":true,"throwable":false,"natural":false,"onlymodifier":false},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093882,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Armes Improvisée (Lancer)","type":"item","img":"icons/tools/cooking/knife-cleaver-steel-grey.webp","effects":[],"flags":{"core":{"sourceId":"Item.BSoDfbLMBtwZllDb"}},"system":{"category":"equipment","subtype":"weapon","description":"","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"improvised","damage":"d3","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"bashing":true,"throwable":false,"range":null},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1669197361967,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"},"folder":null,"sort":0,"_id":"URCyzJr7vFAIuN3b"}
{"name":"Couteau de Lancer","type":"item","img":"icons/weapons/daggers/dagger-twin-curved-black.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.4GyTrBGnvlyqoh38"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Dague</h1><p>cette catégorie regroupe toutes les lames courtes destinées à lacérer ou poignarder un adversaire. Les dagues sont à un ou deux tranchants selon les modèles, et peuvent être lancées aussi bien quutilisées au corps à corps. Facilement dissimulable, la dague est larme favorite des truands et des assassins.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":true,"stackable":true,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6M","slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":2,"weight":null,"price":0,"worn":false},"ownership":{"kQghu0tL1dft5xLu":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1669209202825,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"},"folder":null,"sort":0,"_id":"W3q72Hop6XYopxpU"}
{"name":"Gourdin Clouté","type":"item","img":"icons/weapons/clubs/club-barbed-square-black.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.9mDDJnPsOCZRGPJN"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Gourdin</h1><p>cest larme la plus rudimentaire qui soit. Un gourdin consiste généralement en un bâton de bois noueux, extrêmement dur et mesurant moins de 90 cm de long. Par commodité, on regroupe sous ce terme toute autre arme contondante du même genre (matraque, etc.). Il est possible dutiliser un gourdin pour infliger des dégâts non létaux et assommer son ennemi plutôt que de le tuer.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":true,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":2,"damageMultiplier":"1","damageReroll1":false,"natural":false,"onlymodifier":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1669208789210,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"},"folder":null,"sort":0,"_id":"Wq2zN2XVbYwqw2ki"}
{"name":"Bottes","type":"item","img":"icons/equipment/feet/boots-collared-leather-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"X3AR5En9mQhGUrOA","system":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093882,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"Z2AaQKweMljBAgt6","name":"Arc","type":"item","img":"icons/weapons/bows/longbow-leather-green.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.Z2AaQKweMljBAgt6"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Arc</h1><p>une longue tige flexible en bois dont les extrémités sont reliées par une corde et qui permet de tirer des flèches. Il existe différentes formes darcs.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6","range":22,"reload":0,"slot":"none","attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"damageAttribute":"half-vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"medium","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093882,"modifiedTime":1676829219958,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Sac","type":"item","img":"icons/containers/bags/pack-leather-black-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"aclqGClakTbXVwAK","system":{"category":"equipment","subtype":"container","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093882,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Briser les Rames","type":"item","img":"icons/tools/nautical/steering-wheel.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>Le navire attaquant fr&ocirc;le le navire ennemi dans le but de briser ses rang&eacute;es de rames afin de<br>l&rsquo;immobiliser sans le couler. Pour cette man&oelig;uvre, les navires doivent commencer le round &agrave; Bout<br>portant ou &agrave; port&eacute;e Courte. L&rsquo;attaquant effectue un jet d&rsquo;action. Le d&eacute;fenseur peut utiliser ses<br>ressources pour &eacute;viter l&rsquo;attaque (ce qui lui octroie un bonus en d&eacute;fense).</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":false,"ishulldamage":true,"iscrewdamage":false,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1","isboarding":false,"isspur":false,"isbreakrow":true},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.c8XSKMNX8hFr1Lgf"}},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1665332723905,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"c8XSKMNX8hFr1Lgf","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"_id":"cS2LGlXLZegvRGOo","name":"Arbalète lourde","type":"item","img":"icons/weapons/crossbows/crossbow-golden-bolt.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.cS2LGlXLZegvRGOo"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Arbalète lourde</h1><p>plus lourde et plus puissante quune arbalète normale, larbalète lourde est peu usitée en Lémurie, sauf comme arme de siège portative. Il faut 2 rounds complets pour charger une arbalète lourde.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"2h":true,"damage":"d6B","range":45,"reload":2,"slot":"none","attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"damageAttribute":"half-vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"heavy","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219958,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"d7UV55xQXXfMiGQI","name":"Fronde","type":"item","img":"icons/weapons/slings/slingshot-wood.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.d7UV55xQXXfMiGQI"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Fronde</h1><p>simple pièce de cuir équipée de lanières, une fronde permet de projeter de petites pierres ou des billes de plomb avec une certaine force. Cest une arme peu coûteuse et facile à fabriquer. Il existe une version plus puissante, montée au bout dun bâton (ce qui en fait une arme à deux mains), qui permet des tirs à plus longue portée.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":true,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6M","range":9,"reload":0,"slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"unarmed","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"gCbETPg0ROGdDfHS","name":"Arc Ghataï","type":"item","img":"icons/weapons/bows/longbow-recurve-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.ltAvk5pqfNeqF8gO"}},"system":{"category":"equipment","subtype":"weapon","description":"<p>L&rsquo;arme embl&eacute;matique des Ghata&iuml; est un arc composite, particuli&egrave;rement adapt&eacute; pour des cavaliers. Les archers de cavalerie forment le gros des forces gatha&iuml;, qui utilisent des tactiques de harc&egrave;lement plut&ocirc;t que de charge frontale.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"concealable":false,"ignoreshield":false,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"unarmed","damage":"d6","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false,"slot":"2hands","bashing":false,"throwable":false,"range":22},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"vpqjUad9wWS9Gk5R":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219958,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"jjdzMgx8zru2A28V","name":"Armure moyenne","type":"item","img":"icons/equipment/chest/breastplate-layered-leather-studded-black.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.jjdzMgx8zru2A28V"}},"system":{"category":"equipment","subtype":"armor","description":"<h1>Armure moyenne</h1><p>Ce type darmure, compromis entre la maniabilité de larmure légère et la protection de larmure lourde, est le choix favori des aventuriers qui sattendent à affronter des combats de manière régulière. Il peut sagir dune armure de cuir couvrant la majeure partie du corps, avec des parties en cuir bouilli pour protéger les points vitaux, ou dune armure mêlant le cuir et la cotte de mailles, ou encore dune cuirasse en acier, simple mais efficace.</p><p>Un personnage portant une armure moyenne peut généralement en ôter certaines parties pour la transformer en armure légère sil le souhaite.</p><h2>Effets des armures moyennes</h2><ul><li>protection d6-2 (0-4 points de réduction des dégâts) ;</li><li>si vous préférez un chiffre fixe, une armure moyenne offre 2 points de protection ;</li><li>le port dune armure moyenne saccompagne dun malus de -1 en agilité du fait de lencombrement ;</li><li>le port dune armure moyenne handicape un sorcier et augmente de 2 points de pouvoir le coût de ses sorts.</li></ul>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":true,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"agility":-1,"powercost":2,"init":0},"soak":{"formula":"1d6-2","value":2},"slot":"none","armorQuality":"medium"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"me4GVat8gcs94hri","name":"Armure légère","type":"item","img":"icons/equipment/chest/shirt-simple-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.me4GVat8gcs94hri"}},"system":{"category":"equipment","subtype":"armor","description":"<h1>Amure légère</h1><p>Si votre personnage préfère éviter les combats mais sait quil risque de ne pas y couper, vous souhaiterez peut-être quil bénéficie au moins dune petite protection. La catégorie des armures légères comprend les différentes sortes darmures de cuir et les chemises de mailles. Votre personnage pourrait ainsi porter un robuste gilet et des brassards en cuir, ou un pourpoint doublé, accompagné de bottes et de gants en cuir souple. À moins que vous ne décidiez quil soit vêtu dune légère chemise de mailles et de rien dautre.</p><p>Une armure légère est généralement dissimulable (à moins dêtre inspecté de près ou davoir affaire à lœil exercé dun soldat vétéran) et ne vous désigne pas au premier regard comme un guerrier.</p><h2>Effets des armures légères</h2><ul><li>protection d6-3 (0-3 points de réduction des dégâts) ;</li><li>si vous préférez un chiffre fixe, une armure légère offre 1 point de protection ;</li><li>le port dune armure légère handicape un sorcier et augmente de 1 point de pouvoir le coût de ses sorts.</li></ul>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":true,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"d6B":false,"d6M":false,"stackable":false,"activable":false,"concealable":true,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"agility":0,"powercost":1,"init":0},"soak":{"formula":"1d6-3","value":1},"slot":"none","armorQuality":"light"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Tenue de Marchand","type":"item","img":"icons/equipment/shoulder/cloak-plain-leather-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"oRhIBU041D3QEYaX","system":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"obNHhN1wvcWFaVrS","name":"Petit bouclier","type":"item","img":"icons/equipment/shield/buckler-wooden-boss-brown.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.obNHhN1wvcWFaVrS"}},"system":{"category":"equipment","subtype":"shield","description":"<h1>Petit bouclier</h1><p>Un personnage ne peut bénéficier de son bouclier que sil est conscient de lattaque qui le vise, et donc sil est prêt à la parer.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":false,"helm":false,"shield":true,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"blocking":{"malus":-1,"nbAttacksPerRound":"1","blocking1":true,"blockingAll":false},"slot":"none","modifiers":{"init":null,"agility":null,"powercost":null,"social":false}},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093883,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"pncWIrD5z7mk6dbc","name":"Massue","type":"item","img":"icons/weapons/clubs/club-simple-stone-purple.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.pncWIrD5z7mk6dbc"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù son autre nom de casse-tête.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":false,"range":3,"damage":"d6","slot":"none","attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093884,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"qG5Jlhjjh7vDtBB1","name":"Fléau","type":"item","img":"icons/weapons/maces/flail-triple-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.qG5Jlhjjh7vDtBB1"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Fléau</h1><p>un fléau consiste en un manche de bois prolongé dune chaîne, à lextrémité de laquelle est fixée une boule hérissée de pointes métalliques. Les fléaux ne sont pas des armes employées couramment en Lémurie, mais les gladiateurs en utilisent parfois dans les arènes. Les attaques au fléau ignorent le bonus en défense accordé par lemploi dun bouclier.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":true,"powder":false,"bashing":false,"damage":"d6","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"medium","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093884,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"rVLqiqxtfsZ7z6Hw","name":"Rapière","type":"item","img":"icons/weapons/swords/greatsword-flamberge.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.rVLqiqxtfsZ7z6Hw"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Rapière</h1><p>cette épée fine et légère est essentiellement utilisée par les bellâtres et les courtisans des cités-états de Lémurie, chez qui lescrime a été élevé au rang dart. La rapière sutilise généralement en conjonction avec une dague de parade (aussi appelée main gauche), un petit bouclier, ou une simple cape roulée en boule.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6M","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"light","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093884,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Crache Feu","type":"item","img":"icons/weapons/artillery/cannon-engraved-gold.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>L&rsquo;usage de cet appareil d&rsquo;alchimiste exige des comp&eacute;tences particuli&egrave;res. Sa conception comme<br>la formule du produit qui l&rsquo;alimente sont des secrets jalousement gard&eacute;s. Le crache-feu est un<br>gros r&eacute;servoir pressuris&eacute; &eacute;quip&eacute; d&rsquo;un tube &agrave; son sommet. La machine tire un jet de liquide br&ucirc;lant<br>&agrave; de grandes distances (jusqu&rsquo;&agrave; port&eacute;e Longue).</p>\n<p>Les flammes sont presque impossibles &agrave; &eacute;teindre.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":true,"ishulldamage":true,"iscrewdamage":true,"hulldamage":"d6","hullDamageMultiplier":"1","crewdamage":"d6","crewDamageMultiplier":"1","isboarding":false,"isspur":false,"isbreakrow":false},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.uBTjNOW9I8dAJPdv"}},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1665332723905,"modifiedTime":1676829219961,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"uBTjNOW9I8dAJPdv","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"_id":"vN3CHxyOrXuXHQRY","name":"Bâton","type":"item","img":"icons/weapons/staves/staff-simple-gold.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.vN3CHxyOrXuXHQRY"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Bâton</h1><p>une longueur de bois robuste (environ 1,80 m de hauteur), qui sert aussi bien de bâton de marche que darme.</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":true,"damage":"d6","slot":"none","throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"damageAttribute":"vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"unarmed","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093884,"modifiedTime":1676829219959,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Somnifère","type":"item","img":"icons/consumables/potions/bottle-bulb-corked-labeled-blue.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"vgJSyqc6VVxfbWsC","system":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093884,"modifiedTime":1676829219966,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"name":"Catapulte (Feu)","type":"item","img":"icons/weapons/artillery/catapult-simple.webp","system":{"category":"vehicleweapon","subtype":"armor","description":"<p>Les catapultes peuvent tirer des pierres ou des pots de goudron enflamm&eacute; jusqu&rsquo;&agrave; une port&eacute;e<br>Extr&ecirc;me. Les pierres font des d&eacute;g&acirc;ts &agrave; la coque et au gr&eacute;ement du navire, mais peuvent aussi<br>tuer des matelots. Un pot &agrave; feu qui explose sur le pont arrose la coque et l&rsquo;&eacute;quipage de goudron<br>enflamm&eacute;, qui continue &agrave; br&ucirc;ler jusqu&rsquo;&agrave; ce que l&rsquo;incendie soit ma&icirc;tris&eacute;.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":false,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"isfiredamage":true,"ishulldamage":true,"iscrewdamage":true,"hulldamage":"d3","hullDamageMultiplier":"1","crewdamage":"d3","crewDamageMultiplier":"1"},"quantity":1,"weight":0,"price":0,"worn":false},"effects":[],"flags":{"core":{"sourceId":"Compendium.bol.equipment.vgyGk9PEKJOqfZH2"}},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1665332723905,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"},"_id":"vgyGk9PEKJOqfZH2","folder":null,"sort":0,"ownership":{"default":0,"kQghu0tL1dft5xLu":3}}
{"name":"Lanterne + Huile + Silex","type":"item","img":"icons/sundries/lights/lantern-iron-yellow.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.rk4tvTBFlLe87mRM"}},"_id":"x86khXdimiKSujjy","system":{"category":"equipment","subtype":"other","description":"","properties":{"ranged":false,"melee":false,"spell":false,"protection":false,"weapon":false,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"slot":"chest"},"quantity":1,"weight":0,"price":0,"worn":false},"ownership":{"default":0,"zN9ZZg5J7XzNELjd":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093885,"modifiedTime":1676829219965,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"xH95daHpPAQWuiYp","name":"Arme dhast","type":"item","img":"icons/weapons/polearms/halberd-crescent-small-spiked.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.xH95daHpPAQWuiYp"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Arme dhast</h1><p>ce nom recouvre une catégorie darmes possédant toutes un fer destiné à frapper, fixé au bout dune longue hampe en bois, qui offre à son utilisateur une grande allonge. Selon leur forme, ces armes à deux mains portent le nom de hallebarde, coutille, guisarme, vouge…</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"damageAttribute":"vigor","damageModifiers":null,"damageReroll1":false,"attackBonusDice":false,"weaponSize":"unarmed","damageMultiplier":"1"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093885,"modifiedTime":1676829219958,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"xYWeGSCfnPwTq0rV","name":"Épée à deux mains","type":"item","img":"icons/weapons/swords/greatsword-crossguard-silver.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.xYWeGSCfnPwTq0rV"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Épée à deux mains</h1><p>Une lourde épée pouvant mesurer jusquà 1,80 m de long pour les plus grandes, et sutilisant à deux mains. Elle peut porter différents noms selon les modèles : claymore, espadon, épée bâtarde…</p>","properties":{"ranged":false,"melee":true,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":true,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"damage":"d6B","slot":"none","attackBonusDice":false,"throwable":false,"attackAttribute":"agility","attackAptitude":"melee","attackModifiers":null,"weaponSize":"heavy","damageAttribute":"vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093885,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"yDmQXkTLeaPTF44S","name":"Fléchettes","type":"item","img":"icons/weapons/thrown/dart-feathered.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.yDmQXkTLeaPTF44S"}},"system":{"category":"equipment","subtype":"weapon","description":"<h1>Fléchettes</h1><p>de petits projectiles ressemblant à des flèches miniatures, destinés à être lancés à la main. En général, un personnage qui utilise des fléchettes en possède un petit stock.</p>","properties":{"ranged":true,"melee":false,"spell":false,"protection":false,"weapon":true,"armor":false,"helm":false,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":true,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"throwable":true,"damage":"d6M","range":6,"slot":"none","stacksize":null,"attackBonusDice":false,"attackAttribute":"agility","attackAptitude":"ranged","attackModifiers":null,"weaponSize":"light","damageAttribute":"half-vigor","damageModifiers":null,"damageMultiplier":"1","damageReroll1":false},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093885,"modifiedTime":1676829219962,"lastModifiedBy":"kQghu0tL1dft5xLu"}}
{"_id":"zAuda7upJnZW8EZf","name":"Casque","type":"item","img":"icons/equipment/head/helm-barbute-horned-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.bol.equipment.zAuda7upJnZW8EZf"}},"system":{"category":"equipment","subtype":"helm","description":"<h1>Casque</h1><p>Si vous êtes équipé dun casque, celui-ci ajoute +1 à la protection de votre armure, dans le cas où vous en portez une. Si vous portez par exemple une armure légère et un casque, votre dé de protection sera égal à d6-2 (d6-1 en armure moyenne et d6 en armure lourde).</p><p>En revanche, un casque vous inflige un malus à linitiative (il est plus difficile de remarquer ce qui se passe autour de vous avec un casque qui limite votre champ de vision), ainsi que dans certaines situations sociales.</p><p>En général, un héros ne porte pas son casque en permanence et ne le met que lorsquil se prépare au combat.</p>","properties":{"ranged":false,"melee":false,"spell":false,"protection":true,"weapon":false,"armor":false,"helm":true,"shield":false,"equipable":true,"consumable":false,"magical":false,"2H":false,"reloadable":false,"bow":false,"crossbow":false,"throwing":false,"stackable":false,"activable":false,"concealable":false,"ignoreshield":false,"powder":false,"bashing":false,"modifiers":{"social":true,"init":null,"agility":0,"powercost":0},"soak":{"formula":"+1","value":1,"modifier":null},"slot":"none"},"quantity":null,"weight":null,"price":0,"worn":false},"ownership":{"default":0,"EEnCVoPAR7pMjRym":3},"_stats":{"systemId":"bol","systemVersion":"10.5.6","coreVersion":"10.291","createdTime":1676829093886,"modifiedTime":1676829219960,"lastModifiedBy":"kQghu0tL1dft5xLu"}}

View File

@ -14,11 +14,10 @@
],
"url": "https://www.uberwald.me/gitea/public/bol",
"license": "LICENSE.txt",
"version": "10.4.1",
"version": "10.5.8",
"compatibility": {
"minimum": "10",
"verified": "10",
"maximum": "10"
"verified": "10"
},
"esmodules": [
"module/bol.js"
@ -35,7 +34,7 @@
},
{
"lang": "fr",
"name": "Français",
"name": "Français (BoL)",
"path": "lang/fr.json",
"flags": {}
},
@ -203,8 +202,8 @@
],
"socket": true,
"manifest": "https://www.uberwald.me/gitea/public/bol/raw/v10/system.json",
"download": "https://www.uberwald.me/gitea/public/bol/archive/bol-v10.4.1.zip",
"background": "systems/images/map_lemurie.webp",
"download": "https://www.uberwald.me/gitea/public/bol/archive/bol-v10.5.8.zip",
"background": "systems/bol/ui/page_accueil.webp",
"gridDistance": 1.5,
"gridUnits": "m",
"primaryTokenAttribute": "resources.hp",

View File

@ -102,6 +102,7 @@
"hp": {
"key": "hp",
"label": "BOL.resources.hp",
"ismain": true,
"base": 1,
"value": 1,
"bonus": 0,
@ -110,18 +111,21 @@
"hero": {
"key": "hero",
"label": "BOL.resources.hero",
"ismain": true,
"value": 5,
"max": 5
},
"faith": {
"key": "faith",
"label": "BOL.resources.faith",
"ismain": true,
"value": 0,
"max": 0
},
"power": {
"key": "power",
"label": "BOL.resources.power",
"ismain": true,
"value": 0,
"bonus": 0,
"max": 0
@ -129,6 +133,15 @@
"alchemypoints": {
"key": "alchemypoints",
"label": "BOL.resources.alchemypoints",
"ismain": false,
"value": 0,
"bonus": 0,
"max": 0
},
"astrologypoints": {
"key": "astrologypoints",
"label": "BOL.resources.astrologypoints",
"ismain": false,
"value": 0,
"bonus": 0,
"max": 0
@ -141,7 +154,8 @@
"chartype": "player",
"villainy": false,
"bougette": {
"state": "nomoney"
"state": "nomoney",
"value": 0
},
"xp": {
"key": "xp",

View File

@ -17,7 +17,7 @@
</li>
{{#each boleffects as |effect keyEffect|}}
<li class="item flexrow" data-item-id="{{effect.id}}">
<div class="item-image roll-weapon"><img src="{{effect.img}}" title="{{effect.name}}"/></div>
<div class="item-image"><img src="{{effect.img}}" title="{{effect.name}}"/></div>
<h4 class="item-name flex2"><a class="item-edit">{{effect.name}}</a></h4>
</li>
{{/each}}
@ -37,7 +37,7 @@
<a class="item" data-tab="actions">{{localize "BOL.ui.tab.actions"}}</a>
<a class="item" data-tab="features">{{localize "BOL.ui.tab.features"}}</a>
<a class="item" data-tab="equipment">{{localize "BOL.ui.tab.equipment"}}</a>
{{#if (or isSorcerer isAlchemist)}}
{{#if isMysteries}}
<a class="item" data-tab="spellalchemy">{{localize "BOL.ui.tab.spellalchemy"}}</a>
{{/if}}
{{/if}}
@ -66,7 +66,7 @@
{{> "systems/bol/templates/actor/parts/tabs/actor-features.hbs"}}
</div>
{{#if (or isSorcerer isAlchemist)}}
{{#if isMysteries}}
<div class="tab features" data-group="primary" data-tab="spellalchemy">
{{> "systems/bol/templates/actor/parts/tabs/actor-spellalchemy.hbs"}}
</div>

View File

@ -1,52 +1,124 @@
<ol class="items-list">
{{#if (ne charType "creature")}}
<li class="item flexrow item-header">
<div class="item-name left">{{localize "BOL.ui.biosize"}}</div>
<div class="item-field flex2 left"><input type="text" name="system.details.height" value="{{details.height}}"></div>
<div class="item-name right">{{localize "BOL.ui.bioweight"}}</div>
<div class="item-field flex2 "><input type="text" name="system.details.weight" value="{{details.weight}}"></div>
<div class="item-name right">{{localize "BOL.ui.bioage"}} </div>
<div class="item-field flex2 "><input type="text" name="system.details.age" value="{{details.age}}"></div>
<ol class='items-list'>
{{#if (ne charType 'creature')}}
<li class='item flexrow item-header'>
<div class='item-name left'>
{{localize 'BOL.ui.biosize'}}
</div>
<div class='item-field flex2 left'>
<input
type='text'
name='system.details.height'
value="{{details.height}}"
/>
</div>
<div class='item-name right'>
{{localize 'BOL.ui.bioweight'}}
</div>
<div class='item-field flex2'>
<input
type='text'
name='system.details.weight'
value="{{details.weight}}"
/>
</div>
<div class='item-name right'>
{{localize 'BOL.ui.bioage'}}
</div>
<div class='item-field flex2'>
<input type='text' name='system.details.age' value="{{details.age}}" />
</div>
</li>
<li class="item flexrow item-header">
<div class="item-name left">{{localize "BOL.ui.biohair"}} </div>
<div class="item-field flex2 left"><input type="text" name="system.details.hait" value="{{details.hait}}"></div>
<div class="item-name right">{{localize "BOL.ui.bioeyes"}} </div>
<div class="item-field flex2 "><input type="text" name="system.details.eyes" value="{{details.eyes}}"></div>
<li class='item flexrow item-header'>
<div class='item-name left'>
{{localize 'BOL.ui.biohair'}}
</div>
<div class='item-field flex2 left'>
<input
type='text'
name='system.details.hait'
value="{{details.hait}}"
/>
</div>
<div class='item-name right'>
{{localize 'BOL.ui.bioeyes'}}
</div>
<div class='item-field flex2'>
<input
type='text'
name='system.details.eyes'
value="{{details.eyes}}"
/>
</div>
</li>
<li class="item flexrow item-header">
<div class="item-name left">{{localize "BOL.ui.biosigns"}} </div>
<div class="item-field flex2 left"><input type="text" name="system.details.signs" value="{{details.signs}}"></div>
<li class='item flexrow item-header'>
<div class='item-name left'>
{{localize 'BOL.ui.biosigns'}}
</div>
<div class='item-field flex2 left'>
<input
type='text'
name='system.details.signs'
value="{{details.signs}}"
/>
</div>
</li>
{{else}}
<li class="item flexrow item-header">
<div class="item-name left">Taille </div>
<div class="form-fields center">
<select class="field-value size" name="system.details.size" data-dtype="String">
{{#select details.size}}
{{#each config.creatureSize as |value id|}}
<option value="{{id}}">{{localize value}}</option>
{{/each}}
{{/select}}
<li class='item flexrow item-header'>
<div class='item-name left'>
Taille
</div>
<div class='form-fields center'>
<select
class='field-value size'
name='system.details.size'
data-dtype='String'
>
{{#select details.size}}
{{#each config.creatureSize as |sizeData id|}}
<option value="{{id}}">
{{localize sizeData.label}}
</option>
{{/each}}
{{/select}}
</select>
</div>
</li>
{{/if}}
</ol>
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.biodescription"}}</div>
<div class="item-field flex1 right"></div>
</ol>
{{#if (and (not isAstrologer) (countKeys horoscopeGroupList))}}
{{> "systems/bol/templates/actor/parts/tabs/actor-horoscope-group.hbs"}}
{{/if}}
<ol class='items-list'>
<li class='item flexrow item-header'>
<div class='item-name flex4 left'>
{{localize 'BOL.ui.biodescription'}}
</div>
<div class='item-field flex1 right'></div>
</li>
</ol>
{{editor biography target="system.details.biography" button=true owner=owner
editable=editable}}
{{editor
biography
target='system.details.biography'
button=true
owner=owner
editable=editable
}}
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.bionotes"}}</div>
<div class="item-field flex1 right"></div>
<ol class='items-list'>
<li class='item flexrow item-header'>
<div class='item-name flex4 left'>
{{localize 'BOL.ui.bionotes'}}
</div>
<div class='item-field flex1 right'></div>
</li>
</ol>
{{editor notes target="system.details.notes" button=true owner=owner editable=editable}}
{{editor
notes
target='system.details.notes'
button=true
owner=owner
editable=editable
}}

View File

@ -1,27 +1,34 @@
<!--ARMES-->
<button class="create_item">Créer un Equipement</button>
{{#if useBougette}}
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.moneyTitle"}}</div>
<div class="item-name flex4 left">&nbsp;</div>
</li>
<li class="item flexrow" data-item-id="{{item._id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/containers/bags/coinpouch-simple-leather-brown.webp" title="{{localize "BOL.ui.money"}}" /></div>
{{localize "BOL.ui.money"}}
</h4>
<select class="field-value" name="system.bougette.state" data-dtype="String">
{{#select system.bougette.state}}
{{#each config.bougetteState as |value id|}}
<option value="{{id}}">{{localize value}}</option>
{{/each}}
{{/select}}
</select>
</li>
</ol>
{{/if}}
{{#if useBougette}}
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.moneyTitle"}}</div>
<div class="item-name flex4 left">&nbsp;</div>
</li>
<li class="item flexrow" data-item-id="{{item._id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/containers/bags/coinpouch-simple-leather-brown.webp" title="{{localize "BOL.ui.money"}}" /></div>
{{localize "BOL.ui.money"}}
</h4>
<div class="item-image">
<a class="bougette-roll rollable" data-roll-type="bougette"><i class="darkgreen fas fa-dice"></i></a>
</div>
{{#if isGM}}
<select class="field-value" name="system.bougette.value" data-dtype="String">
{{#select bougette.value}}
{{#each config.bougetteState as |value id|}}
<option value="{{id}}">{{localize value}}</option>
{{/each}}
{{/select}}
</select>
{{else}}
<label class="">{{localize bougette.label}}</label></a>
{{/if}}
</li>
</ol>
{{/if}}
<ol class="items-list">
<li class="item flexrow item-header">

View File

@ -0,0 +1,26 @@
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.horoscopeGroup"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.type"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.horoscopeDiceRemaining"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.horoscopeDiceMax"}}</div>
<div class="item-field flex1 right"></div>
</li>
{{#each horoscopeGroupList as |horo id|}}
<li class="item flexrow" data-item-id="{{horo.id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/magic/perception/eye-ringed-glow-angry-large-red.webp" /></div>{{horo.name}}
</h4>
<div class="item-field flex2 center">
<span class="item-field">{{upperFirst horo.type}}</span>
</div>
<div class="item-field flex2 center">
<span class="item-field">{{horo.availableDice}}</span>
</div>
<div class="item-field flex2 center">
<span class="item-field">{{horo.maxDice}}</span>
</div>
<div class="item-field flex1 right"></div>
</li>
{{/each}}
</ol>

View File

@ -21,6 +21,7 @@
</div>
<div class="item-field flex1 right">
<a class="item-control item-edit" title="{{localize "BOL.ui.edit"}}"><i class="fas fa-square"></i></a>
&nbsp;
<a class="item-control item-delete" title="{{localize "BOL.ui.delete"}}"><i class="fas fa-trash"></i></a>
</div>
</li>
@ -57,9 +58,77 @@
</div>
<div class="item-field flex1 right">
<a class="item-control item-edit" title="{{localize "BOL.ui.edit"}}"><i class="fas fa-square"></i></a>
&nbsp;
<a class="item-control item-delete" title="{{localize "BOL.ui.delete"}}"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ol>
{{/if}}
<!--ASTROLOGIE-->
{{#if isAstrologer}}
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.astrologerPoints"}}</div>
<div class="item-name flex4 left">&nbsp;</div>
</li>
<li class="item flexrow" data-item-id="{{item._id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/magic/perception/hand-eye-fire-blue.webp" /></div>
{{localize "BOL.ui.astrologerPointsLabel"}}
</h4>
<input class="field-value" type="text" name="system.resources.astrologypoints.value" value="{{resources.astrologypoints.value}}" data-dtype="Number"/>
</li>
<li class="item flexrow" data-item-id="{{item._id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/magic/perception/eye-ringed-glow-angry-large-teal.webp" /></div>
<a class="rollable" data-roll-type="horoscope-minor">{{localize "BOL.ui.astrologyMinor"}} <i class="darkgreen fas fa-dice"></i></a>
</h4>
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/magic/perception/eye-ringed-glow-angry-large-red.webp" /></div>
<a class="rollable" data-roll-type="horoscope-major">{{localize "BOL.ui.astrologyMajor"}} <i class="darkgreen fas fa-dice"></i></a>
</h4>
</li>
<li class="item flexrow" data-item-id="{{item._id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/magic/perception/eye-ringed-glow-angry-large-red.webp" /></div>
<a class="rollable" data-roll-type="horoscope-major-group">{{localize "BOL.ui.astrologyMajorGroup"}} <i class="darkgreen fas fa-dice"></i></a>
</h4>
</li>
</ol>
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.astrology"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.type"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.answer"}}</div>
<div class="item-field flex1 right"></div>
</li>
{{#each horoscopes as |item id|}}
<li class="item flexrow" data-item-id="{{item._id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="{{item.img}}" title="{{item.name}}"/></div>{{item.name}}
</h4>
<div class="item-field flex2 center">
{{#if item.system.properties.ishoroscopemajor}}
<span class="item-field">Majeur (de groupe)</span>
{{else}}
<span class="item-field">Mineur</span>
{{/if}}
</div>
<div class="item-field flex2 center">
<span class="item-field">{{localize (concat 'BOL.ui.horoscope' item.system.properties.horoscopeanswer)}}</span>
</div>
<div class="item-field flex1 right">
<a class="item-control item-edit" title="{{localize "BOL.ui.edit"}}"><i class="fas fa-square"></i></a>
&nbsp;
<a class="item-control item-delete" title="{{localize "BOL.ui.delete"}}"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ol>
{{> "systems/bol/templates/actor/parts/tabs/actor-horoscope-group.hbs"}}
{{/if}}

View File

@ -3,7 +3,7 @@
<div class="attribute stat flex1 flex-group-center {{key}}">
<label class="stat-label"><a class="rollable" data-roll-type="attribute" data-roll="2d6+@attributes.{{key}}.value" data-adv="0" data-key="{{key}}">{{localize label}}</a></label><br/>
<input class="stat-value rounded" type="text" name="system.attributes.{{key}}.value" value="{{numberFormat value decimals=0 sign=true}}" data-dtype="Number"/><br/>
<span class="stat-roll rollable" title="2d6" data-roll-type="attribute" data-roll="2d6+@attributes.{{key}}.value" data-adv="0" data-key="{{key}}">
<span class="stat-roll rollable" title="2d6" data-roll-type="attribute" data-roll="2d6+@attributes.{{key}}.value" data-adv="0" data-key="{{key}}">
<i class="darkgreen fas fa-dice"></i>
</span>
<span class="tooltip-container">
@ -46,34 +46,19 @@
<hr/>
<div class="resources flexrow">
{{#each resources as |resource id|}}
{{#if (eq resource.key "alchemypoints")}}
{{#if @root.isAlchemist}}
<div class="resource stat flex1 flex-group-center">
<label class="stat-label">{{localize label}}</label><br/>
<input class="stat-value resources-value" type="text" name="system.resources.{{key}}.value" value="{{numberFormat value decimals=0 sign=false}}" data-dtype="Number"/>
{{#if (eq @root.chartype 'player')}}
{{#if (exists bonus)}}
<span class="flexrow"><label class="stat-max bonus-text">Bonus</label><input class="resource-bonus resources-value" type="text" name="system.resources.{{key}}.bonus" value="{{numberFormat bonus decimals=0 sign=false}}" data-dtype="Number"/></span>
{{else}}
<span class="flexrow"><label class="stat-max resources-value">&nbsp;</label><input class="resource-bonus resources-novalue" type="text" value="" disabled></span>
{{#if resource.ismain}}
<div class="resource stat flex1 flex-group-center">
<label class="stat-label">{{localize label}}</label><br/>
<input class="stat-value resources-value" type="text" name="system.resources.{{key}}.value" value="{{numberFormat value decimals=0 sign=false}}" data-dtype="Number"/>
{{#if (eq @root.charType 'player')}}
{{#if (exists bonus)}}
<span class="flexrow"><label class="stat-max bonus-text">Bonus</label><input class="resource-bonus resources-value" type="text" name="system.resources.{{key}}.bonus" value="{{numberFormat bonus decimals=0 sign=false}}" data-dtype="Number"/></span>
{{else}}
<span class="flexrow"><label class="stat-max">&nbsp;</label><input class="resource-bonus resources-novalue" type="text" value="" disabled></span>
{{/if}}
{{/if}}
{{/if}}
<input class="resources-value" type="text" name="system.resources.{{key}}.max" value="{{numberFormat max decimals=0 sign=false}}" data-dtype="Number"/>
</div>
{{/if}}
{{else}}
<div class="resource stat flex1 flex-group-center">
<label class="stat-label">{{localize label}}</label><br/>
<input class="stat-value resources-value" type="text" name="system.resources.{{key}}.value" value="{{numberFormat value decimals=0 sign=false}}" data-dtype="Number"/>
{{#if (eq @root.chartype 'player')}}
{{#if (exists bonus)}}
<span class="flexrow"><label class="stat-max bonus-text">Bonus</label><input class="resource-bonus resources-value" type="text" name="system.resources.{{key}}.bonus" value="{{numberFormat bonus decimals=0 sign=false}}" data-dtype="Number"/></span>
{{else}}
<span class="flexrow"><label class="stat-max">&nbsp;</label><input class="resource-bonus resources-novalue" type="text" value="" disabled></span>
{{/if}}
{{/if}}
<input class="resources-value" type="text" name="system.resources.{{key}}.max" value="{{numberFormat max decimals=0 sign=false}}" data-dtype="Number"/>
</div>
<input class="resources-value" type="text" name="system.resources.{{key}}.max" value="{{numberFormat max decimals=0 sign=false}}" data-dtype="Number"/>
</div>
{{/if}}
{{/each}}
</div>

View File

@ -0,0 +1,112 @@
<form class="{{cssClass}} flexcol character-summary-container" autocomplete="off">
<ol class="items-list">
<li class="item flexrow item-header">
<div class="item-field item-name item-name-fixed-medium">{{localize "BOL.ui.pcname"}}</div>
{{#each config.attackAttributes as |attr key|}}
<div class="item-field flex2 item-field-fixed-short">{{abbrev3 (localize attr)}}</div>
{{/each}}
{{#each config.aptitudes as |apt key|}}
<div class="item-field flex2 item-field-fixed-short">{{abbrev3 (localize apt)}}</div>
{{/each}}
{{#each config.resources as |res key|}}
<div class="item-field flex2 item-field-fixed-short">{{abbrev3 (localize res)}}</div>
{{/each}}
<div class="item-field flex1 right">
</div>
</li>
{{#each pcs as |pc key|}}
<li class="item flexrow" data-actor-id="{{pc.id}}">
<div class="item-field item-name item-name-fixed-medium">
<a class="actor-open character-summary-rollable">{{pc.name}}</a>
</div>
{{#each pc.system.attributes as |attr key|}}
<div class="item-field flex2 item-field-fixed-short">
<a class="summary-roll character-summary-rollable" data-type="attribute" data-key="{{key}}">{{attr.value}}</a>
</div>
{{/each}}
{{#each pc.system.aptitudes as |apt key|}}
<div class="item-field flex item-field-fixed-short">
<a class="summary-roll character-summary-rollable" data-type="aptitude" data-key="{{key}}">{{apt.value}}</a>
</div>
{{/each}}
{{#each pc.system.resources as |res key|}}
<div class="item-field flex2 item-field-fixed-short">{{res.value}}/{{res.max}}</div>
{{/each}}
<div class="item-field flex1 right">
</div>
</li>
{{/each}}
<li class="item flexrow item-header">
<div class="item-field item-name item-name-fixed-medium">{{localize "BOL.ui.npcname"}}</div>
{{#each config.attackAttributes as |attr key|}}
<div class="item-field flex2 item-field-fixed-short">{{abbrev3 (localize attr)}}</div>
{{/each}}
{{#each config.aptitudes as |apt key|}}
<div class="item-field flex2 item-field-fixed-short">{{abbrev3 (localize apt)}}</div>
{{/each}}
{{#each config.resources as |res key|}}
<div class="item-field flex2 item-field-fixed-short">{{abbrev3 (localize res)}}</div>
{{/each}}
<div class="item-field flex1 right">
</div>
</li>
{{#each npcs as |pc key|}}
<li class="item flexrow" data-actor-id="{{pc.id}}">
<div class="item-field item-name item-name-fixed-medium">
<a class="actor-open character-summary-rollable">{{pc.name}}</a>
</div>
{{#each pc.system.attributes as |attr key|}}
<div class="item-field flex2 item-field-fixed-short">
<a class="summary-roll character-summary-rollable" data-type="attribute" data-key="{{key}}">{{attr.value}}</a>
</div>
{{/each}}
{{#each pc.system.aptitudes as |apt key|}}
<div class="item-field flex item-field-fixed-short">
<a class="summary-roll character-summary-rollable" data-type="aptitude" data-key="{{key}}">{{apt.value}}</a>
</div>
{{/each}}
{{#each pc.system.resources as |res key|}}
<div class="item-field flex2 item-field-fixed-short">{{res.value}}/{{res.max}}</div>
{{/each}}
<div class="item-field flex1 right">
<a class="item-control actor-delete" title="{{localize "BOL.ui.delete"}}"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
{{#if (countKeys horoscopeGroupList)}}
<li class="item flexrow item-header">
<div class="item-name flex4 left">{{localize "BOL.ui.horoscopeGroup"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.type"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.horoscopeDiceRemaining"}}</div>
<div class="item-field flex2 center">{{localize "BOL.ui.horoscopeDiceMax"}}</div>
<div class="item-field flex1 right"></div>
</li>
{{#each horoscopeGroupList as |horo id|}}
<li class="item flexrow" data-item-id="{{horo.id}}">
<h4 class="item-name flex4 left">
<div class="item-image"><img src="icons/magic/perception/eye-ringed-glow-angry-large-red.webp" /></div>{{horo.name}}
</h4>
<div class="item-field flex2 center">
<span class="item-field">{{upperFirst horo.type}}</span>
</div>
<div class="item-field flex2 center">
<input class="field-value" type="text" id="horoscope-group-edit-available" value="{{horo.availableDice}}" data-horo-id="{{id}}" data-type="Number">
</div>
<div class="item-field flex2 center">
<input class="field-value" type="text" id="horoscope-group-edit-max" value="{{horo.maxDice}}" data-horo-id="{{id}}" data-type="Number">
</div>
<div class="item-field flex1 right"></div>
</li>
{{/each}}
{{/if}}
</ol>
</form>

View File

@ -1,7 +1,7 @@
<button class="chat-damage-roll bol-margin-tb-2" data-damage-mode="normal-damage" data-attack-id="{{id}}">{{localize "BOL.chat.rolldamage"}}</button>
{{#if isCritical}}
{{#if isCritical}}
<button class="chat-damage-roll bol-margin-tb-2 " data-damage-mode="damage-plus-6" data-attack-id="{{id}}">{{localize "BOL.chat.rolldamage6"}}</button>
<button class="chat-damage-roll bol-margin-tb-2" data-damage-mode="damage-plus-12" data-attack-id="{{id}}">{{localize "BOL.chat.rolldamage12"}}</button>
{{/if}}

View File

@ -34,11 +34,34 @@
</div>
{{/if}}
{{#if initiativeRank}}
<div>
{{localize "BOL.chat.initiative"}}: {{initiativeRank}}
</div>
{{/if}}
{{#if (eq mode "bougette")}}
<div>
{{localize "BOL.chat.rollbougette"}} :
{{#if isSuccess}}
{{localize "BOL.chat.bougettesuccess"}}
{{else}}
{{localize "BOL.chat.bougettefailure"}}
{{/if}}
</div>
{{/if}}
<div id="{{optionsId}}">
{{#if isRealCritical}}
{{#if isCritical}}
<div>
{{localize "BOL.chat.criticalinfo"}}
</div>
<div class="bol-margin-tb-2">
<a class="content-link" draggable="true" data-uuid="Compendium.bol.aides-de-jeu.Yl1RKQb0BjVUtilk" data-id="Yl1RKQb0BjVUtilk" data-type="JournalEntry" data-pack="bol.aides-de-jeu" data-tooltip="un journal"><i class="fas fa-book-open"></i>Succès Héroïque</a>
<a class="content-link" draggable="true" data-uuid="Compendium.bol.aides-de-jeu.Yl1RKQb0BjVUtilk" data-id="Yl1RKQb0BjVUtilk" data-type="JournalEntry" data-pack="bol.aides-de-jeu" data-tooltip="un journal">
<i class="fas fa-book-open"></i>{{localize "BOL.chat.criticalbuttonjournal"}}</a>
</div>
{{/if}}
@ -51,7 +74,14 @@
{{#if alchemy}}
{{> "systems/bol/templates/chat/rolls/alchemy-roll-card.hbs"}}
{{/if}}
{{#if (eq mode "horoscope")}}
{{> "systems/bol/templates/chat/rolls/horoscope-roll-card.hbs"}}
{{/if}}
{{#if (count selectedHoroscope)}}
{{> "systems/bol/templates/chat/rolls/selected-horoscope-roll-card.hbs"}}
{{/if}}
{{#if reroll}}
<button class="chat-button button hero-reroll bol-margin-tb-2" data-roll-id=="{{rollId}}" data-actor-id="{{actor.id}}">{{localize "BOL.chat.reroll"}}</button>
{{/if}}

View File

@ -0,0 +1,26 @@
<h4><strong>{{localize "BOL.chat.horoscope"}} {{localize horoscopeTypeLabel}}</strong></h4>
<h4><strong>{{localize "BOL.chat.horoscopepoints" points=astrologyPointsCost}}</strong></h4>
{{#if (eq horoscopeType "minor")}}
{{#if isSuccess}}
{{localize "BOL.chat.horoscopeminorsuccess"}}
{{else}}
{{localize "BOL.chat.horoscopeminorfailure"}}
{{/if}}
{{/if}}
{{#if (eq horoscopeType "major")}}
{{#if isSuccess}}
{{localize "BOL.chat.horoscopemajorsuccess"}}
{{else}}
{{localize "BOL.chat.horoscopemajorfailure"}}
{{/if}}
{{/if}}
{{#if (eq horoscopeType "majorgroup")}}
{{#if isSuccess}}
{{localize "BOL.chat.horoscopemajorgroupsuccess" careerBonus=careerBonus}}
{{else}}
{{localize "BOL.chat.horoscopemajorgroupfailure" careerBonus=careerBonus}}
{{/if}}
{{/if}}

View File

@ -0,0 +1,8 @@
<div>
{{#each selectedHoroscope as |horo id|}}
{{localize "BOL.chat.usedhoroscope"}} : {{horo.name}}
{{/each}}
</div>
<div>{{localize "BOL.chat.horoscopedeleted"}}</div>

View File

@ -37,6 +37,8 @@
{{> "systems/bol/templates/dialogs/effect-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/horoscope-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/adv-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/mod-roll-part.hbs"}}

View File

@ -34,6 +34,8 @@
{{> "systems/bol/templates/dialogs/effect-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/horoscope-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/adv-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/mod-roll-part.hbs"}}

View File

@ -18,6 +18,8 @@
{{> "systems/bol/templates/dialogs/effect-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/horoscope-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/adv-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/mod-roll-part.hbs"}}

View File

@ -0,0 +1,39 @@
<form class="{{cssClass}}" autocomplete="off">
{{!-- Sheet Header --}}
<header class="sheet-header">
<div class="row flexrow table-header">
<div class="flex1 center">
<h3>{{localize 'BOL.ui.makeHoroscope'}} {{localize horoscopeTypeLabel}}</h3>
</div>
</div>
</header>
{{> "systems/bol/templates/dialogs/attribute-roll-part.hbs"}}
<div class="flexrow" style="margin-bottom: 1px;">
<div class="flex1 center bg-darkred">
<label for="mod">{{localize 'BOL.ui.astrologerRank'}}</label>
</div>
<div class="flex1 center cell">{{careerBonus}}</div>
</div>
<div class="flexrow" style="margin-bottom: 1px;">
<div class="flex1 center bg-darkred">
<label for="mod">{{localize 'BOL.ui.horoscopeCost'}}</label>
</div>
<div class="flex1 center cell" id="astrologyPointsCost">{{astrologyPointsCost}}</div>
</div>
{{> "systems/bol/templates/dialogs/boons-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/flaws-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/effect-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/adv-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/mod-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/total-roll-part.hbs"}}
</form>

View File

@ -0,0 +1,73 @@
{{#if (count horoscopeBonusList)}}
<div class='flexrow roll-box'>
<div class='flex1 center bg-darkred'>
<label for='mod'>
{{localize 'BOL.ui.horoscopesBonus'}}
</label>
</div>
<div class='flex1 center cell'>
<select
class='flex1'
name='horoscope-bonus-applied'
id='horoscope-bonus-applied'
data-type='String'
multiple
>
{{#each horoscopeBonusList as |horoscope id|}}
<option value="{{id}}">
{{horoscope.name}}
</option>
{{/each}}
</select>
</div>
</div>
{{/if}}
{{#if (count horoscopeMalusList)}}
<div class='flexrow roll-box'>
<div class='flex1 center bg-darkred'>
<label for='mod'>
{{localize 'BOL.ui.horoscopesMalus'}}
</label>
</div>
<div class='flex1 center cell'>
<select
class='flex1'
name='horoscope-malus-applied'
id='horoscope-malus-applied'
data-type='String'
multiple
>
{{#each horoscopeMalusList as |horoscope id|}}
<option value="{{id}}">
{{horoscope.name}}
</option>
{{/each}}
</select>
</div>
</div>
{{/if}}
{{#if (countKeys horoscopeGroupList)}}
<div class='flexrow roll-box'>
<div class='flex1 center bg-darkred'>
<label for='mod'>
{{localize 'BOL.ui.horoscopeGroup'}}
</label>
</div>
<div class='flex1 center cell'>
<select
class='flex1'
name='horoscope-group-applied'
id='horoscope-group-applied'
data-type='String'
>
{{#each horoscopeGroupList as |horoscope index|}}
<option value="{{index}}">
{{horoscope.nbDice}}d{{upperFirstOnly horoscope.type}} - {{horoscope.name}}
</option>
{{/each}}
</select>
</div>
</div>
{{/if}}

View File

@ -65,6 +65,8 @@
{{> "systems/bol/templates/dialogs/flaws-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/horoscope-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/adv-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/mod-roll-part.hbs"}}

View File

@ -58,6 +58,8 @@
{{> "systems/bol/templates/dialogs/effect-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/horoscope-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/adv-roll-part.hbs"}}
{{> "systems/bol/templates/dialogs/mod-roll-part.hbs"}}

View File

@ -27,3 +27,6 @@
{{#if (equals item.system.subtype "boleffect")}}
{{> "systems/bol/templates/item/parts/properties/feature/effect-properties.hbs"}}
{{/if}}
{{#if (equals item.system.subtype "horoscope")}}
{{> "systems/bol/templates/item/parts/properties/feature/horoscope-properties.hbs"}}
{{/if}}

View File

@ -15,3 +15,7 @@
<label class="property-label">{{localize "BOL.ui.isPriest"}}</label>
<input class="field-value" type="checkbox" name="system.properties.priest" {{checked item.system.properties.priest}}>
</div>
<div class="property flexrow">
<label class="property-label">{{localize "BOL.ui.isAstrologer"}}</label>
<input class="field-value" type="checkbox" name="system.properties.astrologer" {{checked item.system.properties.astrologer}}>
</div>

View File

@ -0,0 +1,17 @@
<h3 class="form-header">{{localize 'BOL.featureSubtypes.horoscope'}}</h3>
<div class="property flexrow">
<label class="property-label">{{localize "BOL.ui.answer"}}</label>
<select name="system.properties.horoscopeanswer" data-dtype="String">
{{#select item.system.properties.horoscopeanswer}}
{{#each config.horoscopeAnswer as |item id|}}
<option value="{{id}}">{{localize item}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div class="property flexrow">
<label class="property-label">{{localize "BOL.ui.rank"}}</label>
<input class="field-value" type="text" name="system.properties.rank" value={{item.system.properties.rank}} data-type="Number">
</div>

View File

@ -74,7 +74,7 @@
</select>
</div>
{{#each item.system.optionnalconditions as |cond idx|}}
{{#each item.system.properties.optionnalconditions as |cond idx|}}
{{#if (lt idx @root.item.system.properties.nboptionnalconditions)}}
<div class="property flexrow">
<label class="property-label">{{localize "BOL.ui.optionnalconditions"}} {{add idx 1}}</label>
@ -83,6 +83,8 @@
{{/if}}
{{/each}}
<h4><label class="property-label">{{localize "BOL.ui.magicnewrules"}} : </label></h4>
<div class="property flexrow">
<div class="form-fields center">
<label class="checkbox">
@ -94,4 +96,9 @@
<input class="field-value" type="checkbox" name="system.properties.concentrate" {{checked item.system.properties.concentrate}}> {{localize "BOL.ui.concentrate"}}
</label>
</div>
<div class="form-fields center">
<label class="checkbox">
<input class="field-value" type="checkbox" name="system.properties.aggressive" {{checked item.system.properties.aggressive}}> {{localize "BOL.ui.aggressive"}}
</label>
</div>
</div>

BIN
ui/page_accueil.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 KiB