forked from public/bol
Compare commits
3 Commits
bol-v10.4.
...
bol-v10.4.
Author | SHA1 | Date | |
---|---|---|---|
7a8cf9f8fd | |||
d74f7784bb | |||
6d6fec99b0 |
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 372 KiB |
@ -183,6 +183,7 @@
|
|||||||
"BOL.ui.selectactor": "Selectionnez votre personnage pour utiliser la macro",
|
"BOL.ui.selectactor": "Selectionnez votre personnage pour utiliser la macro",
|
||||||
"BOL.ui.itemnotfound": "Impossible de trouver l'objet de cette 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.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.origins": "Origines",
|
||||||
"BOL.featureCategory.races": "Races",
|
"BOL.featureCategory.races": "Races",
|
||||||
|
@ -148,7 +148,7 @@ export class BoLActorSheet extends ActorSheet {
|
|||||||
formData.options = this.options
|
formData.options = this.options
|
||||||
formData.owner = this.document.isOwner
|
formData.owner = this.document.isOwner
|
||||||
formData.editScore = this.options.editScore
|
formData.editScore = this.options.editScore
|
||||||
formData.useBougette = BoLUtility.getUseBougette()
|
formData.useBougette = (this.actor.type == "character" && BoLUtility.getUseBougette()) || false
|
||||||
formData.bougette = this.actor.getBougette()
|
formData.bougette = this.actor.getBougette()
|
||||||
formData.charType = this.actor.getCharType()
|
formData.charType = this.actor.getCharType()
|
||||||
formData.villainy = this.actor.getVillainy()
|
formData.villainy = this.actor.getVillainy()
|
||||||
|
@ -40,26 +40,35 @@ export class BoLActor extends Actor {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getBougette() {
|
getBougette() {
|
||||||
let b = duplicate(this.system.bougette)
|
if ( this.type == "character") {
|
||||||
b.label = game.i18n.localize( game.bol.config.bougetteState[String(this.system.bougette.value)] )
|
let b = duplicate(this.system.bougette)
|
||||||
b.diceImg = "icons/dice/" + game.bol.config.bougetteDice[String(this.system.bougette.value)] + "black.svg"
|
b.label = game.i18n.localize( game.bol.config.bougetteState[String(this.system.bougette.value)] )
|
||||||
return b
|
b.diceImg = "icons/dice/" + game.bol.config.bougetteDice[String(this.system.bougette.value)] + "black.svg"
|
||||||
|
return b
|
||||||
|
}
|
||||||
|
return undefined
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async rollBougette() {
|
async rollBougette() {
|
||||||
//ui.notifications.info("Roll bougette done !")
|
if ( this.type == "character") {
|
||||||
let attribute = duplicate(this.system.attributes.vigor)
|
let attribute = duplicate(this.system.attributes.vigor)
|
||||||
let rollData = BoLRoll.getCommonRollData(this, "bougette", attribute, undefined )
|
let rollData = BoLRoll.getCommonRollData(this, "bougette", attribute, undefined )
|
||||||
rollData.formula = game.bol.config.bougetteDice[String(this.system.bougette.value)]
|
rollData.formula = game.bol.config.bougetteDice[String(this.system.bougette.value)]
|
||||||
let r = new BoLDefaultRoll(rollData)
|
let r = new BoLDefaultRoll(rollData)
|
||||||
r.roll()
|
r.roll()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
decBougette() {
|
decBougette() {
|
||||||
let bougette = duplicate(this.system.bougette)
|
if ( this.type == "character") {
|
||||||
bougette.value = Math.max( Number(bougette.value) - 1, 0)
|
let bougette = duplicate(this.system.bougette)
|
||||||
this.update( { 'system.bougette': bougette } )
|
bougette.value = Math.max( Number(bougette.value) - 1, 0)
|
||||||
|
this.update( { 'system.bougette': bougette } )
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
updateResourcesData() {
|
updateResourcesData() {
|
||||||
if (this.type == 'character') {
|
if (this.type == 'character') {
|
||||||
@ -654,15 +663,23 @@ export class BoLActor extends Actor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*-------------------------------------------- */
|
/*-------------------------------------------- */
|
||||||
getInitiativeRank(rollData = undefined) {
|
clearInitiative() {
|
||||||
|
this.unsetFlag("world", "last-initiative" )
|
||||||
|
}
|
||||||
|
|
||||||
|
/*-------------------------------------------- */
|
||||||
|
getInitiativeRank(rollData = undefined, isCombat = false) {
|
||||||
if (!rollData) {
|
if (!rollData) {
|
||||||
rollData = this.getFlag("world", "last-initiative")
|
rollData = this.getFlag("world", "last-initiative")
|
||||||
}
|
}
|
||||||
let fvttInit = 4 // Pietaille par defaut
|
let fvttInit = 4 // Pietaille par defaut
|
||||||
if (this.type == 'character' ) {
|
if (this.type == 'character' ) {
|
||||||
fvttInit = 5
|
fvttInit = 5
|
||||||
if (!rollData) {
|
if (!rollData) {
|
||||||
fvttInit = -1
|
fvttInit = -1
|
||||||
|
if ( isCombat ) {
|
||||||
|
ui.notifications.warn(game.i18n.localize("BOL.ui.warninitiative"))
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
if (rollData.isLegendary) {
|
if (rollData.isLegendary) {
|
||||||
fvttInit = 10
|
fvttInit = 10
|
||||||
|
@ -25,7 +25,7 @@ export class BoLCombatManager extends Combat {
|
|||||||
// calculate initiative
|
// calculate initiative
|
||||||
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 = combatant.actor.getInitiativeRank()
|
let fvttInit = combatant.actor.getInitiativeRank(false, true)
|
||||||
fvttInit += (cId / 100)
|
fvttInit += (cId / 100)
|
||||||
await this.updateEmbeddedDocuments("Combatant", [{ _id: ids[cId], initiative: fvttInit }]);
|
await this.updateEmbeddedDocuments("Combatant", [{ _id: ids[cId], initiative: fvttInit }]);
|
||||||
}
|
}
|
||||||
@ -40,7 +40,16 @@ export class BoLCombatManager extends Combat {
|
|||||||
}
|
}
|
||||||
super.nextRound()
|
super.nextRound()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/************************************************************************************/
|
||||||
|
_onDelete() {
|
||||||
|
let combatants = this.combatants.contents
|
||||||
|
for (let c of combatants) {
|
||||||
|
let actor = game.actors.get(c.data.actorId)
|
||||||
|
actor.clearInitiative()
|
||||||
|
}
|
||||||
|
super._onDelete()
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
],
|
],
|
||||||
"url": "https://www.uberwald.me/gitea/public/bol",
|
"url": "https://www.uberwald.me/gitea/public/bol",
|
||||||
"license": "LICENSE.txt",
|
"license": "LICENSE.txt",
|
||||||
"version": "10.4.10",
|
"version": "10.4.13",
|
||||||
"compatibility": {
|
"compatibility": {
|
||||||
"minimum": "10",
|
"minimum": "10",
|
||||||
"verified": "10",
|
"verified": "10",
|
||||||
@ -203,8 +203,8 @@
|
|||||||
],
|
],
|
||||||
"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.4.10.zip",
|
"download": "https://www.uberwald.me/gitea/public/bol/archive/bol-v10.4.13.zip",
|
||||||
"background": "systems/images/map_lemurie.webp",
|
"background": "systems/bol/ui/page_accueil.webp",
|
||||||
"gridDistance": 1.5,
|
"gridDistance": 1.5,
|
||||||
"gridUnits": "m",
|
"gridUnits": "m",
|
||||||
"primaryTokenAttribute": "resources.hp",
|
"primaryTokenAttribute": "resources.hp",
|
||||||
|
@ -1,34 +1,34 @@
|
|||||||
<!--ARMES-->
|
<!--ARMES-->
|
||||||
<button class="create_item">Créer un Equipement</button>
|
<button class="create_item">Créer un Equipement</button>
|
||||||
|
|
||||||
{{#if useBougette}}
|
{{#if useBougette}}
|
||||||
<ol class="items-list">
|
<ol class="items-list">
|
||||||
<li class="item flexrow item-header">
|
<li class="item flexrow item-header">
|
||||||
<div class="item-name flex4 left">{{localize "BOL.ui.moneyTitle"}}</div>
|
<div class="item-name flex4 left">{{localize "BOL.ui.moneyTitle"}}</div>
|
||||||
<div class="item-name flex4 left"> </div>
|
<div class="item-name flex4 left"> </div>
|
||||||
</li>
|
</li>
|
||||||
<li class="item flexrow" data-item-id="{{item._id}}">
|
<li class="item flexrow" data-item-id="{{item._id}}">
|
||||||
<h4 class="item-name flex4 left">
|
<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>
|
<div class="item-image"><img src="icons/containers/bags/coinpouch-simple-leather-brown.webp" title="{{localize "BOL.ui.money"}}" /></div>
|
||||||
{{localize "BOL.ui.money"}}
|
{{localize "BOL.ui.money"}}
|
||||||
</h4>
|
</h4>
|
||||||
<div class="item-image">
|
<div class="item-image">
|
||||||
<a class="bougette-roll rollable" data-roll-type="bougette"><i class="darkgreen fas fa-dice"></i></a>
|
<a class="bougette-roll rollable" data-roll-type="bougette"><i class="darkgreen fas fa-dice"></i></a>
|
||||||
</div>
|
</div>
|
||||||
{{#if isGM}}
|
{{#if isGM}}
|
||||||
<select class="field-value" name="system.bougette.value" data-dtype="String">
|
<select class="field-value" name="system.bougette.value" data-dtype="String">
|
||||||
{{#select bougette.value}}
|
{{#select bougette.value}}
|
||||||
{{#each config.bougetteState as |value id|}}
|
{{#each config.bougetteState as |value id|}}
|
||||||
<option value="{{id}}">{{localize value}}</option>
|
<option value="{{id}}">{{localize value}}</option>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
{{/select}}
|
{{/select}}
|
||||||
</select>
|
</select>
|
||||||
{{else}}
|
{{else}}
|
||||||
<label class="">{{localize bougette.label}}</label></a>
|
<label class="">{{localize bougette.label}}</label></a>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<ol class="items-list">
|
<ol class="items-list">
|
||||||
<li class="item flexrow item-header">
|
<li class="item flexrow item-header">
|
||||||
|
BIN
ui/page_accueil.webp
Normal file
BIN
ui/page_accueil.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 494 KiB |
Reference in New Issue
Block a user