Compare commits
No commits in common. "master" and "fvtt-avd12-v10.0.23" have entirely different histories.
master
...
fvtt-avd12
@ -134,11 +134,8 @@ export class Avd12ActorSheet extends ActorSheet {
|
|||||||
const li = $(event.currentTarget).parents(".item");
|
const li = $(event.currentTarget).parents(".item");
|
||||||
this.actor.rollCrafting( li.data("item-id") )
|
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) => {
|
html.find('.roll-weapon').click((event) => {
|
||||||
const li = $(event.currentTarget).parents(".item");
|
const li = $(event.currentTarget).parents(".item");
|
||||||
const weponId = li.data("item-id")
|
const weponId = li.data("item-id")
|
||||||
|
@ -494,21 +494,12 @@ export class Avd12Actor extends Actor {
|
|||||||
await this.updateEmbeddedDocuments('Item', [update]); // Updates one EmbeddedEntity
|
await this.updateEmbeddedDocuments('Item', [update]); // Updates one EmbeddedEntity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
clearInitiative(){
|
|
||||||
this.getFlag("world", "initiative", -1)
|
|
||||||
}
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getInitiativeScore(combatId, combatantId) {
|
getInitiativeScore(combatId, combatantId) {
|
||||||
if (this.type == 'character') {
|
if (this.type == 'character') {
|
||||||
let init = this.getFlag("world", "initiative" )
|
this.rollMR(true, combatId, combatantId)
|
||||||
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;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -676,30 +667,13 @@ export class Avd12Actor extends Actor {
|
|||||||
skill.attr = duplicate(attr)
|
skill.attr = duplicate(attr)
|
||||||
let rollData = this.getCommonRollData()
|
let rollData = this.getCommonRollData()
|
||||||
rollData.mode = "skill"
|
rollData.mode = "skill"
|
||||||
rollMode.skillKey = skillKey
|
|
||||||
rollData.skill = skill
|
rollData.skill = skill
|
||||||
rollData.title = "Roll Skill " + skill.name
|
rollData.title = "Roll Skill " + skill.name
|
||||||
rollData.img = skill.img
|
rollData.img = skill.img
|
||||||
this.startRoll(rollData)
|
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) {
|
async rollSpell(spellId) {
|
||||||
let spell = this.items.get(spellId)
|
let spell = this.items.get(spellId)
|
||||||
|
@ -27,14 +27,4 @@ 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,12 +52,8 @@ export class Avd12ItemSheet extends ItemSheet {
|
|||||||
// Specific case for formating descriptions of sub-items
|
// Specific case for formating descriptions of sub-items
|
||||||
if (this.object.type == "module") {
|
if (this.object.type == "module") {
|
||||||
for (let level of this.object.system.levels) {
|
for (let level of this.object.system.levels) {
|
||||||
if ( level && level.features) {
|
for (let id in level.features) {
|
||||||
for (let id in level.features) {
|
level.features[id].descriptionHTML = await TextEditor.enrichHTML(level.features[id].system.description, { async: true })
|
||||||
if ( level.features[id] ) {
|
|
||||||
level.features[id].descriptionHTML = await TextEditor.enrichHTML(level.features[id].system.description, { async: true })
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -253,13 +249,7 @@ export class Avd12ItemSheet extends ItemSheet {
|
|||||||
levels[levelIndex].choices[choiceIndex].features[featureId] = undefined
|
levels[levelIndex].choices[choiceIndex].features[featureId] = undefined
|
||||||
this.object.update({ 'system.levels': levels })
|
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 => {
|
html.find('.choice-level-selected').change(ev => {
|
||||||
this.processChoiceLevelSelection(ev)
|
this.processChoiceLevelSelection(ev)
|
||||||
})
|
})
|
||||||
|
@ -568,10 +568,6 @@ export class Avd12Utility {
|
|||||||
content: await renderTemplate(`systems/fvtt-avd12/templates/chat/chat-generic-result.hbs`, rollData)
|
content: await renderTemplate(`systems/fvtt-avd12/templates/chat/chat-generic-result.hbs`, rollData)
|
||||||
})
|
})
|
||||||
msg.setFlag("world", "rolldata", rollData)
|
msg.setFlag("world", "rolldata", rollData)
|
||||||
if (rollData.skillKey == "initiative") {
|
|
||||||
console.log("REGISTERED")
|
|
||||||
actor.setFlag("world", "initiative", myRoll.total)
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log("Rolldata result", rollData)
|
console.log("Rolldata result", rollData)
|
||||||
}
|
}
|
||||||
|
@ -1320,37 +1320,10 @@ ul, li {
|
|||||||
min-width:2rem;
|
min-width:2rem;
|
||||||
max-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 {
|
.drop-module-step {
|
||||||
background: linear-gradient(to bottom, #6c95b9fc 5%, #105177ab 100%);
|
background: linear-gradient(to bottom, #6c95b9fc 5%, #105177ab 100%);
|
||||||
background-color: #7d5d3b00;
|
background-color: #7d5d3b00;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
border: 2px ridge #846109;
|
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",
|
"title": "AnyVenture D12 RPG",
|
||||||
"url": "https://www.uberwald.me/gitea/public/fvtt-avd12",
|
"url": "https://www.uberwald.me/gitea/public/fvtt-avd12",
|
||||||
"version": "10.0.25",
|
"version": "10.0.23",
|
||||||
"download": "https://www.uberwald.me/gitea/public/fvtt-avd12/archive/fvtt-avd12-v10.0.25.zip",
|
"download": "https://www.uberwald.me/gitea/public/fvtt-avd12/archive/fvtt-avd12-v10.0.23.zip",
|
||||||
"background": "systems/fvtt-avd12/images/ui/avd12_welcome_page.webp"
|
"background": "systems/fvtt-avd12/images/ui/avd12_welcome_page.webp"
|
||||||
}
|
}
|
@ -164,13 +164,11 @@
|
|||||||
"universal": {
|
"universal": {
|
||||||
"skills": {
|
"skills": {
|
||||||
"search": {
|
"search": {
|
||||||
"label": "Search",
|
|
||||||
"modifier": 0,
|
"modifier": 0,
|
||||||
"finalvalue": 0,
|
"finalvalue": 0,
|
||||||
"good": false
|
"good": false
|
||||||
},
|
},
|
||||||
"initiative": {
|
"initiative": {
|
||||||
"label": "Initiative",
|
|
||||||
"modifier": 0,
|
"modifier": 0,
|
||||||
"finalvalue": 0,
|
"finalvalue": 0,
|
||||||
"good": false
|
"good": false
|
||||||
|
@ -11,45 +11,26 @@
|
|||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
{{#each system.attributes as |attr attrKey|}}
|
{{#each system.attributes as |attr attrKey|}}
|
||||||
<div class="flexcol">
|
<div class="flexcol">
|
||||||
<div class="flexrow flexrow-no-expand">
|
<div class="flerow">
|
||||||
<span class="attribute-label">{{attr.label}}</span>
|
<span>{{attr.label}}</span>
|
||||||
<input type="text" class="item-field-label-short" name="system.attributes.{{attrKey}}.value" value="{{attr.value}}" data-dtype="Number"/>
|
<input type="text" class="item-field-label-short" name="system.attributes.{{attrKey}}.value" value="{{attr.value}}" data-dtype="Number"/>
|
||||||
</div>
|
</div>
|
||||||
{{#each attr.skills as |skill skillKey|}}
|
{{#each attr.skills as |skill skillKey|}}
|
||||||
<div class="flexrow flexrow-no-expand">
|
<div class="flexrow">
|
||||||
<span class="item-field-skill skill-label">
|
<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>
|
||||||
<a class="roll-skill" data-attr-key="{{attrKey}}" data-skill-key="{{skillKey}}">
|
<input type="checkbox" class="skill-good-checkbox" name="system.attributes.{{attrKey}}.skills.{{skillKey}}.good" {{checked skill.good}} />
|
||||||
<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>
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
{{else}}
|
</div>
|
||||||
<div class="flexrow">
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
</div>
|
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="ability-item">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="ability-item status-block">
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -61,26 +61,22 @@
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{#if (eq skillKey "initiative") }}
|
{{#if (or spell weapon)}}
|
||||||
|
|
||||||
{{else}}
|
{{else}}
|
||||||
{{#if (or spell weapon)}}
|
<div class="flexrow">
|
||||||
|
<span class="roll-dialog-label">Target check : </span>
|
||||||
{{else}}
|
<select id="targetCheck" name="targetCheck">
|
||||||
<div class="flexrow">
|
{{#select targetCheck}}
|
||||||
<span class="roll-dialog-label">Target check : </span>
|
<option value="none">None</option>
|
||||||
<select id="targetCheck" name="targetCheck">
|
<option value="5">5 (Trivial)</option>
|
||||||
{{#select targetCheck}}
|
<option value="7">7 (Easy)</option>
|
||||||
<option value="none">None</option>
|
<option value="10">10 (Regular)</option>
|
||||||
<option value="5">5 (Trivial)</option>
|
<option value="14">14 (Difficult)</option>
|
||||||
<option value="7">7 (Easy)</option>
|
<option value="20">20 (Heroic)</option>
|
||||||
<option value="10">10 (Regular)</option>
|
{{/select}}
|
||||||
<option value="14">14 (Difficult)</option>
|
</select>
|
||||||
<option value="20">20 (Heroic)</option>
|
</div>
|
||||||
{{/select}}
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
@ -15,23 +15,7 @@
|
|||||||
{{> systems/fvtt-avd12/templates/items/partial-item-description.hbs}}
|
{{> systems/fvtt-avd12/templates/items/partial-item-description.hbs}}
|
||||||
|
|
||||||
<div class="tab details" data-group="primary" data-tab="details">
|
<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>
|
</div>
|
||||||
|
|
||||||
{{#if isGM}}
|
{{#if isGM}}
|
||||||
@ -42,10 +26,7 @@
|
|||||||
{{#each system.levels as |level index|}}
|
{{#each system.levels as |level index|}}
|
||||||
<hr>
|
<hr>
|
||||||
<li class="flexrow">
|
<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>
|
</li>
|
||||||
|
|
||||||
<ul class="ul-level1">
|
<ul class="ul-level1">
|
||||||
|
@ -41,13 +41,10 @@
|
|||||||
</li>
|
</li>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<!--
|
|
||||||
<li class="flexrow">
|
<li class="flexrow">
|
||||||
<label class="item-field-label-long">Selected</label>
|
<label class="item-field-label-long">Selected</label>
|
||||||
<input type="checkbox" class="item-field-label-short" name="system.selected" {{checked system.selected}} />
|
<input type="checkbox" class="item-field-label-short" name="system.selected" {{checked system.selected}} />
|
||||||
</li>
|
</li>
|
||||||
-->
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
Reference in New Issue
Block a user