Compare commits
6 Commits
fvtt-avd12
...
master
Author | SHA1 | Date | |
---|---|---|---|
8e37ccb631 | |||
00c8ae8f85 | |||
57dc0505cc | |||
108cda292e | |||
8e00d3e599 | |||
9362d3d6bc |
@ -16,6 +16,7 @@
|
||||
"TypeReaction": "Reaction",
|
||||
"TypeStance": "Stance",
|
||||
"TypeTrait": "Trait",
|
||||
"TypeCondition": "Condition"
|
||||
"TypeCondition": "Condition",
|
||||
"TypeCraftingskill": "Crafting Skill"
|
||||
}
|
||||
}
|
@ -45,6 +45,7 @@ export class Avd12ActorSheet extends ActorSheet {
|
||||
equippedWeapons: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquippedWeapons()) ),
|
||||
equippedArmor: this.actor.getEquippedArmor(),
|
||||
equippedShield: this.actor.getEquippedShield(),
|
||||
craftingSkills: this.actor.getCraftingSkills(),
|
||||
subActors: duplicate(this.actor.getSubActors()),
|
||||
moneys: duplicate(this.actor.getMoneys()),
|
||||
focusData: this.actor.computeFinalFocusData(),
|
||||
@ -129,7 +130,15 @@ export class Avd12ActorSheet extends ActorSheet {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
this.actor.rollSpell( li.data("item-id") )
|
||||
});
|
||||
|
||||
html.find('.roll-crafting').click((event) => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
this.actor.rollCrafting( li.data("item-id") )
|
||||
});
|
||||
html.find('.roll-universal').click((event) => {
|
||||
let skillKey = $(event.currentTarget).data("skill-key")
|
||||
this.actor.rollUniversal(skillKey)
|
||||
});
|
||||
|
||||
html.find('.roll-weapon').click((event) => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
const weponId = li.data("item-id")
|
||||
|
@ -176,7 +176,12 @@ export class Avd12Actor extends Actor {
|
||||
Avd12Utility.sortArrayObjectsByName(comp)
|
||||
return comp;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
getCraftingSkills() {
|
||||
let comp = duplicate(this.items.filter(item => item.type == 'craftingskill') || [])
|
||||
Avd12Utility.sortArrayObjectsByName(comp)
|
||||
return comp;
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getArmors() {
|
||||
let comp = duplicate(this.items.filter(item => item.type == 'armor') || []);
|
||||
@ -242,7 +247,8 @@ export class Avd12Actor extends Actor {
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
prepareWeapon(weapon) {
|
||||
weapon.attackBonus = this.system.bonus.weapon.attack + this.system.bonus[weapon.system.weapontype].attack
|
||||
//console.log(weapon)
|
||||
weapon.attackBonus = this.system.bonus.weapon.attack + weapon.system.attackbonus + this.system.bonus[weapon.system.weapontype].attack
|
||||
let bonusDamage = this.system.bonus.weapon.damage + this.system.bonus[weapon.system.weapontype].damage
|
||||
this.addDamages(weapon.system.damages.primary, bonusDamage)
|
||||
bonusDamage = this.system.bonus.weapon.damage + this.system.bonus[weapon.system.weapontype].crits
|
||||
@ -488,12 +494,21 @@ export class Avd12Actor extends Actor {
|
||||
await this.updateEmbeddedDocuments('Item', [update]); // Updates one EmbeddedEntity
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
clearInitiative(){
|
||||
this.getFlag("world", "initiative", -1)
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getInitiativeScore(combatId, combatantId) {
|
||||
if (this.type == 'character') {
|
||||
this.rollMR(true, combatId, combatantId)
|
||||
let init = this.getFlag("world", "initiative" )
|
||||
console.log("INIT", init)
|
||||
if (!init || init == -1) {
|
||||
ChatMessage.create( { content: "Roll your initiative for this combat"} )
|
||||
}
|
||||
return init
|
||||
}
|
||||
console.log("Init required !!!!")
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -661,13 +676,30 @@ export class Avd12Actor extends Actor {
|
||||
skill.attr = duplicate(attr)
|
||||
let rollData = this.getCommonRollData()
|
||||
rollData.mode = "skill"
|
||||
rollMode.skillKey = skillKey
|
||||
rollData.skill = skill
|
||||
rollData.title = "Roll Skill " + skill.name
|
||||
rollData.title = "Roll Skill " + skill.name
|
||||
rollData.img = skill.img
|
||||
this.startRoll(rollData)
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
rollUniversal(skillKey) {
|
||||
let skill = this.system.universal.skills[skillKey]
|
||||
if (skill) {
|
||||
skill = duplicate(skill)
|
||||
skill.name = Avd12Utility.upperFirst(skillKey)
|
||||
let rollData = this.getCommonRollData()
|
||||
rollData.mode = "universal"
|
||||
rollData.skillKey = skillKey
|
||||
rollData.skill = skill
|
||||
rollData.title = "Roll Skill " + skill.name
|
||||
rollData.img = skill.img
|
||||
this.startRoll(rollData)
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollSpell(spellId) {
|
||||
let spell = this.items.get(spellId)
|
||||
@ -704,7 +736,20 @@ export class Avd12Actor extends Actor {
|
||||
console.log("New fovcus", this.system, focusData)
|
||||
this.update({ 'system.focus': focusData })
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
rollCrafting(craftId) {
|
||||
let crafting = this.items.get(craftId)
|
||||
if (crafting) {
|
||||
crafting = duplicate(crafting)
|
||||
let rollData = this.getCommonRollData()
|
||||
rollData.mode = "crafting"
|
||||
rollData.crafting = crafting
|
||||
rollData.img = crafting.img
|
||||
this.startRoll(rollData)
|
||||
} else {
|
||||
ui.notifications.warn("Unable to find the relevant weapon ")
|
||||
}
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
rollWeapon(weaponId) {
|
||||
let weapon = this.items.get(weaponId)
|
||||
@ -721,6 +766,7 @@ export class Avd12Actor extends Actor {
|
||||
ui.notifications.warn("Unable to find the relevant weapon ")
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollWeaponDamage(weaponId, damageType) {
|
||||
let weapon = this.items.get(weaponId)
|
||||
|
@ -27,4 +27,14 @@ export class Avd12Combat extends Combat {
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
_onDelete() {
|
||||
let combatants = this.combatants.contents
|
||||
for (let c of combatants) {
|
||||
let actor = game.actors.get(c.actorId)
|
||||
actor.clearInitiative()
|
||||
}
|
||||
super._onDelete()
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -52,8 +52,12 @@ export class Avd12ItemSheet extends ItemSheet {
|
||||
// Specific case for formating descriptions of sub-items
|
||||
if (this.object.type == "module") {
|
||||
for (let level of this.object.system.levels) {
|
||||
for (let id in level.features) {
|
||||
level.features[id].descriptionHTML = await TextEditor.enrichHTML(level.features[id].system.description, { async: true })
|
||||
if ( level && level.features) {
|
||||
for (let id in level.features) {
|
||||
if ( level.features[id] ) {
|
||||
level.features[id].descriptionHTML = await TextEditor.enrichHTML(level.features[id].system.description, { async: true })
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -249,7 +253,13 @@ export class Avd12ItemSheet extends ItemSheet {
|
||||
levels[levelIndex].choices[choiceIndex].features[featureId] = undefined
|
||||
this.object.update({ 'system.levels': levels })
|
||||
})
|
||||
|
||||
html.find('.module-level-delete').click(ev => {
|
||||
let levels = duplicate(this.object.system.levels)
|
||||
let levelIndex = Number($(ev.currentTarget).data("level-index"))
|
||||
levels.splice(levelIndex,levelIndex)
|
||||
this.object.update({ 'system.levels': levels })
|
||||
})
|
||||
|
||||
html.find('.choice-level-selected').change(ev => {
|
||||
this.processChoiceLevelSelection(ev)
|
||||
})
|
||||
|
@ -9,6 +9,7 @@ export const defaultItemImg = {
|
||||
module: "systems/fvtt-avd12/images/icons/focus2.webp",
|
||||
money: "systems/fvtt-avd12/images/icons/focus2.webp",
|
||||
spell: "systems/fvtt-avd12/images/icons/spell1.webp",
|
||||
craftingskill: "systems/fvtt-avd12/images/icons/cloak2.webp",
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -528,6 +528,9 @@ export class Avd12Utility {
|
||||
if (rollData.skill) {
|
||||
diceFormula += "+" + rollData.skill.finalvalue
|
||||
}
|
||||
if (rollData.crafting) {
|
||||
diceFormula += "+" + rollData.crafting.system.level
|
||||
}
|
||||
if (rollData.spellAttack) {
|
||||
diceFormula += "+" + rollData.spellAttack
|
||||
}
|
||||
@ -565,6 +568,10 @@ export class Avd12Utility {
|
||||
content: await renderTemplate(`systems/fvtt-avd12/templates/chat/chat-generic-result.hbs`, rollData)
|
||||
})
|
||||
msg.setFlag("world", "rolldata", rollData)
|
||||
if (rollData.skillKey == "initiative") {
|
||||
console.log("REGISTERED")
|
||||
actor.setFlag("world", "initiative", myRoll.total)
|
||||
}
|
||||
|
||||
console.log("Rolldata result", rollData)
|
||||
}
|
||||
|
@ -1320,10 +1320,37 @@ ul, li {
|
||||
min-width:2rem;
|
||||
max-width: 2rem;
|
||||
}
|
||||
|
||||
.attribute-label {
|
||||
font-weight: bold;
|
||||
}
|
||||
.flexrow-no-expand {
|
||||
flex-grow: 0;
|
||||
}
|
||||
.item-input-small {
|
||||
max-width: 16px;
|
||||
max-height: 12px;
|
||||
}
|
||||
.drop-module-step {
|
||||
background: linear-gradient(to bottom, #6c95b9fc 5%, #105177ab 100%);
|
||||
background-color: #7d5d3b00;
|
||||
border-radius: 3px;
|
||||
border: 2px ridge #846109;
|
||||
}
|
||||
.module-level-box {
|
||||
background: linear-gradient(to bottom, #6c95b9fc 5%, #105177ab 100%);
|
||||
border-radius: 5px;
|
||||
padding: 4px;
|
||||
margin-bottom: 8px;
|
||||
margin-left: 12px;
|
||||
border: 2px ridge #846109;
|
||||
max-width: 45%;
|
||||
min-height: 64px;
|
||||
align-content: center;
|
||||
}
|
||||
.color-selected {
|
||||
background: linear-gradient(to bottom, #9ae470fc 5%, #247e30ab 100%);
|
||||
}
|
||||
.flex-center {
|
||||
align-items: center;
|
||||
align-content: space-between;
|
||||
}
|
@ -64,7 +64,7 @@
|
||||
],
|
||||
"title": "AnyVenture D12 RPG",
|
||||
"url": "https://www.uberwald.me/gitea/public/fvtt-avd12",
|
||||
"version": "10.0.18",
|
||||
"download": "https://www.uberwald.me/gitea/public/fvtt-avd12/archive/fvtt-avd12-v10.0.18.zip",
|
||||
"version": "10.0.25",
|
||||
"download": "https://www.uberwald.me/gitea/public/fvtt-avd12/archive/fvtt-avd12-v10.0.25.zip",
|
||||
"background": "systems/fvtt-avd12/images/ui/avd12_welcome_page.webp"
|
||||
}
|
@ -164,11 +164,13 @@
|
||||
"universal": {
|
||||
"skills": {
|
||||
"search": {
|
||||
"label": "Search",
|
||||
"modifier": 0,
|
||||
"finalvalue": 0,
|
||||
"good": false
|
||||
},
|
||||
"initiative": {
|
||||
"label": "Initiative",
|
||||
"modifier": 0,
|
||||
"finalvalue": 0,
|
||||
"good": false
|
||||
@ -259,6 +261,12 @@
|
||||
"crits": 0,
|
||||
"brutals": 0
|
||||
},
|
||||
"crush": {
|
||||
"attack": 0,
|
||||
"damage": 0,
|
||||
"crits": 0,
|
||||
"brutals": 0
|
||||
},
|
||||
"slash": {
|
||||
"attack": 0,
|
||||
"damage": 0,
|
||||
@ -350,6 +358,7 @@
|
||||
"weapon",
|
||||
"module",
|
||||
"money",
|
||||
"craftingskill",
|
||||
"condition",
|
||||
"action",
|
||||
"freeaction",
|
||||
@ -411,6 +420,10 @@
|
||||
"movespeed": 0
|
||||
}
|
||||
},
|
||||
"craftingskill" : {
|
||||
"level": 0,
|
||||
"description": ""
|
||||
},
|
||||
"action": {
|
||||
"description": ""
|
||||
},
|
||||
@ -486,6 +499,7 @@
|
||||
"templates": [
|
||||
"commonitem"
|
||||
],
|
||||
"attackbonus": 0,
|
||||
"minrange": 0,
|
||||
"maxrange": 0,
|
||||
"throwrange": 0,
|
||||
|
@ -11,26 +11,45 @@
|
||||
<div class="flexrow">
|
||||
{{#each system.attributes as |attr attrKey|}}
|
||||
<div class="flexcol">
|
||||
<div class="flerow">
|
||||
<span>{{attr.label}}</span>
|
||||
<div class="flexrow flexrow-no-expand">
|
||||
<span class="attribute-label">{{attr.label}}</span>
|
||||
<input type="text" class="item-field-label-short" name="system.attributes.{{attrKey}}.value" value="{{attr.value}}" data-dtype="Number"/>
|
||||
</div>
|
||||
{{#each attr.skills as |skill skillKey|}}
|
||||
<div class="flexrow">
|
||||
<span class="item-field-skill skill-label"><a class="roll-skill" data-attr-key="{{attrKey}}" data-skill-key="{{skillKey}}"><i class="fa-solid fa-dice-d12"></i> {{upperFirst skillKey}} {{skill.finalvalue}}</a></span>
|
||||
<input type="checkbox" class="skill-good-checkbox" name="system.attributes.{{attrKey}}.skills.{{skillKey}}.good" {{checked skill.good}} />
|
||||
{{#each attr.skills as |skill skillKey|}}
|
||||
<div class="flexrow flexrow-no-expand">
|
||||
<span class="item-field-skill skill-label">
|
||||
<a class="roll-skill" data-attr-key="{{attrKey}}" data-skill-key="{{skillKey}}">
|
||||
<i class="fa-solid fa-dice-d12"></i> {{upperFirst skillKey}} {{skill.finalvalue}}</a>
|
||||
</span>
|
||||
<input type="checkbox" class="skill-good-checkbox" name="system.attributes.{{attrKey}}.skills.{{skillKey}}.good" {{checked skill.good}} />
|
||||
</div>
|
||||
{{/each}}
|
||||
<div class="flexrow flexrow-no-expand">
|
||||
<span class="attribute-label"> </span>
|
||||
</div>
|
||||
{{#if (eq attrKey "might")}}
|
||||
<div class="flexrow flexrow-no-expand">
|
||||
<span class="attribute-label">Universal</span>
|
||||
</div>
|
||||
{{#each @root.system.universal.skills as |skill skillKey|}}
|
||||
<div class="flexrow flexrow-no-expand">
|
||||
<span class="item-field-skill skill-label">
|
||||
<a class="roll-universal" data-skill-key="{{skillKey}}">
|
||||
<i class="fa-solid fa-dice-d12"></i> {{upperFirst skillKey}}
|
||||
</a>
|
||||
</span>
|
||||
<input type="text" class="item-input-small" name="system.universal.skills.{{skillKey}}.finalvalue" value="{{skill.finalvalue}}" data-dtype="Number"/>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="flexrow">
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/each}}
|
||||
|
||||
</div>
|
||||
|
||||
<div class="ability-item">
|
||||
</div>
|
||||
|
||||
<div class="ability-item status-block">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -493,6 +512,39 @@
|
||||
|
||||
</div>
|
||||
|
||||
{{!-- Equipement Tab --}}
|
||||
<div class="tab crafting" data-group="primary" data-tab="crafting">
|
||||
|
||||
|
||||
<ul class="item-list alternate-list">
|
||||
<li class="item flexrow list-item items-title-bg">
|
||||
<span class="item-name-label-header">
|
||||
<h3><label class="items-title-text">Crafting</label></h3>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="short-label">Level</label>
|
||||
</span>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-add" data-type="weapon" title="Create Item"><i class="fas fa-plus"></i></a>
|
||||
</div>
|
||||
</li>
|
||||
{{#each craftingSkills as |crafting key|}}
|
||||
<li class="item flexrow list-item list-item-shadow" data-item-id="{{crafting._id}}">
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
||||
src="{{crafting.img}}" /></a>
|
||||
<span class="item-name-label"> <a class="roll-crafting"><i class="fa-solid fa-dice-d12"> </i>{{crafting.name}}</a></span>
|
||||
<span class="item-field-label-short"><label>{{crafting.system.level}}</label></span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
||||
</div>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
{{!-- Biography Tab --}}
|
||||
<div class="tab biodata" data-group="primary" data-tab="biodata">
|
||||
<div class="grid grid-2col">
|
||||
|
@ -23,6 +23,11 @@
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if crafting}}
|
||||
<li>Crafting : {{crafting.name}} ({{crafting.system.level}})
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if spell}}
|
||||
<li>Spell : {{spell.name}} ({{spell.system.level}})
|
||||
</li>
|
||||
@ -30,6 +35,7 @@
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
<li>Bonus/Malus {{bonusMalusRoll}} </li>
|
||||
<li>Dice Formula {{diceFormula}} </li>
|
||||
<li>Result {{roll.total}} </li>
|
||||
|
||||
|
@ -15,6 +15,13 @@
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if crafting}}
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Crafting : </span>
|
||||
<span class="roll-dialog-label">{{crafting.name}} ({{crafting.system.level}})</span>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if weapon}}
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Weapon Attack Bonus : </span>
|
||||
@ -54,22 +61,26 @@
|
||||
</select>
|
||||
</div>
|
||||
|
||||
{{#if spell}}
|
||||
{{#if (eq skillKey "initiative") }}
|
||||
|
||||
{{else}}
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Target check : </span>
|
||||
<select id="targetCheck" name="targetCheck">
|
||||
{{#select targetCheck}}
|
||||
<option value="none">None</option>
|
||||
<option value="5">5 (Trivial)</option>
|
||||
<option value="7">7 (Easy)</option>
|
||||
<option value="10">10 (Regular)</option>
|
||||
<option value="14">14 (Difficult)</option>
|
||||
<option value="20">20 (Heroic)</option>
|
||||
{{/select}}
|
||||
</select>
|
||||
</div>
|
||||
{{#if (or spell weapon)}}
|
||||
|
||||
{{else}}
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Target check : </span>
|
||||
<select id="targetCheck" name="targetCheck">
|
||||
{{#select targetCheck}}
|
||||
<option value="none">None</option>
|
||||
<option value="5">5 (Trivial)</option>
|
||||
<option value="7">7 (Easy)</option>
|
||||
<option value="10">10 (Regular)</option>
|
||||
<option value="14">14 (Difficult)</option>
|
||||
<option value="20">20 (Heroic)</option>
|
||||
{{/select}}
|
||||
</select>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
</div>
|
||||
|
32
templates/items/item-craftingskill-sheet.hbs
Normal file
32
templates/items/item-craftingskill-sheet.hbs
Normal file
@ -0,0 +1,32 @@
|
||||
<form class="{{cssClass}}" autocomplete="off">
|
||||
<header class="sheet-header">
|
||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}"/>
|
||||
<div class="header-fields">
|
||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name"/></h1>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
{{> systems/fvtt-avd12/templates/items/partial-item-nav.hbs}}
|
||||
|
||||
|
||||
{{!-- Sheet Body --}}
|
||||
<section class="sheet-body">
|
||||
|
||||
{{> systems/fvtt-avd12/templates/items/partial-item-description.hbs}}
|
||||
|
||||
<div class="tab details" data-group="primary" data-tab="details">
|
||||
|
||||
<div class="tab" data-group="primary">
|
||||
<ul>
|
||||
|
||||
<li class="flexrow">
|
||||
<label class="item-field-label-long">Level</label>
|
||||
<input type="text" class="item-field-label-short" name="system.level" value="{{system.level}}" data-dtype="Number"/>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
</form>
|
@ -15,7 +15,23 @@
|
||||
{{> systems/fvtt-avd12/templates/items/partial-item-description.hbs}}
|
||||
|
||||
<div class="tab details" data-group="primary" data-tab="details">
|
||||
TODO : The tre of module choices will be displayed here for players, with the "selected" option only
|
||||
|
||||
<div class="flexcol">
|
||||
{{#each system.levels as |level index|}}
|
||||
<div class="flexrow flex-center">
|
||||
{{#each level.choices as |choice choiceIndex|}}
|
||||
<span class="module-level-box {{#if choice.selected}}color-selected{{/if}}">
|
||||
<ul>
|
||||
{{#each choice.features as |feature id|}}
|
||||
<li>{{feature.name}}</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</span>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
{{#if isGM}}
|
||||
@ -26,7 +42,10 @@
|
||||
{{#each system.levels as |level index|}}
|
||||
<hr>
|
||||
<li class="flexrow">
|
||||
<h2 class="item-field-label-long">Level {{add index 1}}</h2>
|
||||
<h2 class="item-field-label-long">Level {{add index 1}}</h2>
|
||||
<span class="item-field-label-short">
|
||||
<a class="item-control module-level-delete" data-level-index="{{index}}" title="Delete Level"><i class="fas fa-trash"></i></a>
|
||||
</span>
|
||||
</li>
|
||||
|
||||
<ul class="ul-level1">
|
||||
|
@ -41,10 +41,13 @@
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
<!--
|
||||
<li class="flexrow">
|
||||
<label class="item-field-label-long">Selected</label>
|
||||
<input type="checkbox" class="item-field-label-short" name="system.selected" {{checked system.selected}} />
|
||||
</li>
|
||||
-->
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1,43 +1,3 @@
|
||||
<li class='flexrow'>
|
||||
<label class='item-field-label-long'>
|
||||
Focus Points Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short'
|
||||
name='system.focuspointsbonus'
|
||||
value="{{system.focuspointsbonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
|
||||
<label class='item-field-label-short'>
|
||||
|
||||
</label>
|
||||
|
||||
<label class='item-field-label-long'>
|
||||
Focus Regen Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short'
|
||||
name='system.focusregenbonus'
|
||||
value="{{system.focusregenbonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
</li>
|
||||
|
||||
<li class='flexrow'>
|
||||
<label class='item-field-label-long'>
|
||||
Burn Chance Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short'
|
||||
name='system.burnchancebonus'
|
||||
value="{{system.burnchancebonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
</li>
|
||||
|
||||
<li class='flexrow'>
|
||||
<h3 class='item-field-label-long'>
|
||||
@ -91,6 +51,26 @@
|
||||
{{/each}}
|
||||
</li>
|
||||
|
||||
{{#if (eq type "weapon")}}
|
||||
<li class='flexrow'>
|
||||
<div>
|
||||
<label class='item-field-label-short'>
|
||||
Attack Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short padd-right'
|
||||
name="system.attackbonus"
|
||||
value="{{system.attackbonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
<label>
|
||||
|
||||
</label>
|
||||
</div>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
<li class='flexrow'>
|
||||
<h3 class='item-field-label-long'>
|
||||
Focus
|
||||
@ -126,6 +106,46 @@
|
||||
<span>Spell Damage Bonus : {{focusData.spellDamageBonus}} </span>
|
||||
</li>
|
||||
{{/if}}
|
||||
<li class='flexrow'>
|
||||
<label class='item-field-label-long'>
|
||||
Focus Points Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short'
|
||||
name='system.focuspointsbonus'
|
||||
value="{{system.focuspointsbonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
|
||||
<label class='item-field-label-short'>
|
||||
|
||||
</label>
|
||||
|
||||
<label class='item-field-label-long'>
|
||||
Focus Regen Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short'
|
||||
name='system.focusregenbonus'
|
||||
value="{{system.focusregenbonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
</li>
|
||||
|
||||
<li class='flexrow'>
|
||||
<label class='item-field-label-long'>
|
||||
Burn Chance Bonus
|
||||
</label>
|
||||
<input
|
||||
type='text'
|
||||
class='item-field-label-short'
|
||||
name='system.burnchancebonus'
|
||||
value="{{system.burnchancebonus}}"
|
||||
data-dtype='Number'
|
||||
/>
|
||||
</li>
|
||||
|
||||
<li class='flexrow'>
|
||||
<h3 class='item-field-label-long'>
|
||||
|
Reference in New Issue
Block a user