Fixes from 29th of june

This commit is contained in:
LeRatierBretonnien 2023-06-30 17:21:11 +02:00
parent 270c7c4a91
commit b535a86116
13 changed files with 51 additions and 81 deletions

View File

@ -612,12 +612,15 @@ export class Hero6Actor extends Actor {
let myRoll = new Roll(rollData.diceFormula).roll({ async: false })
await Hero6Utility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
rollData.roll = duplicate(myRoll)
rollData.bodyValue = Hero6Utility.computeBodyValue(myRoll)
rollData.result = myRoll.total
rollData.roll = duplicate(myRoll)
let msg = await Hero6Utility.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-hero-system-6/templates/chat/chat-lift-dice-result.hbs`, rollData)
let msgFlavor = await renderTemplate(`systems/fvtt-hero-system-6/templates/chat/chat-lift-dice-result.hbs`, rollData)
let msg = await myRoll.toMessage({
user: game.user.id,
rollMode: game.settings.get("core", "rollMode"),
flavor: msgFlavor
})
msg.setFlag("world", "rolldata", rollData)
console.log("Rolldata result", rollData)

View File

@ -5,7 +5,7 @@ export class Hero6CombatTracker extends CombatTracker {
/* -------------------------------------------- */
static get defaultOptions() {
var path = "systems/fvtt-hero-system-6/templates/apps/combat-tracker.hbs";
let path = "systems/fvtt-hero-system-6/templates/apps/combat-tracker.hbs";
return foundry.utils.mergeObject(super.defaultOptions, {
template: path,
});
@ -21,6 +21,7 @@ export class Hero6Combat extends Combat {
}
/* -------------------------------------------- */
static pushMenuOptions(html, options) {
console.log(">>>>>>>>>>>>>>>>>>>>>>>< MENU OPTIONS!!!!!")
let newOpt
for (let i = 0; i < options.length; i++) {
let option = options[i];
@ -62,7 +63,7 @@ export class Hero6Combat extends Combat {
constructor(data, context) {
super(data, context);
this.turnNumber = 1;
this.turnNumber = 0;
this.segmentNumber = 12;
}
@ -104,13 +105,13 @@ export class Hero6Combat extends Combat {
let turnData = this.getFlag("world", "hero6-turn-data")
if (!turnData) {
turnData = { turnNumber: 1, segmentNumber: 12 }
turnData = { turnNumber: 0, segmentNumber: 12 }
this.setFlag("world", "hero6-turn-data", turnData)
}
turnData = duplicate(turnData)
turnData.segmentNumber -= 1
if (turnData.segmentNumber <= 0) {
turnData.segmentNumber = 12
turnData.segmentNumber += 1
if (turnData.segmentNumber > 12) {
turnData.segmentNumber = 1
turnData.turnNumber++
}
this.setFlag("world", "hero6-turn-data", turnData)

View File

@ -96,6 +96,8 @@ Hooks.once("ready", function () {
welcomeMessage();
Hero6Utility.ready()
Hero6Commands.ready()
Hero6Combat.init()
})
/* -------------------------------------------- */

View File

@ -388,18 +388,22 @@ export class Hero6Utility {
// Ensure we have no space at all
//hero6Formula = hero6Formula.replace(/\s/g, '')
let hasHalfDice = ""
if (hero6Formula.match("1/2d6")) {
hero6Formula = hero6Formula.replace("1/2d6", "d6")
hasHalfDice = "+round(1d6/2)"
let newFormula = hero6Formula
let form1 = hero6Formula.match(/\s*(\d*)\s*1\/2d6/)
if ( form1 ) {
let nbDice = form1[1] || 0
newFormula = nbDice+"d6+round(1d6/2)"
}
if (hero6Formula.match(".5")) {
hero6Formula = hero6Formula.replace(".5", "")
hasHalfDice = "+round(1d6/2)"
let form3 = hero6Formula.match(/\s*(\d*)\.5d6/)
if ( form3 ) {
let nbDice = form3[1] || 0
newFormula = nbDice+"d6+round(1d6/2)"
}
let foundryFormula = hero6Formula + hasHalfDice
foundryFormula = foundryFormula.replace(' ', '')
console.log("Parsed formula : ", hero6Formula, foundryFormula)
return foundryFormula
console.log("Parsed formula : ", hero6Formula, newFormula)
return newFormula
}
/* -------------- ----------------------------- */

View File

@ -1309,6 +1309,11 @@ Focus FOC: #ff0084
max-width: 9rem;
min-width: 9rem;
}
.item-field-label-very-short {
flex-grow:1;
max-width: 2.5rem;
min-width: 2.5rem;
}
.item-field-label-short {
flex-grow:1;
max-width: 4rem;

View File

@ -91,7 +91,7 @@
"styles": [
"styles/simple.css"
],
"version": "10.0.41",
"version": "10.0.42",
"compatibility": {
"minimum": "10",
"verified": "10",
@ -99,7 +99,7 @@
},
"title": "Hero System v6 for FoundrtVTT (Official)",
"manifest": "https://www.uberwald.me/gitea/uberwald/fvtt-hero-system-6/raw/branch/main/system.json",
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-hero-system-6/archive/fvtt-hero-system-6-v10.0.41.zip",
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-hero-system-6/archive/fvtt-hero-system-6-v10.0.42.zip",
"url": "https://www.uberwald.me/gitea/uberwald/",
"background": "images/ui/hro6_welcome_page.webp",
"id": "fvtt-hero-system-6"

View File

@ -351,8 +351,8 @@
],
"maneuvertype": "general",
"pha": "",
"ocv": 0,
"dcv" : 0,
"ocv": "",
"dcv" : "",
"isstock": false,
"active": false
},

View File

@ -139,18 +139,18 @@
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-field-label-long-img">
<label class="">{{upperFirst key}} Standard Maneuver</label>
<label class="">{{upperFirst key}} Maneuver</label>
</span>
<span class="item-field-label-short">
<span class="item-field-label-very-short">
<label class="short-label">PHA</label>
</span>
<span class="item-field-label-short">
<span class="item-field-label-very-short">
<label class="short-label">OCV</label>
</span>
<span class="item-field-label-short">
<label class="short-label">DCV</label>
</span>
<span class="item-field-label-medium">
<span class="item-field-label-long">
<label class="short-label">Effects</label>
</span>
</li>
@ -160,12 +160,13 @@
src="{{maneuver.img}}" /></a>
<span class="item-field-label-long">{{maneuver.name}}</span>
<span class="item-field-label-short">{{maneuver.system.pha}}</span>
<span class="item-field-label-short">{{maneuver.system.ocv}}</span>
<span class="item-field-label-very-short">{{maneuver.system.pha}}</span>
<span class="item-field-label-very-short">{{maneuver.system.ocv}}</span>
<span class="item-field-label-short">{{maneuver.system.dcv}}</span>
<span class="item-field-label-medium">{{maneuver.system.effects}}</span>
<span class="item-field-label-long">{{maneuver.system.effects}}</span>
<span class="item-field-label-short">&nbsp;</span>
<div class="item-controls item-controls-fixed">
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>

View File

@ -20,7 +20,7 @@
<ul>
<li>Name : {{title}}</li>
<li>Damage formula : {{diceFormula}}</li>
<li><strong>Result : {{result}}</strong></li>
<li><strong>TOTAL : {{result}}</strong></li>
<li><strong>BODY : {{bodyValue}}</strong></li>
</ul>

View File

@ -40,7 +40,7 @@
</li>
{{/if}}
<li><strong>Result : {{result}}</strong>
<li><strong>TOTAL : {{result}}</strong>
{{#if (exists margin)}}
({{#if isSuccess}}Success!!{{else}}Failure!{{/if}})
{{/if}}

View File

@ -21,7 +21,7 @@
<li>Lift dice formula : {{diceFormula}}</li>
<li>BODY : {{bodyValue}}</li>
<li><strong>Result : {{result}}</strong></li>
<li><strong>TOTAL : {{result}}</strong></li>
</ul>
</div>

View File

@ -1,46 +0,0 @@
<div class="chat-message-header">
{{#if actorImg}}
<img class="actor-icon" src="{{actorImg}}" alt="{{alias}}" />
{{/if}}
<h4 class=chat-actor-name>{{alias}}</h4>
</div>
<hr>
{{#if img}}
<div>
<img class="chat-icon" src="{{img}}" alt="{{name}}" />
</div>
{{/if}}
<div class="flexcol">
</div>
<div>
{{#if isRangedAttack}}
<div>{{defender.name}} is under Ranged attack. He must roll a Target Roll to defend himself.</div>
{{else}}
<div>{{defender.name}} is under Melee attack. He must roll a Defense Roll to defend himself.</div>
{{/if}}
<ul>
{{#if isRangedAttack}}
<li>
<button class="chat-card-button roll-defense-ranged" data-roll-id="{{@root.rollId}}">Roll Target !</button>
</li>
{{else}}
<li>
{{#each defenderWeapons as |weapon idx|}}
<button class="chat-card-button roll-defense-melee" data-defense-weapon-id="{{weapon._id}}"
data-roll-id="{{@root.rollId}}">{{weapon.name}}</button>
{{/each}}
</li>
{{/if}}
</ul>
<!-- <button class="chat-card-button reroll-level-remaining" data-roll-id="{{rollId}}">Reroll</button> -->
</ul>
</div>
</div>

View File

@ -38,11 +38,11 @@
</li>
<li class="flexrow"><label class="item-field-label-medium">OCV</label>
<input type="text" class="item-field-label-medium" name="system.ocv" value="{{system.ocv}}" data-dtype="Number"/>
<input type="text" class="item-field-label-medium" name="system.ocv" value="{{system.ocv}}" data-dtype="String"/>
</li>
<li class="flexrow"><label class="item-field-label-medium">DCV</label>
<input type="text" class="item-field-label-medium" name="system.dcv" value="{{system.dcv}}" data-dtype="Number"/>
<input type="text" class="item-field-label-medium" name="system.dcv" value="{{system.dcv}}" data-dtype="String"/>
</li>
<li class="flexrow"><label class="item-field-label-medium">Effects</label>