All fixes requested
This commit is contained in:
parent
2d328659b2
commit
536739fced
@ -163,6 +163,16 @@ export class Hero6ActorSheet extends ActorSheet {
|
||||
let itemId = li.data("item-id")
|
||||
this.actor.rollItem(itemId);
|
||||
});
|
||||
html.find('.roll-damage').click((event) => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
let itemId = li.data("item-id")
|
||||
this.actor.rollDamage(itemId);
|
||||
});
|
||||
html.find('.roll-lift-dice').click((event) => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
let itemId = li.data("item-id")
|
||||
this.actor.rollLiftDice(itemId);
|
||||
});
|
||||
|
||||
html.find('.roll-weapon').click((event) => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
|
@ -1,11 +1,12 @@
|
||||
/* -------------------------------------------- */
|
||||
import { Hero6Utility } from "./hero6-utility.js";
|
||||
import { Hero6RollDialog } from "./hero6-roll-dialog.js";
|
||||
import { Hero6LiftDice } from "./hero6-lift-dice.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
const __speed2Segments = [[0], [7], [6, 12], [4, 8, 12], [3, 6, 9, 12], [3, 5, 8, 10, 12], [2, 4, 6, 8, 10, 12]
|
||||
[2, 4, 6, 7, 9, 11, 12], [2, 3, 5, 6, 8, 9, 11, 12], [2, 3, 4, 6, 7, 8, 10, 11, 12], [2, 3, 4, 5, 6, 8, 9, 10, 11, 12],
|
||||
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]
|
||||
[2, 4, 6, 7, 9, 11, 12], [2, 3, 5, 6, 8, 9, 11, 12], [2, 3, 4, 6, 7, 8, 10, 11, 12], [2, 3, 4, 5, 6, 8, 9, 10, 11, 12],
|
||||
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/* -------------------------------------------- */
|
||||
@ -65,7 +66,8 @@ export class Hero6Actor extends Actor {
|
||||
}
|
||||
computeDicesValue() {
|
||||
this.system.biodata.presenceattack = Hero6Utility.getDerivatedDiceFormulas(this.system.characteristics.pre.value)
|
||||
this.system.characteristics.str.strdice = Hero6Utility.getDerivatedDiceFormulas(this.system.characteristics.str.value)
|
||||
this.system.characteristics.str.strdice = Hero6LiftDice.getLiftDice(this.system.characteristics.str.value)
|
||||
this.system.characteristics.str.lift = Hero6LiftDice.getLift(this.system.characteristics.str.value)
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
prepareDerivedData() {
|
||||
@ -169,22 +171,23 @@ export class Hero6Actor extends Actor {
|
||||
prepareSkill(skill) {
|
||||
skill.roll = 0
|
||||
skill.charac = "N/A"
|
||||
skill.system.skilltype = skill.system.skilltype.toLowerCase()
|
||||
if (skill.system.skillfamiliarity) {
|
||||
skill.roll = 8;
|
||||
} else if (skill.system.skillprofiency) {
|
||||
skill.roll = 10;
|
||||
} else if (skill.system.skilltype == "agility") {
|
||||
skill.charac = "DEX"
|
||||
skill.charac = "dex"
|
||||
let charac = duplicate(this.system.characteristics.dex)
|
||||
this.prepareCharacValues(charac)
|
||||
skill.roll = charac.roll
|
||||
} else if (skill.system.skilltype == "interaction") {
|
||||
skill.charac = "PRE"
|
||||
skill.charac = "pre"
|
||||
let charac = duplicate(this.system.characteristics.pre)
|
||||
this.prepareCharacValues(charac)
|
||||
skill.roll = charac.roll
|
||||
} else if (skill.system.skilltype == "intellect") {
|
||||
skill.charac = "INT"
|
||||
skill.charac = "int"
|
||||
let charac = duplicate(this.system.characteristics.int)
|
||||
this.prepareCharacValues(charac)
|
||||
skill.roll = charac.roll
|
||||
@ -194,12 +197,13 @@ export class Hero6Actor extends Actor {
|
||||
if (skill.system.characteristic == "manual") {
|
||||
skill.roll = skill.system.base
|
||||
} else {
|
||||
skill.charac = skill.system.characteristic
|
||||
skill.charac = (skill.system.characteristic == "") ? "str" : skill.system.characteristic
|
||||
let charac = duplicate(this.system.characteristics[skill.system.characteristic])
|
||||
this.prepareCharacValues(charac)
|
||||
skill.roll = charac.roll
|
||||
}
|
||||
}
|
||||
console.log("SILL", skill)
|
||||
if (skill.system.levels > 0) {
|
||||
skill.roll += skill.system.levels
|
||||
}
|
||||
@ -223,6 +227,7 @@ export class Hero6Actor extends Actor {
|
||||
let comp = duplicate(this.items.filter(item => item.type == 'power') || [])
|
||||
for (let c of comp) {
|
||||
c.enrichDescription = c.name + "<br>" + await TextEditor.enrichHTML(c.system.description, { async: true })
|
||||
c.enrichNotes = c.name + "<br>" + await TextEditor.enrichHTML(c.system.notes, { async: true })
|
||||
}
|
||||
Hero6Utility.sortArrayObjectsByName(comp)
|
||||
return comp
|
||||
@ -411,19 +416,19 @@ export class Hero6Actor extends Actor {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
hasPhase( segmentNumber) {
|
||||
let index = Math.min( Math.max(this.system.characteristics.spd.value, 1), 12) // Security bounds
|
||||
hasPhase(segmentNumber) {
|
||||
let index = Math.min(Math.max(this.system.characteristics.spd.value, 1), 12) // Security bounds
|
||||
let phases = __speed2Segments[index]
|
||||
return phases.includes(segmentNumber)
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getSegments() {
|
||||
let index = Math.min( Math.max(this.system.characteristics.spd.value, 1), 12) // Security bounds
|
||||
let index = Math.min(Math.max(this.system.characteristics.spd.value, 1), 12) // Security bounds
|
||||
return __speed2Segments[index]
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getBaseInit() {
|
||||
let r = new Roll("1d6").roll({async: false})
|
||||
let r = new Roll("1d6").roll({ async: false })
|
||||
let base = this.system.characteristics.dex.value + (r.total / 10)
|
||||
return base
|
||||
}
|
||||
@ -461,7 +466,12 @@ export class Hero6Actor extends Actor {
|
||||
prepareCharac() {
|
||||
let characs = duplicate(this.system.characteristics)
|
||||
for (let key in characs) {
|
||||
this.prepareCharacValues(characs[key])
|
||||
let ch = characs[key]
|
||||
this.prepareCharacValues(ch)
|
||||
if (key == "str") {
|
||||
ch.lift = Hero6LiftDice.getLift(ch.value)
|
||||
ch.liftDice = Hero6LiftDice.getLiftDice(ch.value)
|
||||
}
|
||||
}
|
||||
return characs
|
||||
}
|
||||
@ -569,6 +579,44 @@ export class Hero6Actor extends Actor {
|
||||
}
|
||||
this.startRoll(rollData)
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
async rollDamage(itemId) {
|
||||
let item = this.items.get(itemId)
|
||||
let rollData = this.getCommonRollData()
|
||||
rollData.mode = "damage"
|
||||
rollData.item = duplicate(item)
|
||||
rollData.diceFormula = Hero6Utility.convertRollHeroSyntax(item.system.damage)
|
||||
let myRoll = new Roll(rollData.diceFormula).roll({ async: false })
|
||||
await Hero6Utility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||
|
||||
rollData.roll = myRoll
|
||||
rollData.result = myRoll.total
|
||||
rollData.bodyValue = Hero6Utility.computeBodyValue(myRoll)
|
||||
|
||||
let msg = await Hero6Utility.createChatWithRollMode(rollData.alias, {
|
||||
content: await renderTemplate(`systems/fvtt-hero-system-6/templates/chat/chat-damage-result.hbs`, rollData)
|
||||
})
|
||||
msg.setFlag("world", "rolldata", rollData)
|
||||
console.log("Rolldata result", rollData)
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollLiftDice() {
|
||||
let rollData = this.getCommonRollData()
|
||||
rollData.mode = "lift-dice"
|
||||
rollData.diceFormula = Hero6Utility.convertRollHeroSyntax( Hero6LiftDice.getLiftDice(this.system.characteristics.str.value))
|
||||
let myRoll = new Roll(rollData.diceFormula).roll({ async: false })
|
||||
await Hero6Utility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||
|
||||
rollData.roll = myRoll
|
||||
rollData.result = myRoll.total
|
||||
|
||||
let msg = await Hero6Utility.createChatWithRollMode(rollData.alias, {
|
||||
content: await renderTemplate(`systems/fvtt-hero-system-6/templates/chat/chat-lift-dice-result.hbs`, rollData)
|
||||
})
|
||||
msg.setFlag("world", "rolldata", rollData)
|
||||
console.log("Rolldata result", rollData)
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
rollSkill(skillId) {
|
||||
|
@ -4,18 +4,28 @@ import { Hero6Utility } from "./hero6-utility.js";
|
||||
import { Hero6RollDialog } from "./hero6-roll-dialog.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
const __saveFirstToKey = { r: "reflex", f: "fortitude", w: "willpower"}
|
||||
const __saveFirstToKey = { r: "reflex", f: "fortitude", w: "willpower" }
|
||||
|
||||
/* -------------------------------------------- */
|
||||
export class Hero6Commands {
|
||||
|
||||
static init() {
|
||||
static ready() {
|
||||
if (!game.system.hero6.commands) {
|
||||
const hero6Commands = new Hero6Commands();
|
||||
hero6Commands.registerCommand({ path: ["/rtarget"], func: (content, msg, params) => Hero6Commands.rollTarget(msg, params), descr: "Launch the target roll window" });
|
||||
hero6Commands.registerCommand({ path: ["/rsave"], func: (content, msg, params) => Hero6Commands.rollSave(msg, params), descr: "Performs a save roll" });
|
||||
hero6Commands.registerCommand({ path: ["/rh"], func: (content, msg, params) => Hero6Commands.rollSpecialHero(msg, params), descr: "Special roll hero roll (1/2d6 like)" });
|
||||
game.system.hero6.commands = hero6Commands;
|
||||
}
|
||||
|
||||
Hooks.on("chatMessage", (html, content, msg) => {
|
||||
if (content[0] == '/') {
|
||||
let regExp = /(\S+)/g;
|
||||
let commands = content.match(regExp);
|
||||
if (game.hero6.commands.processChatCommand(commands, content, msg)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true
|
||||
})
|
||||
}
|
||||
|
||||
constructor() {
|
||||
@ -108,37 +118,17 @@ export class Hero6Commands {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static rollTarget(msg, params) {
|
||||
const speaker = ChatMessage.getSpeaker()
|
||||
let actor
|
||||
if (speaker.token) actor = game.actors.tokens[speaker.token]
|
||||
if (!actor) actor = game.actors.get(speaker.actor)
|
||||
if (!actor) {
|
||||
return ui.notifications.warn(`Select your actor to run the macro`)
|
||||
}
|
||||
actor.rollDefenseRanged()
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static rollSave(msg, params) {
|
||||
console.log(msg, params)
|
||||
if ( params.length == 0) {
|
||||
ui.notifications.warn("/rsave command error : syntax is /rsave reflex, /rsave fortitude or /rsave willpower")
|
||||
return
|
||||
}
|
||||
let saveKey = params[0].toLowerCase()
|
||||
if ( saveKey.length > 0 && (saveKey[0] == "r" || saveKey[0] == "f" || saveKey[0] == "w")) {
|
||||
const speaker = ChatMessage.getSpeaker()
|
||||
let actor
|
||||
if (speaker.token) actor = game.actors.tokens[speaker.token]
|
||||
if (!actor) actor = game.actors.get(speaker.actor)
|
||||
if (!actor) {
|
||||
return ui.notifications.warn(`Select your actor to run the macro`)
|
||||
}
|
||||
actor.rollSave( __saveFirstToKey[saveKey[0]] )
|
||||
} else {
|
||||
ui.notifications.warn("/rsave syntax error : syntax is /rsave reflex, /rsave fortitude or /rsave willpower")
|
||||
static async rollSpecialHero(msg, params) {
|
||||
console.log("ROLL HERE", msg, params)
|
||||
let formula = params.join(' ')
|
||||
if (formula) {
|
||||
let foundryFormula = Hero6Utility.convertRollHeroSyntax(formula)
|
||||
let myRoll = new Roll(foundryFormula).roll({ async: false })
|
||||
await Hero6Utility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||
myRoll.toMessage()
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
}
|
@ -60,6 +60,7 @@ export class Hero6ItemSheet extends ItemSheet {
|
||||
editable: this.isEditable,
|
||||
cssClass: this.isEditable ? "editable" : "locked",
|
||||
description: await TextEditor.enrichHTML(this.object.system.description, {async: true}),
|
||||
notes: await TextEditor.enrichHTML(this.object.system.notes, {async: true}),
|
||||
config: game.system.hero6.config,
|
||||
system: objectData,
|
||||
limited: this.object.limited,
|
||||
|
641
modules/hero6-lift-dice.js
Normal file
641
modules/hero6-lift-dice.js
Normal file
@ -0,0 +1,641 @@
|
||||
const __LiftDiceValues = {
|
||||
"0": {
|
||||
"weight": "25 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"1": {
|
||||
"weight": "29 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"2": {
|
||||
"weight": "33 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"3": {
|
||||
"weight": "37.5 kg",
|
||||
"dice": "0.5d6"
|
||||
},
|
||||
"4": {
|
||||
"weight": "44 kg",
|
||||
"dice": "0.5d6"
|
||||
},
|
||||
"5": {
|
||||
"weight": "50 kg",
|
||||
"dice": "1d6"
|
||||
},
|
||||
"6": {
|
||||
"weight": "58 kg",
|
||||
"dice": "1d6"
|
||||
},
|
||||
"7": {
|
||||
"weight": "67 kg",
|
||||
"dice": "1d6"
|
||||
},
|
||||
"8": {
|
||||
"weight": "75 kg",
|
||||
"dice": "1.5d6"
|
||||
},
|
||||
"9": {
|
||||
"weight": "88 kg",
|
||||
"dice": "1.5d6"
|
||||
},
|
||||
"10": {
|
||||
"weight": "100 kg",
|
||||
"dice": "2d6"
|
||||
},
|
||||
"11": {
|
||||
"weight": "117 kg",
|
||||
"dice": "2d6"
|
||||
},
|
||||
"12": {
|
||||
"weight": "133 kg",
|
||||
"dice": "2d6"
|
||||
},
|
||||
"13": {
|
||||
"weight": "150 kg",
|
||||
"dice": "2.5d6"
|
||||
},
|
||||
"14": {
|
||||
"weight": "175 kg",
|
||||
"dice": "2.5d6"
|
||||
},
|
||||
"15": {
|
||||
"weight": "200 kg",
|
||||
"dice": "3d6"
|
||||
},
|
||||
"16": {
|
||||
"weight": "233 kg",
|
||||
"dice": "3d6"
|
||||
},
|
||||
"17": {
|
||||
"weight": "267 kg",
|
||||
"dice": "3d6"
|
||||
},
|
||||
"18": {
|
||||
"weight": "300 kg",
|
||||
"dice": "3.5d6"
|
||||
},
|
||||
"19": {
|
||||
"weight": "350 kg",
|
||||
"dice": "3.5d6"
|
||||
},
|
||||
"20": {
|
||||
"weight": "400 kg",
|
||||
"dice": "4d6"
|
||||
},
|
||||
"21": {
|
||||
"weight": "467 kg",
|
||||
"dice": "4d6"
|
||||
},
|
||||
"22": {
|
||||
"weight": "533 kg",
|
||||
"dice": "4d6"
|
||||
},
|
||||
"23": {
|
||||
"weight": "600 kg",
|
||||
"dice": "4.5d6"
|
||||
},
|
||||
"24": {
|
||||
"weight": "700 kg",
|
||||
"dice": "4.5d6"
|
||||
},
|
||||
"25": {
|
||||
"weight": "800 kg",
|
||||
"dice": "5d6"
|
||||
},
|
||||
"26": {
|
||||
"weight": "933 kg",
|
||||
"dice": "5d6"
|
||||
},
|
||||
"27": {
|
||||
"weight": "1,067 kg",
|
||||
"dice": "5d6"
|
||||
},
|
||||
"28": {
|
||||
"weight": "1,200 kg",
|
||||
"dice": "5.5d6"
|
||||
},
|
||||
"29": {
|
||||
"weight": "1,400 kg",
|
||||
"dice": "5.5d6"
|
||||
},
|
||||
"30": {
|
||||
"weight": "1,600 kg",
|
||||
"dice": "6d6"
|
||||
},
|
||||
"31": {
|
||||
"weight": "1,867 kg",
|
||||
"dice": "6d6"
|
||||
},
|
||||
"32": {
|
||||
"weight": "2,133 kg",
|
||||
"dice": "6d6"
|
||||
},
|
||||
"33": {
|
||||
"weight": "2,400 kg",
|
||||
"dice": "6.5d6"
|
||||
},
|
||||
"34": {
|
||||
"weight": "2,800 kg",
|
||||
"dice": "6.5d6"
|
||||
},
|
||||
"35": {
|
||||
"weight": "3,200 kg",
|
||||
"dice": "7d6"
|
||||
},
|
||||
"36": {
|
||||
"weight": "3,733 kg",
|
||||
"dice": "7d6"
|
||||
},
|
||||
"37": {
|
||||
"weight": "4,267 kg",
|
||||
"dice": "7d6"
|
||||
},
|
||||
"38": {
|
||||
"weight": "4,800 kg",
|
||||
"dice": "7.5d6"
|
||||
},
|
||||
"39": {
|
||||
"weight": "5,600 kg",
|
||||
"dice": "7.5d6"
|
||||
},
|
||||
"40": {
|
||||
"weight": "6,400 kg",
|
||||
"dice": "8d6"
|
||||
},
|
||||
"41": {
|
||||
"weight": "7,467 kg",
|
||||
"dice": "8d6"
|
||||
},
|
||||
"42": {
|
||||
"weight": "8,533 kg",
|
||||
"dice": "8d6"
|
||||
},
|
||||
"43": {
|
||||
"weight": "9,600 kg",
|
||||
"dice": "8.5d6"
|
||||
},
|
||||
"44": {
|
||||
"weight": "11 tons",
|
||||
"dice": "8.5d6"
|
||||
},
|
||||
"45": {
|
||||
"weight": "12.5 tons",
|
||||
"dice": "9d6"
|
||||
},
|
||||
"46": {
|
||||
"weight": "15 tons",
|
||||
"dice": "9d6"
|
||||
},
|
||||
"47": {
|
||||
"weight": "17 tons",
|
||||
"dice": "9d6"
|
||||
},
|
||||
"48": {
|
||||
"weight": "19 tons",
|
||||
"dice": "9.5d6"
|
||||
},
|
||||
"49": {
|
||||
"weight": "22 tons",
|
||||
"dice": "9.5d6"
|
||||
},
|
||||
"50": {
|
||||
"weight": "25 tons",
|
||||
"dice": "10d6"
|
||||
},
|
||||
"51": {
|
||||
"weight": "29 tons",
|
||||
"dice": "10d6"
|
||||
},
|
||||
"52": {
|
||||
"weight": "33 tons",
|
||||
"dice": "10d6"
|
||||
},
|
||||
"53": {
|
||||
"weight": "37.5 tons",
|
||||
"dice": "10.5d6"
|
||||
},
|
||||
"54": {
|
||||
"weight": "44 tons",
|
||||
"dice": "10.5d6"
|
||||
},
|
||||
"55": {
|
||||
"weight": "50 tons",
|
||||
"dice": "11d6"
|
||||
},
|
||||
"56": {
|
||||
"weight": "58 tons",
|
||||
"dice": "11d6"
|
||||
},
|
||||
"57": {
|
||||
"weight": "67 tons",
|
||||
"dice": "11d6"
|
||||
},
|
||||
"58": {
|
||||
"weight": "75 tons",
|
||||
"dice": "11.5d6"
|
||||
},
|
||||
"59": {
|
||||
"weight": "88 tons",
|
||||
"dice": "11.5d6"
|
||||
},
|
||||
"60": {
|
||||
"weight": "100 tons",
|
||||
"dice": "12d6"
|
||||
},
|
||||
"61": {
|
||||
"weight": "117 tons",
|
||||
"dice": "12d6"
|
||||
},
|
||||
"62": {
|
||||
"weight": "133 tons",
|
||||
"dice": "12d6"
|
||||
},
|
||||
"63": {
|
||||
"weight": "150 tons",
|
||||
"dice": "12.5d6"
|
||||
},
|
||||
"64": {
|
||||
"weight": "175 tons",
|
||||
"dice": "12.5d6"
|
||||
},
|
||||
"65": {
|
||||
"weight": "200 tons",
|
||||
"dice": "13d6"
|
||||
},
|
||||
"66": {
|
||||
"weight": "233 tons",
|
||||
"dice": "13d6"
|
||||
},
|
||||
"67": {
|
||||
"weight": "267 tons",
|
||||
"dice": "13d6"
|
||||
},
|
||||
"68": {
|
||||
"weight": "300 tons",
|
||||
"dice": "13.5d6"
|
||||
},
|
||||
"69": {
|
||||
"weight": "350 tons",
|
||||
"dice": "13.5d6"
|
||||
},
|
||||
"70": {
|
||||
"weight": "400 tons",
|
||||
"dice": "14d6"
|
||||
},
|
||||
"71": {
|
||||
"weight": "467 tons",
|
||||
"dice": "14d6"
|
||||
},
|
||||
"72": {
|
||||
"weight": "533 tons",
|
||||
"dice": "14d6"
|
||||
},
|
||||
"73": {
|
||||
"weight": "600 tons",
|
||||
"dice": "14.5d6"
|
||||
},
|
||||
"74": {
|
||||
"weight": "700 tons",
|
||||
"dice": "14.5d6"
|
||||
},
|
||||
"75": {
|
||||
"weight": "800 tons",
|
||||
"dice": "15d6"
|
||||
},
|
||||
"76": {
|
||||
"weight": "933 tons",
|
||||
"dice": "15d6"
|
||||
},
|
||||
"77": {
|
||||
"weight": "1 kton 15d6",
|
||||
"dice": ""
|
||||
},
|
||||
"78": {
|
||||
"weight": "1.2 ktons",
|
||||
"dice": "15.5d6"
|
||||
},
|
||||
"79": {
|
||||
"weight": "1.4 ktons",
|
||||
"dice": "15.5d6"
|
||||
},
|
||||
"80": {
|
||||
"weight": "1.6 ktons",
|
||||
"dice": "16d6"
|
||||
},
|
||||
"81": {
|
||||
"weight": "1.9 ktons",
|
||||
"dice": "16d6"
|
||||
},
|
||||
"82": {
|
||||
"weight": "2 ktons",
|
||||
"dice": "16d6"
|
||||
},
|
||||
"83": {
|
||||
"weight": "2.4 ktons",
|
||||
"dice": "16.5d6"
|
||||
},
|
||||
"84": {
|
||||
"weight": "2.8 ktons",
|
||||
"dice": "16.5d6"
|
||||
},
|
||||
"85": {
|
||||
"weight": "3.2 ktons",
|
||||
"dice": "17d6"
|
||||
},
|
||||
"86": {
|
||||
"weight": "3.7 ktons",
|
||||
"dice": "17d6"
|
||||
},
|
||||
"87": {
|
||||
"weight": "4.3 ktons",
|
||||
"dice": "17d6"
|
||||
},
|
||||
"88": {
|
||||
"weight": "4.8 ktons",
|
||||
"dice": "17.5d6"
|
||||
},
|
||||
"89": {
|
||||
"weight": "5.6 ktons",
|
||||
"dice": "17.5d6"
|
||||
},
|
||||
"90": {
|
||||
"weight": "6.4 ktons",
|
||||
"dice": "18d6"
|
||||
},
|
||||
"91": {
|
||||
"weight": "7.5 ktons",
|
||||
"dice": "18d6"
|
||||
},
|
||||
"92": {
|
||||
"weight": "8.5 ktons",
|
||||
"dice": "18d6"
|
||||
},
|
||||
"93": {
|
||||
"weight": "9.6 ktons",
|
||||
"dice": "18.5d6"
|
||||
},
|
||||
"94": {
|
||||
"weight": "11 ktons",
|
||||
"dice": "18.5d6"
|
||||
},
|
||||
"95": {
|
||||
"weight": "12.5 ktons",
|
||||
"dice": "19d6"
|
||||
},
|
||||
"96": {
|
||||
"weight": "15 ktons",
|
||||
"dice": "19d6"
|
||||
},
|
||||
"97": {
|
||||
"weight": "17 ktons",
|
||||
"dice": "19d6"
|
||||
},
|
||||
"98": {
|
||||
"weight": "19 ktons",
|
||||
"dice": "19.5d6"
|
||||
},
|
||||
"99": {
|
||||
"weight": "22 ktons",
|
||||
"dice": "19.5d6"
|
||||
},
|
||||
"100": {
|
||||
"weight": "25 ktons",
|
||||
"dice": "20d6"
|
||||
},
|
||||
"105": {
|
||||
"weight": "50 ktons",
|
||||
"dice": "21d6"
|
||||
},
|
||||
"110": {
|
||||
"weight": "100 ktons",
|
||||
"dice": "22d6"
|
||||
},
|
||||
"115": {
|
||||
"weight": "200 ktons",
|
||||
"dice": "23d6"
|
||||
},
|
||||
"120": {
|
||||
"weight": "400 ktons",
|
||||
"dice": "24d6"
|
||||
},
|
||||
"125": {
|
||||
"weight": "800 ktons",
|
||||
"dice": "25d6"
|
||||
},
|
||||
"130": {
|
||||
"weight": "1.6 mtons",
|
||||
"dice": "26d6"
|
||||
},
|
||||
"135": {
|
||||
"weight": "3.2 mtons",
|
||||
"dice": "27d6"
|
||||
},
|
||||
"140": {
|
||||
"weight": "6.4 mtons",
|
||||
"dice": "28d6"
|
||||
},
|
||||
"145": {
|
||||
"weight": "12.5 mtons",
|
||||
"dice": "29d6"
|
||||
},
|
||||
"150": {
|
||||
"weight": "25 mtons",
|
||||
"dice": "30d6"
|
||||
},
|
||||
"155": {
|
||||
"weight": "50 mtons",
|
||||
"dice": "31d6"
|
||||
},
|
||||
"160": {
|
||||
"weight": "100 mtons",
|
||||
"dice": "32d6"
|
||||
},
|
||||
"165": {
|
||||
"weight": "200 mtons",
|
||||
"dice": "33d6"
|
||||
},
|
||||
"170": {
|
||||
"weight": "400 mtons",
|
||||
"dice": "34d6"
|
||||
},
|
||||
"175": {
|
||||
"weight": "800 mtons",
|
||||
"dice": "35d6"
|
||||
},
|
||||
"180": {
|
||||
"weight": "1.6 gtons",
|
||||
"dice": "36d6"
|
||||
},
|
||||
"185": {
|
||||
"weight": "3.2 gtons",
|
||||
"dice": "37d6"
|
||||
},
|
||||
"190": {
|
||||
"weight": "6.4 gtons",
|
||||
"dice": "38d6"
|
||||
},
|
||||
"195": {
|
||||
"weight": "12.5 gtons",
|
||||
"dice": "39d6"
|
||||
},
|
||||
"200": {
|
||||
"weight": "25 gtons",
|
||||
"dice": "40d6"
|
||||
},
|
||||
"-50": {
|
||||
"weight": "0.025 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-45": {
|
||||
"weight": "0.05 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-40": {
|
||||
"weight": "0.1 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-35": {
|
||||
"weight": "0.2 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-30": {
|
||||
"weight": "0.4 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-29": {
|
||||
"weight": "0.5 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-28": {
|
||||
"weight": "0.5 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-27": {
|
||||
"weight": "0.6 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-26": {
|
||||
"weight": "0.7 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-25": {
|
||||
"weight": "0.8 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-24": {
|
||||
"weight": "0.9 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-23": {
|
||||
"weight": "1.0 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-22": {
|
||||
"weight": "1.2 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-21": {
|
||||
"weight": "1.4 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-20": {
|
||||
"weight": "1.6 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-19": {
|
||||
"weight": "1.8 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-18": {
|
||||
"weight": "2.0 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-17": {
|
||||
"weight": "2.4 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-16": {
|
||||
"weight": "2.8 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-15": {
|
||||
"weight": "3.2 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-14": {
|
||||
"weight": "3.6 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-13": {
|
||||
"weight": "4.0 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-12": {
|
||||
"weight": "4.8 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-11": {
|
||||
"weight": "5.6 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-10": {
|
||||
"weight": "6.4 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-9": {
|
||||
"weight": "7.2 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-8": {
|
||||
"weight": "8.0 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-7": {
|
||||
"weight": "9.5 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-6": {
|
||||
"weight": "11 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-5": {
|
||||
"weight": "12.5 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-4": {
|
||||
"weight": "14 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-3": {
|
||||
"weight": "16 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-2": {
|
||||
"weight": "19 kg",
|
||||
"dice": ""
|
||||
},
|
||||
"-1": {
|
||||
"weight": "22 kg",
|
||||
"dice": ""
|
||||
}
|
||||
}
|
||||
|
||||
export class Hero6LiftDice{
|
||||
|
||||
static getLift(value) {
|
||||
let data = __LiftDiceValues[String(value)]
|
||||
if (data) {
|
||||
return data.weight
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
static getLiftDice(value) {
|
||||
let data = __LiftDiceValues[String(value)]
|
||||
if (data) {
|
||||
return data.dice
|
||||
}
|
||||
return 0
|
||||
}
|
||||
}
|
@ -67,7 +67,6 @@ Hooks.once("init", async function () {
|
||||
Items.registerSheet("fvtt-hero-system-6", Hero6ItemSheet, { makeDefault: true });
|
||||
|
||||
Hero6Utility.init()
|
||||
Hero6Combat.init()
|
||||
});
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -96,7 +95,7 @@ Hooks.once("ready", function () {
|
||||
|
||||
welcomeMessage();
|
||||
Hero6Utility.ready()
|
||||
Hero6Commands.init()
|
||||
Hero6Commands.ready()
|
||||
})
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
@ -15,8 +15,6 @@ export class Hero6Utility {
|
||||
Hero6Utility.dropItemOnToken(canvas, data)
|
||||
});*/
|
||||
|
||||
Hero6Commands.init();
|
||||
|
||||
Handlebars.registerHelper('count', function (list) {
|
||||
return list.length;
|
||||
})
|
||||
@ -142,24 +140,6 @@ export class Hero6Utility {
|
||||
html.on("click", '.view-item-from-chat', event => {
|
||||
game.system.crucible.creator.openItemView(event)
|
||||
})
|
||||
html.on("click", '.roll-defense-melee', event => {
|
||||
let rollId = $(event.currentTarget).data("roll-id")
|
||||
let rollData = Hero6Utility.getRollData(rollId)
|
||||
rollData.defenseWeaponId = $(event.currentTarget).data("defense-weapon-id")
|
||||
let actor = game.canvas.tokens.get(rollData.defenderTokenId).actor
|
||||
if (actor && (game.user.isGM || actor.isOwner)) {
|
||||
actor.rollDefenseMelee(rollData)
|
||||
}
|
||||
})
|
||||
html.on("click", '.roll-defense-ranged', event => {
|
||||
let rollId = $(event.currentTarget).data("roll-id")
|
||||
let rollData = Hero6Utility.getRollData(rollId)
|
||||
let defender = game.canvas.tokens.get(rollData.defenderTokenId).actor
|
||||
if (defender && (game.user.isGM || defender.isOwner)) {
|
||||
defender.rollDefenseRanged(rollData)
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -376,10 +356,6 @@ export class Hero6Utility {
|
||||
}
|
||||
rollData.margin = target - rollData.result
|
||||
|
||||
if (rollData.item && rollData.item.system.computebody) {
|
||||
rollData.bodyValue = this.computeBody(myRoll)
|
||||
}
|
||||
|
||||
this.outputRollMessage(rollData)
|
||||
}
|
||||
|
||||
@ -389,7 +365,7 @@ export class Hero6Utility {
|
||||
rollData.roll = roll
|
||||
|
||||
rollData.result = roll.total
|
||||
rollData.bodyValue = this.computeBody(rollData.roll)
|
||||
rollData.bodyValue = this.computeBodyValue(rollData.roll)
|
||||
|
||||
this.outputRollMessage(rollData)
|
||||
}
|
||||
@ -403,6 +379,22 @@ export class Hero6Utility {
|
||||
console.log("Rolldata result", rollData)
|
||||
}
|
||||
|
||||
/* -------------- ----------------------------- */
|
||||
static convertRollHeroSyntax( hero6Formula) {
|
||||
// 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)"
|
||||
}
|
||||
|
||||
let foundryFormula = hero6Formula + hasHalfDice
|
||||
foundryFormula = foundryFormula.replace(' ', '')
|
||||
console.log("Parsed formula : ", hero6Formula, foundryFormula)
|
||||
return foundryFormula
|
||||
}
|
||||
|
||||
/* -------------- ----------------------------- */
|
||||
static sortArrayObjectsByName(myArray) {
|
||||
myArray.sort((a, b) => {
|
||||
|
@ -39,42 +39,44 @@
|
||||
text-align: justify;
|
||||
font-size: 16px;
|
||||
letter-spacing: 1px;
|
||||
color: rgba(44, 133, 133, 0.75);
|
||||
background: rgba(66, 66, 64, 0.95);
|
||||
|
||||
color: rgba(6, 56, 56, 0.75);
|
||||
background: rgba(228, 240, 240, 1);
|
||||
}
|
||||
|
||||
/* Fonts */
|
||||
.sheet header.sheet-header h1 input, .window-app .window-header, #actors .directory-list, #navigation #scene-list .scene.nav-item {
|
||||
font-size: 1.0rem;
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
background: rgba(66, 66, 64, 0.95);
|
||||
/*background: rgba(66, 66, 64, 0.95);*/
|
||||
} /* For title, sidebar character and scene */
|
||||
.sheet nav.sheet-tabs {
|
||||
font-size: 0.7rem;
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
background: rgba(66, 66, 64, 0.95);
|
||||
/*background: rgba(66, 66, 64, 0.95);*/
|
||||
} /* For nav and title */
|
||||
.fvtt-hero-system-6 .item-form, .sheet header.sheet-header .flex-group-center.flex-compteurs, .sheet header.sheet-header .flex-group-center.flex-fatigue, select, button, .item-checkbox, #sidebar, #players, #navigation #nav-toggle {
|
||||
font-size: 0.8rem;
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
background: rgba(66, 66, 64, 0.95);
|
||||
color: rgba(4, 44, 44, 0.98);
|
||||
/*background: rgba(66, 66, 64, 0.95);*/
|
||||
}
|
||||
.window-app {
|
||||
|
||||
}
|
||||
|
||||
.window-header{
|
||||
background: rgba(0,0,0,0.75);
|
||||
}
|
||||
.dialog .window-content {
|
||||
color: rgba(66, 66, 64, 0.95);
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
}
|
||||
.dialog-content, .dialog-buttons, .form-fields {
|
||||
color: rgba(66, 66, 64, 0.95);
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
}
|
||||
.dialog-buttons {
|
||||
color: rgba(66, 66, 64, 0.95);
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
}
|
||||
.dialog .dialog-buttons button.default {
|
||||
color: rgba(66, 66, 64, 0.95);
|
||||
color: rgba(224, 208, 197, 0.9);
|
||||
}
|
||||
.window-app.sheet .window-content {
|
||||
margin: 0;
|
||||
@ -211,8 +213,7 @@ table { border: 1px solid #7a7971;}
|
||||
flex: 'flex-shrink' ;
|
||||
}
|
||||
|
||||
/* Styles limited to foundryvtt-vadentis sheets */
|
||||
|
||||
/* Styles limited to foundryvtt-hero6 sheets */
|
||||
.fvtt-hero-system-6 .sheet-header {
|
||||
-webkit-box-flex: 0;
|
||||
-ms-flex: 0 0 210px;
|
||||
@ -399,14 +400,9 @@ form .form-group label {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
|
||||
/* ======================================== */
|
||||
/* Sheet */
|
||||
.window-app.sheet .window-content .sheet-header{
|
||||
background: url("../images/ui/pc_sheet_bg.webp")
|
||||
.window-app.sheet .window-content .sheet-header {
|
||||
background: rgba(228, 240, 240, 0.75);
|
||||
}
|
||||
/* background: #011d33 url("../images/ui/fond1.webp") repeat left top;*/
|
||||
/*color: rgba(168, 139, 139, 0.5);*/
|
||||
|
||||
.window-app.sheet .window-content .sheet-header input[type="text"], .window-app.sheet .window-content .sheet-header input[type="number"], .window-app.sheet .window-content .sheet-header input[type="password"], .window-app.sheet .window-content .sheet-header input[type="date"], .window-app.sheet .window-content .sheet-header input[type="time"] {
|
||||
background: rgba(228, 240, 240, 0.75);
|
||||
@ -434,13 +430,10 @@ form .form-group label {
|
||||
|
||||
.window-app .window-content, .window-app.sheet .window-content .sheet-body{
|
||||
font-size: 0.8rem;
|
||||
/*background: url("../images/ui/pc_sheet_bg.webp") repeat left top;*/
|
||||
background: rgba(228, 240, 240, 0.75);
|
||||
color: rgba(66, 66, 64, 0.95);
|
||||
}
|
||||
|
||||
/* background: rgba(245,245,240,0.6) url("../images/ui/sheet_background.webp") left top;*/
|
||||
|
||||
section.sheet-body{padding: 0.25rem 0.5rem;}
|
||||
|
||||
.sheet header.sheet-header .profile-img {
|
||||
@ -466,8 +459,6 @@ section.sheet-body{padding: 0.25rem 0.5rem;}
|
||||
color:beige;
|
||||
}
|
||||
|
||||
/* background: rgb(245,245,240) url("../images/ui/fond4.webp") repeat left top;*/
|
||||
|
||||
nav.sheet-tabs .item {
|
||||
position: relative;
|
||||
padding: 0 0.15rem;
|
||||
@ -480,7 +471,7 @@ nav.sheet-tabs .item:after {
|
||||
right: 0;
|
||||
height: 2rem;
|
||||
width: 1px;
|
||||
border-right: 1px dashed rgba(52, 52, 52, 0.25);
|
||||
/*border-right: 1px dashed rgba(52, 52, 52, 0.25);*/
|
||||
}
|
||||
|
||||
.sheet .tab[data-tab] {
|
||||
@ -586,9 +577,6 @@ ul, li {
|
||||
.item-display-hide {
|
||||
display: none;
|
||||
}
|
||||
.conteneur-type {
|
||||
background: rgb(200, 10, 100, 0.25);
|
||||
}
|
||||
.item-quantite {
|
||||
margin-left: 0.5rem;
|
||||
}
|
||||
@ -780,8 +768,6 @@ ul, li {
|
||||
color: rgba(220,220,220,0.75);
|
||||
}
|
||||
|
||||
/* background: rgb(105,85,65) url("../images/ui/texture_feuille_perso_onglets.webp") no-repeat right bottom;*/
|
||||
|
||||
#sidebar.collapsed {
|
||||
height: 470px !important;
|
||||
}
|
||||
@ -865,18 +851,6 @@ ul, li {
|
||||
padding-bottom: .2rem;
|
||||
}
|
||||
|
||||
.div-river-full {
|
||||
height: 5rem;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.div-river {
|
||||
align-content: center;
|
||||
margin-left: 8px;
|
||||
align-content:space-around;
|
||||
justify-content: space-around;
|
||||
}
|
||||
|
||||
.div-center {
|
||||
align-self: center;
|
||||
}
|
||||
@ -1051,38 +1025,9 @@ ul, li {
|
||||
transition: opacity 0.3s;
|
||||
}
|
||||
|
||||
.tooltip .ttt-fatigue{
|
||||
width: 360px;
|
||||
|
||||
background: rgba(30, 25, 20, 0.9);
|
||||
border-image: url(img/ui/bg_control.jpg) 21 repeat;
|
||||
border-image-slice: 6 6 6 6 fill;
|
||||
border-image-width: 6px 6px 6px 6px;
|
||||
border-image-outset: 0px 0px 0px 0px;
|
||||
border-radius: 0px;
|
||||
|
||||
font-size: 0.8rem;
|
||||
padding: 3px 0;
|
||||
}
|
||||
|
||||
.tooltip .ttt-ajustements {
|
||||
width: 150px;
|
||||
background: rgba(220,220,210,0.95);
|
||||
border-radius: 6px;
|
||||
font-size: 0.9rem;
|
||||
padding: 3px 0;
|
||||
}
|
||||
|
||||
.tooltip-nobottom {
|
||||
border-bottom: unset; /* If you want dots under the hoverable text */
|
||||
}
|
||||
.tooltip .ttt-xp {
|
||||
width: 250px;
|
||||
background: rgba(220,220,210,0.95);
|
||||
border-radius: 6px;
|
||||
font-size: 0.9rem;
|
||||
padding: 3px 0;
|
||||
}
|
||||
|
||||
/* Show the tooltip text when you mouse over the tooltip container */
|
||||
.tooltip:hover .tooltiptext {
|
||||
@ -1154,34 +1099,6 @@ ul, li {
|
||||
padding-left: 2rem;
|
||||
}
|
||||
|
||||
.drop-equipment-effect,
|
||||
.drop-power-effect,
|
||||
.drop-perk-effect,
|
||||
.drop-ability-effect,
|
||||
.drop-effect-specaffected,
|
||||
.drop-effect-spec,
|
||||
.drop-ability-weapon,
|
||||
.drop-ability-armor,
|
||||
.drop-race-perk,
|
||||
.drop-spec-perk,
|
||||
.drop-ability-power,
|
||||
.drop-ability-spec,
|
||||
.drop-spec-power,
|
||||
.drop-specialability,
|
||||
.drop-abilities,
|
||||
.drop-optionnal-abilities,
|
||||
.drop-virtue-vice-effect,
|
||||
.drop-virtue-vice,
|
||||
.drop-vice-virtue,
|
||||
.drop-specialperk1,
|
||||
.drop-perk2,
|
||||
.drop-spec1 ,
|
||||
.drop-spec2 {
|
||||
background: linear-gradient(to bottom, #6c95b9fc 5%, #105177ab 100%);
|
||||
background-color: #7d5d3b00;
|
||||
border-radius: 3px;
|
||||
border: 2px ridge #846109;
|
||||
}
|
||||
|
||||
/*************************************************************/
|
||||
#pause
|
||||
@ -1436,6 +1353,11 @@ Focus FOC: #ff0084
|
||||
.margin-image-right {
|
||||
margin-right: 4px;
|
||||
}
|
||||
.fixed-separator {
|
||||
width: 12px;
|
||||
max-width: 12px;
|
||||
min-width: 12px;
|
||||
}
|
||||
.alternate-list {
|
||||
margin-top: 4px;
|
||||
flex-wrap: nowrap;
|
||||
|
@ -91,7 +91,7 @@
|
||||
"styles": [
|
||||
"styles/simple.css"
|
||||
],
|
||||
"version": "10.0.34",
|
||||
"version": "10.0.36",
|
||||
"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.34.zip",
|
||||
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-hero-system-6/archive/fvtt-hero-system-6-v10.0.36.zip",
|
||||
"url": "https://www.uberwald.me/gitea/uberwald/",
|
||||
"background": "images/ui/hro6_welcome_page.webp",
|
||||
"id": "fvtt-hero-system-6"
|
||||
|
@ -39,11 +39,11 @@
|
||||
"characteristics": {
|
||||
"characteristics": {
|
||||
"str": {
|
||||
"label": "Strength",
|
||||
"label": "STR",
|
||||
"value": 10,
|
||||
"base": 10,
|
||||
"category": "main",
|
||||
"strdice": {},
|
||||
"strdice": "",
|
||||
"lift": "",
|
||||
"strend": 0,
|
||||
"hasroll": true,
|
||||
@ -51,21 +51,21 @@
|
||||
"activecost": 0
|
||||
},
|
||||
"dex": {
|
||||
"label": "Dexterity",
|
||||
"label": "DEX",
|
||||
"value": 10,
|
||||
"base": 10,
|
||||
"hasroll": true,
|
||||
"category": "main"
|
||||
},
|
||||
"con": {
|
||||
"label": "Constitution",
|
||||
"label": "CON",
|
||||
"hasroll": true,
|
||||
"category": "main",
|
||||
"value": 10,
|
||||
"base": 10
|
||||
},
|
||||
"int": {
|
||||
"label": "Intelligence",
|
||||
"label": "INT",
|
||||
"hasroll": true,
|
||||
"category": "main",
|
||||
"value": 10,
|
||||
@ -73,14 +73,14 @@
|
||||
"perceptionroll": 10
|
||||
},
|
||||
"ego": {
|
||||
"label": "Ego",
|
||||
"label": "EGO",
|
||||
"hasroll": true,
|
||||
"category": "main",
|
||||
"value": 10,
|
||||
"base": 10
|
||||
},
|
||||
"pre": {
|
||||
"label": "Presence",
|
||||
"label": "PRE",
|
||||
"hasroll": true,
|
||||
"category": "main",
|
||||
"value": 10,
|
||||
@ -123,7 +123,7 @@
|
||||
"modifier": 1
|
||||
},
|
||||
"spd": {
|
||||
"label": "Speed",
|
||||
"label": "SPD",
|
||||
"hasroll": false,
|
||||
"value": 2,
|
||||
"base": 2
|
||||
@ -172,14 +172,6 @@
|
||||
"value": 20,
|
||||
"max": 20
|
||||
},
|
||||
"other": {
|
||||
"label": "OTHER",
|
||||
"hasroll": false,
|
||||
"isvital": true,
|
||||
"damage": 0,
|
||||
"value": 20,
|
||||
"max": 20
|
||||
},
|
||||
"body": {
|
||||
"label": "BODY",
|
||||
"hasroll": false,
|
||||
@ -375,7 +367,7 @@
|
||||
},
|
||||
"skill": {
|
||||
"skilltype": "agility",
|
||||
"characteristic": "",
|
||||
"characteristic": "str",
|
||||
"base": "",
|
||||
"levelscost": 0,
|
||||
"levels": 0,
|
||||
|
@ -4,7 +4,13 @@
|
||||
<header class="sheet-header">
|
||||
<div class="header-fields">
|
||||
<div class="flexrow">
|
||||
<img class="profile-img margin-image-right" src="{{img}}" data-edit="img" title="{{name}}" />
|
||||
|
||||
<img class="profile-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
||||
|
||||
<div class="fixed-separator">
|
||||
|
||||
</div>
|
||||
|
||||
<div class="flexcol">
|
||||
<h1 class="charname "><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||
|
||||
@ -117,10 +123,10 @@
|
||||
<ul class="item-list alternate-list">
|
||||
<li class="item">
|
||||
<label class="item-field-label-medium">STR Dice</label>
|
||||
<a class="roll-direct" data-roll-source="STR Dice" data-roll-formula="{{characteristics.str.strdice.rollFormula}}"><i class="fas fa-dice"></i>{{characteristics.str.strdice.displayFormula}}</a>
|
||||
<a class="roll-lift-dice"><i class="fas fa-dice"></i>{{characteristics.str.strdice}}</a>
|
||||
<label class="item-field-label-short"> </label>
|
||||
<label class="item-field-label-medium">Lift</label>
|
||||
<input type="text" class="item-field-label-short update-field" data-field-name="system.characteristics.str.lift" value="{{characteristics.str.lift}}" data-dtype="String" />
|
||||
<input type="text" class="item-field-label-short update-field" disabled data-field-name="system.characteristics.str.lift" value="{{characteristics.str.lift}}" data-dtype="String" />
|
||||
<label class="item-field-label-short"> </label>
|
||||
<label class="item-field-label-medium">STR END</label>
|
||||
<input type="text" class="item-field-label-short update-field" data-field-name="system.characteristics.str.strend" value="{{characteristics.str.strend}}" data-dtype="Number" />
|
||||
@ -508,8 +514,14 @@
|
||||
<span class="item-field-label-short">
|
||||
<label class="item-field-label-short">Cost</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="item-field-label-medium">Name</label>
|
||||
</span>
|
||||
<span class="item-field-label-long4">
|
||||
<label class="item-field-label-long4">Power</label>
|
||||
<label class="item-field-label-long4">Display</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="item-field-label-medium">Effect</label>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="item-field-label-short">Roll</label>
|
||||
@ -523,8 +535,9 @@
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
||||
src="{{power.img}}" /></a>
|
||||
<span class="item-field-label-short">{{power.system.cost}}</span>
|
||||
<span class="item-field-label-long4">{{{power.enrichDescription}}}
|
||||
</span>
|
||||
<span class="item-field-label-medium">{{power.name}}</span>
|
||||
<span class="item-field-label-long4">{{power.system.displayname}}</span>
|
||||
<span class="item-field-label-medium"><a class="roll-damage" data-type="power"><i class="fas fa-dice"></i>{{power.system.damage}}</a></span>
|
||||
{{#if power.system.hasroll}}
|
||||
<span class="item-field-label-short"><a class="roll-item" data-type="power"><i class="fas fa-dice"></i>{{power.system.roll}}-</a></span>
|
||||
{{else}}
|
||||
|
30
templates/chat/chat-damage-result.hbs
Normal file
30
templates/chat/chat-damage-result.hbs
Normal file
@ -0,0 +1,30 @@
|
||||
<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>
|
||||
<ul>
|
||||
<li>Damage formula : {{diceFormula}}</li>
|
||||
|
||||
<li><strong>Result : {{result}}</strong></li>
|
||||
|
||||
<li><strong>BODY : {{bodyValue}}</strong></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
28
templates/chat/chat-lift-dice-result.hbs
Normal file
28
templates/chat/chat-lift-dice-result.hbs
Normal file
@ -0,0 +1,28 @@
|
||||
<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>
|
||||
<ul>
|
||||
<li>Lift dice formula : {{diceFormula}}</li>
|
||||
|
||||
<li><strong>Result : {{result}}</strong></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
@ -18,7 +18,7 @@
|
||||
<ul>
|
||||
{{> systems/fvtt-hero-system-6/templates/partials/partial-item-hasroll.hbs}}
|
||||
|
||||
{{> systems/fvtt-hero-system-6/templates/partials/partial-power-maneuver-effect.hbs}}
|
||||
<!-- {{> systems/fvtt-hero-system-6/templates/partials/partial-power-maneuver-effect.hbs}} -->
|
||||
|
||||
{{> systems/fvtt-hero-system-6/templates/partials/partial-power-equipment-cost.hbs}}
|
||||
|
||||
|
@ -1,16 +1,16 @@
|
||||
<ul class="item-list alternate-list">
|
||||
<li class="item flexrow list-item items-title-bg">
|
||||
<span class="item-name-img">
|
||||
<label class=""> </label>
|
||||
</span>
|
||||
<span class="item-field-label-long-img">
|
||||
<label class="">{{title}}</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="item-field-label-medium">Value</label>
|
||||
<span class="item-field-label-long4">
|
||||
<label class="item-field-label-long4">Display</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="item-field-label-medium">Mass</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="item-field-label-medium">Quantity</label>
|
||||
<span class="item-field-label-short">
|
||||
<label class="item-field-label-short">Effect</label>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="item-field-label-short">Roll</label>
|
||||
@ -18,7 +18,6 @@
|
||||
<span class="item-field-label-medium">
|
||||
<label class="item-field-label-medium">END</label>
|
||||
</span>
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-add" data-type="equipment" title="Create Item"><i class="fas fa-plus"></i></a>
|
||||
</div>
|
||||
|
@ -2,15 +2,11 @@
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img" src="{{equip.img}}" /></a>
|
||||
<span class="item-name-label">{{equip.name}}</span>
|
||||
|
||||
<span class="item-field-label-medium"><label>{{equip.system.value}}
|
||||
<span class="item-field-label-long4"><label>{{equip.system.displayname}}
|
||||
</label>
|
||||
</span>
|
||||
|
||||
<span class="item-field-label-medium"><label>{{equip.system.weight}}
|
||||
</label>
|
||||
</span>
|
||||
|
||||
<span class="item-field-label-medium"><label>{{equip.system.quantity}}
|
||||
<span class="item-field-label-short"><label><a class="roll-damage" data-type="perk"><i class="fas fa-dice"></i>{{equip.system.damage}}</a>
|
||||
</label>
|
||||
</span>
|
||||
|
||||
|
@ -17,4 +17,10 @@
|
||||
|
||||
<input type="text" class="item-field-label-long2" name="system.characteristics.{{key}}.notes" value="{{charac.notes}}" data-dtype="String"/>
|
||||
|
||||
{{#if charac.lift}}
|
||||
<h4 class="item-field-label-short margin-item-list"> </h4>
|
||||
<h4 class="item-field-label-short margin-item-list">{{charac.lift}}</h4>
|
||||
<h4 class="item-field-label-short margin-item-list"><a class="roll-lift-dice" data-charac-key="{{key}}"><i class="fas fa-dice"></i>{{charac.liftDice}}</a></h4>
|
||||
{{/if}}
|
||||
|
||||
</li>
|
@ -3,16 +3,18 @@
|
||||
<label class="item-field-label-medium">Display name</label>
|
||||
<input type="text" class="" name="system.displayname" value="{{system.displayname}}" data-dtype="string"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class="generic-label">Description</label>
|
||||
<div class="medium-editor item-text-long-line">
|
||||
{{editor description target="system.description" button=true owner=owner editable=editable}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="generic-label">Notes</label>
|
||||
<div class="medium-editor item-text-long-line">
|
||||
{{editor notes target="system.notes" button=true owner=owner editable=editable}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="generic-label">Description</label>
|
||||
<div class="medium-editor item-text-long-line">
|
||||
{{editor description target="system.description" button=true owner=owner editable=editable}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -7,7 +7,8 @@
|
||||
<input type="text" class="item-field-label-medium" name="system.roll" value="{{system.roll}}" data-dtype="Number"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Computes BODY ?</label>
|
||||
<!-- <li class="flexrow"><label class="item-field-label-long">Computes BODY ?</label>
|
||||
<label class="item-field-label-medium"><input type="checkbox" name="system.computebody" {{checked system.computebody}}/></label>
|
||||
</li>
|
||||
</li> -->
|
||||
|
||||
{{/if}}
|
||||
|
Loading…
Reference in New Issue
Block a user