Compare commits

...

7 Commits

Author SHA1 Message Date
Erebus a26cc89686 v0.1.2 2022-02-21 10:45:36 +01:00
Erebus 58c3fbcd42 v0.1.0 2022-02-21 10:12:27 +01:00
Erebus 6962d6fc04 Merge branch 'master' of ssh://pi.rikspolisen.se:2222/foundryvtt/kopparhavet 2021-07-28 13:10:53 +02:00
Erebus 3f044c0b97 fixed missing link 2021-07-28 13:10:40 +02:00
erebus cace9cc899 0.0.7 (#7)
finishing for version 0.0.7
Co-Authored-By: erebus <erebus@rikspolisen.se>
Co-Committed-By: erebus <erebus@rikspolisen.se>
2021-07-28 13:08:19 +02:00
erebus 0c1729a4b4 Uppdatera 'system.json' 2021-03-19 04:28:46 +00:00
erebus 77806b38c4 v0.0.6
Version 0.0.6
Fixed rolling of rituals
Fixed skill dialog for rituals
Fixed chat message for rituals
Fixed chat message for opposed spell rolls
Co-Authored-By: erebus <erebus@rikspolisen.se>
Co-Committed-By: erebus <erebus@rikspolisen.se>
2021-03-19 04:22:29 +00:00
44 changed files with 1074 additions and 462 deletions

View File

@ -72,6 +72,13 @@
"MENU.SHOWROLLDIALOG": "Show diceroller dialog",
"ROLL.OPENCLOSE": "Open / Close",
"ROLL.EXCEPTIONAL": "Exceptional",
"ROLL.SUBPAR": "Subpar result",
"ROLL.LOW": "Low result",
"ROLL.LIMITED": "Limited result",
"ROLL.GOOD": "Good result",
"ROLL.SUPERIOR": "Superior result",
"ROLL.OR": "or",
"ROLL.OPPOSITE": "Resisted by",
"SHIP.CARGO": "Cargo capacity",
"SHIP.HULL": "Hull",
@ -88,6 +95,7 @@
"SKILL.COMBAT": "Combat",
"SKILL.STARTVALUE": "Start value",
"SKILL.LANGUAGE": "Language",
"SKILL.NONE": "None",
"SPELL.DIFFICULTY": "Difficulty",
"SPELL.ROLLTITLE": "Roll",

View File

@ -73,6 +73,13 @@
"MENU.SHOWROLLDIALOG": "Visa tärningsdialog",
"ROLL.OPENCLOSE": "Öppna / Stäng",
"ROLL.EXCEPTIONAL": "Exceptionellt",
"ROLL.SUBPAR": "Undermålig kvalitet",
"ROLL.LOW": "Låg kvalitet",
"ROLL.LIMITED": "Begränsad kvalitet",
"ROLL.GOOD": "God kvalitet",
"ROLL.SUPERIOR": "Överlägsen kvalitet",
"ROLL.OR": "eller",
"ROLL.OPPOSITE": "Motsatt av",
"SHIP.CARGO": "Lastförmåga",
"SHIP.HULL": "Skrov",
@ -89,6 +96,7 @@
"SKILL.COMBAT": "Stridsfärdigheter",
"SKILL.STARTVALUE": "Grundvärde",
"SKILL.LANGUAGE": "Språk",
"SKILL.NONE": "Ingen",
"SPELL.DIFFICULTY": "Svårighet",
"SPELL.ROLLTITLE": "Slag",

View File

@ -154,13 +154,13 @@ export class ActorSheetKH extends ActorSheet {
icon: '<i class="far dice"></i>',
callback: (li) => {
let itemId = li.data("itemId");
let _item = this.actor.items.find((element) => element._id == itemId);
let _item = this.actor.items.find((element) => element.id == itemId);
// Retrieve skill based on name
let skill = this.actor.items.find((element) => element.name === _item.data.data.skill.value);
let skill = this.actor.items.find((element) => element.name === _item.data.skill.value);
let skillName = skill.name
let skillValue = skill.data.data.value
let skillValue = skill.data.value
let showValue = false
if(this.actor.data.type === "character") {
@ -186,10 +186,10 @@ export class ActorSheetKH extends ActorSheet {
icon: '<i class="far dice"></i>',
callback: (li) => {
let itemId = li.data("itemId");
let _item = this.actor.items.find((element) => element._id == itemId);
let _item = this.actor.items.find((element) => element.id == itemId);
let skillName = _item.name
let skillValue = _item.data.data.value
let skillValue = _item.data.value
let showValue = false
if(this.actor.data.type === "character") {
@ -214,14 +214,14 @@ export class ActorSheetKH extends ActorSheet {
name: game.i18n.localize("MENU.SHOWROLLDIALOG"),
icon: '<i class="far dice"></i>',
callback: (li) => {
let itemId = li.data("itemId");
let _item = this.actor.items.find((element) => element._id == itemId);
let itemId = li.data("item-id");
let _item = this.actor.items.find((element) => element.id == itemId);
if (!_item) {
_item = game.items.get(itemId);
if (!_item) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 1")
return
}
}
@ -233,7 +233,7 @@ export class ActorSheetKH extends ActorSheet {
showValue = true
}
switch (_item.data.data.difficulty.value) {
switch (_item.data.difficulty.value) {
case "simple":
difficulty = 5
break;
@ -248,33 +248,92 @@ export class ActorSheetKH extends ActorSheet {
break;
}
if(_item.data.data.roll.value === "roll" || _item.data.data.roll.value === "attackroll") {
if(_item.data.roll.value === "roll" || _item.data.roll.value === "attackroll") {
// Retrieve skill based on name
let skill = this.actor.items.find((element) => element.name === _item.data.data.roll.skill);
let skill = this.actor.items.find((element) => element.name === _item.data.roll.skill);
let skillName = _item.name
let skillValue = skill.data.data.value
let skillValue = skill.data.value
if(this.actor.data.type === "character") {
skillName = _item.name + " (" + skill.name + ")"
}
this.khRoller.rollSkillDialogInChat(skillName, skillValue, showValue, this.actor, difficulty)
} else if(_item.data.data.roll.value === "opposite") {
} else if(_item.data.roll.value === "opposite") {
// Retrieve skill based on name
let skill = this.actor.items.find((element) => element.name === _item.data.data.roll.skill);
let skill = this.actor.items.find((element) => element.name === _item.data.roll.skill);
let skillName = _item.name
let skillValue = skill.data.data.value
let skillValue = skill.data.value
if(this.actor.data.type === "character") {
skillName = _item.name + " (" + skill.name + ")"
}
this.khRoller.rollSkillDialogInChat(skillName, skillValue, showValue, this.actor, difficulty)
} else if(_item.data.data.roll.value === "ritual") {
console.log("Not supported yet")
this.khRoller.rollSkillDialogInChat("Ritual", -1, showValue, this.actor, difficulty)
let opposite = []
// Retrieve skill based on name
if(_item.data.roll.oppositeskill !== "") {
let skill1 = this.actor.items.find((element) => element.name === _item.data.roll.oppositeskill);
opposite.push(skill1.name)
}
if(_item.data.roll.oppositeskilltwo !== "") {
let skill2 = this.actor.items.find((element) => element.name === _item.data.roll.oppositeskilltwo);
opposite.push(skill2.name)
}
this.khRoller.rollSkillDialogInChat(skillName, skillValue, showValue, this.actor, difficulty, opposite)
} else if(_item.data.roll.value === "ritual") {
let skills = []
if(_item.data.roll.ritual.skillone !== "") {
let skill1 = this.actor.items.find((element) => element.name === _item.data.roll.ritual.skillone);
skills.push({
name: skill1.name,
value: skill1.data.value
});
}
if(_item.data.roll.ritual.skilltwo !== "") {
let skill2 = this.actor.items.find((element) => element.name === _item.data.roll.ritual.skilltwo);
skills.push({
name: skill2.name,
value: skill2.data.value
});
}
if(_item.data.roll.ritual.skillthree !== "") {
let skill3 = this.actor.items.find((element) => element.name === _item.data.roll.ritual.skillthree);
skills.push({
name: skill3.name,
value: skill3.data.value
});
}
if(_item.data.roll.ritual.skillfour !== "") {
let skill4 = this.actor.items.find((element) => element.name === _item.data.roll.ritual.skillfour);
skills.push({
name: skill4.name,
value: skill4.data.value
});
}
if(_item.data.roll.ritual.skillfive !== "") {
let skill5 = this.actor.items.find((element) => element.name === _item.data.roll.ritual.skillfive);
skills.push({
name: skill5.name,
value: skill5.data.value
});
}
this.khRoller.rollSkillChallangeDialogInChat(_item.name, skills, showValue, this.actor, difficulty)
}
},
},
@ -329,6 +388,7 @@ export class ActorSheetKH extends ActorSheet {
]);
html.find(".feature").click(async (ev) => {
console.log("feature")
const featureName = $(ev.currentTarget).data("feature");
const featureValue = this.actor.data.data.feature[featureName].value;
if (featureName === "one") {
@ -347,7 +407,7 @@ export class ActorSheetKH extends ActorSheet {
html.find(".item-delete").click((ev) => {
let parent = $(ev.currentTarget).data("parent")
const li = $(ev.currentTarget).parents(parent);
const item = this.actor.getOwnedItem(li.data("itemId"));
const item = this.actor.items.get(li.data("itemId"));
if(item) {
if (item.type === "armor") {
@ -358,10 +418,10 @@ export class ActorSheetKH extends ActorSheet {
this.actor.items.map((i) => {
if (i.type === "armor") {
if (i._id !== item._id && i.data.data.equipable.equipped && i.data?.data?.modifications) {
for (let k of Object.keys(i.data.data.modifications)) {
if (i.data.data.modifications[k].modtype === "init") {
initValue = i.data.data.modifications[k].value;
if (i.id !== item.id && i.data.equipable.equipped && i.data?.data?.modifications) {
for (let k of Object.keys(i.data.modifications)) {
if (i.data.modifications[k].modtype === "init") {
initValue = i.data.modifications[k].value;
}
}
}
@ -375,23 +435,26 @@ export class ActorSheetKH extends ActorSheet {
}
}
this.actor.deleteOwnedItem(li.data("itemId"));
this.actor.deleteEmbeddedDocuments("Item", [li.data("itemId")]);
//this.actor.deleteOwnedItem(li.data("itemId"));
li.slideUp(200, () => this.render(false));
});
// Edit Inventory Item
html.find(".item-edit").click(async (ev) => {
console.log("item-edit")
let parent = $(ev.currentTarget).data("parent")
let li = $(ev.currentTarget).parents(parent);
let itemId = li.data("itemId");
let item = this.actor.getOwnedItem(itemId);
let item = this.actor.items.get(itemId);
if (!item) {
item = game.items.get(itemId);
if (!item) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 2")
}
}
@ -404,13 +467,13 @@ export class ActorSheetKH extends ActorSheet {
html.find(".roll-spell-cost").click((ev) => {
const li = $(ev.currentTarget).parents(".item-spell");
let itemId = li.data("itemId");
let spell = this.actor.getOwnedItem(itemId);
let spell = this.actor.items.get(itemId);
if (!spell) {
spell = game.items.get(itemId);
if (!spell) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 3")
return
}
}
@ -427,14 +490,14 @@ export class ActorSheetKH extends ActorSheet {
html.find(".roll-spell-skill").click((ev) => {
const li = $(ev.currentTarget).parents(".item-spell");
let itemId = li.data("itemId");
let spell = this.actor.getOwnedItem(itemId);
let itemId = li.data("item-id");
let spell = this.actor.items.get(itemId);
if (!spell) {
spell = game.items.get(itemId);
if (!spell) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 4")
return
}
}
@ -474,9 +537,20 @@ export class ActorSheetKH extends ActorSheet {
this.khRoller.rollSkillInChat(skillName, skillValue, showValue, this.actor, difficulty)
} else if(spell.data.data.roll.value === "opposite") {
let opposite = []
// Retrieve skill based on name
let skill = this.actor.items.find((element) => element.name === spell.data.data.roll.skill);
if(spell.data.data.roll.oppositeskill !== "") {
let skill1 = this.actor.items.find((element) => element.name === spell.data.data.roll.oppositeskill);
opposite.push(skill1.name)
}
if(spell.data.data.roll.oppositeskilltwo !== "") {
let skill2 = this.actor.items.find((element) => element.name === spell.data.data.roll.oppositeskilltwo);
opposite.push(skill2.name)
}
let skillName = spell.name
let skillValue = skill.data.data.value
@ -484,17 +558,68 @@ export class ActorSheetKH extends ActorSheet {
skillName = spell.name + " (" + skill.name + ")"
}
this.khRoller.rollSkillInChat(skillName, skillValue, showValue, this.actor, difficulty)
this.khRoller.rollSkillInChat(skillName, skillValue, showValue, this.actor, difficulty, opposite)
} else if(spell.data.data.roll.value === "ritual") {
console.log("Not supported yet")
let skill1, skill2, skill3, skill4, skill5;
let skills = []
// Retrieve skill based on name
if(spell.data.data.roll.ritual.skillone !== "") {
skill1 = this.actor.items.find((element) => element.name === spell.data.data.roll.ritual.skillone);
skills.push({
name: skill1.name,
value: skill1.data.data.value
});
}
if(spell.data.data.roll.ritual.skilltwo !== "") {
skill2 = this.actor.items.find((element) => element.name === spell.data.data.roll.ritual.skilltwo);
skills.push({
name: skill2.name,
value: skill2.data.data.value
});
}
if(spell.data.data.roll.ritual.skillthree !== "") {
skill3 = this.actor.items.find((element) => element.name === spell.data.data.roll.ritual.skillthree);
skills.push({
name: skill3.name,
value: skill3.data.data.value
});
}
if(spell.data.data.roll.ritual.skillfour !== "") {
skill4 = this.actor.items.find((element) => element.name === spell.data.data.roll.ritual.skillfour);
skills.push({
name: skill4.name,
value: skill4.data.data.value
});
}
if(spell.data.data.roll.ritual.skillfive !== "") {
skill5 = this.actor.items.find((element) => element.name === spell.data.data.roll.ritual.skillfive);
skills.push({
name: skill5.name,
value: skill5.data.data.value
});
}
let skillName = spell.name
this.khRoller.rollSkillRitualInChat(skillName, skills, showValue, this.actor, difficulty)
}
});
/* Roll skill */
html.find(".roll-skill").click((ev) => {
const li = $(ev.currentTarget).parents(".item-skill");
let itemId = li.data("itemId");
let _item = this.actor.items.find((element) => element._id == itemId);
let itemId = li.data("item-id");
let _item = this.actor.items.find((element) => element.id === itemId);
let skillName = _item.name
let skillValue = _item.data.data.value
@ -511,13 +636,13 @@ export class ActorSheetKH extends ActorSheet {
html.find(".roll-weapon-skill").click((ev) => {
const li = $(ev.currentTarget).parents(".item-weapon");
let itemId = li.data("itemId");
let weapon = this.actor.getOwnedItem(itemId);
let weapon = this.actor.items.get(itemId);
if (!weapon) {
weapon = game.items.get(itemId);
if (!weapon) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 5")
return
}
}
@ -540,13 +665,13 @@ export class ActorSheetKH extends ActorSheet {
html.find(".roll-damage").click((ev) => {
const li = $(ev.currentTarget).parents(".item-weapon");
let itemId = li.data("itemId");
let weapon = this.actor.getOwnedItem(itemId);
let weapon = this.actor.items.get(itemId);
if (!weapon) {
weapon = game.items.get(itemId);
if (!weapon) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 6")
return
}
}
@ -565,13 +690,13 @@ export class ActorSheetKH extends ActorSheet {
html.find(".roll-armor").click((ev) => {
const li = $(ev.currentTarget).parents(".item");
let itemId = li.data("itemId");
let armor = this.actor.getOwnedItem(itemId);
let armor = this.actor.items.get(itemId);
if (!armor) {
armor = game.items.get(itemId);
if (!armor) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 7")
return
}
}
@ -626,13 +751,13 @@ export class ActorSheetKH extends ActorSheet {
html.find(".roll-attack-damage").click((ev) => {
const li = $(ev.currentTarget).parents(".item-attack");
let itemId = li.data("itemId");
let weapon = this.actor.getOwnedItem(itemId);
let weapon = this.actor.items.get(itemId);
if (!weapon) {
weapon = game.items.get(itemId);
if (!weapon) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 8")
return
}
}
@ -686,6 +811,12 @@ export class ActorSheetKH extends ActorSheet {
// Add or Remove relationship
html.find(".learning-control").click(this._onClickLearningControl.bind(this));
html.find(".learning-delete").click(async (event) => {
event.preventDefault();
const a = event.currentTarget.closest(".learning");
const id = a.dataset["attribute"];
this.object.update({ "data.learning": { ["-=" + id]: null } });
});
html.find(".learning-click").click(this._onClickLearingLearned.bind(this));
/* Hjältarnas Tid specefic */
@ -697,6 +828,7 @@ export class ActorSheetKH extends ActorSheet {
}
async _onClickLearingLearned(event) {
console.log("_onClickLearingLearned")
event.stopPropagation();
const li1 = $(event.currentTarget);
const li2 = $(event.currentTarget).parents(".learning");
@ -716,13 +848,11 @@ export class ActorSheetKH extends ActorSheet {
async _onClickLearningControl(event) {
event.preventDefault();
const a = event.currentTarget;
const action = a.dataset.action;
const attrs = this.object.data.data.learning;
const form = this.form;
const action = event.currentTarget.dataset.action;
// Add new modification
if (action === "create") {
const form = this.form;
const nk = new Date().getTime();
let newKey = document.createElement("div");
@ -732,41 +862,43 @@ export class ActorSheetKH extends ActorSheet {
await this._onSubmit(event);
}
/*
// Remove existing modification
else if (action === "delete") {
const li = a.closest(".learning");
li.parentElement.removeChild(li);
await this._onSubmit(event);
const a = event.currentTarget.closest(".learning");
const id = a.dataset["attribute"];
this.object.update({ "data.learning": { ["-=" + id]: null } });
}
*/
}
async _onClickRelationshipControl(event) {
console.log("_onClickRelationshipControl")
event.preventDefault();
const a = event.currentTarget;
const action = a.dataset.action;
const attrs = this.object.data.data.relationships;
const form = this.form;
const action = event.currentTarget.dataset.action;
// Add new modification
if (action === "create") {
const form = this.form;
const nk = new Date().getTime();
let newKey = document.createElement("div");
newKey.innerHTML = `<input class="relation-key" type="text" name="data.relationships.attr${nk}.key" value="attr${nk}" style="display: none;" /><input class="relation-key" type="text" name="data.relationships.attr${nk}.value" value="" style="display: none;" />`;
form.appendChild(newKey);
await this._onSubmit(event);
}
// Remove existing modification
else if (action === "delete") {
const li = a.closest(".relation");
li.parentElement.removeChild(li);
await this._onSubmit(event);
const ability = $(event.currentTarget).closest(".relation").data("attribute");
await this.object.update({ "data.relationships": { ["-=" + ability]: null } });
}
await this._onSubmit(event);
}
async _onClickRelationshipUsed(event) {
console.log("_onClickRelationshipUsed")
event.stopPropagation();
const li = $(event.currentTarget).parents(".relation");
@ -784,8 +916,9 @@ export class ActorSheetKH extends ActorSheet {
}
async _toggleEquippedItem(event) {
console.log("_toggleEquippedItem")
const li = $(event.currentTarget);
const item = this.actor.getOwnedItem(li.data("itemId"));
const item = this.actor.items.get(li.data("itemId"));
const actor = this.actor;
if(item) {
@ -797,7 +930,7 @@ export class ActorSheetKH extends ActorSheet {
actor.items.map((i) => {
if(i.type === "armor") {
if(i._id !== item._id && i.data.data.equipable.equipped && i.data?.data?.modifications) {
if(i.id !== item.id && i.data.data.equipable.equipped && i.data?.data?.modifications) {
for(let k of Object.keys(i.data.data.modifications)) {
if(i.data.data.modifications[k].modtype === "init") {
initValue = i.data.data.modifications[k].value;
@ -828,28 +961,30 @@ export class ActorSheetKH extends ActorSheet {
}
async _increaseQuantity(event) {
console.log("_increaseQuantity")
event.stopPropagation();
const li = $(event.currentTarget).parents(".item");
let itemId = li.data("itemId");
let item = this.actor.getOwnedItem(itemId);
let item = this.actor.items.get(itemId);
if (!item) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 9")
}
item.update({ ["data.quantity.value"]: item.data.data.quantity.value + 1 });
}
async _decreaseQuantity(event) {
console.log("_decreaseQuantity")
event.stopPropagation();
const li = $(event.currentTarget).parents(".item");
let itemId = li.data("itemId");
let item = this.actor.getOwnedItem(itemId);
let item = this.actor.items.get(itemId);
if (!item) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 10")
}
let count = item.data.data.quantity.value - 1 > 0 ? item.data.data.quantity.value - 1 : 0;
@ -858,25 +993,27 @@ export class ActorSheetKH extends ActorSheet {
}
async _onChangeSkillValue(event) {
console.log("_decreaseQuantity")
event.preventDefault();
const itemId = $(event.currentTarget).data("item-id");
let _item = this.actor.items.find((element) => element._id == itemId);
let _item = this.actor.items.find((element) => element.id == itemId);
if (_item) {
let update = {
_id: _item._id,
_id: _item.id,
data: { value: $(event.currentTarget).val() },
};
await this.actor.updateEmbeddedEntity("OwnedItem", update);
await this.actor.updateEmbeddedDocuments("Item", [update]);
}
}
async _onClickSkill(event) {
console.log("_onClickSkill")
event.preventDefault();
const itemId = $(event.currentTarget).data("item-id");
let _item = this.actor.items.find((element) => element._id == itemId);
let _item = this.actor.items.find((element) => element.id == itemId);
if (_item) {
let newVal = true;
@ -886,10 +1023,10 @@ export class ActorSheetKH extends ActorSheet {
}
let update = {
_id: _item._id,
_id: _item.id,
data: { used: newVal },
};
await this.actor.updateEmbeddedEntity("OwnedItem", update);
await this.actor.updateEmbeddedDocuments("Item", [update]);
}
}
@ -905,14 +1042,15 @@ export class ActorSheetKH extends ActorSheet {
* @private
*/
async _itemDetailsToChat(itemId) {
let item = this.actor.getOwnedItem(itemId);
console.log("_itemDetailsToChat")
let item = this.actor.items.get(itemId);
if (!item) {
item = game.items.get(itemId);
}
if (!item) {
console.log("IMPORT ERROR")
console.log("IMPORT ERROR 11")
return
}
@ -920,11 +1058,11 @@ export class ActorSheetKH extends ActorSheet {
const html = await renderTemplate("systems/kopparhavet/templates/chat/item-card.html", itemDetails);
const messageData = {
user: game.user._id,
user: game.user.id,
type: CONST.CHAT_MESSAGE_TYPES.OTHER,
content: html,
speaker: {
actor: this.actor._id,
actor: this.actor.id,
token: this.actor.token,
alias: this.actor.name,
},

View File

@ -13,8 +13,8 @@ export default class ActorHelpers {
}, {});
// Remove modifications which are no longer used
if (this.object.data?.data?.relationships) {
for (let k of Object.keys(this.object.data.data.relationships)) {
if (this.object.data?.relationships) {
for (let k of Object.keys(this.object.data.relationships)) {
if (!relationships.hasOwnProperty(k)) relationships[`-=${k}`] = null;
}
}
@ -36,8 +36,8 @@ export default class ActorHelpers {
}, {});
// Remove modifications which are no longer used
if (this.object.data?.data?.learning) {
for (let k of Object.keys(this.object.data.data.learning)) {
if (this.object.data?.learning) {
for (let k of Object.keys(this.object.data.learning)) {
if (!learning.hasOwnProperty(k)) learning[`-=${k}`] = null;
}
}

View File

@ -4,11 +4,11 @@ export default class KHDiceRoller {
const roll = new Roll(formula);
let res = roll.roll();
await roll.evaluate();
let rollData = {
name: "SPELL.COST",
res: res,
res: roll,
showFormula: true
};
@ -23,9 +23,9 @@ export default class KHDiceRoller {
await roll.toMessage({
create: true,
content: html,
user: game.user._id,
user: game.user.id,
speaker: {
actor: speaker._id,
actor: speaker.id,
token: speaker.token,
alias: speaker.name,
},
@ -37,11 +37,11 @@ export default class KHDiceRoller {
const roll = new Roll(formula);
let res = roll.roll();
await roll.evaluate();
let rollData = {
name: "ITEM.DAMAGE",
res: res,
res: roll,
showFormula: true
};
@ -50,9 +50,9 @@ export default class KHDiceRoller {
await roll.toMessage({
create: true,
content: html,
user: game.user._id,
user: game.user.id,
speaker: {
actor: speaker._id,
actor: speaker.id,
token: speaker.token,
alias: speaker.name,
},
@ -68,11 +68,11 @@ export default class KHDiceRoller {
const roll = new Roll(formula);
let res = roll.roll();
await roll.evaluate();
let rollData = {
name: "ITEM.DEFENCE",
res: res,
res: roll,
showFormula: true
};
@ -81,19 +81,19 @@ export default class KHDiceRoller {
await roll.toMessage({
create: true,
content: html,
user: game.user._id,
user: game.user.id,
speaker: {
actor: speaker._id,
actor: speaker.id,
token: speaker.token,
alias: speaker.name,
},
});
}
async rollSkillInChat(skillName, skillValue, showValue, speaker, openclosed) {
async rollSkillInChat(skillName, skillValue, showValue, speaker, openclosed, opposite) {
const roll = new Roll(`1d100`);
let res = roll.roll();
await roll.evaluate();
let computedName = skillName
@ -105,14 +105,28 @@ export default class KHDiceRoller {
openclosed = 0
}
if(opposite === undefined) {
opposite = []
}
let oppositeValue = ""
opposite.forEach(function(skill) {
if(oppositeValue !== "") {
oppositeValue = oppositeValue + " " + game.i18n.localize("ROLL.OR") + " "
}
oppositeValue = oppositeValue + skill
})
let rollData = {
name: computedName,
res: res
res: roll,
opposite: oppositeValue
};
if(skillValue > 0) {
let oneRes = Math.floor((res.total / 1) % 10);
let tenRes = Math.floor((res.total / 10) % 10);
let oneRes = Math.floor((roll.total / 1) % 10);
let tenRes = Math.floor((roll.total / 10) % 10);
if(openclosed < 0) {
rollData.closed = Math.abs(openclosed)
@ -129,7 +143,7 @@ export default class KHDiceRoller {
// roll is opened
rollData.success = true
} else {
if (res.total <= skillValue) {
if (roll.total <= skillValue) {
rollData.success = true
} else {
rollData.failure = true
@ -146,16 +160,16 @@ export default class KHDiceRoller {
await roll.toMessage({
create: true,
content: html,
user: game.user._id,
user: game.user.id,
speaker: {
actor: speaker._id,
actor: speaker.id,
token: speaker.token,
alias: speaker.name,
},
});
}
async rollSkillDialogInChat(skillName, skillValue, showValue, speaker, startopen) {
async rollSkillDialogInChat(skillName, skillValue, showValue, speaker, startopen, opposite) {
const id = randomID();
if(startopen === undefined) {
@ -180,6 +194,9 @@ export default class KHDiceRoller {
const container = document.getElementById(id);
let openclosed = container.querySelector('[name="openclosed"]').value
await this.rollSkillInChat(skillName, skillValue, showValue, speaker, openclosed, opposite)
/*
const roll = new Roll(`1d100`);
let res = roll.roll();
@ -239,6 +256,7 @@ export default class KHDiceRoller {
alias: speaker.name,
},
});
*/
},
},
two: {
@ -251,4 +269,208 @@ export default class KHDiceRoller {
classes: ["dialog", "kopparhavet"],
}).render(true);
}
async rollSkillRitualInChat(ritualName, skills, showValue, speaker, openclosed) {
let rollData = {
name: ritualName,
res: []
};
if(openclosed === undefined) {
openclosed = 0
}
if(openclosed < 0) {
rollData.closed = Math.abs(openclosed)
}
if(openclosed > 0) {
rollData.opened = Math.abs(openclosed)
}
let successes = 0
let totalrolls = 0
for (const skill of skills) {
totalrolls++
const roll = new Roll(`1d100`);
await roll.evaluate();
let skillName = skill.name
let success = false
let failure = false
if(showValue) {
skillName = skillName + " (" + skill.value + ")"
}
let rollData2 = {
name: skillName,
res: roll,
};
if(openclosed < 0) {
rollData2.closed = Math.abs(openclosed)
}
if(openclosed > 0) {
rollData2.opened = Math.abs(openclosed)
}
if(skill.value > 0) {
let oneRes = Math.floor((roll.total / 1) % 10);
//let tenRes = Math.floor((res.total / 10) % 10);
if(openclosed < 0 && oneRes !== 0 && Math.abs(openclosed) >= oneRes) {
// roll is closed
failure = true
} else if(openclosed > 0 && oneRes !== 0 && Math.abs(openclosed) >= oneRes){
// roll is opened
success = true
successes++
} else {
if (roll.total <= skill.value) {
success = true
successes++
} else {
failure = true
}
}
}
rollData.res.push({
name: skillName,
failure: failure,
success: success,
result: roll,
})
rollData2.success = success
rollData2.failure = failure
const html = await renderTemplate("systems/kopparhavet/templates/dice/roll.html", rollData2);
await roll.toMessage({
create: true,
content: html,
user: game.user.id,
speaker: {
actor: speaker.id,
token: speaker.token,
alias: speaker.name,
},
});
}
switch (totalrolls) {
case 0:
case 1:
case 2:
break;
case 3:
if(successes === 0) {
rollData.result = "0"
} else if(successes === 1) {
rollData.result = "2"
} else if(successes === 2) {
rollData.result = "3"
} else if(successes === 3) {
rollData.result = "4"
}
break;
case 4:
if(successes === 0) {
rollData.result = "0"
} else if(successes === 1) {
rollData.result = "1"
} else if(successes === 2) {
rollData.result = "2"
} else if(successes === 3) {
rollData.result = "3"
} else if(successes === 4) {
rollData.result = "4"
}
break;
case 5:
if(successes === 0) {
rollData.result = "0"
} else if(successes === 1) {
rollData.result = "1"
} else if(successes === 2) {
rollData.result = "1"
} else if(successes === 3) {
rollData.result = "2"
} else if(successes === 4) {
rollData.result = "3"
} else if(successes === 5) {
rollData.result = "4"
}
break;
}
const html = await renderTemplate("systems/kopparhavet/templates/dice/ritual-roll.html", rollData);
/*
await roll.toMessage({
create: true,
content: html,
user: game.user._id,
speaker: {
actor: speaker._id,
token: speaker.token,
alias: speaker.name,
},
});
*/
await ChatMessage.create({
create: true,
content: html,
user: game.user.id,
speaker: {
actor: speaker.id,
token: speaker.token,
alias: speaker.name,
},
});
}
async rollSkillChallangeDialogInChat(name, skills, showValue, speaker, startopen) {
const id = randomID();
if(startopen === undefined) {
startopen = 0
}
const content = await renderTemplate("systems/kopparhavet/templates/roll-dialog.html", {
id,
startopen,
name,
});
await new Dialog({
title: game.i18n.localize("ROLL.TITLE"),
content,
buttons: {
one: {
icon: '<i class="fas fa-check"></i>',
label: game.i18n.localize("BUTTON.ROLL"),
callback: async () => {
const container = document.getElementById(id);
let openclosed = container.querySelector('[name="openclosed"]').value
await this.rollSkillRitualInChat(name, skills, showValue, speaker, openclosed)
},
},
two: {
icon: '<i class="fas fa-times"></i>',
label: game.i18n.localize("BUTTON.CANCEL"),
},
},
},
{
classes: ["dialog", "kopparhavet"],
}).render(true);
}
}

View File

@ -17,8 +17,8 @@ export default class ItemHelpers {
}, {});
// Remove modifications which are no longer used
if (this.object.data?.data?.modifications) {
for (let k of Object.keys(this.object.data.data.modifications)) {
if (this.object.data?.modifications) {
for (let k of Object.keys(this.object.data.modifications)) {
if (!modifications.hasOwnProperty(k)) modifications[`-=${k}`] = null;
}
}

View File

@ -28,7 +28,7 @@ export class ItemSheetKH extends ItemSheet {
data.dtypes = ["String", "Number", "Boolean"];
if (data?.data?.modifications) {
for (let attr of Object.values(data.data.modifications)) {
for (let attr of Object.values(data.modifications)) {
attr.isCheckbox = attr.dtype === "Boolean";
}
}
@ -39,23 +39,32 @@ export class ItemSheetKH extends ItemSheet {
let skillList2
if(game.settings.get("kopparhavet", "gameSystem") === "hjaltarnas-tid") {
skillList2 = await game.packs.get("kopparhavet.skills-ht").getContent();
skillList2 = await game.packs.get("kopparhavet.skills-ht").getDocuments();
} else {
skillList2 = await game.packs.get("kopparhavet.skills").getContent();
skillList2 = await game.packs.get("kopparhavet.skills").getDocuments();
}
for (let item of skillList2) {
if(item.data.type === "skill" && item.data.data.type.value === "combat") {
skillList.push(item)
skillList.push(item.data)
}
}
// Retrieve any created skills as well
for (let item of game.items.entities) {
game.items.forEach((item) => {
if(item.data.type === "skill" && item.data.data.type.value === "combat") {
skillList.push(item)
skillList.push(item.data)
}
});
/*
for (let item of game.items.entities) {
if(item.data.type === "skill" && item.data.type.value === "combat") {
skillList.push(item.data)
}
}
*/
this.position.width = 530;
this.position.height = 750;
break;
@ -77,23 +86,33 @@ export class ItemSheetKH extends ItemSheet {
let skillList3
if(game.settings.get("kopparhavet", "gameSystem") === "hjaltarnas-tid") {
skillList3 = await game.packs.get("kopparhavet.skills-ht").getContent();
skillList3 = await game.packs.get("kopparhavet.skills-ht").getDocuments();
} else {
skillList3 = await game.packs.get("kopparhavet.skills").getContent();
skillList3 = await game.packs.get("kopparhavet.skills").getDocuments();
}
for (let item of skillList3) {
if(item.data.type === "skill") {
skillList.push(item)
skillList.push(item.data)
}
}
// Retrieve any created skills as well
game.items.forEach((item) => {
if(item.data.type === "skill") {
skillList.push(item.data)
}
});
/*
// Retrieve any created skills as well
for (let item of game.items.entities) {
if(item.data.type === "skill") {
skillList.push(item)
skillList.push(item.data)
}
}
*/
this.position.width = 450;
this.position.height = 605;
break;
@ -102,23 +121,32 @@ export class ItemSheetKH extends ItemSheet {
let skillList4
if(game.settings.get("kopparhavet", "gameSystem") === "hjaltarnas-tid") {
skillList4 = await game.packs.get("kopparhavet.skills-ht").getContent();
skillList4 = await game.packs.get("kopparhavet.skills-ht").getDocuments();
} else {
skillList4 = await game.packs.get("kopparhavet.skills").getContent();
skillList4 = await game.packs.get("kopparhavet.skills").getDocuments();
}
for (let item of skillList4) {
if(item.data.type === "skill" && item.data.data.type.value === "combat") {
skillList.push(item)
skillList.push(item.data)
}
}
// Retrieve any created skills as well
game.items.forEach((item) => {
if(item.data.type === "skill" && item.data.data.type.value === "combat") {
skillList.push(item.data)
}
});
/*
// Retrieve any created skills as well
for (let item of game.items.entities) {
if(item.data.type === "skill" && item.data.data.type.value === "combat") {
skillList.push(item)
skillList.push(item.data)
}
}
*/
this.position.width = 530;
this.position.height = 750;
break;
@ -146,11 +174,11 @@ export class ItemSheetKH extends ItemSheet {
const clickedName = $(ev.currentTarget).data("name");
if(clickedName === "equipped") {
const equppiedValue = this.item.data.data.equipable.equipped;
const equppiedValue = this.item.data.equipable.equipped;
this.item.update({ "data.equipped.equipped": !equppiedValue });
} else {
const clickedValue = (this.item.data.data[clickedName].value == undefined ? false : this.item.data.data[clickedName].value);
const clickedValue = (this.item.data[clickedName].value == undefined ? false : this.item.data[clickedName].value);
let dataName = "data." + clickedName + ".value"
let tempData = {}
@ -174,7 +202,7 @@ export class ItemSheetKH extends ItemSheet {
event.preventDefault();
const a = event.currentTarget;
const action = a.dataset.action;
const attrs = this.object.data.data.modifications;
const attrs = this.object.data.modifications;
const form = this.form;
// Add new modification

View File

@ -27,7 +27,7 @@ export class ItemKH extends Item {
const html = await renderTemplate("systems/kopparhavet/templates/chat/item-card.html", itemData);
const chatData = {
user: game.user._id,
user: game.user.id,
rollMode: game.settings.get("core", "rollMode"),
content: html,
};

View File

@ -57,7 +57,7 @@ class KHDice {
const html2 = await renderTemplate("systems/kopparhavet/templates/dice/roll.html", rollData);
await r.toMessage({
user: game.user._id,
user: game.user.id,
create: true,
content: html2
});

View File

@ -10,10 +10,10 @@ export default class KHHooks {
actor.update({ "data.currency.shekel.label": "CURRENCY.SILVER" });
actorbaseSkills = CONFIG.KH.baseSkillsHT
skillIndex = await game.packs.get("kopparhavet.skills-ht").getContent();
skillIndex = await game.packs.get("kopparhavet.skills-ht").getDocuments();
} else {
actorbaseSkills = CONFIG.KH.baseSkills;
skillIndex = await game.packs.get("kopparhavet.skills").getContent();
skillIndex = await game.packs.get("kopparhavet.skills").getDocuments();
}
// Check if skill already exists by some chance
@ -23,7 +23,15 @@ export default class KHHooks {
// Filter skillIndex array to include only skills for Actor Type.
let _skillsList = skillIndex.filter((i) => skillsToAdd.includes(i.data.name));
await actor.createEmbeddedEntity("OwnedItem", _skillsList);
let _sl = [];
_skillsList.forEach((s) => {
//s.data._source.data["creatureType"] = actor.data.type;
//s.data._source.data["coreSkill"] = true;
_sl.push(s.data);
});
await actor.createEmbeddedDocuments("Item", _sl);
//await actor.createEmbeddedDocuments("Item", [_skillsList.toObject()]);
} else {
setTimeout(async function () {
await actor.sheet.render(true);

View File

@ -9,8 +9,8 @@ import * as migrations from "./helpers/migration-helper.js";
Hooks.once("init", () => {
CONFIG.Combat.initiative = { formula: "(@combat.init)d6kh2", decimals: 0 };
CONFIG.Actor.entityClass = ActorKH;
CONFIG.Item.entityClass = ItemKH;
CONFIG.Actor.documentClass = ActorKH;
CONFIG.Item.documentClass = ItemKH;
// Give global access to FFG config.
CONFIG.KH = KH;
@ -204,6 +204,40 @@ function registerHandlebarsHelpers() {
}
});
// Allows {if X = Y} type syntax in html using handlebars
Handlebars.registerHelper("iff", function (a, operator, b, opts) {
var bool = false;
switch (operator) {
case "==":
bool = a == b;
break;
case ">":
bool = a > b;
break;
case "<":
bool = a < b;
break;
case "!=":
bool = a != b;
break;
case "contains":
if (a && b) {
bool = a.includes(b);
} else {
bool = false;
}
break;
default:
throw "Unknown operator " + operator;
}
if (bool) {
return opts.fn(this);
} else {
return opts.inverse(this);
}
});
Handlebars.registerHelper('plaintextToHTML', function(value) {
// strip tags, add <br/> tags
return new Handlebars.SafeString(value.replace(/(<([^>]+)>)/gi, "").replace(/(?:\r\n|\r|\n)/g, '<br/>'));

View File

@ -1,80 +1,80 @@
{"name":"Sårbarhetssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett synligt m&aring;l h&ouml;gst tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"0vbwxrEL8Q6Vd2IC"}
{"name":"Fördriva elementvarelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rdriver en eldf&aring;gel, intighetsklot, stentr&auml;l, stormdrake eller vattenv&auml;ktare i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"17yN07nhOg9XZw8c"}
{"name":"Osynlighetsslöja","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>R&ouml;r vid en mantel, kappa, rock eller annat helt&auml;ckande plagg.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"2Jo5V4iQQC0kYoFK"}
{"name":"Sprängsejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett m&aring;l upp till en zon bort med kokande blod.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6 + 1T6 per runda","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"3HFtacWHOkGPVTzP"}
{"name":"Blixthand","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En ljusb&aring;ge sl&aring;r ut fr&aring;n dina h&auml;nder eller fr&aring;n &auml;nden p&aring; en stav, och sl&aring;r ner i en n&auml;rliggande zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"3VJgB51QcIgMm4pN"}
{"name":"Kontrollera elementvarelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du stj&auml;l en annan magikers eldf&aring;gel, intighetsklot, stentr&auml;l, stormdrake eller vattenv&auml;ktare i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"daunting","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"3W5Jl1oVZnlgNL9G"}
{"name":"Skenbild","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en skenbild av n&aring;got som du n&aring;gon g&aring;ng har sett.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"5gbvZbXlgV1ziVKQ"}
{"name":"Ingjuta livskraft","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rst&auml;rker en varelses livskraft och g&ouml;r att alla hans skador, b&aring;de de han har och de han orsakas, l&auml;ker dubbelt s&aring; snabbt.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"6o71rHqaRwIedi0E"}
{"name":"Vandrande blick","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sluter &ouml;gonen och l&aring;ter din blick vandra fritt fr&aring;n den plats du befinner dig och upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"9BRN6neI8H3uGKFf"}
{"name":"Åkalla blodets och stridens ande","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &aring;kallar ett illasinnat andev&auml;sen.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6 och 1T6 Hälsa","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"9L8kWmStnkL73nKF"}
{"name":"Stenskrud","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din hud blir h&aring;rd som sten och skyddar mot skada.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"9pQ2PQ3RnbuxgE8Q"}
{"name":"Djurlänk","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en permanent l&auml;nk till ett djur som &auml;r v&auml;lvilligt inst&auml;llt till dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"9psa8UX3TuakfOgj"}
{"name":"Trollsteg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du klipper wyrdtr&aring;darna som binder dig till en plats, och f&auml;ster dem vid en annan plats i grannskapet.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"A4Gk0KmeBXeLRLsV"}
{"name":"Skuggvandring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &ouml;ppnar ett h&aring;l till Andra sidan och faller dit, trots att du inte har tillr&auml;ckligt h&ouml;g Skuld.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Adm3KOH3SixgyFV0"}
{"name":"Avståndshugg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rtrollar ett n&auml;rstridsvapen som du h&aring;ller i handen, eller dina h&auml;nder och f&ouml;tter.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"C762fQfH2BvmJBD9"}
{"name":"Fornsyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du h&aring;ller i ett f&ouml;rem&aring;l och upplever vad det har varit med om.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"CHgH76Nmu4iPdxGV"}
{"name":"Silvertunga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En trollkarls r&ouml;st kan vara f&ouml;rh&auml;xande.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"CN769WMfBlMyso3l"}
{"name":"Frammana vattenväktare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Ur vattnet kallar du fram en virvlande pelare av vatten.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"CYwszyqEUoxhXIUC"}
{"name":"Fasa","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du samlar skuggor omkring dig och f&ouml;rvrider ljuset s&aring; att du verkar st&ouml;rre och farligare &auml;n du &auml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"DCQijV6OzwVLQWHv"}
{"name":"Tystnad","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&ouml;rdriva alla ljud fr&aring;n den zonen d&auml;r du befinner dig eller en angr&auml;nsande zon, i den f&ouml;rh&auml;xade zonen h&ouml;rs inga ljud &ouml;ver huvud taget.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Dy8Eh19jNHrZqWxm"}
{"name":"Häxstöt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skickar en tryckv&aring;g av kraft mot en valfri punkt som du kan se upp till tre zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"FlDXRhtkUBTlBOAL"}
{"name":"Frammana eldfågel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Fr&aring;n en &ouml;ppen l&aring;ga kallar du fram en f&aring;gel av eld.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"FpILG5rlkkdPJlJ7"}
{"name":"Mörkersyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan genom din ber&ouml;ring ge n&aring;gon f&ouml;rm&aring;gan att se i m&ouml;rker lika v&auml;l som en katt under en scen.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"FplzwY0oSaumJSpc"}
{"name":"Frammana stenträl","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar upp l&ouml;sa stenar stenar ur marken som samlar sig och staplar sig p&aring; varandra till en m&auml;nniskoliknande form.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Frb2EfY8LTFTLcR3"}
{"name":"Dra gift","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du drar med din magi ut gift ur kroppen s&aring; att det blir svagare.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"GsHmeqOCo1BTYSjX"}
{"name":"Törnevägg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du reser en v&auml;gg av t&ouml;rnen ur marken.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Hrkk0TlOxGKTZsJa"}
{"name":"Häxsköld","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du anv&auml;nder din h&auml;xkraft f&ouml;r att skydda dig mot andras besv&auml;rjelser.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"I1QLxx0Q4FYIXxn5"}
{"name":"Hamnskiftare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>N&auml;r du v&auml;ver besv&auml;rjelsen byter du omedelbart hamn till antingen ett valfritt medelstort fyrfota djur som varg, r&auml;v eller hund; eller till en valfri normalstor f&aring;gel, exempelvis korp, uggla eller &ouml;rn.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"KZPKbjxsKBDwXo7i"}
{"name":"Ansiktsförändring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&ouml;r&auml;ndra ditt utseende s&aring; att du ser ut som en helt annan person, men kan inte avvika fr&aring;n det som &auml;r naturligt f&ouml;rekommande inom ditt folkslag.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"KubWMbkLDdXhLpnw"}
{"name":"Skyddscirkel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ritar en skyddscirkel kring en zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"LUWWJcjbusRcOPDU"}
{"name":"Luftbro","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en bro av f&ouml;rt&auml;tad luft som &auml;r s&aring; gott som osynlig men stark nog att b&auml;ra en grupp ryttare.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"LZa5IV1HQy6t8YUI"}
{"name":"Hjältestyrka","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din ber&ouml;ring ger kraft och styrka &aring;t en person som du nuddar vid s&aring; att hon kan utf&ouml;ra fantastiska styrkeprov, till exempel att sl&aring; ner d&ouml;rrar eller kasta upp personer till ett f&ouml;nster.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"MseXlik3Rfp3Jq1R"}
{"name":"Dimma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sveper in grannskapet i en gr&aring; kall dimma.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"NgGWiK2qACtJ8lPj"}
{"name":"Häxbarriär","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du formar wyrdv&auml;ven till en skyddande v&auml;gg mellan dig och en annan zon som en f&ouml;rsvarshandling eller vanlig handling.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"OKhnWpG7IzFk2jjK"}
{"name":"Förnimmelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du v&auml;ver en besv&auml;rjelse som hj&auml;lper dig att hitta n&aring;got du vill finna.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ORb2zsMikIxCuP1W"}
{"name":"Binda elementvarelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du binder en eldf&aring;gel, intighetsklot, stentr&auml;l, stormdrake eller vattenv&auml;ktare som du kontrollerar och &auml;r i samma zon som du sj&auml;lv.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Ol5JWt1UvHZAFp2r"}
{"name":"Klor","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan genom din ber&ouml;ring f&aring; n&aring;gons naglar, &auml;ven dina egna, att omformas till kraftiga klor.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"QNOtq57478we6u3b"}
{"name":"Vindstämma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du flyttar din r&ouml;st till en annan plats upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"TY08rPL2I4OvZ7oz"}
{"name":"Fjärrsyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>V&auml;lj en zon i grannskapet som du har varit i.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"U1PfIdXuvoWrljGr"}
{"name":"Vattenandning","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan genom din ber&ouml;ring ge n&aring;gon f&ouml;rm&aring;gan att andas under vattnet.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"UuIwtIRQNK2yLEbq"}
{"name":"Stjäla livskraft","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du stj&auml;l livskraft fr&aring;n en person i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"VugrHbqy8nWV2AcK"}
{"name":"Frammana intighetsklot","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar ett klot av intighet ur skuggorna.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"WQ1PqbiKPISnBQx9"}
{"name":"Söva minne","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du l&auml;gger dina h&auml;nder p&aring; m&aring;lets huvud och d&auml;mpar ett minne i m&aring;lets sinne.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Y1VzQHOkGOBxyBwn"}
{"name":"Dubbelgångare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en illusion som &auml;r en exakt kopia av dig sj&auml;lv och upptr&auml;der ungef&auml;r som du g&ouml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Y9obcMVQuQ9gPT9b"}
{"name":"Läkesejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din ber&ouml;ring f&aring;r s&aring;r att sluta sig och ben att l&auml;ka.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"YQpw4z540tEhIjU2"}
{"name":"Vapenbane","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sn&auml;rjer ett vapen i wyrd s&aring; att det blir tr&ouml;gare och sv&aring;rare att anv&auml;nda.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"YbkMQm6KhjWEvlKF"}
{"name":"Isklinga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan sticka ner din hand i en vattensamling och ur den dra upp ett vapen av is.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"aXHxu9bRQhGDoSn9"}
{"name":"Stridssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rtrollar ett vapen s&aring; att det n&auml;stan &auml;r som att det anfaller sj&auml;lv mot sina m&aring;l.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"aezkEHBzhrjO2Vfc"}
{"name":"Smedshänder","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan h&aring;lla eller r&ouml;ra vid brinnande f&ouml;rem&aring;l och kokheta f&ouml;rem&aring;l med dina h&auml;nder utan att du tar n&aring;gon skada.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ah03WVKjELDuJNLW"}
{"name":"Låna ett djurs sinne","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du l&aring;nar ett djurs sinne s&aring; att du uppfattar det som djuret uppfattar.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"bXO606NywgPcHIv3"}
{"name":"Ljusblixt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en stark ljusblixt som bl&auml;ndar en person i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"cfWvtWAUkks0VEoU"}
{"name":"Den skälvande marken","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&aring;r marken kring dina f&ouml;tter att sk&auml;lva som om det vore jordb&auml;vning.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"fSsG5vZ7jbZ4SsH6"}
{"name":"Bedövningssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett synligt m&aring;l h&ouml;gst tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"gObIGNq0Peihzldt"}
{"name":"Spårsyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>R&ouml;r vid dina &ouml;gon eller en villig persons &ouml;gon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"giOn95ZsdHbnrlgR"}
{"name":"Skugga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sveper in en zon i m&ouml;rker och skugga.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"hdkScjmDCZKcqeur"}
{"name":"Skyddsruna","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ritar en skyddsruna p&aring; ett f&ouml;rem&aring;l eller en person.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"hwxfruXcygDhQhuE"}
{"name":"Tillkalla djur","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan kalla till dig ett djur som efter b&auml;sta f&ouml;rm&aring;ga omedelbart tar sig till den zon d&auml;r du befinner dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"jXxw6MBh8mvNqbL3"}
{"name":"Häxlås","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du v&auml;ver en f&ouml;rslutning p&aring; en d&ouml;rr, en f&ouml;nsterlucka, en ask, ett brunnslock, en sv&auml;rdsskida eller n&aring;got annat som g&aring;r att st&auml;nga.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"jpM6sRc6E12VA6SZ"}
{"name":"Söndra väv","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sliter s&ouml;nder de wyrdtr&aring;dar som binder en annan varelse till den fysiska v&auml;rlden.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"jqjzkZj93mcEBbkY"}
{"name":"Flygande kvast","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>F&ouml;rtrolla en kvast eller stav och anv&auml;nd den f&ouml;r att flyga.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"k0wz1pf5qFTcrZ2J"}
{"name":"Trollviskning","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>S&ouml;k &ouml;gonkontakt med en person.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"k3cp3BL5maJTF3U0"}
{"name":"Den rämnande kölden","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ingjuter vinterns bitande k&ouml;ld in i sprickor och h&aring;ligheter i luckor, portar, murar, mindre stenv&auml;ggar eller klippblock som inte &auml;r magiska eller levande.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"Speciell","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"l8zHe015laxnQ1gB"}
{"name":"Snabbväxt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&aring; en v&auml;xt att v&auml;xa lika mycket p&aring; ett dygn som den skulle ha gjort under ett &aring;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"lJV6MXRedW03LOXZ"}
{"name":"Vintergrepp","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>V&auml;lj en zon upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"mdgenCHu99flECY0"}
{"name":"Fjäderfall","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar fram en pl&ouml;tsligt uppvind som d&auml;mpar fall.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"oyID4xoFGzidkCwq"}
{"name":"Slå blind","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar &ouml;gonen hos ett m&aring;l i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"qPXYgqCvMfpIOFV2"}
{"name":"Slöjspegel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &ouml;ppnar ett f&ouml;nster genom sl&ouml;jan till Andra sidan med hj&auml;lp av en spegel eller kristall.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"qamfrdfg42Aju73z"}
{"name":"Häxljus","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar ett fladdrande h&auml;xljus som f&ouml;ljer med dig upp till en timme och som lyser upp i m&ouml;rkret.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"r5Rp648rrQ5lTG9M"}
{"name":"Frammana stormdrake","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar samman vindar och moln ur luften till en drakliknande skepnad av dimma och blixtar.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"s8b6p7IFy6bvhctn"}
{"name":"Stennäve","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du slungar en sten med magisk kraft mot en fiende upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"smpaHa9w3j8C64iV"}
{"name":"Svaghetssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar en synlig motst&aring;ndare upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"tEtjr0L8I5TltwOS"}
{"name":"Eldvägg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar upp en v&auml;gg som sp&auml;rrar av din zon fr&aring;n en annan eller delar din zon i tv&aring;.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"tTinGlRK14T0vPjq"}
{"name":"Häxblixt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En str&aring;le av h&auml;xljus sl&aring;r ut fr&aring;n din hand eller ditt fokus.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"uT2Z9KRBrltlYkn9"}
{"name":"Kontrollera djur","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du tar kontrollen &ouml;ver ett djur inom din zon eller en n&auml;rliggande zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6 + 1T6 per extra djur","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"vbbmsCuk7YoRdzrJ"}
{"name":"Förvränga tid","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du v&auml;ver en bubbla runt om ett m&aring;l som f&ouml;rvrider tiden s&aring; att tiden g&aring;r fortare eller l&aring;ngsammare f&ouml;r denne.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"vxRMz1jOF7F8pL3W"}
{"name":"Virvelvind","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en virvelvind som slungar runt damm, smuts och andra l&ouml;sa och l&auml;tta f&ouml;rem&aring;l i omgivningen.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"wOQVwLwLFI3hX1ev"}
{"name":"Skydd mot is och eld","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en virvlande bubbla runt omkring dig som skyddar dig mot k&ouml;ld och hetta.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"yAQGm3myQi4CvFDg"}
{"name":"Skuggflykt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du river upp wyrdv&auml;ven s&aring; mycket att du hamnar p&aring; andra sidan.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6 + special","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"yTSq8sUVzEtfXLvz"}
{"name":"Växtsejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du besv&auml;rjer m&aring;let och f&aring;r det att v&auml;xa sig st&ouml;rre och starkare.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ysEr06u0uYM86YRb"}
{"name":"Häxflamma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En eldstr&aring;le skjuter ut fr&aring;n dina h&auml;nder eller din stav, med vilken du kan anfalla m&aring;l i samma zon som dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"zesYYnpn11TWo3dK"}
{"name":"Fördriva elementvarelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rdriver en eldf&aring;gel, intighetsklot, stentr&auml;l, stormdrake eller vattenv&auml;ktare i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Wyrd","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"0WauBuWnuags8CCH"}
{"name":"Åkalla blodets och stridens ande","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &aring;kallar ett illasinnat andev&auml;sen.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6 och 1T6 Hälsa","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"3duR1TKM6nFBSfHy"}
{"name":"Eldvägg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar upp en v&auml;gg som sp&auml;rrar av din zon fr&aring;n en annan eller delar din zon i tv&aring;.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"42Re03XheCQLRthl"}
{"name":"Häxbarriär","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du formar wyrdv&auml;ven till en skyddande v&auml;gg mellan dig och en annan zon som en f&ouml;rsvarshandling eller vanlig handling.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"42c7TrgtfyjdDwIf"}
{"name":"Hjältestyrka","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din ber&ouml;ring ger kraft och styrka &aring;t en person som du nuddar vid s&aring; att hon kan utf&ouml;ra fantastiska styrkeprov, till exempel att sl&aring; ner d&ouml;rrar eller kasta upp personer till ett f&ouml;nster.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"49n1O14m1o0lN5FO"}
{"name":"Dimma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sveper in grannskapet i en gr&aring; kall dimma.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"5MJJ7mRz6Ynp5FHp"}
{"name":"Häxstöt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skickar en tryckv&aring;g av kraft mot en valfri punkt som du kan se upp till tre zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Styrkeprov","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"5uFOSRVGEZa0A2ah"}
{"name":"Sprängsejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett m&aring;l upp till en zon bort med kokande blod.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Uthållighet","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6 + 1T6 per runda","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"7DMZXoFiSPh0v0UX"}
{"name":"Dubbelgångare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en illusion som &auml;r en exakt kopia av dig sj&auml;lv och upptr&auml;der ungef&auml;r som du g&ouml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"7pJ540Wyoj6vwcU9"}
{"name":"Isklinga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan sticka ner din hand i en vattensamling och ur den dra upp ett vapen av is.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"8tPkB84rE2JYMyhj"}
{"name":"Skydd mot is och eld","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en virvlande bubbla runt omkring dig som skyddar dig mot k&ouml;ld och hetta.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"AoejefPiTBrTmCv0"}
{"name":"Skugga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sveper in en zon i m&ouml;rker och skugga.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"B4i56WvZBKN3rCmN"}
{"name":"Söva minne","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du l&auml;gger dina h&auml;nder p&aring; m&aring;lets huvud och d&auml;mpar ett minne i m&aring;lets sinne.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"CU5kTdb2U7WOdM4i"}
{"name":"Vintergrepp","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>V&auml;lj en zon upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Uthållighet","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Ec2bhExzCsZEHYAY"}
{"name":"Fjärrsyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>V&auml;lj en zon i grannskapet som du har varit i.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"EgIxekm0wEjhuTFm"}
{"name":"Törnevägg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du reser en v&auml;gg av t&ouml;rnen ur marken.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ErdPlDiV13Wb2Rx0"}
{"name":"Vandrande blick","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sluter &ouml;gonen och l&aring;ter din blick vandra fritt fr&aring;n den plats du befinner dig och upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"GOQUMWQjuijKIyeU"}
{"name":"Häxblixt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En str&aring;le av h&auml;xljus sl&aring;r ut fr&aring;n din hand eller ditt fokus.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Go3IJrc7E06g01F4"}
{"name":"Frammana stormdrake","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar samman vindar och moln ur luften till en drakliknande skepnad av dimma och blixtar.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Grm7sG7kdzGzkye6"}
{"name":"Fjäderfall","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar fram en pl&ouml;tsligt uppvind som d&auml;mpar fall.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"GtGc8sp6KxR2G8UH"}
{"name":"Frammana eldfågel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Fr&aring;n en &ouml;ppen l&aring;ga kallar du fram en f&aring;gel av eld.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"INvYOe3dZwvbvBkl"}
{"name":"Sårbarhetssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett synligt m&aring;l h&ouml;gst tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"IOPJ8dmRnO7PN9gY"}
{"name":"Stridssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rtrollar ett vapen s&aring; att det n&auml;stan &auml;r som att det anfaller sj&auml;lv mot sina m&aring;l.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"KDEUdgcfFfeAzxtz"}
{"name":"Fornsyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du h&aring;ller i ett f&ouml;rem&aring;l och upplever vad det har varit med om.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"KGdRgD7P0chJiQXi"}
{"name":"Kontrollera djur","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du tar kontrollen &ouml;ver ett djur inom din zon eller en n&auml;rliggande zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6 + 1T6 per extra djur","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"MUpNWhMSa4Qtpti4"}
{"name":"Häxljus","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar ett fladdrande h&auml;xljus som f&ouml;ljer med dig upp till en timme och som lyser upp i m&ouml;rkret.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ON4NrGanB0iVRNyZ"}
{"name":"Slå blind","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar &ouml;gonen hos ett m&aring;l i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Uthållighet","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PA6VkitfNE02envJ"}
{"name":"Stenskrud","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din hud blir h&aring;rd som sten och skyddar mot skada.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PJzFgSXZZadfKU07"}
{"name":"Dra gift","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du drar med din magi ut gift ur kroppen s&aring; att det blir svagare.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PLSEZASdWrNC0Kiu"}
{"name":"Vapenbane","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sn&auml;rjer ett vapen i wyrd s&aring; att det blir tr&ouml;gare och sv&aring;rare att anv&auml;nda.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PN4q48VAA62TIQ4G"}
{"name":"Tystnad","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&ouml;rdriva alla ljud fr&aring;n den zonen d&auml;r du befinner dig eller en angr&auml;nsande zon, i den f&ouml;rh&auml;xade zonen h&ouml;rs inga ljud &ouml;ver huvud taget.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PQcbEd6X9K5XZA7O"}
{"name":"Avståndshugg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rtrollar ett n&auml;rstridsvapen som du h&aring;ller i handen, eller dina h&auml;nder och f&ouml;tter.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PVtcV3eALUveMEuR"}
{"name":"Frammana intighetsklot","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar ett klot av intighet ur skuggorna.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"WXkddTWzqHpaLDV5"}
{"name":"Slöjspegel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &ouml;ppnar ett f&ouml;nster genom sl&ouml;jan till Andra sidan med hj&auml;lp av en spegel eller kristall.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"WnrSCv9qSiR8UVtQ"}
{"name":"Stjäla livskraft","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du stj&auml;l livskraft fr&aring;n en person i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Uthållighet","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"XXD5JkmDfLJ9C6Ld"}
{"name":"Låna ett djurs sinne","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du l&aring;nar ett djurs sinne s&aring; att du uppfattar det som djuret uppfattar.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"XlCwMK7WeTWeYdtk"}
{"name":"Mörkersyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan genom din ber&ouml;ring ge n&aring;gon f&ouml;rm&aring;gan att se i m&ouml;rker lika v&auml;l som en katt under en scen.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"YZKgZaQYp7OVBdSB"}
{"name":"Häxlås","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du v&auml;ver en f&ouml;rslutning p&aring; en d&ouml;rr, en f&ouml;nsterlucka, en ask, ett brunnslock, en sv&auml;rdsskida eller n&aring;got annat som g&aring;r att st&auml;nga.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Ydrs3Vjz7zfZSywS"}
{"name":"Växtsejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du besv&auml;rjer m&aring;let och f&aring;r det att v&auml;xa sig st&ouml;rre och starkare.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Styrkeprov","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"YkqsxYP3HmaMapi8"}
{"name":"Häxflamma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En eldstr&aring;le skjuter ut fr&aring;n dina h&auml;nder eller din stav, med vilken du kan anfalla m&aring;l i samma zon som dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Ys5Lh0VHYHBwSsVB"}
{"name":"Förvränga tid","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du v&auml;ver en bubbla runt om ett m&aring;l som f&ouml;rvrider tiden s&aring; att tiden g&aring;r fortare eller l&aring;ngsammare f&ouml;r denne.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Wyrd","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"aQJMXW1a6Ylm06pV"}
{"name":"Skyddsruna","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ritar en skyddsruna p&aring; ett f&ouml;rem&aring;l eller en person.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"b7fDC8N6t9cH3Vko"}
{"name":"Kontrollera elementvarelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du stj&auml;l en annan magikers eldf&aring;gel, intighetsklot, stentr&auml;l, stormdrake eller vattenv&auml;ktare i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Wyrd","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"daunting","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"bikGBK8hvXfz3wtA"}
{"name":"Tillkalla djur","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan kalla till dig ett djur som efter b&auml;sta f&ouml;rm&aring;ga omedelbart tar sig till den zon d&auml;r du befinner dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"coNhJZkEtktlaqzn"}
{"name":"Ansiktsförändring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&ouml;r&auml;ndra ditt utseende s&aring; att du ser ut som en helt annan person, men kan inte avvika fr&aring;n det som &auml;r naturligt f&ouml;rekommande inom ditt folkslag.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"dFLr3MLkXdoFP2id"}
{"name":"Ljusblixt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en stark ljusblixt som bl&auml;ndar en person i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Manövrer","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"djBJTsGEI3CnPQuB"}
{"name":"Häxsköld","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du anv&auml;nder din h&auml;xkraft f&ouml;r att skydda dig mot andras besv&auml;rjelser.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"f5C29nSf6q2uJcG5"}
{"name":"Frammana vattenväktare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Ur vattnet kallar du fram en virvlande pelare av vatten.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"fTW6pDuaMX0luL5B"}
{"name":"Den rämnande kölden","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ingjuter vinterns bitande k&ouml;ld in i sprickor och h&aring;ligheter i luckor, portar, murar, mindre stenv&auml;ggar eller klippblock som inte &auml;r magiska eller levande.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"Speciell","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"fsHr8HdXgGW3guZ6"}
{"name":"Smedshänder","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan h&aring;lla eller r&ouml;ra vid brinnande f&ouml;rem&aring;l och kokheta f&ouml;rem&aring;l med dina h&auml;nder utan att du tar n&aring;gon skada.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"gi371R1kA9jkBbEO"}
{"name":"Svaghetssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar en synlig motst&aring;ndare upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"h56QrNVQtbcwyaj2"}
{"name":"Luftbro","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en bro av f&ouml;rt&auml;tad luft som &auml;r s&aring; gott som osynlig men stark nog att b&auml;ra en grupp ryttare.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"hvQ5KpkLb1JHWtAz"}
{"name":"Trollsteg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du klipper wyrdtr&aring;darna som binder dig till en plats, och f&auml;ster dem vid en annan plats i grannskapet.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"imeuzkc8mZYvsP1q"}
{"name":"Den skälvande marken","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&aring;r marken kring dina f&ouml;tter att sk&auml;lva som om det vore jordb&auml;vning.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"imf5mk2FUhkWpgpj"}
{"name":"Ingjuta livskraft","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rst&auml;rker en varelses livskraft och g&ouml;r att alla hans skador, b&aring;de de han har och de han orsakas, l&auml;ker dubbelt s&aring; snabbt.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"j5JBTRbRFFgx8xnx"}
{"name":"Fasa","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du samlar skuggor omkring dig och f&ouml;rvrider ljuset s&aring; att du verkar st&ouml;rre och farligare &auml;n du &auml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"k7YnASOJNtz8V3IV"}
{"name":"Vattenandning","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan genom din ber&ouml;ring ge n&aring;gon f&ouml;rm&aring;gan att andas under vattnet.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"k9ipu82NRXtzxx1M"}
{"name":"Frammana stenträl","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kallar upp l&ouml;sa stenar stenar ur marken som samlar sig och staplar sig p&aring; varandra till en m&auml;nniskoliknande form.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"kOxqUuIjn2VVyNte"}
{"name":"Spårsyn","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>R&ouml;r vid dina &ouml;gon eller en villig persons &ouml;gon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ksx3W6nGVkHp2Hvt"}
{"name":"Klor","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan genom din ber&ouml;ring f&aring; n&aring;gons naglar, &auml;ven dina egna, att omformas till kraftiga klor.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"leLbWVz4l8Wga2nn"}
{"name":"Skenbild","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en skenbild av n&aring;got som du n&aring;gon g&aring;ng har sett.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"m75po1Iq13JyVxn7"}
{"name":"Flygande kvast","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>F&ouml;rtrolla en kvast eller stav och anv&auml;nd den f&ouml;r att flyga.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"mfOlQ745YzhlIRrn"}
{"name":"Vindstämma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du flyttar din r&ouml;st till en annan plats upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"mxa9Y8GmFZfuNjcJ"}
{"name":"Virvelvind","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en virvelvind som slungar runt damm, smuts och andra l&ouml;sa och l&auml;tta f&ouml;rem&aring;l i omgivningen.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"no2vD8NlfkeJ2IHm"}
{"name":"Hamnskiftare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>N&auml;r du v&auml;ver besv&auml;rjelsen byter du omedelbart hamn till antingen ett valfritt medelstort fyrfota djur som varg, r&auml;v eller hund; eller till en valfri normalstor f&aring;gel, exempelvis korp, uggla eller &ouml;rn.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"o0ngfNZhDIaK8nuu"}
{"name":"Binda elementvarelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du binder en eldf&aring;gel, intighetsklot, stentr&auml;l, stormdrake eller vattenv&auml;ktare som du kontrollerar och &auml;r i samma zon som du sj&auml;lv.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"o2pR0Wi37LJzQz3U"}
{"name":"Skuggflykt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du river upp wyrdv&auml;ven s&aring; mycket att du hamnar p&aring; andra sidan.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6 + special","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"oUXGoyt3TWjWWK7V"}
{"name":"Läkesejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din ber&ouml;ring f&aring;r s&aring;r att sluta sig och ben att l&auml;ka.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"pYBdKmJrE1IdxWn7"}
{"name":"Djurlänk","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en permanent l&auml;nk till ett djur som &auml;r v&auml;lvilligt inst&auml;llt till dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"pbybfO7wcljlHAP3"}
{"name":"Skyddscirkel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ritar en skyddscirkel kring en zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"pt1Wcj4YvHeba0qS"}
{"name":"Stennäve","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du slungar en sten med magisk kraft mot en fiende upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"qlyVoVkRPCrQLt5k"}
{"name":"Osynlighetsslöja","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>R&ouml;r vid en mantel, kappa, rock eller annat helt&auml;ckande plagg.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"qp3Kddpj7Nkexv4Q"}
{"name":"Blixthand","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En ljusb&aring;ge sl&aring;r ut fr&aring;n dina h&auml;nder eller fr&aring;n &auml;nden p&aring; en stav, och sl&aring;r ner i en n&auml;rliggande zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"rrjoQEe4L6ZpS9UP"}
{"name":"Bedövningssejd","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett synligt m&aring;l h&ouml;gst tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"sOF6TJ1k4cFwimIO"}
{"name":"Söndra väv","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du sliter s&ouml;nder de wyrdtr&aring;dar som binder en annan varelse till den fysiska v&auml;rlden.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"t0GV8PevaVXpik79"}
{"name":"Silvertunga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En trollkarls r&ouml;st kan vara f&ouml;rh&auml;xande.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"wUa97IO7drguxS0o"}
{"name":"Trollviskning","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>S&ouml;k &ouml;gonkontakt med en person.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Wyrd","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"xeqDV6OvZx9AFhmn"}
{"name":"Snabbväxt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&aring; en v&auml;xt att v&auml;xa lika mycket p&aring; ett dygn som den skulle ha gjort under ett &aring;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"z7Hvy0ZleizM4pJm"}
{"name":"Skuggvandring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &ouml;ppnar ett h&aring;l till Andra sidan och faller dit, trots att du inte har tillr&auml;ckligt h&ouml;g Skuld.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"zFwc7IdKGzOzujz7"}
{"name":"Förnimmelse","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du v&auml;ver en besv&auml;rjelse som hj&auml;lper dig att hitta n&aring;got du vill finna.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"zly1ApyygoPw4oEq"}

View File

@ -1,34 +1,34 @@
{"name":"Blixt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En blixt sl&aring;r ut fr&aring;n din hand eller din stav.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"uf8sJeeXkXVK8jFJ"}
{"name":"Djurlänk","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en permanent l&auml;nk till ett djur som &auml;r v&auml;lvilligt inst&auml;llt till dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"zTKsZP8qbSnoC1Q6"}
{"name":"Flamma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En eldstr&aring;le skjuter ut fr&aring;n dina h&auml;nder eller din stav, med vilken du kan anfalla m&aring;l i samma zon som dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"NRaol7ubn6JBxvVE"}
{"name":"Frammana Salamander","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Fr&aring;n en &ouml;ppen l&aring;ga kallar du fram en liten, blygr&aring; och kall &ouml;dlevarelse med f&ouml;rm&aring;gan att f&aring; saker omkring sig att fatta eld.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"O7uNYLyspuHcfAud"}
{"name":"Frammana Undin","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Ur havet eller en st&ouml;rre samling saltvatten stiger en vagt m&auml;nniskoliknande form av vatten.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"qAEfjVYmmTGoojTk"}
{"name":"Frammana Åskfågel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Fr&aring;n ett moln p&aring; &ouml;ppen himmel kallar du ned en stor, kolsvart och korpliknande f&aring;gelvarelse.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"mzrvXqVipsZ8TIQo"}
{"name":"Frammana tjänsteande","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar en l&auml;gre tj&auml;nsteande eller sm&aring;&shy; demon som kan hj&auml;lpa dig med sm&aring;bestyr.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"M7KMS5P1N4MopwnQ"}
{"name":"Fördriva","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rdriver en utomv&auml;rldslig varelse i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ICZkhlED30UK4ae1"}
{"name":"Hamnskiftare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du tecknar en magisk cirkel runt dig sj&auml;lv, med en p&auml;ls eller ett skinn av den varelse du vill byta form till i cirkelns mitt.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"fBqnd9fZhC5eZZ0s"}
{"name":"Hela","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din ber&ouml;ring f&aring;r s&aring;r att sluta sig och ben att l&auml;ka.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"JGvV6QpAJv6MTz2X"}
{"name":"Kontrollera djur","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du tar kontrollen &ouml;ver ett djur i din eller en n&auml;r&shy; liggande zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6 + 1T6 per extra djur","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"tHuEMPdUCQgTq2yU"}
{"name":"Magisk sköld","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du anv&auml;nder din magiska kraft f&ouml;r att skydda dig mot andras besv&auml;rjelser.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"JFW5n2nVScYUVYpl"}
{"name":"Skyddscirkel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ritar en skyddande magisk cirkel kring en zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"jA8ZEQuOWWhDyMjL"}
{"name":"Stenskrud","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din hud blir h&aring;rd som sten och &ouml;kar ditt skydd mot skada med 1T6.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"YbtKw9PZ2VLmT5cv"}
{"name":"Stjäla livskraft","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du stj&auml;l livskraft fr&aring;n en person i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"P5lciWwew1egDeU4"}
{"name":"Vindstöt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar en kortlivad vindande som slungar sig mot en fiende upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"AkmEwgAutdwumY17"}
{"name":"Vindviskare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan tala med vindarnas andar, och f&aring; dem att antingen byta riktning, lugna sin framfart, eller bl&aring;sa upp.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"EKQ2jOfYl8cxeoOt"}
{"name":"Vågsvall","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en stor magisk v&aring;g.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"WGIXEcjdvZyboDVe"}
{"name":"Åkalla beskyddaren [namn]","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Kr&auml;ver f&ouml;rm&aring;gan Magisk Pakt (se sida 46).</p>\n<p>Varje beskyddare har en unik besv&auml;rjelse.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"(Ritual) 2T6; (Kontrollera) 2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"XsT8DV4jS4dezP8g"}
{"name":"Åkalla demonen Azag","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &aring;kallar Azag, en monstru&ouml;s stendemon. Azag har s&auml;rdraget Blodt&ouml;rstig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"(Ritual) 4T6 och 1T6 Hälsa*; (Kontrollera) 3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"nYMfhipFPQmgVlSE"}
{"name":"Åskvigg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Besv&auml;rjelsen kan bara kastas om b&aring;de magikern och m&aring;let befinner sig under bar himmel.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"6UUPWalCAVaKA9Yr"}
{"name":"Ansiktsförändring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&ouml;r&auml;ndra ditt utseende s&aring; att du ser ut som en helt annan person, men kan inte avvika fr&aring;n det som &auml;r naturligt f&ouml;rekommande inom ditt folkslag.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"RDiUMCHIqwhMQYMm"}
{"name":"Dubbelgångare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en illusion som &auml;r en exakt kopia av dig sj&auml;lv och upptr&auml;der ungef&auml;r som du g&ouml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"FVKZaMvBMBcifw9c"}
{"name":"Fasa","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du samlar skuggor omkring dig och f&ouml;rvrider ljuset s&aring; att du verkar st&ouml;rre och farligare &auml;n du &auml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"E9sHoM5UJtWq0EUq"}
{"name":"Fyrljus","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar ett oerh&ouml;rt kraftigt ljussken fr&aring;n en specifik punkt.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"GE43lem6ZueozjVl"}
{"name":"Förvirra","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett synligt m&aring;l h&ouml;gst tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"2mzBNacrVUDmFVUy"}
{"name":"Hägring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&aring;r &ouml;vriga i samma zon som du att se en h&auml;gring vid horisonten.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"KXIdjI15nkSrCkWU"}
{"name":"Ljus","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar ett fladdrande magiskt ljus som f&ouml;ljer med dig scenen ut och som lyser upp i m&ouml;rkret.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"RbHZ6B6Wv2guyrWR"}
{"name":"Magisk stämning","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar sm&aring;effekter i din zon som bidrar till en f&ouml;rtrollande och f&ouml;rh&auml;xande st&auml;mning.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"glk4NNBxL2rVai5X"}
{"name":"Omtolka tecken","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Ett tecken kan omtolkas av magikern och f&aring; ny inneb&ouml;rd.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"er401D0m96OhtYZ1"}
{"name":"Osynlighetsslöja","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Besv&auml;rjelsen kastas p&aring; en mantel, kappa, rock eller annat helt&auml;ckande plagg.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"bPzJyjGW7XiLqB6M"}
{"name":"Silvertunga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din r&ouml;st blir &ouml;vertygande.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"kwzV1fXDYTkRv23h"}
{"name":"Skenbild","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en skenbild av n&aring;got som du n&aring;gon g&aring;ng har sett.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ib1d05lzHZoFWDH2"}
{"name":"Villospår","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar falska sp&aring;r som d&ouml;ljer dina egna och f&aring;r f&ouml;rf&ouml;ljare att tappa sp&aring;ret och ist&auml;llet f&ouml;lja dina falska sp&aring;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","ritual":{}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"y2LUeWFVboTCyUHC"}
{"name":"Ansiktsförändring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan f&ouml;r&auml;ndra ditt utseende s&aring; att du ser ut som en helt annan person, men kan inte avvika fr&aring;n det som &auml;r naturligt f&ouml;rekommande inom ditt folkslag.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Fingerfärdighet","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"iEAR1DYfnZRN6oKx"}
{"name":"Blixt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En blixt sl&aring;r ut fr&aring;n din hand eller din stav.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"Jp52HoVZbPBgKpSW"}
{"name":"Djurlänk","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en permanent l&auml;nk till ett djur som &auml;r v&auml;lvilligt inst&auml;llt till dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"7WHtngaD6U7mswoZ"}
{"name":"Dubbelgångare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan skapa en illusion som &auml;r en exakt kopia av dig sj&auml;lv och upptr&auml;der ungef&auml;r som du g&ouml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"CHLcUsSavtuMp0GZ"}
{"name":"Fasa","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du samlar skuggor omkring dig och f&ouml;rvrider ljuset s&aring; att du verkar st&ouml;rre och farligare &auml;n du &auml;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"FaNKqbGmpkcQA9JZ"}
{"name":"Flamma","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>En eldstr&aring;le skjuter ut fr&aring;n dina h&auml;nder eller din stav, med vilken du kan anfalla m&aring;l i samma zon som dig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"50BCCXTTZqberYtb"}
{"name":"Frammana Salamander","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Fr&aring;n en &ouml;ppen l&aring;ga kallar du fram en liten, blygr&aring; och kall &ouml;dlevarelse med f&ouml;rm&aring;gan att f&aring; saker omkring sig att fatta eld.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Lärdom","skillthree":"Insikt","skillfour":"Viljestyrka","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"SPnlI0aRSmZ9G7OM"}
{"name":"Frammana tjänsteande","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar en l&auml;gre tj&auml;nsteande eller sm&aring;&shy; demon som kan hj&auml;lpa dig med sm&aring;bestyr.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Lärdom","skillthree":"Insikt","skillfour":"Viljestyrka","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"wMzkRb5q2PlLvdiR"}
{"name":"Frammana Undin","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Ur havet eller en st&ouml;rre samling saltvatten stiger en vagt m&auml;nniskoliknande form av vatten.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Lärdom","skillthree":"Insikt","skillfour":"Viljestyrka","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"7iXPAvuVdYNXPh1k"}
{"name":"Frammana Åskfågel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Fr&aring;n ett moln p&aring; &ouml;ppen himmel kallar du ned en stor, kolsvart och korpliknande f&aring;gelvarelse.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Lärdom","skillthree":"Insikt","skillfour":"Viljestyrka","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"jxLKWEr2svRL8xf4"}
{"name":"Fyrljus","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar ett oerh&ouml;rt kraftigt ljussken fr&aring;n en specifik punkt.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"hWrbfEhunY5t1eOc"}
{"name":"Fördriva","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rdriver en utomv&auml;rldslig varelse i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"Insikt","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"4T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"4jlwjnpgS0oikWCO"}
{"name":"Förvirra","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&ouml;rh&auml;xar ett synligt m&aring;l h&ouml;gst tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Viljestyrka","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"XfyPKxoefGAFOAzO"}
{"name":"Hamnskiftare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du tecknar en magisk cirkel runt dig sj&auml;lv, med en p&auml;ls eller ett skinn av den varelse du vill byta form till i cirkelns mitt.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Insikt","skillthree":"Viljestyrka","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"lBb7IR3o3hPWnB1A"}
{"name":"Hela","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din ber&ouml;ring f&aring;r s&aring;r att sluta sig och ben att l&auml;ka.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ZRMT4dTJx8fu4FF9"}
{"name":"Hägring","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du f&aring;r &ouml;vriga i samma zon som du att se en h&auml;gring vid horisonten.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Insikt","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"vqe4hJ8AHfmONZo2"}
{"name":"Kontrollera djur","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du tar kontrollen &ouml;ver ett djur i din eller en n&auml;r&shy; liggande zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6 + 1T6 per extra djur","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"wPCChabZXvQUY2GH"}
{"name":"Ljus","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar ett fladdrande magiskt ljus som f&ouml;ljer med dig scenen ut och som lyser upp i m&ouml;rkret.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"2Oi2ZaLxb4XLvQ2O"}
{"name":"Magisk sköld","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du anv&auml;nder din magiska kraft f&ouml;r att skydda dig mot andras besv&auml;rjelser.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"uKpkzE4GEv5Kvviv"}
{"name":"Magisk stämning","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar sm&aring;effekter i din zon som bidrar till en f&ouml;rtrollande och f&ouml;rh&auml;xande st&auml;mning.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"819ZmsvSGUp7qQrv"}
{"name":"Omtolka tecken","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Ett tecken kan omtolkas av magikern och f&aring; ny inneb&ouml;rd.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"mNp8tq4lrX3dvAi6"}
{"name":"Osynlighetsslöja","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Besv&auml;rjelsen kastas p&aring; en mantel, kappa, rock eller annat helt&auml;ckande plagg.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"vZiUoBEA3ZlUVryk"}
{"name":"Silvertunga","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din r&ouml;st blir &ouml;vertygande.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"mhtNi55391NTtv20"}
{"name":"Skenbild","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en skenbild av n&aring;got som du n&aring;gon g&aring;ng har sett.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"yLEa6eLHR15vPViT"}
{"name":"Skyddscirkel","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du ritar en skyddande magisk cirkel kring en zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"FKlkahAMWh9MWUjg"}
{"name":"Stenskrud","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Din hud blir h&aring;rd som sten och &ouml;kar ditt skydd mot skada med 1T6.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"easy","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"DXmyY1OsysPL1FgP"}
{"name":"Stjäla livskraft","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du stj&auml;l livskraft fr&aring;n en person i samma zon.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Uthållighet","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"RFYOmR097YwKEdgc"}
{"name":"Villospår","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar falska sp&aring;r som d&ouml;ljer dina egna och f&aring;r f&ouml;rf&ouml;ljare att tappa sp&aring;ret och ist&auml;llet f&ouml;lja dina falska sp&aring;r.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"opposite","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"Stigvana","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"jw8kWHwu5foUO5vN"}
{"name":"Vindstöt","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du frammanar en kortlivad vindande som slungar sig mot en fiende upp till tv&aring; zoner bort.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"attackroll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"1T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"rqRpYOtHvUP1xpI4"}
{"name":"Vindviskare","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du kan tala med vindarnas andar, och f&aring; dem att antingen byta riktning, lugna sin framfart, eller bl&aring;sa upp.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"a5dYS93yPFjjxcCw"}
{"name":"Vågsvall","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du skapar en stor magisk v&aring;g.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"sczrNCK7lCtD4hih"}
{"name":"Åkalla beskyddaren [namn]","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Kr&auml;ver f&ouml;rm&aring;gan Magisk Pakt (se sida 46).</p>\n<p>Varje beskyddare har en unik besv&auml;rjelse.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Lärdom","skillthree":"Insikt","skillfour":"Viljestyrka","skillfive":""}},"cost":{"value":"(Ritual) 2T6; (Kontrollera) 2T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"tjoGC2RmIwwRrFpY"}
{"name":"Åkalla demonen Azag","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Du &aring;kallar Azag, en monstru&ouml;s stendemon. Azag har s&auml;rdraget Blodt&ouml;rstig.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"ritual","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"Trolldom","skilltwo":"Lärdom","skillthree":"Insikt","skillfour":"Viljestyrka","skillfive":""}},"cost":{"value":"(Ritual) 4T6 och 1T6 Hälsa*; (Kontrollera) 3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"average","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"PI0kXTPcq48fcrWd"}
{"name":"Åskvigg","permission":{"default":0,"fJj85fq65UTTN7mU":3},"type":"spell","data":{"description":{"value":"<p>Besv&auml;rjelsen kan bara kastas om b&aring;de magikern och m&aring;let befinner sig under bar himmel.</p>","type":"String","label":"ITEM.DESCRIPTION"},"roll":{"value":"roll","type":"String","label":"SPELL.ROLLTITLE","skill":"Trolldom","oppositeskill":"","oppositeskilltwo":"","ritual":{"skillone":"","skilltwo":"","skillthree":"","skillfour":"","skillfive":""}},"cost":{"value":"3T6","type":"String","label":"SPELL.COST"},"difficulty":{"value":"hard","type":"String","label":"SPELL.DIFFICULTY"}},"flags":{},"img":"icons/svg/mystery-man.svg","effects":[],"_id":"ImzNHTJjjCyRkY7A"}

View File

@ -2,9 +2,9 @@
"name": "kopparhavet",
"title": "Kopparhavets Hjältar",
"description": "The Molten Sea is a dangerous but exciting place, where pirates, sorcerers and secretive orders of knighthood struggle for power, wealth and ancient lore.",
"version": "0.0.5",
"minimumCoreVersion": "0.7.5",
"compatibleCoreVersion": "0.7.9",
"version": "0.1.2",
"minimumCoreVersion": "9",
"compatibleCoreVersion": "9",
"templateVersion": 4,
"author": "Erebus",
"scripts": [],
@ -95,6 +95,6 @@
"url": "https://pi.rikspolisen.se/foundryvtt/kopparhavet",
"socket": true,
"manifest": "https://pi.rikspolisen.se/foundryvtt/kopparhavet/raw/branch/master/system.json",
"download": "https://pi.rikspolisen.se/foundryvtt/kopparhavet/archive/v0.0.5.zip",
"download": "https://pi.rikspolisen.se/foundryvtt/kopparhavet/archive/v0.1.2.zip",
"license": "LICENCE.txt"
}

View File

@ -278,7 +278,14 @@
"label": "SPELL.ROLLTITLE",
"skill": "Trolldom",
"oppositeskill": "",
"ritual": {}
"oppositeskilltwo": "",
"ritual": {
"skillone": "",
"skilltwo": "",
"skillthree": "",
"skillfour": "",
"skillfive": ""
}
},
"cost": {
"value": "",

View File

@ -8,25 +8,25 @@
<label style="margin: auto;">{{localize "BIO.NAME"}}:</label>
<h1 class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="name" type="text" value="{{actor.name}}" placeholder="{{localize "BIO.NAME"}}" /></h1>
<label style="margin: auto;">{{localize data.health.label}}:</label>
<label style="margin: auto;">{{localize data.data.health.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.health.value" value="{{data.health.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.value" value="{{data.data.health.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.health.max" value="{{data.health.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.max" value="{{data.data.health.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.stamina.label}}:</label>
<label style="margin: auto;">{{localize data.data.stamina.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.stamina.value" value="{{data.stamina.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.value" value="{{data.data.stamina.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.stamina.max" value="{{data.stamina.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.max" value="{{data.data.stamina.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.mana.label}}:</label>
<label style="margin: auto;">{{localize data.data.mana.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.mana.value" value="{{data.mana.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.value" value="{{data.data.mana.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.mana.max" value="{{data.mana.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.max" value="{{data.data.mana.max}}" data-dtype="Number" />
</div>
</div>
@ -44,7 +44,7 @@
{{> systems/kopparhavet/templates/parts/actor/talent.html}}
</div>
<div class="tab border note" data-group="primary" data-tab="note" style="height: 100%; border-top: none;">
{{editor content=data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -8,31 +8,31 @@
<label style="margin: auto;">{{localize "BIO.NAME"}}:</label>
<h1 class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="name" type="text" value="{{actor.name}}" placeholder="{{localize "BIO.NAME"}}" /></h1>
<label style="margin: auto;">{{localize data.bio.kin.label}}:</label>
<input name="data.bio.kin.value" type="text" value="{{data.bio.kin.value}}" placeholder="{{localize data.bio.kin.label}}" />
<label style="margin: auto;">{{localize data.data.bio.kin.label}}:</label>
<input name="data.bio.kin.value" type="text" value="{{data.data.bio.kin.value}}" placeholder="{{localize data.data.bio.kin.label}}" />
<label style="margin: auto;">{{localize data.bio.profession.label}}:</label>
<input name="data.bio.profession.value" type="text" value="{{data.bio.profession.value}}" placeholder="{{localize data.bio.profession.label}}" />
<label style="margin: auto;">{{localize data.data.bio.profession.label}}:</label>
<input name="data.bio.profession.value" type="text" value="{{data.data.bio.profession.value}}" placeholder="{{localize data.data.bio.profession.label}}" />
<label style="margin: auto;">{{localize data.health.label}}:</label>
<label style="margin: auto;">{{localize data.data.health.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.health.value" value="{{data.health.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.value" value="{{data.data.health.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.health.max" value="{{data.health.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.max" value="{{data.data.health.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.stamina.label}}:</label>
<label style="margin: auto;">{{localize data.data.stamina.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.stamina.value" value="{{data.stamina.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.value" value="{{data.data.stamina.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.stamina.max" value="{{data.stamina.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.max" value="{{data.data.stamina.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.mana.label}}:</label>
<label style="margin: auto;">{{localize data.data.mana.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.mana.value" value="{{data.mana.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.value" value="{{data.data.mana.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.mana.max" value="{{data.mana.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.max" value="{{data.data.mana.max}}" data-dtype="Number" />
</div>
</div>
@ -62,7 +62,7 @@
{{> systems/kopparhavet/templates/parts/actor/bio.html}}
</div>
<div class="tab note border" data-group="primary" data-tab="note" style="border-top: none;">
{{editor content=data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -8,25 +8,25 @@
<label style="margin: auto;">{{localize "BIO.NAME"}}:</label>
<h1 class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="name" type="text" value="{{actor.name}}" placeholder="{{localize "BIO.NAME"}}" /></h1>
<label style="margin: auto;">{{localize data.health.label}}:</label>
<label style="margin: auto;">{{localize data.data.health.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.health.value" value="{{data.health.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.value" value="{{data.data.health.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.health.max" value="{{data.health.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.max" value="{{data.data.health.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.stamina.label}}:</label>
<label style="margin: auto;">{{localize data.data.stamina.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.stamina.value" value="{{data.stamina.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.value" value="{{data.data.stamina.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.stamina.max" value="{{data.stamina.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.max" value="{{data.data.stamina.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.mana.label}}:</label>
<label style="margin: auto;">{{localize data.data.mana.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.mana.value" value="{{data.mana.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.value" value="{{data.data.mana.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.mana.max" value="{{data.mana.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.max" value="{{data.data.mana.max}}" data-dtype="Number" />
</div>
</div>
@ -44,7 +44,7 @@
{{> systems/kopparhavet/templates/parts/actor/talent.html}}
</div>
<div class="tab border note" data-group="primary" data-tab="note" style="height: 100%; border-top: none;">
{{editor content=data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -8,34 +8,34 @@
<label style="margin: auto;">{{localize "BIO.NAME"}}:</label>
<h1 class="charname" style="margin-bottom: 0; grid-column: 3/6;"><input name="name" type="text" value="{{actor.name}}" placeholder="{{localize "BIO.NAME"}}" /></h1>
<label style="margin: auto;">{{localize data.bio.nickname.label}}:</label>
<input name="data.bio.nickname.value" style="grid-column: 3/6;" type="text" value="{{data.bio.nickname.value}}" placeholder="{{localize data.bio.nickname.label}}" />
<label style="margin: auto;">{{localize data.data.bio.nickname.label}}:</label>
<input name="data.bio.nickname.value" style="grid-column: 3/6;" type="text" value="{{data.data.bio.nickname.value}}" placeholder="{{localize data.data.bio.nickname.label}}" />
<label style="margin: auto;">{{localize data.bio.kin.label}}:</label>
<input name="data.bio.kin.value" type="text" value="{{data.bio.kin.value}}" placeholder="{{localize data.bio.kin.label}}" />
<label style="margin: auto;">{{localize data.data.bio.kin.label}}:</label>
<input name="data.bio.kin.value" type="text" value="{{data.data.bio.kin.value}}" placeholder="{{localize data.data.bio.kin.label}}" />
<label style="margin: auto;">{{localize data.bio.profession.label}}:</label>
<input name="data.bio.profession.value" type="text" value="{{data.bio.profession.value}}" placeholder="{{localize data.bio.profession.label}}" />
<label style="margin: auto;">{{localize data.data.bio.profession.label}}:</label>
<input name="data.bio.profession.value" type="text" value="{{data.data.bio.profession.value}}" placeholder="{{localize data.data.bio.profession.label}}" />
<label style="margin: auto;">{{localize data.health.label}}:</label>
<label style="margin: auto;">{{localize data.data.health.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.health.value" value="{{data.health.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.value" value="{{data.data.health.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.health.max" value="{{data.health.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.health.max" value="{{data.data.health.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.stamina.label}}:</label>
<label style="margin: auto;">{{localize data.data.stamina.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.stamina.value" value="{{data.stamina.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.value" value="{{data.data.stamina.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.stamina.max" value="{{data.stamina.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.stamina.max" value="{{data.data.stamina.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.mana.label}}:</label>
<label style="margin: auto;">{{localize data.data.mana.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.mana.value" value="{{data.mana.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.value" value="{{data.data.mana.value}}" data-dtype="Number" />
<span> / </span>
<input class="center-text" type="text" name="data.mana.max" value="{{data.mana.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.mana.max" value="{{data.data.mana.max}}" data-dtype="Number" />
</div>
</div>
@ -61,7 +61,7 @@
{{> systems/kopparhavet/templates/parts/actor/gear.html}}
</div>
<div class="tab note border" data-group="primary" data-tab="note" style="border-top: none;">
{{editor content=data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -8,27 +8,27 @@
<label style="margin-top: auto; margin-bottom: auto;">{{localize "BIO.NAME"}}:</label>
<h1 class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="name" type="text" value="{{actor.name}}" placeholder="{{localize "BIO.NAME"}}" /></h1>
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.class.label}}:</label>
<span class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="data.class.value" type="text" value="{{data.class.value}}" placeholder="{{localize data.class.label}}" /></span>
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.data.class.label}}:</label>
<span class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="data.class.value" type="text" value="{{data.data.class.value}}" placeholder="{{localize data.data.class.label}}" /></span>
<label style="margin: auto;">{{localize data.operationscost.label}}:</label>
<input class="center-text" type="text" name="data.operationscost.value" value="{{data.operationscost.value}}" data-dtype="Number" />
<label style="margin: auto;">{{localize data.data.operationscost.label}}:</label>
<input class="center-text" type="text" name="data.operationscost.value" value="{{data.data.operationscost.value}}" data-dtype="Number" />
<label style="margin: auto;">{{localize data.operationssupply.label}}:</label>
<input class="center-text" type="text" name="data.operationssupply.value" value="{{data.operationssupply.value}}" data-dtype="Number" />
<label style="margin: auto;">{{localize data.data.operationssupply.label}}:</label>
<input class="center-text" type="text" name="data.operationssupply.value" value="{{data.data.operationssupply.value}}" data-dtype="Number" />
<label style="margin: auto;">{{localize data.hull.label}}:</label>
<label style="margin: auto;">{{localize data.data.hull.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.hull.value" value="{{data.hull.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.hull.value" value="{{data.data.hull.value}}" data-dtype="Number" />
<span style="margin-bottom: auto; margin-top: auto;"> / </span>
<input class="center-text" type="text" name="data.hull.max" value="{{data.hull.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.hull.max" value="{{data.data.hull.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.cargo.label}}:</label>
<label style="margin: auto;">{{localize data.data.cargo.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.cargo.value" value="{{data.cargo.value}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.cargo.value" value="{{data.data.cargo.value}}" data-dtype="Number" />
<span style="margin-bottom: auto; margin-top: auto;"> / </span>
<input class="center-text" type="text" name="data.cargo.max" value="{{data.cargo.max}}" data-dtype="Number" />
<input class="center-text" type="text" name="data.cargo.max" value="{{data.data.cargo.max}}" data-dtype="Number" />
</div>
</div>
@ -46,7 +46,7 @@
{{> systems/kopparhavet/templates/parts/actor/ship-combat.html}}
</div>
<div class="tab border note" data-group="primary" data-tab="note" style="height: 100%; border-top: none;">
{{editor content=data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -100,5 +100,19 @@
{{{data.description.value}}}
{{/if}}
{{/if}}
{{#if isShipWeapon}}
{{#if data.description}}
<h5>{{localize data.description.label}}</h5>
{{{data.description.value}}}
{{/if}}
{{/if}}
{{#if isShipTalent}}
{{#if data.description}}
<h5>{{localize data.description.label}}</h5>
{{{data.description.value}}}
{{/if}}
{{/if}}
</div>
</div>

View File

@ -0,0 +1,47 @@
<div class="kopparhavet roll-item">
<div class="border">
<h3>{{localize name}}</h3>
{{#if closed}}
<div style="text-align: center; margin-bottom: 0.5rem;">
{{localize "ROLL.CLOSED"}}: {{closed}}
</div>
{{/if}}
{{#if opened}}
<div style="text-align: center; margin-bottom: 0.5rem;">
{{localize "ROLL.OPENED"}}: {{opened}}
</div>
{{/if}}
<div class="roll" style="padding-bottom: 10px; border-bottom: 1px solid #782e22; margin-bottom: 5px;">
{{#each res as |res1 key|}}
<div class="dice-roll">
<div class="dice-result">
{{#if showFormula}}
<div class="dice-formula-kh">{{res1.result.formula}}</div>
{{/if}}
{{#if res1.success}}
<div style="border: none; text-align: center; width: 100%; font-weight: bold; color: limegreen;">
{{res1.name}}: {{res1.result.total}}
</div>
{{/if}}
{{#if res1.failure}}
<div style="border: none; text-align: center; width: 100%; font-weight: bold; color: darkred;">
{{res1.name}}: {{res1.result.total}}
</div>
{{/if}}
</div>
</div>
{{/each}}
</div>
<h2 style="border: none; text-align: center; width: 100%; font-weight: bold;">
{{#iff result '==' "0"}}{{localize "ROLL.SUBPAR"}}{{/iff}}
{{#iff result '==' "1"}}{{localize "ROLL.LOW"}}{{/iff}}
{{#iff result '==' "2"}}{{localize "ROLL.LIMITED"}}{{/iff}}
{{#iff result '==' "3"}}{{localize "ROLL.GOOD"}}{{/iff}}
{{#iff result '==' "4"}}{{localize "ROLL.SUPERIOR"}}{{/iff}}
</h2>
</div>
</div>

View File

@ -21,6 +21,11 @@
<h2>{{res.total}}</h2>
</div>
</div>
{{#if opposite}}
<div class="dice-roll" style="text-align: center; margin-bottom: 0.5rem;">
{{localize "ROLL.OPPOSITE"}}: {{opposite}}
</div>
{{/if}}
</div>
{{#if success}}
<h2 style="border: none; text-align: center; width: 100%; font-weight: bold; color: limegreen;">

View File

@ -9,17 +9,17 @@
</div>
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<div class="rating">
<label>{{localize data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.damage.value}}" />
<label>{{localize data.data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.data.damage.value}}" />
</div>
<div class="rating">
<label>{{localize data.skill.label}}</label>
<input name="data.skill.value" type="text" value="{{data.skill.value}}" />
<label>{{localize data.data.skill.label}}</label>
<input name="data.skill.value" type="text" value="{{data.data.skill.value}}" />
</div>
<div>
<label>{{localize data.category.label}}</label>
<label>{{localize data.data.category.label}}</label>
<select class="item-weapon-cat-select" name="data.category.value">
{{#select data.category.value}}
{{#select data.data.category.value}}
<option value="melee">{{localize "WEAPON.MELEE"}}</option>
<option value="ranged">{{localize "WEAPON.RANGED"}}</option>
{{/select}}
@ -28,10 +28,10 @@
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -10,22 +10,22 @@
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<!--
<div class="supply">
<label>{{localize data.quantity.label}}</label>
<input name="data.quantity.value" type="number" value="{{data.quantity.value}}" />
<label>{{localize data.data.quantity.label}}</label>
<input name="data.quantity.value" type="number" value="{{data.data.quantity.value}}" />
</div>
-->
<div class="cost">
<label>{{localize data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.price.value}}" />
<label>{{localize data.data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.data.price.value}}" />
</div>
<div class="rating">
<label>{{localize data.defence.label}}</label>
<input name="data.defence.value" type="text" value="{{data.defence.value}}" />
<label>{{localize data.data.defence.label}}</label>
<input name="data.defence.value" type="text" value="{{data.data.defence.value}}" />
</div>
<div>
<label>{{localize data.type.label}}</label>
<label>{{localize data.data.type.label}}</label>
<select class="item-weapon-cat-select" name="data.type.value">
{{#select data.type.value}}
{{#select data.data.type.value}}
{{#each this.KH.armor_types as |t|}}
<option value="{{t.value}}">{{localize t.label}}</option>
{{/each}}
@ -34,14 +34,14 @@
</div>
<div class="grid-container" style="grid-template-columns: 1fr auto;">
<!--
<label>{{localize data.equipable.label}}</label>
<a class="item-bool-click {{#if data.equipable.value}}active{{/if}}" data-name="equipable" title="equipable">
<i class="far {{#if data.equipable.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<label>{{localize data.data.equipable.label}}</label>
<a class="item-bool-click {{#if data.data.equipable.value}}active{{/if}}" data-name="equipable" title="equipable">
<i class="far {{#if data.data.equipable.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
-->
<label>{{localize data.helmet.label}}</label>
<a class="item-bool-click {{#if data.helmet.value}}active{{/if}}" data-name="helmet" title="helmet">
<i class="far {{#if data.helmet.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<label>{{localize data.data.helmet.label}}</label>
<a class="item-bool-click {{#if data.data.helmet.value}}active{{/if}}" data-name="helmet" title="helmet">
<i class="far {{#if data.data.helmet.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
</div>
</div>
@ -55,10 +55,10 @@
<div class="tab scroll-y" data-group="primary" data-tab="description">
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -8,21 +8,21 @@
</div>
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<div class="supply">
<label>{{localize data.quantity.label}}</label>
<input name="data.quantity.value" type="number" value="{{data.quantity.value}}" />
<label>{{localize data.data.quantity.label}}</label>
<input name="data.quantity.value" type="number" value="{{data.data.quantity.value}}" />
</div>
<div class="cost">
<label>{{localize data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.price.value}}" />
<label>{{localize data.data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.data.price.value}}" />
</div>
</div>
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info-mid">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -9,10 +9,10 @@
</div>
<div class="item">
<div class="talent-description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info-mid">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -9,17 +9,17 @@
</div>
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<div class="cost">
<label>{{localize data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.price.value}}" />
<label>{{localize data.data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.data.price.value}}" />
</div>
<div class="rating">
<label>{{localize data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.damage.value}}" />
<label>{{localize data.data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.data.damage.value}}" />
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.skill.value">
{{#select data.skill.value}}
{{#select data.data.skill.value}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
@ -29,10 +29,10 @@
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -9,9 +9,9 @@
</div>
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<div>
<label>{{localize data.type.label}}</label>
<label>{{localize data.data.type.label}}</label>
<select class="item-weapon-cat-select" name="data.type.value">
{{#select data.type.value}}
{{#select data.data.type.value}}
<option value="base">{{localize "SKILL.BASE"}}</option>
<option value="adventure">{{localize "SKILL.ADVENTURE"}}</option>
<option value="combat">{{localize "SKILL.COMBAT"}}</option>
@ -20,15 +20,15 @@
</div>
<div>
<label>{{localize "SKILL.STARTVALUE"}}</label>
<input name="data.value" type="text" value="{{data.value}}" />
<input name="data.value" type="text" value="{{data.data.value}}" />
</div>
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info-mid">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -9,13 +9,13 @@
</div>
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<div class="cost">
<label>{{localize data.cost.label}}</label>
<input name="data.cost.value" type="text" value="{{data.cost.value}}" />
<label>{{localize data.data.cost.label}}</label>
<input name="data.cost.value" type="text" value="{{data.data.cost.value}}" />
</div>
<div>
<label>{{localize data.difficulty.label}}</label>
<select class="item-weapon-cat-select" name="data.difficulty.value">
{{#select data.difficulty.value}}
<label>{{localize data.data.difficulty.label}}</label>
<select class="item-weapon-cat-select" name="data.data.difficulty.value">
{{#select data.data.difficulty.value}}
<option value="simple">{{localize "DIFFICULTY.SIMPLE"}}</option>
<option value="easy">{{localize "DIFFICULTY.EASY"}}</option>
<option value="average">{{localize "DIFFICULTY.AVERAGE"}}</option>
@ -25,9 +25,9 @@
</select>
</div>
<div style="grid-column-start: 1; grid-column-end: 3;">
<label>{{localize data.roll.label}}</label>
<label>{{localize data.data.roll.label}}</label>
<select class="item-weapon-cat-select" name="data.roll.value">
{{#select data.roll.value}}
{{#select data.data.roll.value}}
<option value="roll">{{localize "SPELL.ROLL"}}</option>
<option value="attackroll">{{localize "SPELL.ATTACKROLL"}}</option>
<option value="opposite">{{localize "SPELL.OPPOSITE"}}</option>
@ -35,23 +35,114 @@
{{/select}}
</select>
</div>
<div style="grid-column-start: 1; grid-column-end: 3;">
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.skill">
{{#select data.roll.skill}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
{{#iff data.data.roll.value '==' "opposite" }}
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.skill">
{{#select data.data.roll.skill}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.oppositeskill">
{{#select data.data.roll.oppositeskill}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div>&nbsp;</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.oppositeskilltwo">
{{#select data.data.roll.oppositeskilltwo}}
<option value="">{{localize "SKILL.NONE"}}</option>
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
{{else iff data.data.roll.value '==' "ritual" }}
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.ritual.skillone">
{{#select data.data.roll.ritual.skillone}}
<option value="">{{localize "SKILL.NONE"}}</option>
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.ritual.skilltwo">
{{#select data.data.roll.ritual.skilltwo}}
<option value="">{{localize "SKILL.NONE"}}</option>
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.ritual.skillthree">
{{#select data.data.roll.ritual.skillthree}}
<option value="">{{localize "SKILL.NONE"}}</option>
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.ritual.skillfour">
{{#select data.data.roll.ritual.skillfour}}
<option value="">{{localize "SKILL.NONE"}}</option>
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.ritual.skillfive">
{{#select data.data.roll.ritual.skillfive}}
<option value="">{{localize "SKILL.NONE"}}</option>
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
{{else}}
<div style="grid-column-start: 1; grid-column-end: 3;">
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.roll.skill">
{{#select data.data.roll.skill}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
{{/iff}}
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -9,10 +9,10 @@
</div>
<div class="item">
<div class="talent-description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info-mid">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -10,22 +10,22 @@
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<!--
<div class="supply">
<label>{{localize data.quantity.label}}</label>
<input name="data.quantity.value" type="number" value="{{data.quantity.value}}" />
<label>{{localize data.data.quantity.label}}</label>
<input name="data.quantity.value" type="number" value="{{data.data.quantity.value}}" />
</div>
-->
<div class="cost">
<label>{{localize data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.price.value}}" />
<label>{{localize data.data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.data.price.value}}" />
</div>
<div class="rating">
<label>{{localize data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.damage.value}}" />
<label>{{localize data.data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.data.damage.value}}" />
</div>
<div>
<label>{{localize data.category.label}}</label>
<label>{{localize data.data.category.label}}</label>
<select class="item-weapon-cat-select" name="data.category.value">
{{#select data.category.value}}
{{#select data.data.category.value}}
<option value="melee">{{localize "WEAPON.MELEE"}}</option>
<option value="ranged">{{localize "WEAPON.RANGED"}}</option>
{{/select}}
@ -34,7 +34,7 @@
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.skill.value">
{{#select data.skill.value}}
{{#select data.data.skill.value}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
@ -43,19 +43,19 @@
</div>
<!--
<div class="grid-container" style="grid-template-columns: 1fr auto;">
<label>{{localize data.equipable.label}}</label>
<a class="item-bool-click {{#if data.equipable.value}}active{{/if}}" data-name="equipable" title="equipable">
<i class="far {{#if data.equipable.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<label>{{localize data.data.equipable.label}}</label>
<a class="item-bool-click {{#if data.data.equipable.value}}active{{/if}}" data-name="equipable" title="equipable">
<i class="far {{#if data.data.equipable.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
</div>
-->
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<h2>{{localize data.data.description.label}}</h2>
<div class="info">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -2,30 +2,30 @@
<div class="bio-background grid-container" style="height: 100%; grid-column-gap: 5px; grid-template-rows: auto auto auto 1fr; grid-template-columns: auto 1fr auto 1fr;">
<h1>{{localize "BACKGROUND.TITLE"}}</h1>
<div class="name">{{localize data.bio.age.label}}:</div>
<input name="data.bio.age.value" type="text" value="{{data.bio.age.value}}" />
<div class="name">{{localize data.data.bio.age.label}}:</div>
<input name="data.bio.age.value" type="text" value="{{data.data.bio.age.value}}" />
<div class="name">{{localize data.background.birthplace.label}}</div>
<input name="data.background.birthplace.value" type="text" value="{{data.background.birthplace.value}}" />
<div class="name">{{localize data.data.background.birthplace.label}}</div>
<input name="data.background.birthplace.value" type="text" value="{{data.data.background.birthplace.value}}" />
<div class="name">{{localize data.background.social.label}}</div>
<input name="data.background.social.value" type="text" value="{{data.background.social.value}}" />
<div class="name">{{localize data.data.background.social.label}}</div>
<input name="data.background.social.value" type="text" value="{{data.data.background.social.value}}" />
<div></div>
<div></div>
<div class="name-top">{{localize data.background.events.label}}</div>
<div class="name-top">{{localize data.data.background.events.label}}</div>
<div class="info-bio border-thin" style="/*grid-row: 4/6; grid-column: 2;*/">
<div class="description">
{{editor content=data.background.events.value target="data.background.events.value" button=true owner=owner editable=editable}}
{{editor content=data.data.background.events.value target="data.background.events.value" button=true owner=owner editable=editable}}
</div>
</div>
<div class="name-top">{{localize data.background.contacts.label}}</div>
<div class="name-top">{{localize data.data.background.contacts.label}}</div>
<div class="info-bio border-thin" style="/*grid-row: 4/6; grid-column: 4;*/">
<div class="description">
{{editor content=data.background.contacts.value target="data.background.contacts.value" button=true owner=owner editable=editable}}
{{editor content=data.data.background.contacts.value target="data.background.contacts.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>

View File

@ -4,25 +4,25 @@
<ul class="items-list">
<li class="item-nor flexrow">
<div class="item-name" style="flex-grow: 8;">{{localize "MOD.INIT"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.init" class="skill-value" type="number" value="{{data.combat.init}}" data-dtype="Number" /></div>
<div class="item-value" style="flex: none;"><input name="data.combat.init" class="skill-value" type="number" value="{{data.data.combat.init}}" data-dtype="Number" /></div>
</li>
<li class="item-defence flexrow" data-defence="{{data.combat.defence}}">
<div class="item-name roll-defence rollable" data-defence="{{data.combat.defence}}" style="flex-grow: 8;">{{localize "ADVERSARY.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.defence" class="skill-value" type="text" value="{{data.combat.defence}}" /></div>
<li class="item-defence flexrow" data-defence="{{data.data.combat.defence}}">
<div class="item-name roll-defence rollable" data-defence="{{data.data.combat.defence}}" style="flex-grow: 8;">{{localize "ADVERSARY.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.defence" class="skill-value" type="text" value="{{data.data.combat.defence}}" /></div>
</li>
<li class="item-nor flexrow">
<div class="item-name" style="flex-grow: 8;">{{localize "ADVERSARY.HASHELMET"}}</div>
<div style="align-self: flex-end">
<a style="margin: auto;" class="adversary-helmet-click {{#if data.combat.helmet}}active{{/if}}">
<i class="far {{#if data.combat.helmet}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<a style="margin: auto;" class="adversary-helmet-click {{#if data.data.combat.helmet}}active{{/if}}">
<i class="far {{#if data.data.combat.helmet}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
</div>
</li>
<li class="item-nor flexrow">
<div class="item-name roll-adversary-armor rollable" data-armor="{{data.combat.armor}}" style="flex-grow: 8;">{{localize "ITEM.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.armor" class="skill-value" type="text" value="{{data.combat.armor}}" /></div>
<div class="item-name roll-adversary-armor rollable" data-armor="{{data.data.combat.armor}}" style="flex-grow: 8;">{{localize "ITEM.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.armor" class="skill-value" type="text" value="{{data.data.combat.armor}}" /></div>
</li>
</ul>
</ul>
@ -35,7 +35,7 @@
{{#each actor.skills as |skill key|}}
<li class="item-skill flexrow" data-item-id="{{skill._id}}">
<div class="item-name roll-skill rollable" style="flex-grow: 8;">{{skill.name}}</div>
<div class="item-value" style="flex: none;"><input class="skill-value" type="number" value="{{skill.data.value}}" min="0" data-item-id="{{skill._id}}" data-dtype="Number" /></div>
<div class="item-value" style="flex: none;"><input class="skill-value" type="number" value="{{skill.data.value}}" min="0" data-item-id="{{skill.id}}" data-dtype="Number" /></div>
<div class="item-controls">
<a class="item-control item-delete" data-parent=".item-skill" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>

View File

@ -2,10 +2,10 @@
<div class="currencies border">
<div class="header grid-container" style="grid-template-columns: auto 1fr auto 1fr;">
<h1 style="margin-bottom: 0; grid-column: 1/5;">{{localize "CURRENCY.TITLE"}}</h1>
<label style="margin: auto;">{{localize data.currency.shekel.label}}:</label>
<input class="center-text" name="data.currency.shekel.value" type="number" value="{{data.currency.shekel.value}}" />
<label style="margin: auto;">{{localize data.currency.quarter.label}}:</label>
<input class="center-text" name="data.currency.quarter.value" type="number" value="{{data.currency.quarter.value}}" />
<label style="margin: auto;">{{localize data.data.currency.shekel.label}}:</label>
<input class="center-text" name="data.currency.shekel.value" type="number" value="{{data.data.currency.shekel.value}}" />
<label style="margin: auto;">{{localize data.data.currency.quarter.label}}:</label>
<input class="center-text" name="data.currency.quarter.value" type="number" value="{{data.data.currency.quarter.value}}" />
</div>
</div>
<div class="gear border scroll-y">

View File

@ -4,17 +4,17 @@
<ul class="items-list">
<li class="item-nor flexrow">
<div class="item-name" style="flex-grow: 8;">{{localize "MOD.INIT"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.init" class="skill-value" type="number" value="{{data.combat.init}}" data-dtype="Number" /></div>
<div class="item-value" style="flex: none;"><input name="data.combat.init" class="skill-value" type="number" value="{{data.data.combat.init}}" data-dtype="Number" /></div>
</li>
<li class="item-defence flexrow" data-defence="{{data.combat.defence}}">
<div class="item-name roll-defence rollable" data-defence="{{data.combat.defence}}" style="flex-grow: 8;">{{localize "ADVERSARY.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.defence" class="skill-value" type="text" value="{{data.combat.defence}}" /></div>
<li class="item-defence flexrow" data-defence="{{data.data.combat.defence}}">
<div class="item-name roll-defence rollable" data-defence="{{data.data.combat.defence}}" style="flex-grow: 8;">{{localize "ADVERSARY.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.defence" class="skill-value" type="text" value="{{data.data.combat.defence}}" /></div>
</li>
<li class="item-nor flexrow">
<div class="item-name roll-adversary-armor rollable" data-armor="{{data.combat.armor}}" style="flex-grow: 8;">{{localize "ITEM.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.armor" class="skill-value" type="text" value="{{data.combat.armor}}" /></div>
<div class="item-name roll-adversary-armor rollable" data-armor="{{data.data.combat.armor}}" style="flex-grow: 8;">{{localize "ITEM.DEFENCE"}}</div>
<div class="item-value" style="flex: none;"><input name="data.combat.armor" class="skill-value" type="text" value="{{data.data.combat.armor}}" /></div>
</li>
</ul>
</ul>

View File

@ -1,32 +1,32 @@
<div class="bio-tab border scroll-y" style="height: 100%; border-top: none;">
<div class="grid-container" style="height: fit-content; border-top: none; grid-template-rows: 1fr auto auto; grid-template-columns: 1fr 1fr;">
<div class="border grid-container" style="height: 100%; grid-row: 1/4; grid-template-rows: auto 1fr; height: fit-content; min-height: 200px;">
<h2 style="margin-bottom: 0;">{{localize data.bio.appearance.label}}</h2>
<h2 style="margin-bottom: 0;">{{localize data.data.bio.appearance.label}}</h2>
<div class="description">
{{editor content=data.bio.appearance.value target="data.bio.appearance.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.appearance.value target="data.bio.appearance.value" button=true owner=owner editable=editable}}
</div>
</div>
<div class="border grid-container" style="grid-column-gap: 5px; grid-template-columns: 1fr auto; max-height: 163px;">
<h2 style="margin-bottom: 0; grid-column: 1/3;">{{localize "HT.FEATURES.TITLE"}}</h2>
<input name="data.feature.one.label" class="roll-feature" type="text" value="{{data.feature.one.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.one.value}}active{{/if}}" data-feature="one">
<i class="far {{#if data.feature.one.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.one.label" class="roll-feature" type="text" value="{{data.data.feature.one.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.one.value}}active{{/if}}" data-feature="one">
<i class="far {{#if data.data.feature.one.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
<input name="data.feature.two.label" class="roll-feature" type="text" value="{{data.feature.two.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.two.value}}active{{/if}}" data-feature="two">
<i class="far {{#if data.feature.two.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.two.label" class="roll-feature" type="text" value="{{data.data.feature.two.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.two.value}}active{{/if}}" data-feature="two">
<i class="far {{#if data.data.feature.two.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
<input name="data.feature.three.label" class="roll-feature" type="text" value="{{data.feature.three.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.three.value}}active{{/if}}" data-feature="three">
<i class="far {{#if data.feature.three.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.three.label" class="roll-feature" type="text" value="{{data.data.feature.three.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.three.value}}active{{/if}}" data-feature="three">
<i class="far {{#if data.data.feature.three.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
<input name="data.feature.four.label" class="roll-feature" type="text" value="{{data.feature.four.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.four.value}}active{{/if}}" data-feature="four">
<i class="far {{#if data.feature.four.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.four.label" class="roll-feature" type="text" value="{{data.data.feature.four.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.four.value}}active{{/if}}" data-feature="four">
<i class="far {{#if data.data.feature.four.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
</div>
<div class="border">
@ -38,7 +38,7 @@
</h2>
</header>
<ol class="relation-list" style="padding: 0;">
{{#each data.relationships as |attr key|}}
{{#each data.data.relationships as |attr key|}}
<li class="relation grid-container" style="grid-template-columns: 2fr auto auto;" data-attribute="{{key}}">
<input class="relation-key" type="text" name="data.relationships.{{key}}.key" value="{{key}}" style="display: none;" />
<input class="relation-value" type="text" name="data.relationships.{{key}}.value" value="{{attr.value}}" />
@ -59,7 +59,7 @@
</h2>
</header>
<ol class="learning-list" style="padding: 0;">
{{#each data.learning as |attr key|}}
{{#each data.data.learning as |attr key|}}
<li class="learning grid-container" style="grid-template-columns: 2fr auto auto;" data-attribute="{{key}}">
<input class="learning-key" type="text" name="data.learning.{{key}}.key" value="{{key}}" style="display: none;" />
<input style="margin-top: auto; margin-bottom: auto;" class="learning-value" type="text" name="data.learning.{{key}}.value" value="{{attr.value}}" />
@ -90,7 +90,7 @@
</a>
</div>
<a style="margin: auto;" class="learning-control" data-action="delete"><i class="fas fa-trash"></i></a>
<a style="margin: auto;" class="learning-delete" data-action="delete"><i class="fas fa-trash"></i></a>
</li>
{{/each}}
</ol>

View File

@ -40,7 +40,7 @@
</ul>
</div>
<div class="skills border grid-container" style="grid-column-gap: 5px; grid-template-columns: 1fr;">
<h1 style="grid-column: unset;">{{localize data.languages.label}}</h1>
<input name="data.languages.value" type="text" value="{{data.languages.value}}" />
<h1 style="grid-column: unset;">{{localize data.data.languages.label}}</h1>
<input name="data.languages.value" type="text" value="{{data.data.languages.value}}" />
</div>
</div>

View File

@ -1,32 +1,32 @@
<div class="bio-tab border scroll-y" style="height: 100%; border-top: none;">
<div class="grid-container" style="height: fit-content; border-top: none; grid-template-rows: 1fr auto; grid-template-columns: 1fr 1fr;">
<div class="border grid-container" style="height: 100%; grid-row: 1/4; grid-template-rows: auto 1fr; height: fit-content; min-height: 200px;">
<h2 style="margin-bottom: 0;">{{localize data.bio.appearance.label}}</h2>
<h2 style="margin-bottom: 0;">{{localize data.data.bio.appearance.label}}</h2>
<div class="description">
{{editor content=data.bio.appearance.value target="data.bio.appearance.value" button=true owner=owner editable=editable}}
{{editor content=data.data.bio.appearance.value target="data.bio.appearance.value" button=true owner=owner editable=editable}}
</div>
</div>
<div class="border grid-container" style="grid-column-gap: 5px; grid-template-columns: 1fr auto; max-height: 163px;">
<h2 style="margin-bottom: 0; grid-column: 1/3;">{{localize "FEATURES.TITLE"}}</h2>
<input name="data.feature.one.label" class="roll-feature" type="text" value="{{data.feature.one.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.one.value}}active{{/if}}" data-feature="one">
<i class="far {{#if data.feature.one.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.one.label" class="roll-feature" type="text" value="{{data.data.feature.one.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.one.value}}active{{/if}}" data-feature="one">
<i class="far {{#if data.data.feature.one.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
<input name="data.feature.two.label" class="roll-feature" type="text" value="{{data.feature.two.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.two.value}}active{{/if}}" data-feature="two">
<i class="far {{#if data.feature.two.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.two.label" class="roll-feature" type="text" value="{{data.data.feature.two.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.two.value}}active{{/if}}" data-feature="two">
<i class="far {{#if data.data.feature.two.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
<input name="data.feature.three.label" class="roll-feature" type="text" value="{{data.feature.three.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.three.value}}active{{/if}}" data-feature="three">
<i class="far {{#if data.feature.three.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.three.label" class="roll-feature" type="text" value="{{data.data.feature.three.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.three.value}}active{{/if}}" data-feature="three">
<i class="far {{#if data.data.feature.three.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
<input name="data.feature.four.label" class="roll-feature" type="text" value="{{data.feature.four.label}}" />
<a style="margin: auto;" class="feature {{#if data.feature.four.value}}active{{/if}}" data-feature="four">
<i class="far {{#if data.feature.four.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
<input name="data.feature.four.label" class="roll-feature" type="text" value="{{data.data.feature.four.label}}" />
<a style="margin: auto;" class="feature {{#if data.data.feature.four.value}}active{{/if}}" data-feature="four">
<i class="far {{#if data.data.feature.four.value}}fa-times-circle{{else}}fa-circle{{/if}}"></i>
</a>
</div>
<div class="border">
@ -38,7 +38,7 @@
</h2>
</header>
<ol class="learning-list" style="padding: 0;">
{{#each data.learning as |attr key|}}
{{#each data.data.learning as |attr key|}}
<li class="learning grid-container" style="grid-template-columns: 2fr auto auto;" data-attribute="{{key}}">
<input class="learning-key" type="text" name="data.learning.{{key}}.key" value="{{key}}" style="display: none;" />
<input style="margin-top: auto; margin-bottom: auto;" class="learning-value" type="text" name="data.learning.{{key}}.value" value="{{attr.value}}" />
@ -69,7 +69,7 @@
</a>
</div>
<a style="margin: auto;" class="learning-control" data-action="delete"><i class="fas fa-trash"></i></a>
<a style="margin: auto;" class="learning-delete" data-action="delete"><i class="fas fa-trash"></i></a>
</li>
{{/each}}
</ol>

View File

@ -1,10 +1,8 @@
WEAPONS
<div class="bio-tab border scroll-y" style="height: 100%; border-top: none;">
<div class="grid-container" style="height: fit-content; border-top: none; grid-template-rows: 1fr auto; grid-template-columns: 1fr 1fr;">
<div class="border grid-container" style="grid-column-gap: 5px; grid-template-columns: auto 1fr; max-height: 163px; height: fit-content;">
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.rammingdmg.label}}:</label>
<input style="text-align: center;" name="data.rammingdmg.value" type="text" value="{{data.rammingdmg.value}}" placeholder="{{localize data.rammingdmg.label}}" />
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.data.rammingdmg.label}}:</label>
<input style="text-align: center;" name="data.rammingdmg.value" type="text" value="{{data.data.rammingdmg.value}}" placeholder="{{localize data.data.rammingdmg.label}}" />
</div>

View File

@ -1,14 +1,14 @@
<div class="bio-tab border scroll-y" style="height: 100%; border-top: none;">
<div class="grid-container" style="height: fit-content; border-top: none; grid-template-rows: auto auto; grid-template-columns: 1fr 1fr;">
<div class="border grid-container" style="height: 100%; grid-row: 1/4; grid-template-rows: auto 1fr; height: fit-content; min-height: 200px;">
<h2 style="margin-bottom: 0;">{{localize data.description.label}}</h2>
<h2 style="margin-bottom: 0;">{{localize data.data.description.label}}</h2>
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
{{editor content=data.data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
<div class="border grid-container" style="grid-column-gap: 5px; grid-template-columns: 1fr auto; max-height: 163px; height: fit-content;">
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.crew.label}}:</label>
<input name="data.crew.value" style="text-align: center;" type="text" value="{{data.crew.value}}" placeholder="{{localize data.crew.label}}" />
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.data.crew.label}}:</label>
<input name="data.crew.value" style="text-align: center;" type="text" value="{{data.data.crew.value}}" placeholder="{{localize data.data.crew.label}}" />
</div>
<div class="spells border">

View File

@ -60,7 +60,7 @@
</ul>
</div>
<div class="skills border grid-container" style="grid-column-gap: 5px; grid-template-columns: 1fr;">
<h1 style="grid-column: unset;">{{localize data.languages.label}}</h1>
<input name="data.languages.value" type="text" value="{{data.languages.value}}" />
<h1 style="grid-column: unset;">{{localize data.data.languages.label}}</h1>
<input name="data.languages.value" type="text" value="{{data.data.languages.value}}" />
</div>
</div>

View File

@ -4,7 +4,7 @@
<a class="modification-control" data-action="create"><i class="fas fa-plus"></i></a>
</header>
<ol class="modifications-list" style="padding: 0;">
{{#each data.modifications as |attr key|}}
{{#each data.data.modifications as |attr key|}}
<li class="modification grid-container" style="grid-template-columns: 2fr 1fr auto;" data-attribute="{{key}}">
<input class="modification-key" type="text" name="data.modifications.{{key}}.key" value="{{key}}" style="display: none;" />
<select class="modification-modtype" name="data.modifications.{{key}}.modtype">

View File

@ -1,5 +1,9 @@
<div id="{{id}}" class="roll-dialog">
{{#if skillName}}
<h1 style="text-align: center;">{{localize skillName}} ({{skillValue}})</h1>
{{else}}
<h1 style="text-align: center;">{{name}}</h1>
{{/if}}
<div class="flexrow" style="margin-bottom: 10px;">
<label style="margin: auto;">{{localize "ROLL.OPENCLOSE"}}</label>
<input type="button" name="openclosed" min="0" value="{{startopen}}" style="min-height: 30px; min-width: 45px;" />