Compare commits

...

9 Commits

Author SHA1 Message Date
a8d440b531 Inc releas 2022-07-26 22:59:33 +02:00
635d5bbdb7 Minor fixes 2022-07-26 22:37:38 +02:00
80708e3f0a Data model change 2022-07-26 21:40:42 +02:00
eda4455be3 Data model change 2022-07-26 10:03:49 +02:00
74da4b6285 Data model change 2022-07-26 10:03:23 +02:00
732d51b8b3 Data model change 2022-07-25 21:33:00 +02:00
1de5086efa Data model change 2022-07-25 19:14:25 +02:00
918d69e677 Data model change 2022-07-25 19:13:52 +02:00
dbf9c01cd7 Data model change 2022-07-25 09:08:55 +02:00
80 changed files with 410 additions and 908 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File

@ -16,7 +16,7 @@ export class CrucibleActorSheet extends ActorSheet {
template: "systems/fvtt-crucible-rpg/templates/actor-sheet.html",
width: 960,
height: 720,
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "combat" }],
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "skills" }],
dragDrop: [{ dragSelector: ".item-list .item", dropSelector: null }],
editScore: true
});
@ -46,6 +46,7 @@ export class CrucibleActorSheet extends ActorSheet {
race: duplicate(this.actor.getRace()),
moneys: duplicate(this.actor.getMoneys()),
encCapacity: this.actor.getEncumbranceCapacity(),
saveRoll: this.actor.getSaveRoll(),
containersTree: this.actor.containersTree,
encCurrent: this.actor.encCurrent,
options: this.options,
@ -213,29 +214,15 @@ export class CrucibleActorSheet extends ActorSheet {
this.actor.rollPool( 'phy', false, "dmg-res");
});
html.find('.roll-stat').click((event) => {
const statId = $(event.currentTarget).data("stat-key");
this.actor.rollStat(statId);
html.find('.roll-ability').click((event) => {
const abilityKey = $(event.currentTarget).data("ability-key");
this.actor.rollAbility(abilityKey);
});
html.find('.roll-mr').click((event) => {
this.actor.rollMR();
});
html.find('.roll-idr').click((event) => {
const diceValue = $(event.currentTarget).data("dice-value")
const li = $(event.currentTarget).parents(".item")
this.rollIDR( li.data("item-id"), diceValue)
})
html.find('.roll-spec').click((event) => {
html.find('.roll-skill').click((event) => {
const li = $(event.currentTarget).parents(".item");
const specId = li.data("item-id");
this.actor.rollSpec(specId);
const skillId = li.data("item-id")
this.actor.rollSkill(skillId)
});
html.find('.power-roll').click((event) => {
const li = $(event.currentTarget).parents(".item");
const powerId = li.data("item-id");
this.actor.rollPower(powerId);
});
html.find('.weapon-roll').click((event) => {
const li = $(event.currentTarget).parents(".item");
const weaponId = li.data("item-id");

View File

@ -80,7 +80,7 @@ export class CrucibleActor extends Actor {
/* -------------------------------------------- */
getEncumbranceCapacity() {
return this.data.data.statistics.str.value * 25
return 1;
}
/* -------------------------------------------- */
@ -129,9 +129,6 @@ export class CrucibleActor extends Actor {
/* -------------------------------------------- */
getSkills() {
let comp = duplicate(this.data.items.filter(item => item.type == 'skill') || []);
for (let c of comp) {
c.data.dice = CrucibleUtility.getDiceFromLevel(c.data.level);
}
return comp;
}
@ -171,6 +168,23 @@ export class CrucibleActor extends Actor {
return duplicate(this.data.items.filter(item => item.type == "equipment") || [])
}
/* ------------------------------------------- */
getSaveRoll(){
return {
reflex: {
"label": "Reflex",
"value": this.data.data.abilities.agi.value + this.data.data.abilities.wit.value
},
fortitude: {
"label": "Fortitude",
"value": this.data.data.abilities.str.value + this.data.data.abilities.con.value
},
willpower: {
"label": "Willpower",
"value": this.data.data.abilities.int.value + this.data.data.abilities.cha.value
}
}
}
/* ------------------------------------------- */
async buildContainerTree() {
@ -311,10 +325,6 @@ export class CrucibleActor extends Actor {
/* -------------------------------------------- */
syncRoll(rollData) {
let linkedRollId = CrucibleUtility.getDefenseState(this.id);
if (linkedRollId) {
rollData.linkedRollId = linkedRollId;
}
this.lastRollId = rollData.rollId;
CrucibleUtility.saveRollData(rollData);
}
@ -364,19 +374,17 @@ export class CrucibleActor extends Actor {
}
/* -------------------------------------------- */
getCommonRollData(abKey = undefined) {
getCommonRollData(abilityKey = undefined) {
let rollData = CrucibleUtility.getBasicRollData()
rollData.alias = this.name
rollData.actorImg = this.img
rollData.actorId = this.id
rollData.img = this.img
if (abilKey) {
rollData.getRelevantSkill(abKey)
rollData.ability = this.getAbility(abKey)
rollData.skillList = this.getRelevantSkill(abKey)
rollData.selectedKill = "0"
rollData.img = `systems/fvtt-crucible-rpg/images/icons/${rollData.ability.abbrev}.webp`
if (abilityKey) {
rollData.ability = this.getAbility(abilityKey)
//rollData.skillList = this.getRelevantSkill(abilityKey)
rollData.selectedKill = undefined
}
console.log("ROLLDATA", rollData)
@ -384,14 +392,32 @@ export class CrucibleActor extends Actor {
return rollData
}
/* -------------------------------------------- */
rollAbility(abilityKey) {
let rollData = this.getCommonRollData(abilityKey)
rollData.mode = "ability"
CrucibleUtility.rollCrucible(rollData)
}
/* -------------------------------------------- */
rollSkill(skillId) {
let skill = this.data.items.get(skillId)
if (skill) {
skill = duplicate(skill)
let abilityKey = skill.data.ability
let rollData = this.getCommonRollData(abilityKey)
rollData.mode = "skill"
rollData.skill = skill
this.startRoll(rollData)
}
}
/* -------------------------------------------- */
async startRoll(rollData) {
this.syncRoll(rollData);
//console.log("ROLL DATA", rollData)
this.syncRoll(rollData)
let rollDialog = await CrucibleRollDialog.create(this, rollData)
console.log(rollDialog)
rollDialog.render(true);
rollDialog.render(true)
}
}

View File

@ -5,7 +5,7 @@ export class CrucibleRollDialog extends Dialog {
/* -------------------------------------------- */
static async create(actor, rollData) {
let options = { classes: ["CrucibleDialog"], width: 620, height: 480, 'z-index': 99999 };
let options = { classes: ["CrucibleDialog"], width: 420, height: 280, 'z-index': 99999 };
let html = await renderTemplate('systems/fvtt-crucible-rpg/templates/roll-dialog-generic.html', rollData);
return new CrucibleRollDialog(actor, rollData, html, options);
@ -14,7 +14,7 @@ export class CrucibleRollDialog extends Dialog {
/* -------------------------------------------- */
constructor(actor, rollData, html, options, close = undefined) {
let conf = {
title: (rollData.mode == "skill") ? "Skill" : "Roll",
title: (rollData.mode == "skill") ? "Skill" : "Attribute",
content: html,
buttons: {
roll: {
@ -58,50 +58,17 @@ export class CrucibleRollDialog extends Dialog {
}
$(function () { onLoad(); });
html.find('#statDicesLevel').change((event) => {
this.rollData.statDicesLevel = Number(event.currentTarget.value)
});
html.find('#specDicesLevel').change(async (event) => {
this.rollData.specDicesLevel = Number(event.currentTarget.value)
CrucibleUtility.updateSpecDicePool(this.rollData)
this.refreshDialog()
});
html.find('.effect-clicked').change(async (event) => {
let toggled = event.currentTarget.checked
let effectIdx = $(event.currentTarget).data("effect-idx")
this.manageEffects(effectIdx, toggled)
this.refreshDialog()
});
html.find('.armor-clicked').change((event) => {
let toggled = event.currentTarget.checked
let armorIdx = $(event.currentTarget).data("armor-idx")
this.manageArmors(armorIdx, toggled)
this.refreshDialog()
});
html.find('.weapon-clicked').change((event) => {
let toggled = event.currentTarget.checked
let weaponIdx = $(event.currentTarget).data("weapon-idx")
this.manageWeapons(weaponIdx, toggled)
this.refreshDialog()
});
html.find('.equip-clicked').change((event) => {
let toggled = event.currentTarget.checked
let equipIdx = $(event.currentTarget).data("equip-idx")
this.manageEquip(equipIdx, toggled)
})
html.find('.pool-add-dice').click(async (event) => {
let diceKey = $(event.currentTarget).data("dice-key")
let diceLevel = $(event.currentTarget).data("dice-level")
CrucibleUtility.addDicePool(this.rollData, diceKey, diceLevel)
html.find('#none-clicked').change((event) => {
this.rollData.advantage = "none"
this.refreshDialog()
})
html.find('.pool-remove-dice').click(async (event) => {
let idx = $(event.currentTarget).data("dice-idx")
CrucibleUtility.removeFromDicePool(this.rollData, idx)
html.find('#advantage-clicked').change((event) => {
this.rollData.advantage = "advantage"
this.refreshDialog()
})
html.find('#disadvantage-clicked').change((event) => {
this.rollData.advantage = "disadvantage"
this.refreshDialog()
})
}
}

View File

@ -86,6 +86,9 @@ export class CrucibleUtility {
const templatePaths = [
'systems/fvtt-crucible-rpg/templates/editor-notes-gm.html',
'systems/fvtt-crucible-rpg/templates/partial-roll-select.html',
'systems/fvtt-crucible-rpg/templates/partial-actor-ability-block.html',
'systems/fvtt-crucible-rpg/templates/partial-actor-status.html',
'systems/fvtt-crucible-rpg/templates/partial-options-abilities.html',
'systems/fvtt-crucible-rpg/templates/partial-item-nav.html',
'systems/fvtt-crucible-rpg/templates/partial-item-description.html',
@ -260,50 +263,29 @@ export class CrucibleUtility {
let actor = game.actors.get(rollData.actorId)
let diceFormulaTab = []
for (let dice of rollData.dicePool) {
let level = dice.level
if (dice.name == "stat") {
level += rollData.statLevelBonus
}
diceFormulaTab.push(this.getFoundryDiceFromLevel(level))
let diceFormula = String(rollData.ability.value) + "d6cs>=5"
if (rollData.skill) {
diceFormula += "+" + String(rollData.skill.data.level) + "d8cs>=5"
}
if(rollData.advantage == "advantage") {
diceFormula += "+ 1d10cs>=5"
}
if(rollData.advantage == "disadvantage") {
diceFormula += "- 1d10cs>=5"
}
let diceFormula = '{' + diceFormulaTab.join(', ') + '}kh + ' + (rollData.stat?.mod || 0)
// Performs roll
let myRoll = rollData.roll
if (!myRoll || rollData.rerollHero || rollData.rerollMomentum) { // New rolls only of no rerolls
if (!myRoll) { // New rolls only of no rerolls
myRoll = new Roll(diceFormula).roll({ async: false })
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
rollData.roll = myRoll
}
// Final score and keep data
rollData.finalScore = myRoll.total
if (rollData.damages) {
let dmgFormula = this.getFoundryDiceFromLevel(rollData.damages.value)
let dmgRoll = new Roll(dmgFormula).roll({ async: false })
await this.showDiceSoNice(dmgRoll, game.settings.get("core", "rollMode"))
rollData.dmgResult = dmgRoll.total
}
rollData.nbSuccess = myRoll.total
this.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-crucible-rpg/templates/chat-generic-result.html`, rollData)
});
// Init stuf
if (rollData.isInit) {
let combat = game.combats.get(rollData.combatId)
combat.updateEmbeddedDocuments("Combatant", [{ _id: rollData.combatantId, initiative: rollData.finalScore }])
}
// Stun specific -> Suffere a stun level when dmg-res
if (rollData.subKey && rollData.subKey == "dmg-res") {
actor.modifyStun(+1)
}
//this.removeUsedPerkEffects( rollData) // Unused for now
this.removeOneUseEffects(rollData) // Unused for now
})
console.log("Rolldata result", rollData)
// And save the roll
this.saveRollData(rollData)
@ -394,6 +376,7 @@ export class CrucibleUtility {
let rollData = {
rollId: randomID(16),
rollMode: game.settings.get("core", "rollMode"),
advantage: "none"
}
CrucibleUtility.updateWithTarget(rollData)
return rollData

8
packs/armor.db Normal file
View File

@ -0,0 +1,8 @@
{"_id":"05TQy6UZnndCTon7","name":"Studded Leather","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Studded%20Leather.webp","data":{"armortype":"leathermedium","absorprionroll":"blue","damagedroll":"green","isproficient":false,"minstr":0,"skillpenalty":1,"equipped":false,"cost":0,"description":"<p>Studded Leather armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"HSE20fSJjeFfQjCm","name":"Clothes","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/icon_armour.webp","data":{"armortype":"clothes","absorprionroll":"none","damagedroll":"none","isproficient":false,"minstr":0,"skillpenalty":0,"equipped":false,"cost":0,"description":"<p>Clothes - not armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"LeO2jJRkOnSyDMp3","name":"Scalemail","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Scale.webp","data":{"armortype":"scale","absorprionroll":"red","damagedroll":"purple","isproficient":false,"minstr":2,"skillpenalty":2,"equipped":false,"cost":0,"description":"<p>Scalemail armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"O4DUjrkPYuziaPDE","name":"Chainmail","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Chainmail.webp","data":{"armortype":"chain","absorprionroll":"purple","damagedroll":"blue","isproficient":false,"minstr":0,"skillpenalty":2,"equipped":false,"cost":0,"description":"<p>Chainmail armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"RBUJoPo5gdIOIjzu","name":"Leather","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Leather.webp","data":{"armortype":"leatherlight","absorprionroll":"green","damagedroll":"white","isproficient":false,"minstr":0,"skillpenalty":0,"equipped":false,"cost":0,"description":"<p>Leather Armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"gNVYf8YjwC3rHcl5","name":"Padded Armor","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Padded.webp","data":{"armortype":"paddedlight","absorprionroll":"white","damagedroll":"none","isproficient":false,"minstr":0,"skillpenalty":0,"equipped":false,"cost":0,"description":"<p>Padded Cloth armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"tVVGSdJxLqkhlGTj","name":"Full Plate","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Full%20Plate.webp","data":{"armortype":"platefull","absorprionroll":"blackgreen","damagedroll":"black","isproficient":false,"minstr":3,"skillpenalty":3,"equipped":false,"cost":0,"description":"<p>Full Plate armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"y2hQX1gIMlVdWEj7","name":"Platemail","type":"armor","img":"systems/fvtt-crucible-rpg/images/icons/armors/Plate%20Mail.webp","data":{"armortype":"platemail","absorprionroll":"black","damagedroll":"red","isproficient":false,"minstr":2,"skillpenalty":3,"equipped":false,"cost":0,"description":"<p>Platemail armor</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

0
packs/conditions.db Normal file
View File

0
packs/currency.db Normal file
View File

0
packs/equipment.db Normal file
View File

0
packs/feats.db Normal file
View File

5
packs/lore-air.db Normal file
View File

@ -0,0 +1,5 @@
{"_id":"9xygl9YP5HJteXHg","name":"Push","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_air/Push.webp","data":{"lore":"air","circle":2,"range":"Line of Sight","description":"<p>An invisible force pushes your target.</p>\n<p>&nbsp;</p>\n<p><strong>Roll Air Lore Spell Check vs. Target Brawn</strong></p>\n<p>&nbsp;</p>\n<p><strong>Result Table</strong></p>\n<hr />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Spell too weak to have any effect on target</p>\n<p><strong>+1</strong>&nbsp; Pushed 5' directly away from caster</p>\n<p><strong>+2</strong>&nbsp; Pushed 5' caster's choice</p>\n<p><strong>+3&nbsp;</strong> Pushed 10' caster's choice</p>\n<p><strong>+4</strong>&nbsp; 1d6 damage, pushed 10' caster's choice, knocked PRONE</p>\n<p><strong>&gt;= +5</strong>&nbsp; 2d6 damage, pushed 15' caster's choice, knocked PRONE</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Jh7V0odyf6RjN7ef","name":"Lightning Bolt","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_air/Ligntning.webp","data":{"lore":"air","circle":3,"range":"Line of Sight","description":"<p>A bolt of lightning streaks towards your target.</p>\n<p>&nbsp;</p>\n<p><strong>Targeted Spell:&nbsp; Air Lore Spell Check vs. Target Roll</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Spell too weak to have any effect on target</p>\n<p><strong>+1</strong>&nbsp; 2d6 damage</p>\n<p><strong>+2</strong>&nbsp; 3d6 damage, STAGGERED for 1 Action</p>\n<p><strong>+3</strong>&nbsp; 4d6 damage, STAGGERED for 2 Actions</p>\n<p><strong>+4</strong>&nbsp; 5d6 damage, STAGGERED for 2 Actions</p>\n<p><strong>&gt;= +5</strong>&nbsp; 6d6 damage, STUNNED for 1 Action then STAGGERED for 1 Action</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"ZSkXvu6HahRHSNGD","name":"Vortex","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_air/Vortex.webp","data":{"lore":"air","circle":1,"range":"Line of Sight","description":"<p>A mini-tornado engulfs your target.</p>\n<p>&nbsp;</p>\n<p><strong>Roll Air Lore Spell Check vs. Target Brawn</strong></p>\n<p>&nbsp;</p>\n<p><strong>Result Table</strong></p>\n<hr />\n<p><strong>&lt; = -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Spell too weak to have any effect on target</p>\n<p><strong>+1</strong>&nbsp; IMMOBILIZED for 1 Action</p>\n<p><strong>+2&nbsp;</strong> IMMOBILIZED and ALL Actions at Disadvantage for 1 Action</p>\n<p><strong>+3</strong>&nbsp; 1d6 damage, moved 5' by caster, IMMOBILIZED for 1 Action, lose next Action</p>\n<p><strong>+4</strong>&nbsp; 2d6 damage, moved 5' by caster and knocked PRONE, IMMOBILIZED for 1 Action, lose next Action</p>\n<p><strong>&nbsp;&gt; = +5</strong>&nbsp; 2d6 damage, moved 10' by caster and knocked PRONE, IMMOBILZED for 2 Actions, lose next 2 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"gwy1fD9B4Gl98TKX","name":"Air Servant","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_air/Air%20Servant.webp","data":{"lore":"air","circle":4,"range":"1 Zone","description":"<p>You summon an Air Servant to do your bidding.</p>\n<p>&nbsp;</p>\n<p><strong>Results table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Summon a Veteran Air Servant for 4 Actions</p>\n<p><strong>+2</strong>&nbsp; Summon a Veteran Air Servant for 6 Actions</p>\n<p><strong>+3</strong>&nbsp; Summon an Elite Air Servant for 4 Actions</p>\n<p><strong>+4</strong>&nbsp; Summon an Elite Air Servant for 6 Actions</p>\n<p><strong>&gt;= +5</strong>&nbsp; Summon a Boss Air Servant for 10 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"pWjav70TOe8KPa1h","name":"Storm Front","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_air/Storm%20Front.webp","data":{"lore":"air","circle":5,"range":"Line of Sight","description":"<p>You call down thunder, lightning, and wind.</p>\n<p>&nbsp;</p>\n<p><strong>Area of Effect Spell - Choose Target Zone in Line of Sight</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; 1DD to all Actions for all creatures in Target Zone</p>\n<p><strong>+2</strong>&nbsp; 1d6 damage, 1DD to all Actions in Target Zone</p>\n<p><strong>+3</strong>&nbsp; 1d6 damage, 1DD to all Actions in Target Zone and all Adjacent Zones</p>\n<p><strong>+4</strong>&nbsp; 2d6 damage, 1DD to all Actions in Target Zone and all Adjacent Zones</p>\n<p><strong>+5</strong>&nbsp; 2d6 damage, 2DD to all Actions in Target Zone and all Adjacent Zones</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

5
packs/lore-earth.db Normal file
View File

@ -0,0 +1,5 @@
{"_id":"Cbp5gwCx6o2NARgB","name":"Barrier","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_earth/Barrier.webp","data":{"lore":"earth","circle":2,"range":"Close","description":"<p>The earth heaves up around you forming a chest high (4' tall) loose, rocky earthen berm.</p>\n<p><em>[The barrier may be any 2-dimensional shape the caster desires such as a line, a circle, a semi-circle, a square, a triangle, etc.]</em></p>\n<p>The barrier represents an obstacle to Movement that will require a Move Action Athetics Check [1] to climb over.</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Personal:&nbsp; 5' diameter circle or 15' total berm length</p>\n<p><strong>+2</strong>&nbsp; 10' diameter circle or 30' total berm length</p>\n<p><strong>+3</strong>&nbsp; 20' diameter circle or 65' total berm length</p>\n<p><strong>+4</strong>&nbsp; 30' diameter circle or 95' total berm length</p>\n<p><strong>&gt;= +5</strong>&nbsp; Add rock spikes to one face of the berm that increase the Athletics Check to [2] to climb over.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"H1KKI71UB5WA9WBr","name":"Quicksand","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_earth/Quicksand.webp","data":{"lore":"earth","circle":3,"range":"2 Zones","description":"<p>The earth becomes wet, soft, and spongy...</p>\n<p>The area affected effectively becomes impassable terrain for the duration of the spell.</p>\n<p>Caster can dispell as and when desired.</p>\n<p>&nbsp;</p>\n<p><strong>Area of Effect Spell - Choose Target Space up to 2 Zones away.</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; 5' diameter area, 5' deep, lasts for 15 minutes (150 Action Rounds)</p>\n<p><strong>+2</strong>&nbsp; 15' diameter area, 5' deep, lasts for 30 minutes</p>\n<p><strong>+3</strong>&nbsp; 20'&nbsp; diameter area, 5' deep, lasts for 45 minutes</p>\n<p><strong>+4</strong>&nbsp; 20' diameter area, 10' deep, lasts for 1 hour</p>\n<p><strong>&gt;= +5</strong>&nbsp; 25' diameter area, 15' deep, lasts for 2 hours</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"IsCvkGS3GQcFZ9vb","name":"Stone Golem","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_earth/Stone%20Golem.webp","data":{"lore":"earth","circle":4,"range":"1 Zone","description":"<p>You summon a golem of earth and stone to do your bidding.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Summon a Veteran Stone Golem for 4 Actions</p>\n<p><strong>+2</strong>&nbsp; Summon a Veteran Stone Golem&nbsp;for 6 Actions</p>\n<p><strong>+3</strong>&nbsp; Summon an Elite Stone Golem&nbsp;for 4 Actions</p>\n<p><strong>+4</strong>&nbsp; Summon an Elite Stone Golem&nbsp;for 6 Actions</p>\n<p><strong>&gt;= +5</strong>&nbsp; Summon a Boss Stone Golem&nbsp;for 10 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"OVLXaGfpYzvgwysP","name":"Earthquake","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_earth/Earthquake.webp","data":{"lore":"earth","circle":5,"range":"Line of Sight","description":"<p>The earth shakes, rolls, and cracks open</p>\n<p>&nbsp;</p>\n<p><strong>Area of Effect Spell - Choose a Target Zone within Line of Sight.</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; All creatures in Target Zone fall PRONE</p>\n<p><strong>+2</strong>&nbsp; 1d6 damage, PRONE</p>\n<p><strong>+3</strong>&nbsp; 2d6 damage, PRONE, STAGGERED for 1 Action</p>\n<p><strong>+4</strong>&nbsp; 2d6 damage, PRONE, STAGGERED for 1 Action&nbsp;in Target Zone and all Adjacent Zones</p>\n<p><strong>+5</strong>&nbsp; 3d6 damage,&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">PRONE, STAGGERED for 1 Action</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\"> in Target Zone and all Adjacent Zones</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"UpEjqbQhZAO2Kh08","name":"Stone Skin","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_earth/Stone%20Skin.webp","data":{"lore":"earth","circle":1,"range":"Same Zone","description":"<p>Your target's skin thickens into stony scales that last for 10 Action Rounds or until the Hit Point Absorption is used.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Absorbs 3 Hit Points of damage</p>\n<p><strong>+2</strong>&nbsp; Absorbs 4 Hit Points of damage</p>\n<p><strong>+3</strong>&nbsp; Absorbs 6 Hit Points of damage</p>\n<p><strong>+4</strong>&nbsp; Absorbs 8 Hit Points of damage</p>\n<p><strong>&gt;= +5</strong>&nbsp; Absorbs 10 Hit Points of damage</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

5
packs/lore-fire.db Normal file
View File

@ -0,0 +1,5 @@
{"_id":"BhBuAZjW6fFGU66P","name":"Fire Ball","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_fire/Fire%20Ball.webp","data":{"lore":"fire","circle":3,"range":"Line of Sight","description":"<p>A ball of flames issues from your outstretched hand and hurtles across the battlefield and explodes in a fiery inferno.</p>\n<p>&nbsp;</p>\n<p><strong>Targeted Spell:&nbsp; Fire Lore Spell Check vs. Target Roll</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; 1d6 damage to target / No splash damage to adjacent creatures</p>\n<p><strong>+1</strong>&nbsp; 2d6 damage to target / 1d6 damage within 5' radius</p>\n<p><strong>+2</strong>&nbsp; 3d6 damage to target, ON FIRE / 1d6 damage within 5' radius</p>\n<p><strong>+3</strong>&nbsp; 4d6 damage to target, ON FIRE, STAGGERED / 2d6 damage within 5' radius</p>\n<p><strong>+4</strong>&nbsp; 5d6 damage to target, ON FIRE, STAGGERED / 3d6 damage within 5' radius, ON FIRE / 1d6 damage within 10' radius</p>\n<p><strong>+5</strong>&nbsp; 6<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage to target, ON FIRE, STAGGERED / 3d6 damage within 5' radius, ON FIRE / 2d6 damage within 10' radius</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"DrBWhw1XnfIKgdYc","name":"Fire Storm","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_fire/Fire%20Storm.webp","data":{"lore":"fire","circle":5,"range":"Line of Sight","description":"<p>You open the skies and call down a hellish inferno of fire and brimstone.</p>\n<p>&nbsp;</p>\n<p><strong>Area of Effect Spell - Choose a Target Zone within Line of Sight.</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; 2d6 damage to all creatures in Target Zone</p>\n<p><strong>+2</strong>&nbsp; 3<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage to all creatures in Target Zone, ON FIRE</span></p>\n<p><strong>+3</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">3</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage to all creatures in Target Zone, ON FIRE / 2d6 damage in all Adjacent Zones</span></p>\n<p><strong>+4</strong>&nbsp; 4<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage to all creatures in Target Zone, ON FIRE, STAGGERED / 2d6 damage in all Adjacent Zones</span></p>\n<p><strong>+5</strong>&nbsp; 5<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage to all creatures in Target Zone, ON FIRE, STAGGERED / 3d6 damage in all Adjacent Zones</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"f1YNI4RAvOFhpBIf","name":"Fire Bolt","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_fire/Fire%20Bolt.webp","data":{"lore":"fire","circle":1,"range":"Line of Sight","description":"<p>A small fiery missle shoots from your extended hand and streaks towards your target.</p>\n<p>&nbsp;</p>\n<p><strong>Targeted Spell:&nbsp; Fire Lore Spell Check vs. Target Roll</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Spell too weak to have any effect on Target</p>\n<p><strong>+1</strong>&nbsp; 1d6 damage</p>\n<p><strong>+2</strong>&nbsp; 2d6 damage</p>\n<p><strong>+3</strong>&nbsp; 3d6 damage, ON FIRE, STAGGERED for 1 Action</p>\n<p><strong>+4</strong>&nbsp; 3d6 damage, PRONE, ON FIRE, STAGGERED for 1 Action</p>\n<p><strong>+5</strong>&nbsp; 4d6 damage, PRONE, ON FIRE, STAGGERED for 1 Action&nbsp;</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"gKU8IwYA21ipd8SO","name":"Flame Serpent","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_fire/Flame%20Serpent.webp","data":{"lore":"fire","circle":4,"range":"1 Zone","description":"<p>You summon a Flame Serpent to attack your enemies.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Summon a Veteran Flame Serpent for 4 Actions</p>\n<p><strong>+2</strong>&nbsp; Summon a Veteran Flame Serpent&nbsp;for 6 Actions</p>\n<p><strong>+3</strong>&nbsp; Summon an Elite Flame Serpent&nbsp;for 4 Actions</p>\n<p><strong>+4</strong>&nbsp; Summon an Elite Flame Serpent&nbsp;for 6 Actions</p>\n<p><strong>&gt;= +5</strong>&nbsp; Summon a Boss Flame Serpent&nbsp;for 10 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"tLTj25k3936eJujM","name":"Fiery Weapon","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_fire/Flaming%20Weapon.webp","data":{"lore":"fire","circle":2,"range":"Same Zone","description":"<p>The target weapon is sheathed in dancing flames.</p>\n<p>&nbsp;</p>\n<p><strong>Attacks with the weapon this Action Round <span style=\"text-decoration: underline;\">that cause damage</span> will do additional fire damage.</strong></p>\n<p>The flames will fade whether or not an attack is made.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; 1d6 Fire damage; flames are doused</p>\n<p><strong>+2</strong>&nbsp; 2d6 Fire damage; flames are doused</p>\n<p><strong>+3</strong>&nbsp; 2d6 Fire damage; then 1d6 Fire damage next attack or Action Round, flames are doused</p>\n<p><strong>+4</strong>&nbsp; 2d6 Fire damage; then 2d6 Fire damage next attack or Action Round, flames are doused</p>\n<p><strong>&gt;= +5</strong>&nbsp; 3d6 Fire damage; then 2d6 Fire damage next attack or Action Round, then 1d6 Fire damage next attack or Action Round, flames are doused.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

5
packs/lore-shadow.db Normal file
View File

@ -0,0 +1,5 @@
{"_id":"92HoxIHB3VUIa2PB","name":"Terror","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_shadow/Terror.webp","data":{"lore":"shadow","circle":2,"range":"2 Zones","description":"<p>A curling, swirling black mist completely engulfs your target.</p>\n<p>&nbsp;</p>\n<p><strong>Roll Shadow Lore Spell Check vs. Target Will Save</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Target shakes head to clear it</p>\n<p><strong>+1</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">STAGGERED &amp; 1DD for 1 Action</span></p>\n<p><strong>+2</strong>&nbsp; STAGGERED, 1DD &amp; Flee for 1 Action</p>\n<p><strong>+3</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">STAGGERED, 1DD &amp; Flee for 1 Action, STAGGERED &amp; 1DD for 1 Action</span></p>\n<p><strong>+4</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">STAGGERED, 1DD &amp; Flee for 2 Actions, STAGGERED &amp; 1DD for 1 Action</span></p>\n<p><strong>+5</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">STAGGERED, 1DD &amp; Flee for 2 Actions, STAGGERED &amp; 1DD for 2 Actions</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"UD2oLWWlYxAv8iRe","name":"Whisper","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_shadow/Whisper.webp","data":{"lore":"shadow","circle":5,"range":"2 Zones","description":"<p>A curling, swirling black mists enters every orifice of your target.</p>\n<p>&nbsp;</p>\n<p><strong>Roll Shadow Lore Spell Check vs. Target Will Save</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Target coughs and shakes head to clear it</p>\n<p><strong>+1</strong>&nbsp; STAGGERED &amp; 1DD for 2 Actions</p>\n<p><strong>+2</strong>&nbsp; Caster has control of target for 1 Action, STAGGERED &amp; 1DD for 1 Action</p>\n<p><strong>+3</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Caster has control of target for 2 Actions, STAGGERED &amp; 1DD for 1 Action</span></p>\n<p><strong>+4</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Caster has control of target for 2 Actions, STAGGERED &amp; 1DD for 2 Actions</span></p>\n<p><strong>+5</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Caster has control of target for 3 Actions, STAGGERED &amp; 1DD for 2 Actions</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"YRhaIrYj230FO5sS","name":"Grim Reaper","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_shadow/Grim%20Reaper.webp","data":{"lore":"shadow","circle":4,"range":"1 Zone","description":"<p>You summon a shadowy ally to do your bidding.</p>\n<p>&nbsp;</p>\n<p><strong>Results table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Summon a Veteran Reaper for 4 Actions</p>\n<p><strong>+2</strong>&nbsp; Summon a Veteran Reaper&nbsp;for 6 Actions</p>\n<p><strong>+3</strong>&nbsp; Summon an Elite Reaper&nbsp;for 4 Actions</p>\n<p><strong>+4</strong>&nbsp; Summon an Elite Reaper&nbsp;for 6 Actions</p>\n<p><strong>&gt;= +5</strong>&nbsp; Summon a Boss Reaper&nbsp;for 10 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"kdilEdK0Isll2T4g","name":"Shadow Meld","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_shadow/Shadow%20Meld.webp","data":{"lore":"shadow","circle":3,"range":"Close","description":"<p>You become an INCORPOREAL shadow.</p>\n<p>&nbsp;</p>\n<p><strong>Gain the Shadow Touch attack at your Shadow Lore Skill Level.</strong></p>\n<p><strong>Being INCORPOREAL makes you immune to Physical Damage.</strong></p>\n<p><strong>+4d6 to Stealth Rolls</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Spell lasts for 2 Actions</p>\n<p><strong>+2</strong>&nbsp; Spell lasts for 4 Actions</p>\n<p><strong>+3</strong>&nbsp; Spell lasts for 6 Actions</p>\n<p><strong>+4</strong> Spell lasts for 8 Actions</p>\n<p><strong>&gt;= +5</strong> Spell lasts for 10 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"tfbWGOUKM4sZkzHQ","name":"Confusion","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_shadow/Confusion.webp","data":{"lore":"shadow","circle":1,"range":"2 Zones","description":"<p>A curling, swirling black mist engulfs your target's head.</p>\n<p>&nbsp;</p>\n<p><strong>Roll Shadow Lore Spell Check vs. Target Will Save</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Target shakes head to clear it</p>\n<p><strong>+1</strong>&nbsp; STAGGERED for 1 Action</p>\n<p><strong>+2</strong>&nbsp; STAGGERED &amp; 1DD for 1 Action</p>\n<p><strong>+3</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">STAGGERED &amp; 1DD for 1 Action, STAGGERED for 1 Action</span></p>\n<p><strong>+4</strong>&nbsp; STUNNED for 1 Action,&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">STAGGERED &amp; 1DD for 1 Action, STAGGERED for 1 Action</span></p>\n<p><strong>+5</strong>&nbsp; STUNNED for 1 Actions, STAGGERED &amp; 1DD for 2 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

5
packs/lore-water.db Normal file
View File

@ -0,0 +1,5 @@
{"_id":"5uDoivPNJW4cIule","name":"Jet","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_water/Jet.webp","data":{"lore":"water","circle":3,"range":"1 Zone","description":"<p>A high velocity water jet shoots from your hands across the battlefield.</p>\n<p>&nbsp;</p>\n<p><strong>Targeted Spell:&nbsp; Water Lore Spell Check vs. Target Roll</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= -3</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>-1 to -2</strong>&nbsp; Spell Fizzles</p>\n<p><strong>0</strong>&nbsp; Target gets a refreshing shower</p>\n<p><strong>+1</strong>&nbsp; Target STAGGERED for 1 Action</p>\n<p><strong>+2</strong>&nbsp; Target pushed 5' away from Caster, STAGGERED for 1 Action</p>\n<p><strong>+3</strong>&nbsp; 1d6 damage, <span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Target pushed 10' away from Caster, STAGGERED for 1 Action</span></p>\n<p><strong>+4</strong>&nbsp; 2<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage,</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">&nbsp;</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Target pushed 10' away from Caster, PRONE, STAGGERED for 1 Action</span></p>\n<p><strong>+5</strong>&nbsp; 3<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">d6 damage,</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">&nbsp;</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Target pushed 10' away from Caster, PRONE STAGGERED for 2 Actions</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"D8nvAbtVEduSoNpC","name":"Water Elemental","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_water/Water%20Elemental.webp","data":{"lore":"water","circle":4,"range":"1 Zone","description":"<p>You summon a Water Elemental to sweep you enemies before you.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Summon a Veteran Water Elemental for 4 Actions</p>\n<p><strong>+2</strong>&nbsp; Summon a Veteran Water Elemental&nbsp;for 6 Actions</p>\n<p><strong>+3</strong>&nbsp; Summon an Elite Water Elemental&nbsp;for 4 Actions</p>\n<p><strong>+4</strong>&nbsp; Summon an Elite Water Elemental&nbsp;for 6 Actions</p>\n<p><strong>&gt;= +5</strong>&nbsp; Summon a Boss Water Elemental&nbsp;for 10 Actions</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Gl1dYziKfZNo6HEx","name":"Fog","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_water/Fog.webp","data":{"lore":"water","circle":5,"range":"Line of Sight","description":"<p>A thick, swirling fog appears in the Target Zone.</p>\n<p>&nbsp;</p>\n<p>The Fog blocks Line of Sight into and out of all affected Zones and causes Disadvantage to all ranged attacks made within any affected Zone.</p>\n<p>All Moves require +1 Successes.</p>\n<p>&nbsp;</p>\n<p><strong>Area of Effect Spell - Choose Target Zone in Line of Sight</strong></p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Fog fills the Target Zone for 3 Action Rounds</p>\n<p><strong>+2</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Fog fills the Target Zone for 5 Action Rounds</span></p>\n<p><strong>+3</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Fog fills the Target Zone and all Adjacent Zones for 5 Action Rounds</span></p>\n<p><strong>+4</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Fog fills the Target Zone and all Adjacent Zones for 8 Action Rounds</span></p>\n<p><strong>+5</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">Fog fills the Target Zone and all Adjacent Zones for 10 Action Rounds</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Uekx1LKGG6Hzfur4","name":"Restore","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_water/Restore.webp","data":{"lore":"water","circle":1,"range":"Same Zone","description":"<p>A cool, refreshing blue glow issues from your hands.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; Restore 1 Effort</p>\n<p><strong>+2</strong>&nbsp; Restore 1d3 Effort</p>\n<p><strong>+3</strong>&nbsp; Restore 1d6 Effort</p>\n<p><strong>+4</strong>&nbsp; Restore 1d8 Effort, remove 1 random CONDITION</p>\n<p><strong>+5</strong>&nbsp; Restore 1d10 Effort, remove 1 random CONDITION</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"jiGRn6KPXJgkwPU4","name":"Abolish","type":"spell","img":"systems/fvtt-crucible-rpg/images/icons/lore_water/Abolish.webp","data":{"lore":"water","circle":2,"range":"Same Zone","description":"<p>Green energy rushes from your hands and envelops your target.</p>\n<p>&nbsp;</p>\n<p><strong>Results Table</strong></p>\n<hr style=\"border-top: 1px solid var(--color-border-light-primary); border-bottom: 1px solid var(--color-border-light-highlight);\" />\n<p><strong>&lt;= 0</strong>&nbsp; SPELL FAILURE! (FUMBLE)</p>\n<p><strong>+1</strong>&nbsp; R<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">emove 1 random CONDITION</span></p>\n<p><strong>+2</strong>&nbsp; R<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">emove 1 CONDITION of caster's choice</span></p>\n<p><strong>+3</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">R</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">emove 2 CONDITIONS of caster's choice</span></p>\n<p><strong>+4</strong>&nbsp;&nbsp;<span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">R</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">emove 2 CONDITIONS of caster's choice and restore 1d3 Effort</span></p>\n<p><strong>+5</strong>&nbsp; <span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">R</span><span style=\"font-family: var(--font-primary); font-size: var(--font-size-14);\">emove all CONDITIONS and restore 1d6 Effort</span></p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

0
packs/lore.db Normal file
View File

0
packs/poisons.db Normal file
View File

0
packs/shields.db Normal file
View File

22
packs/skills.db Normal file
View File

@ -0,0 +1,22 @@
{"_id":"0EsFFhDpU4U1qfbr","name":"First Aid","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/First%20Aid.webp","data":{"ability":"int","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Stop the bleeding; save a life.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"4UYwQiRMi6b9Voif","name":"Ride Mount","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Ride%20Mount.webp","data":{"ability":"str","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Help me back up. I know I can tame him.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"6C4CHsYkDBY05f4W","name":"Stealth","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Stealth.webp","data":{"ability":"agi","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Stay on your toes and don't breath so loud.....</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"6b9cpqdptAKFwy16","name":"Locks & Pockets","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Locks%20and%20Pockets.webp","data":{"ability":"dex","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>...and every lock that ain't locked when no one's around.....</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"6jzbwKOKvNUbXYxN","name":"Perception","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Perception.webp","data":{"ability":"wit","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>I think I heard a noise. Would you go check?</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"BKRHCd3kMfmQ7tcI","name":"Water Lore","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Water%20Lore.webp","data":{"ability":"int","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>You can cast Water Lore spells.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"KR9JDNO8QkeNPa8W","name":"Haggle","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Haggle.webp","data":{"ability":"wit","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>I'll give you half of your asking price and make you like it.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"SyaqDmAk6PEG2wZI","name":"Air Lore","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Air%20Lore.webp","data":{"ability":"int","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>You can cast Air Lore Spells.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"T4YzMBGXyDrzEaBA","name":"Earth Lore","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Earth%20Lore.webp","data":{"ability":"int","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>You can cast Earth Lore spells.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"XenGlvxetLv0A92F","name":"Acrobatics","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Acrobatics.webp","data":{"ability":"agi","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Handy for swinging from Chandaliers, sliding down stair rails, rolling between the legs of a Giant, and other feats of astonishing balance and agility.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"XurQCYDVwEA0yxcv","name":"Fire Lore","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Fire%20Lore.webp","data":{"ability":"int","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>You can cast Fire Lore spells.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Y4o571K5DQseDaGT","name":"Swim","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Swim.webp","data":{"ability":"str","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Kick you feet and don't forget to breathe!</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"ZfIwXZwaBKaVoYbG","name":"Athletics","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Athletics.webp","data":{"ability":"agi","armorpenalty":true,"bonusdice":"none","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Your ability to run, jump, and climb; a measure of your physical coordination.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"cc74gHSQK4hRR8Vj","name":"Brawn","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Brawn.webp","data":{"ability":"str","armorpenalty":false,"bonusdice":"none","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>A combination of your Size and Strength.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"fegRI4Vsyr0Us1Ga","name":"Research","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Research.webp","data":{"ability":"int","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Give me a moment to look that up....</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"i8eeE2I9vv2kHwdJ","name":"Shadow Lore","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Shadow%20Lore.webp","data":{"ability":"int","armorpenalty":true,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>You can cast Shadow Lore spells.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"lfB80K2lFSzQH442","name":"Intuition","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Intuition.webp","data":{"ability":"wit","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>I see what you did there.&nbsp; I think you're up to something....</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"mVIFRdqNRfAItR8f","name":"Persuade","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Persuade.webp","data":{"ability":"int","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>I'm sure you'll see it my way....</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"obASqfQt8xUsbTmB","name":"Intimidate","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Intimidate.webp","data":{"ability":"cha","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Because I said so; that's why!</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"s2AAQviLttcHul3X","name":"Charm","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Charm.webp","data":{"ability":"cha","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Getting someone to do what you want because they want to do it.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"xlYUHAUSfQrsjQoi","name":"Survival","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Survival.webp","data":{"ability":"wit","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Help me set this snare and we'll eat like kings in the morning.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"yAhtkgqf7pKyjJTA","name":"Poison Use","type":"skill","img":"systems/fvtt-crucible-rpg/images/icons/skills/Poison%20Use.webp","data":{"ability":"dex","armorpenalty":false,"bonusdice":"","level":0,"background":0,"basic":0,"class":0,"exp":0,"description":"<p>Let me apply this to my blade.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

32
packs/weapons.db Normal file
View File

@ -0,0 +1,32 @@
{"_id":"3QGyPwA2H8RwtFBr","name":"Hand Axe (Thrown)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Hand%20Axe.webp","data":{"ability":"dex","isproficient":false,"qualities":"","flaws":"Light","damage":"Slashing","range":"Same Zone","maxrange":"1 Zone","minstr":0,"cost":0,"equipped":false,"description":"<p>Hand Axe</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"3VT9Bgs1lpFRqgWt","name":"2-H Pick","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Pick.webp","data":{"ability":"str","isproficient":false,"qualities":"Heavy,Penetrating","flaws":"","damage":"Piercing","range":"Melee","maxrange":"","minstr":2,"cost":0,"equipped":false,"description":"<p>2-H Pick</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"6B8kMi1FHv5njtbD","name":"2-H Flail","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Flail.webp","data":{"ability":"agi","isproficient":false,"qualities":"Heavy,Reach,Entangle","flaws":"Dangerous","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":2,"cost":0,"equipped":false,"description":"<p>2-H Flail</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"A4O9ISnyCqtckanV","name":"Dagger (Melee)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Dagger.webp","data":{"ability":"agi","isproficient":false,"qualities":"","flaws":"Light","damage":"Piercing","range":"Close","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Dagger</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Czf55rIkPBsaLLfN","name":"Hammer (Thrown)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Hammer.webp","data":{"ability":"dex","isproficient":false,"qualities":"","flaws":"","damage":"Bludgeoning","range":"Same Zone","maxrange":"1 Zone","minstr":0,"cost":0,"equipped":false,"description":"<p>Hammer</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"GrjekQXKaFnFODXK","name":"Unarmed","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Unarmed.webp","data":{"ability":"agi","isproficient":false,"qualities":"","flaws":"Undamaging","damage":"Bludgeoning","range":"Close","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Unarmed</p>\n<p>&nbsp;</p>\n<p>As an UNDAMAGING attack the maximum Result is +2.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"JXK1qP9uqlxvcnxB","name":"2-H Club","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Club.webp","data":{"ability":"str","isproficient":false,"qualities":"","flaws":"","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>2-H Club</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"LATr6R7cNOtYJgaO","name":"Hammer (Melee)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Hammer.webp","data":{"ability":"str","isproficient":false,"qualities":"","flaws":"","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Hammer</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"MpzJvauaq7UKdyi5","name":"Sling","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Sling.webp","data":{"ability":"dex","isproficient":false,"qualities":"","flaws":"","damage":"Bludgeoning","range":"2 Zones","maxrange":"4 Zones","minstr":0,"cost":0,"equipped":false,"description":"<p>Sling</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"PDXDPlqck6VURcGB","name":"2-H Axe","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Axe.webp","data":{"ability":"str","isproficient":false,"qualities":"Heavy,Hack","flaws":"","damage":"Slashing","range":"","maxrange":"","minstr":2,"cost":0,"equipped":false,"description":"<p>2-H Axe</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Q4tpJZV4HAsyVAWT","name":"2-H Mace","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Mace.webp","data":{"ability":"str","isproficient":false,"qualities":"Heavy","flaws":"","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":2,"cost":0,"equipped":false,"description":"<p>2-H Mace</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"QzJZr6guDrUjsuTU","name":"Spear (1-H)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Spear.webp","data":{"ability":"agi","isproficient":false,"qualities":"Reach","flaws":"","damage":"Piercing","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Spear</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"Sm3Pze2LY6BnoTBq","name":"Mace","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Mace.webp","data":{"ability":"str","isproficient":false,"qualities":"","flaws":"","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Mace</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"VOg1kpjhJ7h3XsSk","name":"Club","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Club.webp","data":{"ability":"str","isproficient":false,"qualities":"","flaws":"Light","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Club</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"WvqALDHVEVt6TskF","name":"Javelin","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Javelin.webp","data":{"ability":"agi","isproficient":false,"qualities":"Penetrating","flaws":"","damage":"Piercing","range":"3 Zones","maxrange":"6 Zones","minstr":0,"cost":0,"equipped":false,"description":"<p>Javelin</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"XTfw2cefPXucQgMG","name":"Crossbow","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Crossbow.webp","data":{"ability":"dex","isproficient":false,"qualities":"Penetrating","flaws":"Reload","damage":"Piercing","range":"4 Zones","maxrange":"8 Zones","minstr":0,"cost":0,"equipped":false,"description":"<p>Crossbow</p>\n<p>Requires 1 Action to reload after shooting - So you can only shoot every other Action Round.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"XUAMSiOmPHi1LEHs","name":"2-H Hammer","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Hammer.webp","data":{"ability":"str","isproficient":false,"qualities":"Heavy","flaws":"","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":2,"cost":0,"equipped":false,"description":"<p>2-H Hammer</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"ZfBqMaYjg5z8Kh97","name":"Hand Axe (Melee)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Hand%20Axe.webp","data":{"ability":"str","isproficient":false,"qualities":"Hack","flaws":"Light","damage":"Slashing","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Hand Axe</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"ZoooviRlvZIQR6d2","name":"Sting","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/icon_weapon.webp","data":{"ability":"agi","isproficient":false,"qualities":"","flaws":"","damage":"Piercing","range":"Close","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Sting - natural weapon</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"cC3xXzzZ8UpDGONs","name":"2-H Sword","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/2-H%20Sword.webp","data":{"ability":"str","isproficient":false,"qualities":"Heavy,Reach,Hack","flaws":"","damage":"Slashing","range":"Melee","maxrange":"","minstr":2,"cost":0,"equipped":false,"description":"<p>2-Handed Sword</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"cMMWV7HusxfUfL4E","name":"Flail","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Flail.webp","data":{"ability":"agi","isproficient":false,"qualities":"Entangle","flaws":"Dangerous","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Flail</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"ce4yvgCTTxWocuPJ","name":"Bite","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/icon_weapon.webp","data":{"ability":"agi","isproficient":false,"qualities":"","flaws":"","damage":"Piercing","range":"Close","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Bite - natural weapon</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"fE5cUHjc5GYGRdty","name":"Spear (Thrown)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Spear.webp","data":{"ability":"agi","isproficient":false,"qualities":"Penetrating","flaws":"","damage":"Piercing","range":"2 Zones","maxrange":"4 Zones","minstr":0,"cost":0,"equipped":false,"description":"<p>Spear</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"hR0EtMiIy5ybcS84","name":"Staff (2-H)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Staff.webp","data":{"ability":"str","isproficient":false,"qualities":"Reach","flaws":"","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Staff - always used 2-handed.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"ivLgdf33xEk9IWAW","name":"Pick","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Pick.webp","data":{"ability":"str","isproficient":false,"qualities":"Penetrating","flaws":"","damage":"Piercing","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Pick</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"lH54F6LNWMYg5dNt","name":"Claw","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/icon_weapon.webp","data":{"ability":"agi","isproficient":false,"qualities":"","flaws":"","damage":"Slashing","range":"Close","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Claw - natural weapon</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"mMCl8JZboWUYZgvB","name":"Dagger (Thrown)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Dagger.webp","data":{"ability":"dex","isproficient":false,"qualities":"","flaws":"Light","damage":"Piercing","range":"1 Zone","maxrange":"2 Zones","minstr":0,"cost":0,"equipped":false,"description":"<p>Dagger</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"oSBtSHos9aQvbhfm","name":"Improvised (Thrown)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Improvised.webp","data":{"ability":"dex","isproficient":false,"qualities":"","flaws":"Light","damage":"Bludgeoning","range":"Same Zone","maxrange":"1 Zone","minstr":0,"cost":0,"equipped":false,"description":"<p>An Improvised ranged weapon such as a bottle or a rock.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"qz2f2DO4HOZFrv2k","name":"Spear (2-H)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Spear.webp","data":{"ability":"agi","isproficient":false,"qualities":"Heavy,Reach,Penetrating","flaws":"","damage":"Piercing","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Spear, used with both hands.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"u4vvzNFSNluNdyn0","name":"Bow","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Bow.webp","data":{"ability":"dex","isproficient":false,"qualities":"Penetrating","flaws":"","damage":"Piercing","range":"5 Zones","maxrange":"10 Zones","minstr":0,"cost":0,"equipped":false,"description":"<p>Bow with arrows</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"uJs7IdVvomKVXlV9","name":"Improvised (Melee)","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Improvised.webp","data":{"ability":"agi","isproficient":false,"qualities":"","flaws":"Light","damage":"Bludgeoning","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>An Improvised melee weapon such as a broken bottle, a chair leg, or a stick.</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}
{"_id":"x6wkZiE2G2QP41S2","name":"Sword","type":"weapon","img":"systems/fvtt-crucible-rpg/images/icons/weapons/Sword.webp","data":{"ability":"agi","isproficient":false,"qualities":"Deadly","flaws":"","damage":"Slashing","range":"Melee","maxrange":"","minstr":0,"cost":0,"equipped":false,"description":"<p>Sword</p>"},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"Up3b6rNa3VKAFQC3":3},"flags":{}}

View File

@ -605,7 +605,7 @@ ul, li {
.devotion-label,
.sort-label,
.technique-label,
.stat-label,
.ability-label,
.arme-label,
.armure-label,
.equipement-label,
@ -720,7 +720,7 @@ ul, li {
flex-shrink: 1;
flex-grow: 0;
}
.npc-stat-label {
.npc-ability-label {
flex-grow: 2;
}
@ -739,7 +739,7 @@ ul, li {
margin-left: 0.25rem;
}
.stats-table {
.abilities-table {
align-content: flex-start;
}
@ -926,7 +926,7 @@ ul, li {
height: 64px;
}
.stat-icon {
.ability-icon {
border: 0;
padding: 2px 2px 2px 2px;
max-width:32px;
@ -934,7 +934,7 @@ ul, li {
width: auto;
height: auto;
}
.small-stat-icon {
.small-ability-icon {
border: 0;
padding: 2px 2px 2px 2px;
max-width:16px;
@ -1348,15 +1348,15 @@ Focus FOC: #ff0084
max-width: 128px;
justify-content: flex-start;
}
.stat-item {
.ability-item {
flex-grow: 1;
justify-content: flex-start;
margin: 2px;
}
.stat-block {
.ability-block {
min-width: 160px;
}
.stat-margin {
.ability-margin {
margin-left: 4px;
margin-top: 5px;
}
@ -1364,14 +1364,11 @@ Focus FOC: #ff0084
margin-left: 4px;
margin-top: 3px;
}
.stat-text-white {
color: white;
}
.item-stat-roll {
.item-ability-roll {
max-height: 42px;
min-height: 36px;
}
.item-stat-roll select, .item-stat-roll input {
.item-ability-roll select, .item-ability-roll input {
margin-top: 4px;
margin-right: 2px;
}

View File

@ -140,6 +140,26 @@
"tags": [
"skill"
]
},
{
"entity": "Item",
"label": "Feats",
"name": "feats",
"path": "./packs/feats.db",
"system": "fvtt-crucible-rpg",
"tags": [
"feat"
]
},
{
"entity": "Item",
"label": "Poisons",
"name": "poisons",
"path": "./packs/poisons.db",
"system": "fvtt-crucible-rpg",
"tags": [
"poison"
]
}
],
"primaryTokenAttribute": "secondary.health",
@ -148,11 +168,11 @@
"styles": [
"styles/simple.css"
],
"templateVersion": 4,
"templateVersion": 8,
"title": "Crucible RPG",
"manifest": "https://www.uberwald.me/gitea/public/fvtt-crucible-rpg/raw/master/system.json",
"download": "https://www.uberwald.me/gitea/public/fvtt-crucible-rpg/archive/fvtt-crucible-rpg-v0.1.6.zip",
"download": "https://www.uberwald.me/gitea/public/fvtt-crucible-rpg/archive/fvtt-crucible-rpg-v0.1.11.zip",
"url": "https://www.uberwald.me/gitea/public/fvtt-crucible-rpg",
"version": "0.1.6",
"version": "0.1.11",
"background" : "./images/ui/crucible_welcome_page.webp"
}

View File

@ -22,36 +22,43 @@
"str":{
"label": "Strength",
"abbrev": "str",
"col": 1,
"value": 1
},
"agi":{
"label": "Agility",
"abbrev": "agi",
"col": 1,
"value": 1
},
"dex":{
"label": "Dexterity",
"abbrev": "dex",
"col": 1,
"value": 1
},
"con":{
"label": "Constitution",
"abbrev": "con",
"col": 1,
"value": 1
},
"int":{
"label": "Intelligence",
"abbrev": "int",
"col": 2,
"value": 1
},
"wit":{
"label": "Wits",
"abbrev": "wit",
"col": 2,
"value": 1
},
"cha":{
"label": "Charisma",
"abbrev": "cha",
"col": 2,
"value": 1
}
},
@ -68,6 +75,16 @@
"value": 0,
"max": 0
}
},
"social": {
"fame": {
"label": "Fame",
"value": 0
},
"reputation": {
"label": "Reputation",
"value": 0
}
}
},
"npccore": {
@ -83,7 +100,10 @@
}
},
"Item": {
"types": [ "race", "skill", "armor", "shield", "equipment", "weapon", "money" , "feat", "spell", "condition"],
"types": [ "race", "skill", "armor", "shield", "equipment", "weapon", "money" , "feat", "spell", "condition", "poison"],
"poison": {
"description": ""
},
"condition": {
"description": ""
},
@ -118,6 +138,12 @@
"cost": 0,
"description":""
},
"shield": {
"shielddie": "",
"equipped": false,
"cost": 0,
"description":""
},
"equipment": {
"equiptype": "",
"cost": 0,

View File

@ -9,62 +9,30 @@
<div class="flexcol">
<div class="flexrow">
<div class="stat-item">
<div class="ability-item">
<ul>
{{#each data.statistics as |stat key|}}
{{#if (eq stat.col 1)}}
{{> systems/fvtt-pegasus-rpg/templates/partial-actor-stat-block.html stat=stat key=key}}
{{#each data.abilities as |ability key|}}
{{#if (eq ability.col 1)}}
{{> systems/fvtt-crucible-rpg/templates/partial-actor-ability-block.html ability=ability key=key}}
{{/if}}
{{/each}}
<li class="item flexrow list-item color-class-pool item-stat-roll" data-attr-key="pool">
<span class="stat-icon">
<img class="stat-icon" src="icons/dice/d12black.svg">
</span>
<span class="stat-label stat-margin" name="pool">
<h4 class="stat-text-white stat-margin"><a class="generic-pool-roll stat-margin"
data-stat-key="pool">Dice Pool</a></h4>
</span>
</li>
</ul>
</div>
<div class="stat-item">
<div class="ability-item">
<ul>
{{#each data.statistics as |stat key|}}
{{#if (eq stat.col 2)}}
{{> systems/fvtt-pegasus-rpg/templates/partial-actor-stat-block.html stat=stat key=key}}
{{#each data.abilities as |ability key|}}
{{#if (eq ability.col 2)}}
{{> systems/fvtt-crucible-rpg/templates/partial-actor-ability-block.html ability=ability key=key}}
{{/if}}
{{/each}}
<li class="item flexrow list-item color-class-mr item-stat-roll" data-attr-key="mr">
<span class="stat-icon">
<img class="stat-icon" src="systems/fvtt-pegasus-rpg/images/icons/MR.webp">
</span>
<span class="stat-label stat-margin" name="mr">
<h4 class="stat-text-white stat-margin"><a class="roll-stat stat-margin" data-stat-key="mr">MR</a>
</h4>
</span>
<select class="status-small-label color-class-common" type="text" name="data.mr.value"
value="{{data.mr.value}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select data.mr.value}}
{{{@root.optionsDiceList}}}
{{/select}}
</select>
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
name="data.mr.mod" value="{{data.mr.mod}}" data-dtype="Number" {{#unless
@root.editScore}}disabled{{/unless}} />
</li>
</ul>
</div>
<div class="stat-item status-block">
{{> systems/fvtt-pegasus-rpg/templates/partial-actor-status.html}}
<div class="ability-item status-block">
{{> systems/fvtt-crucible-rpg/templates/partial-actor-status.html}}
</div>
<!--
<label class="status-small-label">Active NRG</label>
<input type="text" class="padd-right status-small-label no-grow" name="data.nrg.activated" value="{{data.nrg.activated}}" data-dtype="Number"/>
-->
</div>
</div>
</div>
@ -73,9 +41,9 @@
{{!-- Sheet Tab Navigation --}}
<nav class="sheet-tabs tabs" data-group="primary">
<a class="item" data-tab="skills">Skills</a>
<a class="item" data-tab="combat">Combat</a>
<a class="item" data-tab="specs">Specialisations</a>
<a class="item" data-tab="powers">Powers/Abilities</a>
<a class="item" data-tab="lore">Lore</a>
<a class="item" data-tab="equipment">Equipment</a>
<a class="item" data-tab="biodata">Biography</a>
</nav>
@ -83,91 +51,45 @@
{{!-- Sheet Body --}}
<section class="sheet-body">
{{!-- Skills Tab --}}
<div class="tab skills" data-group="primary" data-tab="skills">
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header">
<h3><label class="items-title-text">Skills</label></h3>
</span>
<span class="item-field-label-short">
<label class="short-label">Ability</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Score</label>
</span>
<span class="item-field-label-long">
<label class="short-label">Background</label>
</span>
</li>
{{#each skills as |skill key|}}
<li class="item stat flexrow list-item list-item-shadow" data-item-id="{{skill._id}}">
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{skill.img}}" /></a>
<span class="item-name-label"><a class="roll-skill">{{skill.name}}</a></span>
<span class="item-field-label-short">{{upper skill.data.ability}}</span>
<span class="item-field-label-short">{{skill.data.level}}d8</span>
<span class="item-field-label-long">&nbsp;-&nbsp;</span>
<div class="item-filler">&nbsp;</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>
{{!-- Combat Tab --}}
<div class="tab fight" data-group="primary" data-tab="combat">
<div class="tab combat" data-group="primary" data-tab="combat">
<div class="flexcol">
<div class="flexrow">
<div class="stat-item">
<ul class="stat-list alternate-list">
<li class="item flexrow list-item color-class-melee"><a class="combat-button attack-melee flexrow">
<span class="combat-icon flexrow">
<img class="combat-icon" src="systems/fvtt-pegasus-rpg/images/icons/COM.webp">
</span>
<span class="generic-label combat-margin stat-text-white">Melee Attack</span>
</a>
</li>
<li class="item flexrow list-item color-class-meleedmg"><a class="combat-button damage-melee flexrow">
<span class="combat-icon flexrow">
<img class="combat-icon" src="systems/fvtt-pegasus-rpg/images/icons/STR.webp">
</span>
<span class="generic-label combat-margin stat-text-white">Melee/Thrown Damage</span>
</a>
</li>
</ul>
</div>
<div class="stat-item">
<ul class="stat-list alternate-list">
<li class="item flexrow list-item color-class-ranged"><a class="combat-button attack-ranged flexrow">
<span class="combat-icon flexrow">
<img class="combat-icon" src="systems/fvtt-pegasus-rpg/images/icons/PER.webp">
</span>
<span class="generic-label combat-margin stat-text-white">Ranged Attack</span>
</a>
</li>
<li class="item flexrow list-item color-class-range"><a class="combat-button damage-ranged flexrow">
<span class="combat-icon flexrow">
<img class="combat-icon" src="systems/fvtt-pegasus-rpg/images/icons/AGI.webp">
</span>
<span class="generic-label combat-margin stat-text-white">Ranged Damage</span>
</a>
</li>
</ul>
</div>
<div class="stat-item">
<ul class="stat-list alternate-list">
<li class="item flexrow list-item color-class-defence"><a class="combat-button defense-roll flexrow">
<span class="combat-icon flexrow">
<img class="combat-icon" src="systems/fvtt-pegasus-rpg/images/icons/DEF.webp">
</span>
<span class="generic-label combat-margin stat-text-white">Defence</span>
</a>
</li>
<li class="item flexrow list-item color-class-dmgres"><a class="combat-button damage-resistance flexrow">
<span class="combat-icon flexrow">
<img class="combat-icon" src="systems/fvtt-pegasus-rpg/images/icons/PHY.webp">
</span>
<span class="generic-label combat-margin stat-text-white">Damage Resistance</span>
</a>
</li>
</ul>
</div>
<div class="stat-item">
<span class="flexrow">
<h3>Stun</h3>
<span class="status-small-label no-grow">
<a class="stun-plus plus-minus-button">+</a>
<a class="stun-minus plus-minus-button">&nbsp;-</a>
</span>
</span>
<ul class="stat-list alternate-list">
<li class="item stat flexrow list-item">
<span class="generic-label small-label">Current</span>
<input type="text" class="" name="data.combat.stunlevel" value="{{data.combat.stunlevel}}"
data-dtype="Number" />
<span class="generic-label small-label">Threshold</span>
<input type="text" class="" name="data.combat.stunthreshold" value="{{data.combat.stunthreshold}}"
data-dtype="Number" />
</li>
</ul>
</div>
</div>
<div>
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
@ -279,139 +201,24 @@
</div>
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header-long2">
<h3><label class="items-title-text">Effects</label></h3>
</span>
<span class="item-field-label-short">
<label class="short-label">Level</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Type</label>
</span>
<span class="item-field-label-short">
<label class="short-label">P/N</label>
</span>
<span class="item-field-label-long">
<label class="short-label">Stat</label>
</span>
</li>
{{#each effects as |effect key|}}
<li class="item stat flexrow list-item list-item-shadow" data-arme-id="{{effect.id}}"
data-item-id="{{effect._id}}">
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{effect.img}}" /></a>
<span class="item-name-label-long2">{{effect.name}}</span>
<span class="item-field-label-short">{{effect.data.effectlevel}}</span>
<span class="item-field-label-short">{{upperFirst effect.data.type}}</span>
<span class="item-field-label-short">{{upperFirst effect.data.genre}}</span>
<span class="item-field-label-short">{{upper effect.data.stataffected}}</span>
<div class="item-filler">&nbsp;</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>
</div>
{{!-- Other Tab --}}
<div class="tab items" data-group="primary" data-tab="specs">
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header">
<h3><label class="items-title-text">Specialisations</label></h3>
</span>
<span class="item-field-label-short">
<label class="short-label">Stat</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Dice</label>
</span>
<span class="item-field-label-long">
<label class="short-label">Powergroup</label>
</span>
</li>
{{#each specs as |spec key|}}
<li class="item stat flexrow list-item list-item-shadow" data-item-id="{{spec._id}}">
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{spec.img}}" /></a>
<span class="item-name-label"><a class="roll-spec">{{spec.name}}</a></span>
<span class="item-field-label-short">{{upper spec.data.statistic}}</span>
<span class="item-field-label-short">{{spec.data.dice}}</span>
{{#if spec.data.ispowergroup}}
{{#if spec.data.powersactivated}}
<span class="item-field-label-long"><a class="spec-group-deactivate">Deactivate</a></span>
{{else}}
<span class="item-field-label-long"><a class="spec-group-activate">Activate</a></span>
{{/if}}
{{else}}
<span class="item-field-label-long">&nbsp;-&nbsp;</span>
{{/if}}
<div class="item-filler">&nbsp;</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>
</div>
</div>
{{!-- Powers Tab --}}
<div class="tab fight" data-group="primary" data-tab="powers">
{{!-- Lore Tab --}}
<div class="tab lore" data-group="primary" data-tab="lore">
<div class="flexcol">
<ul>
<li class="item flexrow list-item" data-key="nrg">
<span class="stat-label flexrow" name="nrg">
<h4>{{data.nrg.label}}</h4>
</span>
<span class="small-label padd-right packed-left">Activated</span><input type="text"
class="padd-right update-field" data-field-name="data.nrg.activated" value="{{data.nrg.activated}}"
data-dtype="Number" />
<span class="small-label padd-right packed-left">&nbsp;Current</span><input type="text"
class="padd-right update-field" data-field-name="data.nrg.value" value="{{data.nrg.value}}"
data-dtype="Number" />
<span class="small-label padd-right packed-left">&nbsp;Mod</span><input type="text"
class="padd-right update-field" data-field-name="data.nrg.mod" value="{{data.nrg.mod}}"
data-dtype="Number" />
<span class="small-label padd-right packed-left">&nbsp;Max</span><input type="text"
class="padd-right update-field" data-field-name="data.nrg.max" value="{{data.nrg.max}}"
data-dtype="Number" />
<span class="small-label padd-right packed-left"> / {{data.nrg.absolutemax}}</span>
</li>
</ul>
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header">
<h3><label class="items-title-text">Powers</label></h3>
<h3><label class="items-title-text">Lore</label></h3>
</span>
<span class="item-field-label-medium">
<label class="short-label">Type</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Status</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Action</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">DMG Roll</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">NRG Cost</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">NRG Spent</label>
<label class="short-label">Lore</label>
</span>
</li>
@ -426,78 +233,10 @@
{{power.name}}
{{/if}}
</span>
<span class="item-field-label-medium">{{upperFirst power.data.type}}</span>
<span class="item-field-label-short"><label class="short-label">
{{#if power.data.activated}}
Activated
{{else}}
&nbsp;-&nbsp;
{{/if}}
</label>
</span>
<span class="item-field-label-medium">{{upperFirst power.data.action}}</span>
<span class="item-field-label-medium"><a class="power-dmg-roll">
{{#if power.data.dmgroll}}
{{upper power.data.dmgstatistic}}
{{else}}
&nbsp;-&nbsp;
{{/if}}
</a></span>
<span class="item-field-label-medium">{{power.data.cost}}</span>
<span class="item-field-label-medium">
<input type="text" class="padd-right input-numeric-short power-cost-spent"
value="{{power.data.costspent}}" data-dtype="Number" />
</span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed">
<a class="item-control power-activate" title="Activated">{{#if power.data.activated}}<i
class="fas fa-circle"></i>{{else}}<i class="fas fa-genderless"></i>{{/if}}</a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
<span class="item-field-label-medium">{{upperFirst power.data.lore}}</span>
</li>
{{/each}}
</ul>
<ul class="stat-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header">
<h3><label class="items-title-text">Abilities</label></h3>
</span>
<span class="item-field-label-long">
<label class="short-label">Stat</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Stat Modifier</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Affected status</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Status Modifier</label>
</span>
</li>
{{#each abilities as |ability key|}}
<li class="item stat flexrow list-item list-item-shadow" data-item-id="{{ability._id}}">
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{ability.img}}" /></a>
<span class="item-name-label">{{ability.name}}</span>
<span class="item-field-label-long">{{upper ability.data.affectedstat}}</span>
<span class="item-field-label-medium">{{ability.data.statmodifier}}</span>
<span class="item-field-label-medium">{{upperFirst ability.data.statusaffected}}</span>
<span class="item-field-label-medium">{{ability.data.statusmodifier}}</span>
<div class="item-filler">&nbsp;</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>
@ -510,7 +249,6 @@
<h3>Encumbrance</h3>
<span class="small-label">Current : {{encCurrent}}</span>
<span class="small-label">Capacity : {{encCapacity}}</span>
<span class="small-label">Hindrance : {{encHindrance}}</span>
</div>
<ul class="item-list alternate-list">
@ -573,27 +311,6 @@
<span class="item-field-label-short">
<label class="short-label">Damage</label>
</span>
<span class="item-field-label-short">
<label class="short-label">DMG</label>
</span>
<span class="item-field-label-short">
<label class="short-label">DMGT</label>
</span>
<span class="item-field-label-short">
<label class="short-label">DMGTLVL</label>
</span>
<span class="item-field-label-long">
<label class="short-label">Ammo</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Act/Deact</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Weight</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">IDR</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>
@ -603,41 +320,8 @@
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{weapon.img}}" /></a>
<span class="item-name-label">{{weapon.name}}</span>
<span class="item-field-label-short"><label>{{upper weapon.data.statistic}}</label></span>
<span class="item-field-label-short"><label>{{upper weapon.data.damagestatistic}}</label></span>
<span class="item-field-label-short"><label>{{weapon.data.damageDice}}</label></span>
<span class="item-field-label-short"><label>{{weapon.data.damagetype}}</label></span>
<span class="item-field-label-short"><label>{{weapon.data.damagetypelevel}}</label></span>
{{#if (gt weapon.data.ammomax 0)}}
<span class="item-field-label-long"><label>{{weapon.data.ammocurrent}}/{{weapon.data.ammomax}}
(<a class="ammo-minus plus-minus-button"> -</a>/<a class="ammo-plus plus-minus-button">+</a>)
</label></span>
{{else}}
<span class="item-field-label-long"><label>-</label>
</span>
{{/if}}
<span class="item-field-label-medium">
{{#if (count weapon.data.effects)}}
{{#if weapon.data.activated}}
<a class="equip-deactivate">Deactivate</a>
{{else}}
<a class="equip-activate">Activate</a>
{{/if}}
{{else}}
&nbsp;-&nbsp;
{{/if}}
</span>
<span class="item-field-label-short"><label>{{weapon.data.weight}}</label></span>
<span class="item-field-label-medium">
{{#if weapon.data.idrDice}}
<a class="roll-idr" data-dice-value="{{weapon.data.idrDice}}">{{weapon.data.idrDice}}</a>
{{else}}
&nbsp;-&nbsp;
{{/if}}
</span>
<span class="item-field-label-short"><label>{{upper weapon.data.ability}}</label></span>
<span class="item-field-label-short"><label>{{upper weapon.data.damage}}</label></span>
<div class="item-controls item-controls-fixed">
<a class="item-control item-equip" title="Worn">{{#if weapon.data.equipped}}<i
@ -654,22 +338,10 @@
<h3><label class="items-title-text">Armors</label></h3>
</span>
<span class="item-field-label-short">
<label class="short-label">Stat</label>
<label class="short-label">Type</label>
</span>
<span class="item-field-label-short">
<label class="short-label">DMG RES</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Loc</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Act/Deact</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Weight</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">IDR</label>
<label class="short-label">Absorption</label>
</span>
<div class="item-filler">&nbsp;</div>
@ -682,30 +354,8 @@
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{armor.img}}" /></a>
<span class="item-name-label">{{armor.name}}</span>
<span class="item-field-label-short">{{upper armor.data.statistic}}</span>
<span class="item-field-label-short">{{armor.data.resistanceDice}}</span>
<span class="item-field-label-medium">{{armor.data.locationprotected}}</span>
<span class="item-field-label-medium">
{{#if (count armor.data.effects)}}
{{#if armor.data.activated}}
<a class="equip-deactivate">Deactivate</a>
{{else}}
<a class="equip-activate">Activate</a>
{{/if}}
{{else}}
&nbsp;-&nbsp;
{{/if}}
</span>
<span class="item-field-label-short">{{armor.data.weight}}</span>
<span class="item-field-label-medium">
{{#if armor.data.idrDice}}
<a class="roll-idr" data-dice-value="{{armor.data.idrDice}}">{{armor.data.idrDice}}</a>
{{else}}
&nbsp;-&nbsp;
{{/if}}
</span>
<span class="item-field-label-short">{{upper armor.data.armortype}}</span>
<span class="item-field-label-short">{{armor.data.absorprionroll}}</span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed">
@ -725,15 +375,6 @@
<span class="item-field-label-short">
<label class="short-label">Dice</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Act/Deact</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Weight</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">IDR</label>
</span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed">
<a class="item-control item-add" data-type="shield" title="Create Item"><i class="fas fa-plus"></i></a>
@ -746,26 +387,6 @@
<span class="item-name-label">{{shield.name}}</span>
<span class="item-field-label-short">{{shield.data.levelDice}}</span>
<span class="item-field-label-medium">
{{#if (count shield.data.effects)}}
{{#if shield.data.activated}}
<a class="equip-deactivate">Deactivate</a>
{{else}}
<a class="equip-activate">Activate</a>
{{/if}}
{{else}}
&nbsp;-&nbsp;
{{/if}}
</span>
<span class="item-field-label-short">{{shield.data.weight}}</span>
<span class="item-field-label-medium">
{{#if shield.data.idrDice}}
<a class="roll-idr" data-dice-value="{{shield.data.idrDice}}">{{shield.data.idrDice}}</a>
{{else}}
&nbsp;-&nbsp;
{{/if}}
</span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed">
<a class="item-control item-equip" title="Worn">{{#if shield.data.equipped}}<i
@ -784,15 +405,6 @@
<span class="item-field-label-long">
<label class="short-label">Quantity</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">Act/Deact</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Weight</label>
</span>
<span class="item-field-label-medium">
<label class="short-label">IDR</label>
</span>
<div class="item-filler">&nbsp;</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>

View File

@ -1,143 +0,0 @@
<div class="chat-message-header">
<img class="actor-icon" src="{{img}}" alt="{{alias}}" />
<h4 class=chat-actor-name>{{name}}</h4>
</div>
<hr>
<div class="flexcol">
{{#if (eq step "select-race")}}
<div>Select a race from the list below</div>
<table class="table-create-actor">
{{#each races as |race index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{race._id}}">{{race.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{race._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-race-optionnal")}}
<div>The selected Race has some optionnal abilities. Select one ability by clicking the relevant button below<br>
Remaining abilities to select : {{nboptionnal}}
</div>
<table class="table-create-actor">
{{#each optionnalabilities as |ability index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{ability._id}}">{{ability.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{ability._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-race-stats")}}
<div>Select Stats to gain +1 modifier : <br>
Remaining stats to select : {{numberstats}}
</div>
<table class="table-create-actor">
{{#each stats as |stat key|}}
{{#if @root.statsonlyonce}}
{{#if stat.used}}
{{else}}
<tr>
<td>{{stat.label}} ({{stat.abbrev}})</td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-stat-key="{{key}}" >Select it !</a></td>
</tr>
{{/if}}
{{else}}
<tr>
<td>{{stat.label}} ({{stat.abbrev}})</td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-stat-key="{{key}}" >Select it !</a></td>
</tr>
{{/if}}
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-race-perks")}}
<div>Now select {{nbraceperks}} Perk(s) for your character
</div>
<table class="table-create-actor">
{{#each raceperks as |perk index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{perk._id}}">{{perk.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{perk._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-role")}}
<div>Now select a Role for your character.
</div>
<table class="table-create-actor">
{{#each roles as |role index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{role._id}}">{{role.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{role._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-role-start-spec")}}
<div>Choose 1 Specialisation at +1DT :
</div>
<table class="table-create-actor">
{{#each rolestartspec as |spec index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{spec._id}}">{{spec.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{spec._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-role-stat")}}
<div>Choose 1 Stat at +1DT :
</div>
<table class="table-create-actor">
{{#each rolestats as |rolestat key|}}
<tr>
<td>{{rolestat.label}}</td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-stat-key="{{rolestat.abbrev}}">Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-role-spec")}}
<div>Now select a specialisation at +{{dt}}DT.
</div>
<table class="table-create-actor">
{{#each rolespec as |spec index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{spec._id}}">{{spec.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{spec._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "select-role-perk")}}
<div>Now select a Perk.
</div>
<table class="table-create-actor">
{{#each roleperks as |perk index|}}
<tr>
<td><a class="view-item-from-chat" data-step="{{@root.step}}" data-item-id="{{perk._id}}">{{perk.name}}</a></td>
<td><a class="chat-card-button chat-create-actor" data-step-name="{{@root.step}}" data-item-id="{{perk._id}}" >Select it !</a></td>
</tr>
{{/each}}
</table>
{{/if}}
{{#if (eq step "character-end")}}
<div>Follow the next steps from the rulebook page 50 !. You can now spend 150 CDPs to customise your character.
</div>
{{/if}}
</div>

View File

@ -18,37 +18,15 @@
<div>
<ul>
{{#if power}}
<li>Power : {{power.name}}</li>
{{#if ability}}
<li>Ability : {{ability.label}} - {{ability.value}}d6</li>
{{/if}}
{{#if isDamage}}
<li>Weapon Damage Dice : {{weaponDamageDice}}</li>
{{/if}}
{{#if isResistance}}
<li>Armor Resistance Dice : {{armor.data.resistanceDice}}</li>
{{/if}}
{{#if stat}}
<li>Statistic : {{stat.label}}</li>
{{/if}}
{{#if spec}}
<li>Specialisation : {{spec.name}}</li>
{{#if skill}}
<li>Skill : {{skill.name}} - {{skill.data.level}}d8</li>
{{/if}}
<li><strong>Number of successes</strong> {{nbSuccess}} </li>
{{#if weaponName}}
<li>Weapon : {{weaponName}}</li>
{{/if}}
{{#if isResistance}}
<li><strong>Defense Result : {{finalScore}}</strong>
{{else}}
{{#if isDamage}}
<li><strong>Damages : {{finalScore}}</strong>
{{else}}
<li><strong>Final Result : {{finalScore}}</strong>
{{/if}}
{{/if}}
<button class="chat-card-button reroll-level-remaining" data-roll-id="{{rollId}}">Reroll</button>
<!-- <button class="chat-card-button reroll-level-remaining" data-roll-id="{{rollId}}">Reroll</button> -->
</ul>
</div>

View File

@ -5,7 +5,7 @@
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
</div>
</header>
{{> systems/fvtt-pegasus-rpg/templates/partial-item-nav.html}}
{{> systems/fvtt-crucible-rpg/templates/partial-item-nav.html}}
{{!-- Sheet Body --}}
<section class="sheet-body">

View File

@ -0,0 +1,28 @@
<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-crucible-rpg/templates/partial-item-nav.html}}
{{!-- Sheet Body --}}
<section class="sheet-body">
<div class="tab details" data-group="primary" data-tab="description">
<label class="generic-label">Description</label>
<div class="medium-editor item-text-long-line">
{{editor content=data.description target="data.description" button=true owner=owner editable=editable}}
</div>
</div>
<div class="tab details" data-group="primary" data-tab="details">
<ul>
</ul>
</div>
</section>
</form>

View File

@ -5,7 +5,7 @@
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
</div>
</header>
{{> systems/fvtt-pegasus-rpg/templates/partial-item-nav.html}}
{{> systems/fvtt-crucible-rpg/templates/partial-item-nav.html}}
{{!-- Sheet Body --}}
<section class="sheet-body">

View File

@ -0,0 +1,44 @@
<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-crucible-rpg/templates/partial-item-nav.html}}
{{!-- Sheet Body --}}
<section class="sheet-body">
{{> systems/fvtt-crucible-rpg/templates/partial-item-description.html}}
<div class="tab details" data-group="primary" data-tab="details">
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="generic-label">Shield die</label>
<select class="competence-base flexrow" type="text" name="data.shielddie" value="{{data.shielddie}}" data-dtype="String">
{{#select data.shielddie}}
<option value="d4">d4</option>
<option value="d6">d6</option>
<option value="d8">d8</option>
{{/select}}
</select>
</li>
<li class="flexrow"><label class="generic-label">Equipped ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="data.equipped" {{checked data.equipped}}/></label>
</li>
<li class="flexrow"><label class="generic-label">Cost</label>
<input type="text" class="input-numeric-short padd-right" name="data.cost" value="{{data.cost}}" data-dtype="Number"/>
</li>
</ul>
</div>
</div>
</section>
</form>

View File

@ -0,0 +1,19 @@
<li class="item flexrow list-item item-ability-roll" data-attr-key="{{key}}">
<span class="ability-label ability-margin" name="{{key}}">
<h4 class="ability-text-white ability-margin"><a class="roll-ability ability-margin" data-ability-key="{{key}}">{{ability.label}}</a></h4>
</span>
<select class="status-small-label color-class-common" type="text" name="data.abilities.{{key}}.value" value="{{ability.value}}"
data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select ability.value}}
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
{{/select}}
</select>
</li>

View File

@ -1,16 +0,0 @@
<li class="item flexrow list-item color-class-{{lower stat.abbrev}} item-stat-roll" data-attr-key="{{key}}">
<span class="stat-icon">
<img class="stat-icon" src="systems/fvtt-pegasus-rpg/images/icons/{{stat.abbrev}}.webp">
</span>
<span class="stat-label stat-margin" name="{{key}}">
<h4 class="stat-text-white stat-margin"><a class="roll-stat stat-margin" data-stat-key="{{key}}">{{stat.abbrev}}</a></h4>
</span>
<select class="status-small-label color-class-common" type="text" name="data.statistics.{{key}}.value" value="{{stat.value}}"
data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}}>
{{#select stat.value}}
{{{@root.optionsDiceList}}}
{{/select}}
</select>
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common" name="data.statistics.{{key}}.mod" value="{{stat.mod}}"
data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}} />
</li>

View File

@ -1,71 +1,4 @@
<ul class="status-block">
<li class="item flexrow">
<span class="stat-label status-small-label status-col-name"><label class="status-small-label"><strong>Status</strong></label></span>
<span class="status-header-label status-small-label no-grow"><label class="status-small-label">Cur</label></span>
<span class="status-header-label status-small-label no-grow"><label class="status-small-label">Mod</label></span>
<span class="status-header-label status-small-label no-grow"><label class="status-small-label">Max</label></span>
</li>
{{#each data.secondary as |stat2 key|}}
<li class="item flexrow " data-attr-key="{{key}}">
<span class="stat-label flexrow status-col-name" name="{{key}}">
<label class="status-small-label"><strong>{{stat2.label}}</strong><br>
{{#if (eq key "health")}}
(KOV -{{stat2.max}})
{{/if}}
{{#if (eq key "delirium")}}
(MV -{{stat2.max}})
{{/if}}
</label>
</span>
<input type="text" class="padd-right status-small-label no-grow" name="data.secondary.{{key}}.value" value="{{stat2.value}}" data-dtype="Number"/>
<input type="text" class="padd-right status-small-label no-grow" name="data.secondary.{{key}}.bonus" value="{{stat2.bonus}}" data-dtype="Number"/>
<input type="text" class="padd-right status-small-label no-grow" name="data.secondary.{{key}}.max" value="{{stat2.max}}" data-dtype="Number"/>
</li>
{{/each}}
<li class="item flexrow " data-key="nrg">
<span class="stat-label flexrow status-col-name" name="nrg">
<label class="status-small-label"><strong>{{data.nrg.label}}</strong></label>
</span>
<input type="text" class="padd-right status-small-label no-grow" name="data.nrg.value" value="{{data.nrg.value}}" data-dtype="Number"/>
<input type="text" class="padd-right status-small-label no-grow" name="data.nrg.mod" value="{{data.nrg.mod}}" data-dtype="Number"/>
<input type="text" class="padd-right status-small-label no-grow" name="data.nrg.max" value="{{data.nrg.max}}" data-dtype="Number"/>
<span class="small-label status-small-label">&nbsp;/ {{data.nrg.absolutemax}}</span>
</li>
<li class="item flexrow " data-key="nrg">
<span class="stat-label flexrow status-col-name" name="activated-nrg">
<label class="status-small-label"><strong>Activated NRG</strong><br>
</span>
<span class="stat-label flexrow status-col-name" name="activated-nrg">
<input type="text" class="padd-right status-small-label no-grow" name="data.nrg.activated" value="{{data.nrg.activated}}" data-dtype="Number"/>
</span>
<!--<span class="stat-label flexrow status-col-name" name="momentum">
<label class="status-small-label flexrow"><strong>
<a class="stat-icon lock-unlock-sheet">{{#if editScore}}Lock{{else}}Unlock{{/if}}</a>
</strong></label>-->
</span>
</li>
<li class="item flexrow " data-key="momentum">
<span class="stat-label flexrow status-col-name" name="momentum">
<label class="status-small-label"><strong>Momentum</strong></label>
</span>
<input type="text" class="padd-right status-small-label no-grow" name="data.momentum.value" value="{{data.momentum.value}}" data-dtype="Number"/>
<span class="padd-right status-small-label no-grow">
<a class="momentum-plus plus-minus-button">+</a>
<a class="momentum-minus plus-minus-button">&nbsp;-</a>
</span>
<input type="text" class="padd-right status-small-label no-grow" name="data.momentum.max" value="{{data.momentum.max}}" data-dtype="Number"/>
<span class="small-label status-small-label">&nbsp;</span>
</li>
<!--<li class="item flexrow list-item" data-key="lock-unlock">
<span class="stat-label flexrow status-col-name" name="momentum">
<a class="stat-icon lock-unlock-sheet"><img class="small-button-container"
src="systems/fvtt-pegasus-rpg/images/icons/{{#if editStatSkill}}unlocked.svg{{else}}locked.svg{{/if}}" alt="lock/unlock"
></a>
</span>-->
</li>
</ul>
<!-- <span class="small-label padd-right packed-left">Act</span>
<input type="text" class="padd-right" name="data.nrg.activated" value="{{data.nrg.activated}}" data-dtype="Number"/>
-->

View File

@ -0,0 +1,18 @@
<ul>
<li class="flex-group-left">
<label class="ability-value checkbox">
<input type="checkbox" id="none-clicked" class="none-clicked" {{#if (eq advantage "none")}} checked {{/if}} /></label>
<label class="generic-label">None</label>
</li>
<li class="flex-group-left">
<label class="ability-value checkbox">
<input type="checkbox" id="advantage-clicked" class="advantage-clicked" {{#if (eq advantage "advantage")}} checked {{/if}} /></label>
<label class="generic-label">Advantage ?</label>
</li>
<li class="flex-group-left">
<label class="ability-value checkbox">
<input type="checkbox" id="disadvantage-clicked" class="disadvantage-clicked" {{#if (eq advantage "disadvantage")}} checked {{/if}} /></label>
<label class="generic-label">Disadvantage ?</label>
</li>
</ul>

View File

@ -10,86 +10,22 @@
<div class="flexcol">
{{#if isGeneric}}
{{else}}
<div class="flexrow">
<span class="roll-dialog-label">Stat Dice : </span>
<select class="roll-dialog-label" id="statDicesLevel" type="text" name="statDicesLevel"
value="{{statDicesLevel}}" data-dtype="Number" {{#if statKey}}disabled{{/if}}>
{{#select statDicesLevel}}
{{{optionsDiceList}}}
{{/select}}
</select>
<span class="small-label">&nbsp;+&nbsp;{{statMod}}</span>
<span class="roll-dialog-label">Ability : </span>
<span class="roll-dialog-label">{{ability.value}}d6</span>
</div>
{{#if specList}}
<div class="flexrow">
<span class="roll-dialog-label">Spec : </span>
<select class="roll-dialog-label" id="specList" type="text" name="selectedSpec" value="{{selectedSpec}}"
data-dtype="String">
{{#select selectedSpec}}
<option value="0">None</option>
{{#each specList as |spec idx|}}
<option value="{{spec._id}}">{{spec.name}}</option>
{{/each}}
{{/select}}
</select>
<span class="small-label">&nbsp;</span>
</div>
{{/if}}
{{#if skill}}
<div class="flexrow">
<span class="roll-dialog-label">Spec Dice : </span>
<select class="roll-dialog-label" id="specDicesLevel" type="text" name="specDicesLevel"
value="{{specDicesLevel}}" data-dtype="Number" {{#if specList}}disabled{{/if}}>
{{#select specDicesLevel}}
{{{optionsDiceList}}}
{{/select}}
</select>
<span class="small-label">&nbsp;</span>
<span class="roll-dialog-label">Skill : </span>
<span class="roll-dialog-label">{{skill.name}} - {{skill.data.value}}d8</span>
</div>
{{/if}}
<!--
{{#if isDamage}}
<div class="flexrow">
<span class="roll-dialog-label">Weapon Damage :</span>
<select class="roll-dialog-label" id="damageDiceLevel" type="text" name="damageDiceLevel"
value="{{damageDiceLevel}}" data-dtype="Number">
{{#select damageDiceLevel}}
{{{optionsDiceList}}}
{{/select}}
</select>
<span class="small-label">&nbsp;</span>
</div>
{{/if}}
-->
<div class="dice-pool-div">
<span>
<h3 class="dice-pool-label">Current pool</h3>
</span>
<div class="flexrow dice-pool-stack">
{{#each dicePool as |dice idx|}}
<span><a class="pool-remove-dice" data-dice-idx="{{idx}}" data-dice-level="{{dice.level}}" data-dice-key="{{dice.key}}"><img class="dice-pool-image"
src="{{dice.img}}"></a></span>
{{/each}}
</div>
</div>
<div class="flexrow">
{{#each diceList as |dice idx|}}
<span><a class="pool-add-dice" data-dice-key="{{dice.key}}" data-dice-level="{{dice.level}}"><img class="dice-pool-image"
src="{{dice.img}}"></a></span>
{{/each}}
</div>
</div>
<div>
{{> systems/fvtt-pegasus-rpg/templates/partial-roll-select-effects.html}}
{{> systems/fvtt-crucible-rpg/templates/partial-roll-select.html}}
</div>
</div>