Compare commits
13 Commits
bol-v10.0.
...
bol-v10.1.
Author | SHA1 | Date | |
---|---|---|---|
716cc53b29 | |||
44952d4410 | |||
a7991bce92 | |||
a1c20019e8 | |||
af8576a4a1 | |||
6c35ddfb0b | |||
0cbcaee45e | |||
904ff821e1 | |||
5c13cde07a | |||
51c1e205e9 | |||
90a83f4571 | |||
3311bc091a | |||
fa8f9869a6 |
@ -1051,3 +1051,7 @@ body.system-bol img#logo {
|
|||||||
.bol-hud-menu label {
|
.bol-hud-menu label {
|
||||||
font-size: 0.75rem;
|
font-size: 0.75rem;
|
||||||
}
|
}
|
||||||
|
.bol-margin-tb-2 {
|
||||||
|
margin-top: 2px;
|
||||||
|
margin-bottom: 2px;
|
||||||
|
}
|
@ -391,6 +391,7 @@
|
|||||||
"BOL.chat.spellremaining": "Points de Pouvoir restants",
|
"BOL.chat.spellremaining": "Points de Pouvoir restants",
|
||||||
"BOL.chat.nodamagesummary": "Aucun dégats n'a été subi ....",
|
"BOL.chat.nodamagesummary": "Aucun dégats n'a été subi ....",
|
||||||
"BOL.chat.damageresume": "{name} a subi des blessures ...",
|
"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.dialog.soeasy": "Inmanquable (+4)",
|
"BOL.dialog.soeasy": "Inmanquable (+4)",
|
||||||
"BOL.dialog.veryeasy": "Trés Facile (+2)",
|
"BOL.dialog.veryeasy": "Trés Facile (+2)",
|
||||||
|
@ -125,6 +125,7 @@ export class BoLActorSheet extends ActorSheet {
|
|||||||
formData.attributes = this.actor.attributes
|
formData.attributes = this.actor.attributes
|
||||||
formData.aptitudes = this.actor.aptitudes
|
formData.aptitudes = this.actor.aptitudes
|
||||||
formData.resources = this.actor.getResourcesFromType()
|
formData.resources = this.actor.getResourcesFromType()
|
||||||
|
formData.xp = this.actor.system.xp
|
||||||
formData.equipment = this.actor.equipment
|
formData.equipment = this.actor.equipment
|
||||||
formData.equipmentCreature = this.actor.equipmentCreature
|
formData.equipmentCreature = this.actor.equipmentCreature
|
||||||
formData.weapons = this.actor.weapons
|
formData.weapons = this.actor.weapons
|
||||||
@ -139,7 +140,7 @@ export class BoLActorSheet extends ActorSheet {
|
|||||||
formData.ammos = this.actor.ammos
|
formData.ammos = this.actor.ammos
|
||||||
formData.misc = this.actor.misc
|
formData.misc = this.actor.misc
|
||||||
formData.combat = this.actor.buildCombat()
|
formData.combat = this.actor.buildCombat()
|
||||||
formData.combatCreature = this.actor.buildCombatCreature()
|
//formData.combatCreature = this.actor.buildCombatCreature()
|
||||||
formData.features = this.actor.buildFeatures()
|
formData.features = this.actor.buildFeatures()
|
||||||
formData.isGM = game.user.isGM
|
formData.isGM = game.user.isGM
|
||||||
formData.options = this.options
|
formData.options = this.options
|
||||||
|
@ -479,6 +479,15 @@ export class BoLActor extends Actor {
|
|||||||
"options": false,
|
"options": false,
|
||||||
"items": this.melee
|
"items": this.melee
|
||||||
},
|
},
|
||||||
|
"natural": {
|
||||||
|
"label": "BOL.combatCategory.natural",
|
||||||
|
"weapon": true,
|
||||||
|
"protection": false,
|
||||||
|
"blocking": false,
|
||||||
|
"ranged": false,
|
||||||
|
"options": false,
|
||||||
|
"items": this.natural
|
||||||
|
},
|
||||||
"ranged": {
|
"ranged": {
|
||||||
"label": "BOL.combatCategory.ranged",
|
"label": "BOL.combatCategory.ranged",
|
||||||
"weapon": true,
|
"weapon": true,
|
||||||
@ -518,28 +527,6 @@ export class BoLActor extends Actor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
buildCombatCreature() {
|
|
||||||
return {
|
|
||||||
"natural": {
|
|
||||||
"label": "BOL.combatCategory.natural",
|
|
||||||
"weapon": true,
|
|
||||||
"protection": false,
|
|
||||||
"blocking": false,
|
|
||||||
"ranged": false,
|
|
||||||
"options": false,
|
|
||||||
"items": this.natural
|
|
||||||
},
|
|
||||||
"protections": {
|
|
||||||
"label": "BOL.combatCategory.protections",
|
|
||||||
"weapon": false,
|
|
||||||
"protection": true,
|
|
||||||
"blocking": false,
|
|
||||||
"ranged": false,
|
|
||||||
"options": false,
|
|
||||||
"items": this.protections
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*-------------------------------------------- */
|
/*-------------------------------------------- */
|
||||||
buildRollList() {
|
buildRollList() {
|
||||||
|
@ -127,7 +127,7 @@ export class BoLRoll {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
alchemy = duplicate(alchemy)
|
alchemy = duplicate(alchemy)
|
||||||
let alchemyData = alchemy.data
|
let alchemyData = alchemy.system
|
||||||
if (alchemyData.properties.pccurrent < alchemyData.properties.pccost) {
|
if (alchemyData.properties.pccurrent < alchemyData.properties.pccost) {
|
||||||
ui.notifications.warn("Pas assez de Points de Cration investis dans la Préparation !")
|
ui.notifications.warn("Pas assez de Points de Cration investis dans la Préparation !")
|
||||||
return
|
return
|
||||||
@ -488,6 +488,9 @@ export class BoLDefaultRoll {
|
|||||||
this.rollData.isLegendary = false
|
this.rollData.isLegendary = false
|
||||||
this.rollData.isFumble = (diceTotal === 2)
|
this.rollData.isFumble = (diceTotal === 2)
|
||||||
this.rollData.isFailure = !this.rollData.isSuccess
|
this.rollData.isFailure = !this.rollData.isSuccess
|
||||||
|
|
||||||
|
//this.rollData.isRealCritical = true
|
||||||
|
//this.rollData.isFumble = true
|
||||||
|
|
||||||
let actor = game.actors.get( this.rollData.actorId)
|
let actor = game.actors.get( this.rollData.actorId)
|
||||||
if (this.rollData.reroll == undefined) {
|
if (this.rollData.reroll == undefined) {
|
||||||
|
@ -15,7 +15,7 @@ export class BoLCombatManager extends Combat {
|
|||||||
|
|
||||||
/************************************************************************************/
|
/************************************************************************************/
|
||||||
async rollInitiative(ids, formula = undefined, messageOptions = {}) {
|
async rollInitiative(ids, formula = undefined, messageOptions = {}) {
|
||||||
console.log(`${game.data.system.data.title} | Combat.rollInitiative()`, ids, formula, messageOptions);
|
console.log(`${game.system.title} | Combat.rollInitiative()`, ids, formula, messageOptions);
|
||||||
// Structure input data
|
// Structure input data
|
||||||
ids = typeof ids === "string" ? [ids] : ids;
|
ids = typeof ids === "string" ? [ids] : ids;
|
||||||
const currentId = this.combatant._id;
|
const currentId = this.combatant._id;
|
||||||
@ -24,6 +24,7 @@ export class BoLCombatManager extends Combat {
|
|||||||
for (let cId = 0; cId < ids.length; cId++) {
|
for (let cId = 0; cId < ids.length; cId++) {
|
||||||
const combatant = this.combatants.get(ids[cId]);
|
const combatant = this.combatants.get(ids[cId]);
|
||||||
let fvttInit = 5
|
let fvttInit = 5
|
||||||
|
//console.log("TYPE", combatant.actor.type)
|
||||||
if (combatant.actor.type == 'character') {
|
if (combatant.actor.type == 'character') {
|
||||||
let initData = combatant.actor.getLastInitData()
|
let initData = combatant.actor.getLastInitData()
|
||||||
console.log("Init data !!!", initData)
|
console.log("Init data !!!", initData)
|
||||||
@ -37,11 +38,12 @@ export class BoLCombatManager extends Combat {
|
|||||||
fvttInit = 3
|
fvttInit = 3
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
fvttInit = 4 // Pietaille par defaut
|
fvttInit = 4 // Pietaille par defautco
|
||||||
if ( combatant.actor.getSubtype == 'adversary') {
|
//console.log("ACTOR", combatant.actor.getCharType())
|
||||||
|
if ( combatant.actor.getCharType() == 'adversary') {
|
||||||
fvttInit = 7
|
fvttInit = 7
|
||||||
}
|
}
|
||||||
if ( combatant.actor.getSubtype == 'tough') {
|
if ( combatant.actor.getCharType() == 'tough') {
|
||||||
fvttInit = 6
|
fvttInit = 6
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,21 @@ import { BoLRoll } from "../controllers/bol-rolls.js";
|
|||||||
|
|
||||||
export class BoLHotbar {
|
export class BoLHotbar {
|
||||||
|
|
||||||
|
|
||||||
|
static async assignToHotBar( item, slot) {
|
||||||
|
let command = `game.bol.BoLHotbar.rollMacro("${item.name}", "${item.type}");`
|
||||||
|
let macro = game.macros.contents.find(m => (m.name === item.name) && (m.command === command))
|
||||||
|
if (!macro) {
|
||||||
|
macro = await Macro.create({
|
||||||
|
name: item.name,
|
||||||
|
type: "script",
|
||||||
|
img: item.img,
|
||||||
|
command: command
|
||||||
|
}, { displaySheet: false })
|
||||||
|
}
|
||||||
|
await game.user.assignHotbarMacro(macro, slot);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a macro when dropping an entity on the hotbar
|
* Create a macro when dropping an entity on the hotbar
|
||||||
* Item - open roll dialog for item
|
* Item - open roll dialog for item
|
||||||
@ -10,55 +25,20 @@ export class BoLHotbar {
|
|||||||
*/
|
*/
|
||||||
static init( ) {
|
static init( ) {
|
||||||
|
|
||||||
Hooks.on("hotbarDrop", async (bar, documentData, slot) => {
|
Hooks.on("hotbarDrop", (bar, documentData, slot) => {
|
||||||
// Create item macro if rollable item - weapon, spell, prayer, trait, or skill
|
// Create item macro if rollable item - weapon, spell, prayer, trait, or skill
|
||||||
if (documentData.type == "Item") {
|
if (documentData.type == "Item") {
|
||||||
console.log("Drop done !!!", bar, documentData, slot)
|
let item = fromUuidSync(documentData.uuid)
|
||||||
let item = documentData.data
|
if (item == undefined) {
|
||||||
let command = `game.bol.BoLHotbar.rollMacro("${item.name}", "${item.type}");`
|
item = this.actor.items.get(documentData.uuid)
|
||||||
let macro = game.macros.contents.find(m => (m.name === item.name) && (m.command === command))
|
|
||||||
if (!macro) {
|
|
||||||
macro = await Macro.create({
|
|
||||||
name: item.name,
|
|
||||||
type: "script",
|
|
||||||
img: item.img,
|
|
||||||
command: command
|
|
||||||
}, { displaySheet: false })
|
|
||||||
}
|
}
|
||||||
game.user.assignHotbarMacro(macro, slot);
|
if (item && (item.system.subtype === "weapon" || item.system.category === "spell")) {
|
||||||
}
|
this.assignToHotBar( item, slot )
|
||||||
// Create a macro to open the actor sheet of the actor dropped on the hotbar
|
return false
|
||||||
else if (documentData.type == "Actor") {
|
|
||||||
let actor = game.actors.get(documentData.id);
|
|
||||||
let command = `game.actors.get("${documentData.id}").sheet.render(true)`
|
|
||||||
let macro = game.macros.contents.find(m => (m.name === actor.name) && (m.command === command));
|
|
||||||
if (!macro) {
|
|
||||||
macro = await Macro.create({
|
|
||||||
name: actor.data.name,
|
|
||||||
type: "script",
|
|
||||||
img: actor.data.img,
|
|
||||||
command: command
|
|
||||||
}, { displaySheet: false })
|
|
||||||
game.user.assignHotbarMacro(macro, slot);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Create a macro to open the journal sheet of the journal dropped on the hotbar
|
return true
|
||||||
else if (documentData.type == "JournalEntry") {
|
})
|
||||||
let journal = game.journal.get(documentData.id);
|
|
||||||
let command = `game.journal.get("${documentData.id}").sheet.render(true)`
|
|
||||||
let macro = game.macros.contents.find(m => (m.name === journal.name) && (m.command === command));
|
|
||||||
if (!macro) {
|
|
||||||
macro = await Macro.create({
|
|
||||||
name: journal.data.name,
|
|
||||||
type: "script",
|
|
||||||
img: "systems/bol/icons/images/icone_parchement_vierge.webp",
|
|
||||||
command: command
|
|
||||||
}, { displaySheet: false })
|
|
||||||
game.user.assignHotbarMacro(macro, slot);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Roll macro */
|
/** Roll macro */
|
||||||
@ -76,10 +56,10 @@ export class BoLHotbar {
|
|||||||
return ui.notifications.warn(`Impossible de trouver l'objet de cette macro`)
|
return ui.notifications.warn(`Impossible de trouver l'objet de cette macro`)
|
||||||
}
|
}
|
||||||
// Trigger the item roll
|
// Trigger the item roll
|
||||||
if (item.data.data.category === "equipment" && item.data.data.subtype === "weapon") {
|
if (item.system.category === "equipment" && item.system.subtype === "weapon") {
|
||||||
return BoLRoll.weaponCheckWithWeapon( actor, item)
|
return BoLRoll.weaponCheckWithWeapon( actor, item)
|
||||||
}
|
}
|
||||||
if (item.data.data.category === "spell") {
|
if (item.system.category === "spell") {
|
||||||
return BoLRoll.spellCheckWithSpell( actor, item)
|
return BoLRoll.spellCheckWithSpell( actor, item)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
File diff suppressed because one or more lines are too long
@ -14,11 +14,9 @@
|
|||||||
],
|
],
|
||||||
"url": "https://www.uberwald.me/gitea/public/bol",
|
"url": "https://www.uberwald.me/gitea/public/bol",
|
||||||
"license": "LICENSE.txt",
|
"license": "LICENSE.txt",
|
||||||
"version": "10.0.4",
|
"version": "10.1.4",
|
||||||
"compatibility": {
|
"compatibility": {
|
||||||
"minimum": "10",
|
"minimum": "10"
|
||||||
"verified": "10.279",
|
|
||||||
"maximum": "10"
|
|
||||||
},
|
},
|
||||||
"esmodules": [
|
"esmodules": [
|
||||||
"module/bol.js"
|
"module/bol.js"
|
||||||
@ -194,7 +192,7 @@
|
|||||||
],
|
],
|
||||||
"socket": true,
|
"socket": true,
|
||||||
"manifest": "https://www.uberwald.me/gitea/public/bol/raw/v10/system.json",
|
"manifest": "https://www.uberwald.me/gitea/public/bol/raw/v10/system.json",
|
||||||
"download": "https://www.uberwald.me/gitea/public/bol/archive/bol-v10.0.4.zip",
|
"download": "https://www.uberwald.me/gitea/public/bol/archive/bol-v10.1.4.zip",
|
||||||
"background": "systems/images/map_lemurie.webp",
|
"background": "systems/images/map_lemurie.webp",
|
||||||
"gridDistance": 1.5,
|
"gridDistance": 1.5,
|
||||||
"gridUnits": "m",
|
"gridUnits": "m",
|
||||||
|
@ -11,11 +11,11 @@
|
|||||||
<label class="header-field-label flex2">{{localize "BOL.ui.xp"}}</label><br/>
|
<label class="header-field-label flex2">{{localize "BOL.ui.xp"}}</label><br/>
|
||||||
<div class="header-field-group flex3">
|
<div class="header-field-group flex3">
|
||||||
<label class="header-field-label flex1" style="font-size: 1.5em; color:#606060;">{{localize "BOL.ui.xpspent"}}</label><br/>
|
<label class="header-field-label flex1" style="font-size: 1.5em; color:#606060;">{{localize "BOL.ui.xpspent"}}</label><br/>
|
||||||
<input class="header-field-value flex1" type="text" name="data.xp.spent" value="{{numberFormat data.xp.spent decimals=0 sign=false}}" data-dtype="Number"/><br/>
|
<input class="header-field-value flex1" type="text" name="system.xp.spent" value="{{numberFormat xp.spent decimals=0 sign=false}}" data-dtype="Number"/><br/>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-field-group flex3">
|
<div class="header-field-group flex3">
|
||||||
<label class="header-field-label flex1" style="font-size: 1.5em; color:#606060;"> {{localize "BOL.ui.xptotal"}}</label><br/>
|
<label class="header-field-label flex1" style="font-size: 1.5em; color:#606060;"> {{localize "BOL.ui.xptotal"}}</label><br/>
|
||||||
<input class="header-field-value flex1" type="text" name="data.xp.total" value="{{numberFormat data.xp.total decimals=0 sign=false}}" data-dtype="Number"/><br/>
|
<input class="header-field-value flex1" type="text" name="system.xp.total" value="{{numberFormat xp.total decimals=0 sign=false}}" data-dtype="Number"/><br/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{else}}
|
{{else}}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
<button class="chat-damage-roll" data-damage-mode="normal-damage" data-attack-id="{{id}}">{{localize "BOL.chat.rolldamage"}}</button>
|
<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" 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-6" data-attack-id="{{id}}">{{localize "BOL.chat.rolldamage6"}}</button>
|
||||||
<button class="chat-damage-roll" data-damage-mode="damage-plus-12" data-attack-id="{{id}}">{{localize "BOL.chat.rolldamage12"}}</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}}
|
{{/if}}
|
||||||
|
@ -24,6 +24,10 @@
|
|||||||
<h3><strong>{{description}}</strong></h3>
|
<h3><strong>{{description}}</strong></h3>
|
||||||
|
|
||||||
<div class="actions-section">
|
<div class="actions-section">
|
||||||
|
{{#if isFumble}}
|
||||||
|
{{localize "BOL.chat.fumblemessage"}}
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
{{#if fightOption}}
|
{{#if fightOption}}
|
||||||
<div>
|
<div>
|
||||||
{{localize "BOL.chat.fightoption"}} : {{fightOption.name}}
|
{{localize "BOL.chat.fightoption"}} : {{fightOption.name}}
|
||||||
@ -31,6 +35,13 @@
|
|||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<div id="{{optionsId}}">
|
<div id="{{optionsId}}">
|
||||||
|
|
||||||
|
{{#if isRealCritical}}
|
||||||
|
<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>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
{{#if (and isSuccess weapon)}}
|
{{#if (and isSuccess weapon)}}
|
||||||
{{> "systems/bol/templates/chat/rolls/attack-damage-card.hbs"}}
|
{{> "systems/bol/templates/chat/rolls/attack-damage-card.hbs"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
@ -42,16 +53,18 @@
|
|||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if reroll}}
|
{{#if reroll}}
|
||||||
<button class="chat-button button hero-reroll" data-roll-id=="{{rollId}}" data-actor-id="{{actor.id}}">{{localize "BOL.chat.reroll"}}</button>
|
<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}}
|
{{/if}}
|
||||||
{{#if (and isSuccess (not isCritical))}}
|
{{#if (and isSuccess (not isCritical))}}
|
||||||
<button class="chat-button button transform-heroic-roll" data-roll-id=="{{rollId}}" data-actor-id="{{actor.id}}">{{localize "BOL.chat.toheroic"}}</button>
|
<button class="chat-button button transform-heroic-roll bol-margin-tb-2" data-roll-id=="{{rollId}}" data-actor-id="{{actor.id}}">{{localize "BOL.chat.toheroic"}}</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if isRealCritical}}
|
{{#if isRealCritical}}
|
||||||
<button class="chat-button button transform-legendary-roll" data-roll-id=="{{rollId}}" data-actor-id="{{actor.id}}">{{localize "BOL.chat.tolegend"}}</button>
|
<button class="chat-button button transform-legendary-roll bol-margin-tb-2" data-roll-id=="{{rollId}}" data-actor-id="{{actor.id}}">{{localize "BOL.chat.tolegend"}}</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<div class="flexrow box-roll">
|
<div class="flexrow box-roll">
|
||||||
<div class="flex1 center bg-darkred">
|
<div class="flex1 center bg-darkred" >
|
||||||
<label for="attr">{{localize 'BOL.ui.attribute'}}</label>
|
<label for="attr">{{localize 'BOL.ui.attribute'}}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex1 center cell">
|
<div class="flex1 center cell">
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{{#if (count boons)}}
|
{{#if (count boons)}}
|
||||||
<div class="flexrow roll-box" >
|
<div class="flexrow roll-box" >
|
||||||
<div class="flex1 center bg-darkred">
|
<div class="flex1 center bg-darkred" data-tooltip-direction="LEFT" data-tooltip="Click-gauche pour sélectionner, CTRL+Click gauche pour déselectionner">
|
||||||
<label for="mod">{{localize 'BOL.ui.boons'}}</label>
|
<label for="mod">{{localize 'BOL.ui.boons'}}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex1 center cell">
|
<div class="flex1 center cell">
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{{#if careers}}
|
{{#if careers}}
|
||||||
<div class="flexrow roll-box">
|
<div class="flexrow roll-box">
|
||||||
<div class="flex1 center bg-darkred">
|
<div class="flex1 center bg-darkred" data-tooltip-direction="LEFT" data-tooltip="Click-gauche pour selectionner, CTRL+Click gauche pour déselectionner">
|
||||||
<label for="mod">{{localize 'BOL.ui.careers'}}</label>
|
<label for="mod">{{localize 'BOL.ui.careers'}}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex1 center cell">
|
<div class="flex1 center cell">
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{{#if (count flaws)}}
|
{{#if (count flaws)}}
|
||||||
<div class="flexrow roll-box">
|
<div class="flexrow roll-box">
|
||||||
<div class="flex1 center bg-darkred">
|
<div class="flex1 center bg-darkred" data-tooltip-direction="LEFT" data-tooltip="Click-gauche pour selectionner, CTRL+Click gauche pour déselectionner">
|
||||||
<label for="mod">{{localize 'BOL.ui.flaws'}}</label>
|
<label for="mod">{{localize 'BOL.ui.flaws'}}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex1 center cell">
|
<div class="flex1 center cell">
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
{{#if weapon.data.data.properties.onlymodifier}}
|
{{#if weapon.system.properties.onlymodifier}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{> "systems/bol/templates/dialogs/attribute-roll-part.hbs"}}
|
{{> "systems/bol/templates/dialogs/attribute-roll-part.hbs"}}
|
||||||
{{> "systems/bol/templates/dialogs/aptitude-roll-part.hbs"}}
|
{{> "systems/bol/templates/dialogs/aptitude-roll-part.hbs"}}
|
||||||
|
Reference in New Issue
Block a user