Compare commits
No commits in common. "master" and "fvtt-imperium5-v10.0.3" have entirely different histories.
master
...
fvtt-imper
@ -1,6 +1,3 @@
|
|||||||
"ACTOR": {
|
{
|
||||||
"TypePersonnage": "Personnage",
|
|
||||||
"TypeCreature": "Créature",
|
}
|
||||||
"TypeEntite": "Entité de cauchemar",
|
|
||||||
"TypeVehicule": "Véhicule"
|
|
||||||
},
|
|
19
lang/fr.json
19
lang/fr.json
@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"ACTOR": {
|
|
||||||
"TypeCharacter": "Personnage",
|
|
||||||
"TypePm": "Protagoniste du meneur"
|
|
||||||
},
|
|
||||||
"ITEM": {
|
|
||||||
"TypeCapacite": "Capacité",
|
|
||||||
"TypeArchetype": "Archétype",
|
|
||||||
"TypeSpecialite": "Spécialité",
|
|
||||||
"TypeFamiliarite": "Familiarité",
|
|
||||||
"TypeNature": "Nature Profonde",
|
|
||||||
"TypeTrait": "Trait",
|
|
||||||
"TypeSymbiose": "Symbiose",
|
|
||||||
"TypeRessource": "Ressource",
|
|
||||||
"TypeSingularite": "Singularité",
|
|
||||||
"TypeContact": "Contact",
|
|
||||||
"TypeEquipement": "Equipement"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,144 +0,0 @@
|
|||||||
/**
|
|
||||||
* Extend the basic ActorSheet with some very simple modifications
|
|
||||||
* @extends {ActorSheet}
|
|
||||||
*/
|
|
||||||
|
|
||||||
import { Imperium5Utility } from "./imperium5-utility.js";
|
|
||||||
import { Imperium5RollDialog } from "./imperium5-roll-dialog.js";
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
export class Imperium5ActorPMSheet extends ActorSheet {
|
|
||||||
|
|
||||||
/** @override */
|
|
||||||
static get defaultOptions() {
|
|
||||||
|
|
||||||
return mergeObject(super.defaultOptions, {
|
|
||||||
classes: ["fvtt-imperium5", "sheet", "actor"],
|
|
||||||
template: "systems/fvtt-imperium5/templates/actor-pm-sheet.html",
|
|
||||||
width: 720,
|
|
||||||
height: 760,
|
|
||||||
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "combat" }],
|
|
||||||
dragDrop: [{ dragSelector: ".item-list .item", dropSelector: null }],
|
|
||||||
editScore: true
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
async getData() {
|
|
||||||
let actorData = duplicate(this.object.system)
|
|
||||||
|
|
||||||
let formData = {
|
|
||||||
title: this.title,
|
|
||||||
id: this.actor.id,
|
|
||||||
type: this.actor.type,
|
|
||||||
img: this.actor.img,
|
|
||||||
name: this.actor.name,
|
|
||||||
editable: this.isEditable,
|
|
||||||
cssClass: this.isEditable ? "editable" : "locked",
|
|
||||||
system: actorData,
|
|
||||||
archetype: this.actor.getArchetype(),
|
|
||||||
specialites: this.actor.getSpecialites(),
|
|
||||||
familiarites: this.actor.getFamiliarites(),
|
|
||||||
nature: this.actor.getNatureProfonde(),
|
|
||||||
traits: this.actor.getTraits(),
|
|
||||||
symbioses: this.actor.getSymbioses(),
|
|
||||||
equipements: this.actor.getEquipements(),
|
|
||||||
capacites: this.actor.getCapacites(),
|
|
||||||
singularites: this.actor.getSingularites(),
|
|
||||||
contacts: this.actor.getContacts(),
|
|
||||||
effects: this.object.effects.map(e => foundry.utils.deepClone(e.data)),
|
|
||||||
limited: this.object.limited,
|
|
||||||
options: this.options,
|
|
||||||
owner: this.document.isOwner,
|
|
||||||
editScore: this.options.editScore,
|
|
||||||
isGM: game.user.isGM
|
|
||||||
}
|
|
||||||
this.formData = formData;
|
|
||||||
|
|
||||||
console.log("PM : ", formData, this.object);
|
|
||||||
return formData;
|
|
||||||
}
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
/** @override */
|
|
||||||
activateListeners(html) {
|
|
||||||
super.activateListeners(html);
|
|
||||||
|
|
||||||
// Everything below here is only needed if the sheet is editable
|
|
||||||
if (!this.options.editable) return;
|
|
||||||
|
|
||||||
html.bind("keydown", function(e) { // Ignore Enter in actores sheet
|
|
||||||
if (e.keyCode === 13) return false;
|
|
||||||
});
|
|
||||||
|
|
||||||
// Update Inventory Item
|
|
||||||
html.find('.item-edit').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
let itemId = li.data("item-id");
|
|
||||||
const item = this.actor.items.get( itemId );
|
|
||||||
item.sheet.render(true);
|
|
||||||
});
|
|
||||||
// Delete Inventory Item
|
|
||||||
html.find('.item-delete').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
Imperium5Utility.confirmDelete(this, li);
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
html.find('.quantity-minus').click(event => {
|
|
||||||
const li = $(event.currentTarget).parents(".item");
|
|
||||||
this.actor.incDecQuantity( li.data("item-id"), -1 );
|
|
||||||
} );
|
|
||||||
html.find('.quantity-plus').click(event => {
|
|
||||||
const li = $(event.currentTarget).parents(".item");
|
|
||||||
this.actor.incDecQuantity( li.data("item-id"), +1 );
|
|
||||||
} );
|
|
||||||
|
|
||||||
html.find('.lock-unlock-sheet').click((event) => {
|
|
||||||
this.options.editScore = !this.options.editScore;
|
|
||||||
this.render(true);
|
|
||||||
});
|
|
||||||
html.find('.item-link a').click((event) => {
|
|
||||||
const itemId = $(event.currentTarget).data("item-id")
|
|
||||||
const item = this.actor.getOwnedItem(itemId);
|
|
||||||
item.sheet.render(true);
|
|
||||||
});
|
|
||||||
html.find('.item-equip').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
this.actor.equipItem( li.data("item-id") );
|
|
||||||
this.render(true);
|
|
||||||
});
|
|
||||||
html.find('.update-field').change(ev => {
|
|
||||||
const fieldName = $(ev.currentTarget).data("field-name");
|
|
||||||
let value = Number(ev.currentTarget.value);
|
|
||||||
this.actor.update( { [`${fieldName}`]: value } );
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
/** @override */
|
|
||||||
setPosition(options = {}) {
|
|
||||||
const position = super.setPosition(options);
|
|
||||||
const sheetBody = this.element.find(".sheet-body");
|
|
||||||
const bodyHeight = position.height - 192;
|
|
||||||
sheetBody.css("height", bodyHeight);
|
|
||||||
return position;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
async _onDropItemUNUSED(event, dragData) {
|
|
||||||
let item = await Imperium5Utility.searchItem( dragData)
|
|
||||||
if (item == undefined) {
|
|
||||||
item = this.actor.items.get( dragData.data._id )
|
|
||||||
}
|
|
||||||
//this.actor.preprocessItem( event, item, true )
|
|
||||||
super._onDropItem(event, dragData)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
/** @override */
|
|
||||||
_updateObject(event, formData) {
|
|
||||||
// Update the Actor
|
|
||||||
return this.object.update(formData);
|
|
||||||
}
|
|
||||||
}
|
|
@ -59,6 +59,32 @@ export class Imperium5ActorSheet extends ActorSheet {
|
|||||||
return formData;
|
return formData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
async openGenericRoll() {
|
||||||
|
let rollData = Imperium5Utility.getBasicRollData()
|
||||||
|
rollData.alias = "Dice Pool Roll",
|
||||||
|
rollData.mode = "generic"
|
||||||
|
rollData.title = `Dice Pool Roll`
|
||||||
|
rollData.img = "icons/dice/d12black.svg"
|
||||||
|
|
||||||
|
let rollDialog = await Imperium5RollDialog.create( this.actor, rollData);
|
||||||
|
rollDialog.render( true );
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
async rollIDR( itemId, diceValue) {
|
||||||
|
let item = this.actor.items.get( itemId) ?? {name: "Unknown"}
|
||||||
|
let myRoll = new Roll(diceValue+"x").roll({ async: false })
|
||||||
|
await Imperium5Utility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||||
|
let chatData = {
|
||||||
|
user: game.user.id,
|
||||||
|
rollMode: game.settings.get("core", "rollMode"),
|
||||||
|
whisper: [game.user.id].concat(ChatMessage.getWhisperRecipients('GM')),
|
||||||
|
content: `${this.actor.name} has roll IDR for ${item.name} : ${myRoll.total}`
|
||||||
|
}
|
||||||
|
ChatMessage.create(chatData)
|
||||||
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
/** @override */
|
/** @override */
|
||||||
activateListeners(html) {
|
activateListeners(html) {
|
||||||
@ -117,18 +143,29 @@ export class Imperium5ActorSheet extends ActorSheet {
|
|||||||
this.actor.incDecQuantity( li.data("item-id"), +1 );
|
this.actor.incDecQuantity( li.data("item-id"), +1 );
|
||||||
} );
|
} );
|
||||||
|
|
||||||
html.find('.roll-ame-button').click((event) => {
|
html.find('.roll-ame').click((event) => {
|
||||||
const ameKey = $(event.currentTarget).data("ame-key")
|
const ameKey = $(event.currentTarget).data("ame-key")
|
||||||
this.actor.rollAme(ameKey)
|
this.actor.rollAme(ameKey)
|
||||||
});
|
});
|
||||||
|
|
||||||
|
html.find('.roll-spec').click((event) => {
|
||||||
|
const li = $(event.currentTarget).parents(".item");
|
||||||
|
const specId = li.data("item-id");
|
||||||
|
this.actor.rollSpec(specId);
|
||||||
|
});
|
||||||
|
|
||||||
|
html.find('.weapon-damage-roll').click((event) => {
|
||||||
|
const li = $(event.currentTarget).parents(".item");
|
||||||
|
const weaponId = li.data("item-id");
|
||||||
|
this.actor.rollWeapon(weaponId, true);
|
||||||
|
});
|
||||||
|
|
||||||
html.find('.lock-unlock-sheet').click((event) => {
|
html.find('.lock-unlock-sheet').click((event) => {
|
||||||
this.options.editScore = !this.options.editScore;
|
this.options.editScore = !this.options.editScore;
|
||||||
this.render(true);
|
this.render(true);
|
||||||
});
|
});
|
||||||
html.find('.item-link a').click((event) => {
|
html.find('.item-link a').click((event) => {
|
||||||
const itemId = $(event.currentTarget).data("item-id")
|
const itemId = $(event.currentTarget).data("item-id");
|
||||||
const item = this.actor.getOwnedItem(itemId);
|
const item = this.actor.getOwnedItem(itemId);
|
||||||
item.sheet.render(true);
|
item.sheet.render(true);
|
||||||
});
|
});
|
||||||
@ -157,6 +194,7 @@ export class Imperium5ActorSheet extends ActorSheet {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async _onDropItemUNUSED(event, dragData) {
|
async _onDropItemUNUSED(event, dragData) {
|
||||||
|
console.log(">>>>>> DROPPED!!!!")
|
||||||
let item = await Imperium5Utility.searchItem( dragData)
|
let item = await Imperium5Utility.searchItem( dragData)
|
||||||
if (item == undefined) {
|
if (item == undefined) {
|
||||||
item = this.actor.items.get( dragData.data._id )
|
item = this.actor.items.get( dragData.data._id )
|
||||||
|
@ -111,38 +111,12 @@ export class Imperium5Actor extends Actor {
|
|||||||
let item = duplicate(this.items.filter( it => it.type == "contact") || [] )
|
let item = duplicate(this.items.filter( it => it.type == "contact") || [] )
|
||||||
return item
|
return item
|
||||||
}
|
}
|
||||||
getResources() {
|
|
||||||
let item = duplicate(this.items.filter( it => it.type == "equipement" || it.type == "singularite" || it.type == "capacite" || it.type == "contact") || [] )
|
|
||||||
return item
|
|
||||||
}
|
|
||||||
getUnusedParadigmes() {
|
|
||||||
let paraList = []
|
|
||||||
for(let k in this.system.paradigmes) {
|
|
||||||
let para = this.system.paradigmes[k]
|
|
||||||
if (!para.used) {
|
|
||||||
para.key = k
|
|
||||||
paraList.push(duplicate(para))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return paraList
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
transferToSource( nbSuccess) {
|
incDecKarma( value ) {
|
||||||
let karma = duplicate(this.system.karma)
|
let karma = duplicate(this.system.karma)
|
||||||
karma.source += Number(nbSuccess)
|
karma.value += value
|
||||||
let nbKarma = Math.floor(karma.source / 3)
|
|
||||||
karma.value += nbKarma
|
|
||||||
karma.source -= nbKarma*3
|
|
||||||
this.update( { 'system.karma': karma})
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
decOneKarma( ) {
|
|
||||||
let karma = duplicate(this.system.karma)
|
|
||||||
karma.value--
|
|
||||||
karma.value = Math.max(karma.value, 0)
|
karma.value = Math.max(karma.value, 0)
|
||||||
karma.xp++
|
|
||||||
this.update( { 'system.karma': karma})
|
this.update( { 'system.karma': karma})
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -182,6 +156,10 @@ export class Imperium5Actor extends Actor {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getInitiativeScore(combatId, combatantId) {
|
getInitiativeScore(combatId, combatantId) {
|
||||||
|
if (this.type == 'character') {
|
||||||
|
this.rollMR(true, combatId, combatantId)
|
||||||
|
}
|
||||||
|
console.log("Init required !!!!")
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -236,13 +214,6 @@ export class Imperium5Actor extends Actor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
setParadigmeUsed(paraKey) {
|
|
||||||
let para = duplicate(this.system.paradigmes)
|
|
||||||
para[paraKey].used = true
|
|
||||||
this.update( {'system.paradigmes': para} )
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
/* ROLL SECTION
|
/* ROLL SECTION
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@ -279,10 +250,6 @@ export class Imperium5Actor extends Actor {
|
|||||||
rollData.actorId = this.id
|
rollData.actorId = this.id
|
||||||
rollData.img = this.img
|
rollData.img = this.img
|
||||||
rollData.capacites = this.getUnusedCapacites()
|
rollData.capacites = this.getUnusedCapacites()
|
||||||
rollData.paradigmes = this.getUnusedParadigmes()
|
|
||||||
rollData.ressources = this.getResources()
|
|
||||||
rollData.selectedRessources = []
|
|
||||||
rollData.selectedParadigme = "none"
|
|
||||||
rollData.karma = this.system.karma.value
|
rollData.karma = this.system.karma.value
|
||||||
|
|
||||||
return rollData
|
return rollData
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
import { Imperium5Actor } from "./imperium5-actor.js";
|
import { Imperium5Actor } from "./imperium5-actor.js";
|
||||||
import { Imperium5ItemSheet } from "./imperium5-item-sheet.js";
|
import { Imperium5ItemSheet } from "./imperium5-item-sheet.js";
|
||||||
import { Imperium5ActorSheet } from "./imperium5-actor-sheet.js";
|
import { Imperium5ActorSheet } from "./imperium5-actor-sheet.js";
|
||||||
import { Imperium5ActorPMSheet } from "./imperium5-actor-pm-sheet.js";
|
|
||||||
import { Imperium5Utility } from "./imperium5-utility.js";
|
import { Imperium5Utility } from "./imperium5-utility.js";
|
||||||
import { Imperium5Combat } from "./imperium5-combat.js";
|
import { Imperium5Combat } from "./imperium5-combat.js";
|
||||||
import { Imperium5Item } from "./imperium5-item.js";
|
import { Imperium5Item } from "./imperium5-item.js";
|
||||||
@ -51,7 +50,6 @@ Hooks.once("init", async function () {
|
|||||||
// Register sheet application classes
|
// Register sheet application classes
|
||||||
Actors.unregisterSheet("core", ActorSheet)
|
Actors.unregisterSheet("core", ActorSheet)
|
||||||
Actors.registerSheet("fvtt-imperium5", Imperium5ActorSheet, { types: ["character"], makeDefault: true })
|
Actors.registerSheet("fvtt-imperium5", Imperium5ActorSheet, { types: ["character"], makeDefault: true })
|
||||||
Actors.registerSheet("fvtt-imperium5", Imperium5ActorPMSheet, { types: ["pm"], makeDefault: true })
|
|
||||||
|
|
||||||
Items.unregisterSheet("core", ItemSheet)
|
Items.unregisterSheet("core", ItemSheet)
|
||||||
Items.registerSheet("fvtt-imperium5", Imperium5ItemSheet, { makeDefault: true } )
|
Items.registerSheet("fvtt-imperium5", Imperium5ItemSheet, { makeDefault: true } )
|
||||||
|
@ -68,8 +68,8 @@ export class Imperium5RollDialog extends Dialog {
|
|||||||
this.rollData.useArchetype = event.currentTarget.checked
|
this.rollData.useArchetype = event.currentTarget.checked
|
||||||
this.updatePCPool()
|
this.updatePCPool()
|
||||||
})
|
})
|
||||||
html.find('#select-aide-pj').change(async (event) => {
|
html.find('#select-use-aide').change(async (event) => {
|
||||||
this.rollData.nbAide = Number(event.currentTarget.value)
|
this.rollData.useAide = event.currentTarget.checked
|
||||||
this.updatePCPool()
|
this.updatePCPool()
|
||||||
})
|
})
|
||||||
html.find('#select-use-karma').change(async (event) => {
|
html.find('#select-use-karma').change(async (event) => {
|
||||||
|
@ -13,7 +13,6 @@ export class Imperium5Utility {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async init() {
|
static async init() {
|
||||||
Hooks.on('renderChatLog', (log, html, data) => Imperium5Utility.chatListeners(html));
|
Hooks.on('renderChatLog', (log, html, data) => Imperium5Utility.chatListeners(html));
|
||||||
Hooks.on("getChatLogEntryContext", (html, options) => Imperium5Utility.chatRollMenu(html, options))
|
|
||||||
|
|
||||||
Hooks.on("getCombatTrackerEntryContext", (html, options) => {
|
Hooks.on("getCombatTrackerEntryContext", (html, options) => {
|
||||||
Imperium5Utility.pushInitiativeOptions(html, options);
|
Imperium5Utility.pushInitiativeOptions(html, options);
|
||||||
@ -49,38 +48,6 @@ export class Imperium5Utility {
|
|||||||
Handlebars.registerHelper('exists', function (val) {
|
Handlebars.registerHelper('exists', function (val) {
|
||||||
return val != null && val != undefined;
|
return val != null && val != undefined;
|
||||||
})
|
})
|
||||||
Handlebars.registerHelper('for', function (from, to, incr, block) {
|
|
||||||
var accum = '';
|
|
||||||
for (var i = from; i < to; i += incr)
|
|
||||||
accum += block.fn(i);
|
|
||||||
return accum;
|
|
||||||
})
|
|
||||||
Handlebars.registerHelper('times', function (n, block) {
|
|
||||||
var accum = '';
|
|
||||||
for (var i = 1; i <= n; ++i)
|
|
||||||
accum += block.fn(i);
|
|
||||||
return accum;
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
static registerSettings() {
|
|
||||||
game.settings.register("fvtt-imperium5", "use-entropie-reussite", {
|
|
||||||
name: "Utilisation du dé d'Entropie dans les réussites",
|
|
||||||
hint: "Si coché, ajoute 1 succès au joueur sur un 2, et 1 succés au MJ sur un 7.",
|
|
||||||
scope: "world",
|
|
||||||
config: true,
|
|
||||||
default: false,
|
|
||||||
type: Boolean
|
|
||||||
})
|
|
||||||
game.settings.register("fvtt-imperium5", "use-specialite", {
|
|
||||||
name: "Utilisation complémentaire des Spécialités",
|
|
||||||
hint: "Si coché, les Spécialités peuvent permettre de réduire de 1 la valeur d'un dé",
|
|
||||||
scope: "world",
|
|
||||||
config: true,
|
|
||||||
default: false,
|
|
||||||
type: Boolean
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@ -89,7 +56,7 @@ export class Imperium5Utility {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async ready() {
|
static async ready() {
|
||||||
this.registerSettings()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@ -123,44 +90,10 @@ export class Imperium5Utility {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async chatListeners(html) {
|
static async chatListeners(html) {
|
||||||
html.on("change", '.select-apply-paradigme', event => {
|
|
||||||
let paraKey = event.currentTarget.value
|
|
||||||
let rollData = this.getRollDataFromMessage(event)
|
|
||||||
rollData.previousMessageId = Imperium5Utility.findChatMessageId(event.currentTarget)
|
|
||||||
this.applyParadigme(rollData, paraKey)
|
|
||||||
})
|
|
||||||
|
|
||||||
html.on("click", '.apply-specialite', event => {
|
html.on("click", '.view-item-from-chat', event => {
|
||||||
let resultIndex = $(event.currentTarget).data("result-index")
|
game.system.pegasus.creator.openItemView(event)
|
||||||
let rollData = this.getRollDataFromMessage(event)
|
|
||||||
rollData.previousMessageId = Imperium5Utility.findChatMessageId(event.currentTarget)
|
|
||||||
this.applySpecialite(rollData, resultIndex)
|
|
||||||
})
|
})
|
||||||
|
|
||||||
html.on("change", '.transfer-success', event => {
|
|
||||||
let nbSuccess = event.currentTarget.value
|
|
||||||
let rollData = this.getRollDataFromMessage(event)
|
|
||||||
rollData.previousMessageId = Imperium5Utility.findChatMessageId(event.currentTarget)
|
|
||||||
this.applySuccessTransfer(rollData, nbSuccess)
|
|
||||||
})
|
|
||||||
|
|
||||||
html.on("change", '.select-ressource', async event => {
|
|
||||||
// Filter / remove the ressource
|
|
||||||
let rollData = this.getRollDataFromMessage(event)
|
|
||||||
let ressource = rollData.ressources.find(r => r._id == event.currentTarget.value)
|
|
||||||
rollData.selectedRessources.push(ressource)
|
|
||||||
rollData.ressources = rollData.ressources.filter(r => r._id != event.currentTarget.value)
|
|
||||||
rollData.realSuccessPC--;
|
|
||||||
this.computeIntensite(rollData)
|
|
||||||
// Update the roll data in the message
|
|
||||||
rollData.previousMessageId = Imperium5Utility.findChatMessageId(event.currentTarget)
|
|
||||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
|
||||||
content: await renderTemplate(`systems/fvtt-imperium5/templates/chat-generic-result.html`, rollData)
|
|
||||||
})
|
|
||||||
msg.setFlag("world", "imperium5-roll-data", rollData)
|
|
||||||
this.removeChatMessageId(rollData.previousMessageId)
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@ -219,12 +152,6 @@ export class Imperium5Utility {
|
|||||||
}
|
}
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
|
||||||
static getRollDataFromMessage(event) {
|
|
||||||
let messageId = Imperium5Utility.findChatMessageId(event.currentTarget)
|
|
||||||
let message = game.messages.get(messageId)
|
|
||||||
return message.getFlag("world", "imperium5-roll-data")
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static createDirectOptionList(min, max) {
|
static createDirectOptionList(min, max) {
|
||||||
@ -255,22 +182,24 @@ export class Imperium5Utility {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static chatRollMenu(html, options) {
|
static updateRollData(rollData) {
|
||||||
let canApply = li => canvas.tokens.controlled.length && li.find(".imperium5-roll").length
|
|
||||||
let canApplyIntensite = function (li) {
|
let id = rollData.rollId;
|
||||||
let message = game.messages.get(li.attr("data-message-id"))
|
let oldRollData = this.rollDataStore[id] || {};
|
||||||
let rollData = message.getFlag("world", "imperium5-roll-data")
|
let newRollData = mergeObject(oldRollData, rollData);
|
||||||
return (rollData.currentIntensite > 0)
|
this.rollDataStore[id] = newRollData;
|
||||||
}
|
}
|
||||||
options.push(
|
/* -------------------------------------------- */
|
||||||
{
|
static saveRollData(rollData) {
|
||||||
name: "Ajouer +3 (1 point de Bonne Aventure)",
|
game.socket.emit("system.fvtt-imperium5", {
|
||||||
icon: "<i class='fas fa-user-plus'></i>",
|
name: "msg_update_roll", data: rollData
|
||||||
condition: canApply && canApplyIntensite,
|
}); // Notify all other clients of the roll
|
||||||
callback: li => Imperium5Utility.applyBonneAventureRoll(li, -1, "+3")
|
this.updateRollData(rollData);
|
||||||
}
|
}
|
||||||
)
|
|
||||||
return options
|
/* -------------------------------------------- */
|
||||||
|
static getRollData(id) {
|
||||||
|
return this.rollDataStore[id];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@ -346,59 +275,26 @@ export class Imperium5Utility {
|
|||||||
let capa = rollData.capacites.find(c => c._id == rollData.usedCapacite)
|
let capa = rollData.capacites.find(c => c._id == rollData.usedCapacite)
|
||||||
capaDice = capa.system.aide
|
capaDice = capa.system.aide
|
||||||
}
|
}
|
||||||
let val = rollData.ame.value + capaDice + ((rollData.useKarma) ? 1 : 0) + ((rollData.useArchetype) ? 1 : 0) + rollData.nbAide + rollData.ameMalus
|
let val = rollData.ame.value + capaDice + ((rollData.useKarma) ? 1 : 0) + ((rollData.useArchetype) ? 1 : 0) + ((rollData.useAide) ? 1 : 0) + rollData.ameMalus
|
||||||
return Math.max(val, 0)
|
return Math.max(val, 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
static computeReussites(rollData) {
|
|
||||||
let myRoll = rollData.roll
|
|
||||||
// Calcul des réussites sur les 2 pools
|
|
||||||
rollData.successPC = rollData.resultsPC.filter(res => res.result <= rollData.seuil).length
|
|
||||||
rollData.successGM = myRoll.terms[4].results.filter(res => res.result <= 2).length
|
|
||||||
// Calcul du présage
|
|
||||||
rollData.bonPresage = myRoll.terms[2].results[0].result == 1
|
|
||||||
rollData.mauvaisPresage = myRoll.terms[2].results[0].result == 8
|
|
||||||
// gestion règle optionnelle de l'Entropie
|
|
||||||
if (rollData.useEntropieReussite && myRoll.terms[2].results[0].result == 2) {
|
|
||||||
rollData.successPC++
|
|
||||||
}
|
|
||||||
if (rollData.useEntropieReussite && myRoll.terms[2].results[0].result == 7) {
|
|
||||||
rollData.successGM++
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
static computeIntensite(rollData) {
|
|
||||||
rollData.totalIntensite = 0
|
|
||||||
let pi = 3
|
|
||||||
let nbSuccess = rollData.realSuccessPC
|
|
||||||
while (nbSuccess) {
|
|
||||||
rollData.totalIntensite += pi
|
|
||||||
pi = 2 // 3 for the first, 2 after
|
|
||||||
nbSuccess--
|
|
||||||
}
|
|
||||||
for(let r of rollData.selectedRessources) {
|
|
||||||
rollData.totalIntensite += r.system.ressource
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async rollImperium5(rollData) {
|
static async rollImperium5(rollData) {
|
||||||
|
|
||||||
// Karma management
|
// Karma management
|
||||||
let actor = game.actors.get(rollData.actorId)
|
let actor = game.actors.get(rollData.actorId)
|
||||||
rollData.nbKarma = 0
|
rollData.nbKarma = 0
|
||||||
if (rollData.useKarma) {
|
if ( rollData.useKarma ) {
|
||||||
actor.decOneKarma()
|
actor.incDecKarma(-1)
|
||||||
rollData.nbKarma++
|
rollData.nbKarma++
|
||||||
}
|
}
|
||||||
if (rollData.usedCapacite != "none") {
|
if ( rollData.usedCapacite != "none" ) {
|
||||||
actor.decOneKarma()
|
actor.incDecKarma(-1)
|
||||||
rollData.nbKarma++
|
rollData.nbKarma++
|
||||||
}
|
}
|
||||||
|
|
||||||
let nbAmeDice = this.computeDiceReserve(rollData)
|
let nbAmeDice = this.computeDiceReserve( rollData )
|
||||||
let diceFormula = `${nbAmeDice}d8[green] + 1d8[blue] + ${rollData.realiteDice}d8[red]`
|
let diceFormula = `${nbAmeDice}d8[green] + 1d8[blue] + ${rollData.realiteDice}d8[red]`
|
||||||
let humanFormula = `${nbAmeDice}d8, 1d8, ${rollData.realiteDice}d8`
|
let humanFormula = `${nbAmeDice}d8, 1d8, ${rollData.realiteDice}d8`
|
||||||
// Performs roll
|
// Performs roll
|
||||||
@ -410,64 +306,48 @@ export class Imperium5Utility {
|
|||||||
rollData.diceFormula = diceFormula
|
rollData.diceFormula = diceFormula
|
||||||
rollData.humanFormula = humanFormula
|
rollData.humanFormula = humanFormula
|
||||||
}
|
}
|
||||||
// local copy of results to allow changes
|
|
||||||
rollData.resultsPC = duplicate(myRoll.terms[0].results)
|
|
||||||
// Calcul réussites
|
// Calcul réussites
|
||||||
this.computeReussites(rollData)
|
rollData.successPC = myRoll.terms[0].results.filter(res => res.result <= 2).length
|
||||||
rollData.realSuccessPC = rollData.successPC // To manage source transfer
|
rollData.successGM = myRoll.terms[4].results.filter(res => res.result <= 2).length
|
||||||
this.computeIntensite(rollData)
|
rollData.bonPresage = myRoll.terms[2].results[0].result == 1
|
||||||
|
rollData.mauvaisPresage = myRoll.terms[2].results[0].result == 8
|
||||||
|
rollData.nbUnitesNarration = Math.max( rollData.successPC-1, 0)
|
||||||
|
|
||||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
let msg = await this.createChatWithRollMode(rollData.alias, {
|
||||||
content: await renderTemplate(`systems/fvtt-imperium5/templates/chat-generic-result.html`, rollData)
|
content: await renderTemplate(`systems/fvtt-imperium5/templates/chat-generic-result.html`, rollData)
|
||||||
})
|
})
|
||||||
msg.setFlag("world", "imperium5-roll-data", rollData)
|
msg.setFlag("world", "rolldata", rollData)
|
||||||
console.log("Final rollData", rollData)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
static async applyParadigme(rollData, paraKey) {
|
|
||||||
let actor = game.actors.get(rollData.actorId)
|
|
||||||
let para = actor.system.paradigmes[paraKey]
|
|
||||||
rollData.seuil = para.value
|
|
||||||
rollData.usedParadigme = para.label
|
|
||||||
console.log(">>>>>>>>>>NEW SEUIL : ", rollData.seuil)
|
|
||||||
actor.setParadigmeUsed(paraKey)
|
|
||||||
|
|
||||||
this.computeReussites(rollData)
|
|
||||||
rollData.realSuccessPC = rollData.successPC // To manage source transfer
|
|
||||||
rollData.paradigmes = []
|
|
||||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
|
||||||
content: await renderTemplate(`systems/fvtt-imperium5/templates/chat-generic-result.html`, rollData)
|
|
||||||
})
|
|
||||||
msg.setFlag("world", "imperium5-roll-data", rollData)
|
|
||||||
this.removeChatMessageId(rollData.previousMessageId)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
static async applySpecialite(rollData, resultIndex) {
|
|
||||||
let res = rollData.resultsPC[resultIndex]
|
|
||||||
res.result = (res.result > 1) ? res.result - 1 : res.result
|
|
||||||
this.computeReussites(rollData)
|
|
||||||
rollData.useSpecialite = false
|
|
||||||
rollData.specialiteApplied = true
|
|
||||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
|
||||||
content: await renderTemplate(`systems/fvtt-imperium5/templates/chat-generic-result.html`, rollData)
|
|
||||||
})
|
|
||||||
msg.setFlag("world", "imperium5-roll-data", rollData)
|
|
||||||
this.removeChatMessageId(rollData.previousMessageId)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ------------------------- ------------------- */
|
/* ------------------------- ------------------- */
|
||||||
static async applySuccessTransfer(rollData, nbSuccess) {
|
static async updateRoll(rollData) {
|
||||||
let actor = game.actors.get(rollData.actorId)
|
|
||||||
actor.transferToSource(nbSuccess)
|
let diceResults = rollData.diceResults
|
||||||
rollData.realSuccessPC -= nbSuccess
|
let sortedRoll = []
|
||||||
rollData.sourceTransfer = nbSuccess
|
for (let i = 0; i < 10; i++) {
|
||||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
sortedRoll[i] = 0;
|
||||||
content: await renderTemplate(`systems/fvtt-imperium5/templates/chat-generic-result.html`, rollData)
|
}
|
||||||
})
|
for (let dice of diceResults) {
|
||||||
msg.setFlag("world", "imperium5-roll-data", rollData)
|
sortedRoll[dice.result]++
|
||||||
this.removeChatMessageId(rollData.previousMessageId)
|
}
|
||||||
|
let index = 0;
|
||||||
|
let bestRoll = 0;
|
||||||
|
for (let i = 0; i < 10; i++) {
|
||||||
|
if (sortedRoll[i] > bestRoll) {
|
||||||
|
bestRoll = sortedRoll[i]
|
||||||
|
index = i
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let bestScore = (bestRoll * 10) + index
|
||||||
|
rollData.bestScore = bestScore
|
||||||
|
rollData.finalScore = bestScore + rollData.negativeModifier + rollData.positiveModifier
|
||||||
|
|
||||||
|
this.saveRollData(rollData)
|
||||||
|
|
||||||
|
this.createChatWithRollMode(rollData.alias, {
|
||||||
|
content: await renderTemplate(`systems/fvtt-weapons-of-the-gods/templates/chat-generic-result.html`, rollData)
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ------------------------- ------------------- */
|
/* ------------------------- ------------------- */
|
||||||
@ -563,20 +443,14 @@ export class Imperium5Utility {
|
|||||||
realiteDice: 0,
|
realiteDice: 0,
|
||||||
ameMalus: 0,
|
ameMalus: 0,
|
||||||
useArchetype: false,
|
useArchetype: false,
|
||||||
nbAide: 0,
|
useAide: false,
|
||||||
useKarma: false,
|
useKarma: false,
|
||||||
usedCapacite: "none",
|
usedCapacite: "none"
|
||||||
seuil: 2,
|
|
||||||
currentIntensite: -1,
|
|
||||||
nbSuccessSource: 0,
|
|
||||||
useSpecialite: game.settings.get("fvtt-imperium5", "use-specialite"),
|
|
||||||
useEntropieReussite: game.settings.get("fvtt-imperium5", "use-entropie-reussite")
|
|
||||||
}
|
}
|
||||||
Imperium5Utility.updateWithTarget(rollData)
|
Imperium5Utility.updateWithTarget(rollData)
|
||||||
return rollData
|
return rollData
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static updateWithTarget(rollData) {
|
static updateWithTarget(rollData) {
|
||||||
let objectDefender
|
let objectDefender
|
||||||
|
@ -57,7 +57,7 @@
|
|||||||
|
|
||||||
/* Fonts */
|
/* Fonts */
|
||||||
.sheet header.sheet-header h1 input, .window-app .window-header, #actors .directory-list, #navigation #scene-list .scene.nav-item {
|
.sheet header.sheet-header h1 input, .window-app .window-header, #actors .directory-list, #navigation #scene-list .scene.nav-item {
|
||||||
font-size: 0.8rem;
|
font-size: 1.0rem;
|
||||||
} /* For title, sidebar character and scene */
|
} /* For title, sidebar character and scene */
|
||||||
.sheet nav.sheet-tabs {
|
.sheet nav.sheet-tabs {
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
@ -78,7 +78,7 @@
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tabs .item.active, a:hover {
|
.tabs .item.active, .blessures-list li ul li:first-child:hover, a:hover {
|
||||||
text-shadow: 1px 0px 0px #ff6600;
|
text-shadow: 1px 0px 0px #ff6600;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -335,21 +335,20 @@ table {border: 1px solid #7a7971;}
|
|||||||
}
|
}
|
||||||
|
|
||||||
.fvtt-imperium5 .tabs {
|
.fvtt-imperium5 .tabs {
|
||||||
height: 24px;
|
height: 40px;
|
||||||
border-top: 1px solid #AAA;
|
border-top: 1px solid #AAA;
|
||||||
border-bottom: 1px solid #AAA;
|
border-bottom: 1px solid #AAA;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fvtt-imperium5 .tabs .item {
|
.fvtt-imperium5 .tabs .item {
|
||||||
line-height: 24px;
|
line-height: 40px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fvtt-imperium5 .tabs .item.active {
|
.fvtt-imperium5 .tabs .item.active {
|
||||||
/*text-decoration: underline;*/
|
text-decoration: underline;
|
||||||
background: linear-gradient(to bottom, #B8A799F0 5%, #9c6d47f0 100%);
|
text-shadow: none;
|
||||||
/*text-shadow: none;*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.fvtt-imperium5 .items-list {
|
.fvtt-imperium5 .items-list {
|
||||||
@ -446,40 +445,29 @@ section.sheet-body{padding: 0.25rem 0.5rem;}
|
|||||||
}
|
}
|
||||||
|
|
||||||
.sheet nav.sheet-tabs {
|
.sheet nav.sheet-tabs {
|
||||||
font-size: 0.8rem;
|
font-size: 0.70rem;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
height: 2.5rem;
|
height: 3rem;
|
||||||
flex: 0 0 3rem;
|
flex: 0 0 3rem;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0 0 0 0.25rem;
|
padding: 0 0 0 0.25rem;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
line-height: 1.5rem;
|
line-height: 1.5rem;
|
||||||
border-radius: 8px;
|
|
||||||
border-top: 0 none;
|
border-top: 0 none;
|
||||||
border-bottom: 0 none;
|
border-bottom: 0 none;
|
||||||
border-right: 0 none;
|
border-right: 0 none;
|
||||||
color: #403f3e;
|
background-color:#B8A799F0;
|
||||||
|
color:beige;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* background: rgb(245,245,240) url("../images/ui/fond4.webp") repeat left top;*/
|
||||||
|
|
||||||
nav.sheet-tabs .item {
|
nav.sheet-tabs .item {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: 0 0.25rem;
|
padding: 0 0.25rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tab-title {
|
|
||||||
background-color:#B8A799F0;
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
.tab-title:hover {
|
|
||||||
background: linear-gradient(to bottom, #B8A799F0 5%, #9c6d47f0 100%);
|
|
||||||
background-color: red;
|
|
||||||
}
|
|
||||||
.tab-title:active {
|
|
||||||
position:relative;
|
|
||||||
top:1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav.sheet-tabs .item:after {
|
nav.sheet-tabs .item:after {
|
||||||
content: "";
|
content: "";
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@ -1162,51 +1150,47 @@ ul, li {
|
|||||||
opacity: 1;
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.common-button {
|
.river-button {
|
||||||
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
||||||
background: linear-gradient(to bottom, #B8A799F0 5%, #80624af0 100%);
|
background: linear-gradient(to bottom, #21374afc 5%, #152833ab 100%);
|
||||||
background-color: #80624af0; /*#7d5d3b00;*/
|
background-color: #7d5d3b00;
|
||||||
border-radius: 4px;
|
border-radius: 3px;
|
||||||
opacity: 60%;
|
|
||||||
border: 2px ridge #846109;
|
border: 2px ridge #846109;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
padding: 2px 4px 0px 4px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
text-shadow: 0px 1px 0px #4d3534;
|
text-shadow: 0px 1px 0px #4d3534;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
margin:4px;
|
||||||
|
|
||||||
.common-button option {
|
|
||||||
background: linear-gradient(to bottom, #B8A799F0 5%, #80624af0 100%);
|
|
||||||
background-color: #80624af0; /*#7d5d3b00;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.common-button:hover {
|
|
||||||
background: linear-gradient(to bottom, #97B5AEFF 5%, rgb(101, 167, 151) 100%);
|
|
||||||
background-color: #97B5AEFF;
|
|
||||||
}
|
|
||||||
.common-button:active {
|
|
||||||
position:relative;
|
|
||||||
top:1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.roll-ame-button {
|
|
||||||
width: 80px;
|
|
||||||
min-width: 80px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.chat-card-button {
|
.chat-card-button {
|
||||||
|
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
||||||
|
background: linear-gradient(to bottom, #21374afc 5%, #152833ab 100%);
|
||||||
|
background-color: #7d5d3b00;
|
||||||
|
border-radius: 3px;
|
||||||
|
border: 2px ridge #846109;
|
||||||
|
display: inline-block;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #ffffff;
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
padding: 2px 2px 0px 2px;
|
padding: 4px 12px 0px 12px;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: 0px 1px 0px #4d3534;
|
||||||
|
position: relative;
|
||||||
margin:2px;
|
margin:2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chat-card-button:hover {
|
||||||
.li-button-paradigme {
|
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
||||||
display: flex;
|
background-color: red;
|
||||||
flex-direction: row;
|
}
|
||||||
flex-wrap: wrap;
|
.chat-card-button:active {
|
||||||
|
position:relative;
|
||||||
|
top:1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plus-minus-button {
|
.plus-minus-button {
|
||||||
@ -1225,7 +1209,9 @@ ul, li {
|
|||||||
margin:0px;
|
margin:0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.plus-minus-button:hover {
|
.river-button:hover,
|
||||||
|
.plus-minus-button:hover,
|
||||||
|
.chat-card-button:hover {
|
||||||
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
||||||
background-color: red;
|
background-color: red;
|
||||||
}
|
}
|
||||||
@ -1309,7 +1295,7 @@ ul, li {
|
|||||||
/* =================== 1. ACTOR SHEET FONT STYLES =========== *//*
|
/* =================== 1. ACTOR SHEET FONT STYLES =========== *//*
|
||||||
*/
|
*/
|
||||||
.sheet-box {
|
.sheet-box {
|
||||||
border-radius: 12px;
|
border-radius: 5%;
|
||||||
border-width: 1px;
|
border-width: 1px;
|
||||||
padding: 0.4rem;
|
padding: 0.4rem;
|
||||||
margin: 0.2rem;
|
margin: 0.2rem;
|
||||||
@ -1402,10 +1388,6 @@ ul, li {
|
|||||||
width: 64px;
|
width: 64px;
|
||||||
height: auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
.separator-slash {
|
|
||||||
width: 0.8rem;
|
|
||||||
max-width: 0.8rem;
|
|
||||||
}
|
|
||||||
.item-name-img {
|
.item-name-img {
|
||||||
flex-grow:1;
|
flex-grow:1;
|
||||||
max-width: 2rem;
|
max-width: 2rem;
|
||||||
@ -1442,16 +1424,6 @@ ul, li {
|
|||||||
max-width: 8rem;
|
max-width: 8rem;
|
||||||
min-width: 8rem;
|
min-width: 8rem;
|
||||||
}
|
}
|
||||||
.item-field-label-long2 {
|
|
||||||
flex-grow:1;
|
|
||||||
max-width: 20rem;
|
|
||||||
min-width: 20rem;
|
|
||||||
}
|
|
||||||
.item-field-label-long2-no-img {
|
|
||||||
flex-grow:1;
|
|
||||||
max-width: 18rem;
|
|
||||||
min-width: 18rem;
|
|
||||||
}
|
|
||||||
.item-control-end {
|
.item-control-end {
|
||||||
align-self: flex-end;
|
align-self: flex-end;
|
||||||
}
|
}
|
||||||
@ -1479,6 +1451,3 @@ ul, li {
|
|||||||
.color-text-ame {
|
.color-text-ame {
|
||||||
color: #806B64;
|
color: #806B64;
|
||||||
}
|
}
|
||||||
.ame-block {
|
|
||||||
margin-bottom: 24px;
|
|
||||||
}
|
|
28
system.json
28
system.json
@ -1,21 +1,9 @@
|
|||||||
{
|
{
|
||||||
"id": "fvtt-imperium5",
|
"id": "fvtt-imperium5",
|
||||||
"title": "Imperium5 RPG",
|
"title": "Imperium5 RPG",
|
||||||
"authors": [
|
"authors": [ {"name":"Uberwald"} ],
|
||||||
{
|
"version": "10.0.3",
|
||||||
"name": "Uberwald",
|
"compatibleCoreVersion": "9",
|
||||||
"flags": {}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"languages": [
|
|
||||||
{
|
|
||||||
"lang": "fr",
|
|
||||||
"name": "Français",
|
|
||||||
"path": "lang/fr.json",
|
|
||||||
"flags": {}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"version": "10.0.13",
|
|
||||||
"compatibility": {
|
"compatibility": {
|
||||||
"minimum": "10",
|
"minimum": "10",
|
||||||
"verified": "10",
|
"verified": "10",
|
||||||
@ -27,7 +15,12 @@
|
|||||||
],
|
],
|
||||||
"gridDistance": 5,
|
"gridDistance": 5,
|
||||||
"gridUnits": "m",
|
"gridUnits": "m",
|
||||||
|
"languages": [
|
||||||
|
],
|
||||||
|
"library": false,
|
||||||
"license": "LICENSE.txt",
|
"license": "LICENSE.txt",
|
||||||
|
"manifestPlusVersion": "1.0.0",
|
||||||
|
"media": [],
|
||||||
"packs": [
|
"packs": [
|
||||||
{
|
{
|
||||||
"type": "Item",
|
"type": "Item",
|
||||||
@ -72,8 +65,9 @@
|
|||||||
"styles": [
|
"styles": [
|
||||||
"styles/simple.css"
|
"styles/simple.css"
|
||||||
],
|
],
|
||||||
"background": "images/ui/imperium5_welcome_page.webp",
|
"templateVersion": 47,
|
||||||
|
"background" : "./images/ui/imperium5_welcome_page.webp",
|
||||||
"url": "https://www.uberwald.me/gitea/uberwald/fvtt-imperium5",
|
"url": "https://www.uberwald.me/gitea/uberwald/fvtt-imperium5",
|
||||||
"manifest": "https://www.uberwald.me/gitea/uberwald/fvtt-imperium5/raw/branch/master/system.json",
|
"manifest": "https://www.uberwald.me/gitea/uberwald/fvtt-imperium5/raw/branch/master/system.json",
|
||||||
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-imperium5/archive/fvtt-imperium5-v10.0.13.zip"
|
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-imperium5/archive/fvtt-imperium5-v10.0.3.zip"
|
||||||
}
|
}
|
@ -1,8 +1,7 @@
|
|||||||
{
|
{
|
||||||
"Actor": {
|
"Actor": {
|
||||||
"types": [
|
"types": [
|
||||||
"character",
|
"character"
|
||||||
"pm"
|
|
||||||
],
|
],
|
||||||
"templates": {
|
"templates": {
|
||||||
"biodata": {
|
"biodata": {
|
||||||
@ -22,8 +21,7 @@
|
|||||||
"description": "",
|
"description": "",
|
||||||
"rebuild": "",
|
"rebuild": "",
|
||||||
"contacts": "",
|
"contacts": "",
|
||||||
"gmnotes": "",
|
"gmnotes": ""
|
||||||
"archetype": ""
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"core": {
|
"core": {
|
||||||
@ -128,34 +126,6 @@
|
|||||||
"seuil": 0,
|
"seuil": 0,
|
||||||
"reserve": 0
|
"reserve": 0
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"pmcore": {
|
|
||||||
"ames": {
|
|
||||||
"niveau": 0,
|
|
||||||
"intensite": 1,
|
|
||||||
"riposte": 1,
|
|
||||||
"cohesions": [
|
|
||||||
{
|
|
||||||
"max": 1,
|
|
||||||
"value": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"rupture": 0
|
|
||||||
},
|
|
||||||
"paradigmes": {
|
|
||||||
"custom01": {
|
|
||||||
"label": "A changer",
|
|
||||||
"value": 0,
|
|
||||||
"used": false,
|
|
||||||
"editable": true
|
|
||||||
},
|
|
||||||
"custom02": {
|
|
||||||
"label": "A changer",
|
|
||||||
"value": 0,
|
|
||||||
"used": false,
|
|
||||||
"editable": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"character": {
|
"character": {
|
||||||
@ -163,12 +133,6 @@
|
|||||||
"biodata",
|
"biodata",
|
||||||
"core"
|
"core"
|
||||||
]
|
]
|
||||||
},
|
|
||||||
"pm": {
|
|
||||||
"templates": [
|
|
||||||
"biodata",
|
|
||||||
"pmcore"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Item": {
|
"Item": {
|
||||||
@ -204,7 +168,7 @@
|
|||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
"ressource": {
|
"ressource": {
|
||||||
"ressource": 0,
|
"value": 0,
|
||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
"capacite": {
|
"capacite": {
|
||||||
@ -214,15 +178,15 @@
|
|||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
"singularite": {
|
"singularite": {
|
||||||
"ressource": 0,
|
"value": 0,
|
||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
"equipement": {
|
"equipement": {
|
||||||
"ressource": 0,
|
"value": 0,
|
||||||
"description": ""
|
"description": ""
|
||||||
},
|
},
|
||||||
"contact": {
|
"contact": {
|
||||||
"ressource": 0,
|
"value": 0,
|
||||||
"description": ""
|
"description": ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,38 +1,35 @@
|
|||||||
<div class="ame-block">
|
<span class="flexrow">
|
||||||
<span class="flexrow">
|
<h4 class="ame-margin ame-subtitle">{{typedata.label}}</h4>
|
||||||
<h4 class="ame-margin ame-subtitle">{{typedata.label}}</h4>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-filler"> </div>
|
|
||||||
|
|
||||||
<select class="input-numeric-short padd-right status-small-label color-class-common" type="text"
|
<select class="input-numeric-short padd-right status-small-label color-class-common" type="text" name="system.amestype.{{typeame}}.malus" value="{{typedata.malus}}" data-dtype="Number">
|
||||||
name="system.amestype.{{typeame}}.malus" value="{{typedata.malus}}" data-dtype="Number">
|
{{#select typedata.malus}}
|
||||||
{{#select typedata.malus}}
|
<option value="0">0</option>
|
||||||
<option value="0">0</option>
|
<option value="-1">-1</option>
|
||||||
<option value="-1">-1</option>
|
<option value="-2">-2</option>
|
||||||
<option value="-2">-2</option>
|
<option value="-3">-3</option>
|
||||||
<option value="-3">-3</option>
|
{{/select}}
|
||||||
{{/select}}
|
</select>
|
||||||
</select>
|
|
||||||
|
|
||||||
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common cohesion-input"
|
||||||
|
name="system.amestype.{{typeame}}.cohesion" value="{{typedata.cohesion}}" data-dtype="Number" {{#unless
|
||||||
|
@root.editScore}}disabled{{/unless}} /> /
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common cohesion-input"
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common cohesion-input"
|
||||||
name="system.amestype.{{typeame}}.cohesion" value="{{typedata.cohesion}}" data-dtype="Number" {{#unless
|
name="system.amestype.{{typeame}}.cohesionmax" value="{{typedata.cohesionmax}}" data-dtype="Number" {{#unless
|
||||||
@root.editScore}}disabled{{/unless}} /> <label class="ame-margin separator-slash"> / </label>
|
@root.editScore}}disabled{{/unless}}>
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common cohesion-input"
|
</span>
|
||||||
name="system.amestype.{{typeame}}.cohesionmax" value="{{typedata.cohesionmax}}" data-dtype="Number" {{#unless
|
|
||||||
@root.editScore}}disabled{{/unless}}>
|
|
||||||
</span>
|
|
||||||
|
|
||||||
<ul class="ame-margin">
|
<ul class="ame-margin">
|
||||||
<li class="ame-padding item stat flexrow item-ame-roll" data-ame-key="{{key}}">
|
{{#each system.ames as |ame key|}}
|
||||||
{{#each system.ames as |ame key|}}
|
{{#if (eq ame.type ../typeame)}}
|
||||||
{{#if (eq ame.type ../typeame)}}
|
<li class="ame-padding item stat flexrow item-ame-roll" data-ame-key="{{key}}">
|
||||||
<span class="ame-label ame-margin " name="{{key}}">
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
||||||
<button class="common-button roll-ame-button" data-ame-key="{{key}}">{{ame.label}}</button>
|
name="system.ames.{{key}}.value" value="{{ame.value}}" data-dtype="Number" {{#unless
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
@root.editScore}}disabled{{/unless}} />
|
||||||
name="system.ames.{{key}}.value" value="{{ame.value}}" data-dtype="Number" {{#unless
|
<span class="ame-label ame-margin" name="{{key}}">
|
||||||
@root.editScore}}disabled{{/unless}} />
|
<a class="roll-ame" data-ame-key="{{key}}">{{ame.label}}</a>
|
||||||
</span>
|
</span>
|
||||||
{{/if}}
|
</li>
|
||||||
{{/each}}
|
{{/if}}
|
||||||
</li>
|
{{/each}}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
|
@ -12,11 +12,11 @@
|
|||||||
data-dtype="String" {{#unless @root.editScore}}disabled{{/unless}} />
|
data-dtype="String" {{#unless @root.editScore}}disabled{{/unless}} />
|
||||||
</h4>
|
</h4>
|
||||||
{{else}}
|
{{else}}
|
||||||
<h4 class="ame-margin">{{para.label}}</h4>
|
<h4 class="ame-margin"><a class="roll-ame ame-margin" data-stat-key="{{key}}">{{para.label}}</a></h4>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<input type="checkbox" name="system.paradigmes.{{key}}.used" {{checked para.used}}>
|
<input type="checkbox">
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
@ -1,374 +0,0 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
|
||||||
|
|
||||||
{{!-- Sheet Header --}}
|
|
||||||
<header class="sheet-header">
|
|
||||||
<div class="header-fields">
|
|
||||||
<div class="flexrow">
|
|
||||||
<div>
|
|
||||||
<h1 class="charname margin-right"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
|
||||||
{{!-- Sheet Tab Navigation --}}
|
|
||||||
<nav class="sheet-tabs tabs" data-group="primary">
|
|
||||||
<a class="item tab-title" data-tab="principal">Principal</a>
|
|
||||||
<a class="item tab-title" data-tab="biodata">Bio</a>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
<img class="profile-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
{{!-- Sheet Body --}}
|
|
||||||
<section class="sheet-body">
|
|
||||||
|
|
||||||
{{!-- Combat Tab --}}
|
|
||||||
<div class="tab principal" data-group="primary" data-tab="principal">
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
<div class="sheet-box color-bg-ame ">
|
|
||||||
<span class="flexrow">
|
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/ame_transparent.webp">
|
|
||||||
<h4 class="ame-margin title-font">AMES</h4>
|
|
||||||
</span>
|
|
||||||
|
|
||||||
<div class="ame-block">
|
|
||||||
<span class="flexrow">
|
|
||||||
<label class="ame-margin">Niveau</label>
|
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
|
||||||
name="system.ames.niveau" value="{{system.ames.niveau}}" data-dtype="Number" {{#unless
|
|
||||||
@root.editScore}}disabled{{/unless}} />
|
|
||||||
</span>
|
|
||||||
|
|
||||||
<span class="flexrow">
|
|
||||||
<label class="ame-margin">Intensité</label>
|
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
|
||||||
name="system.ames.intensite" value="{{system.ames.intensite}}" data-dtype="Number" {{#unless
|
|
||||||
@root.editScore}}disabled{{/unless}} />
|
|
||||||
</span>
|
|
||||||
|
|
||||||
<span class="flexrow">
|
|
||||||
<label class="ame-margin">Riposte</label>
|
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
|
||||||
name="system.ames.riposte" value="{{system.ames.riposte}}" data-dtype="Number" {{#unless
|
|
||||||
@root.editScore}}disabled{{/unless}} />
|
|
||||||
</span>
|
|
||||||
|
|
||||||
<span class="flexrow">
|
|
||||||
<label class="ame-margin">Cohésion</label>
|
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common cohesion-input"
|
|
||||||
name="system.ames.cohesions.value" value="{{system.ames.cohesions.value}}" data-dtype="Number" {{#unless
|
|
||||||
@root.editScore}}disabled{{/unless}} /> <label class="ame-margin separator-slash"> / </label>
|
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common cohesion-input"
|
|
||||||
name="system.ames.cohesions.max" value="{{system.ames.cohesions.max}}" data-dtype="Number" {{#unless
|
|
||||||
@root.editScore}}disabled{{/unless}}>
|
|
||||||
</span>
|
|
||||||
|
|
||||||
|
|
||||||
<span class="flexrow">
|
|
||||||
<label class="ame-margin">Rupture</label>
|
|
||||||
<select class="input-numeric-short padd-right status-small-label color-class-common" type="text"
|
|
||||||
name="system.ames.rupture" value="{{system.ames.rupture}}" data-dtype="Number">
|
|
||||||
{{#select system.ames.rupture}}
|
|
||||||
<option value="0">0</option>
|
|
||||||
<option value="-1">-1</option>
|
|
||||||
<option value="-2">-2</option>
|
|
||||||
<option value="-3">-3</option>
|
|
||||||
<option value="-3">-4</option>
|
|
||||||
{{/select}}
|
|
||||||
</select>
|
|
||||||
</span>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sheet-box color-bg-paradigme ">
|
|
||||||
|
|
||||||
<span class="flexrow">
|
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/paradigme_transparent.webp">
|
|
||||||
<h4 class="ame-margin title-font">PARADIGMES</h4>
|
|
||||||
</span>
|
|
||||||
<ul>
|
|
||||||
{{> systems/fvtt-imperium5/templates/actor-partial-paradigmes.html}}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
|
|
||||||
|
|
||||||
<div class="sheet-box color-bg-archetype ">
|
|
||||||
|
|
||||||
<span class="flexrow">
|
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/nature_transparent.webp">
|
|
||||||
<h4 class="ame-margin title-font">NATURE PROFONDE</h4>
|
|
||||||
</span>
|
|
||||||
{{#if nature}}
|
|
||||||
<ul>
|
|
||||||
<li class="item stat flexrow " data-item-id="{{nature._id}}">
|
|
||||||
<img class="sheet-competence-img" src="{{nature.img}}" />
|
|
||||||
<span class="item-name-label">{{nature.name}}</span>
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
{{else}}
|
|
||||||
<ul>
|
|
||||||
<li class="item stat flexrow " >
|
|
||||||
<span >Aucune nature profonde</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<h4 class="ame-margin">Traits</h4>
|
|
||||||
<ul>
|
|
||||||
{{#each traits as |trait key|}}
|
|
||||||
<li class="item stat flexrow " data-item-id="{{trait._id}}">
|
|
||||||
<img class="sheet-competence-img" src="{{trait.img}}" />
|
|
||||||
<span class="item-name-label">{{trait.name}}</span>
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h4 class="ame-margin">Symbioses :</h4>
|
|
||||||
<ul>
|
|
||||||
{{#each symbioses as |symbiose key|}}
|
|
||||||
<li class="item stat flexrow " data-item-id="{{symbiose._id}}">
|
|
||||||
<img class="sheet-competence-img" src="{{symbiose.img}}" />
|
|
||||||
<span class="item-name-label">{{symbiose.name}}</span>
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sheet-box color-bg-archetype">
|
|
||||||
<ul class="item-list alternate-list">
|
|
||||||
<li class="item flexrow">
|
|
||||||
<span class="item-name-label-header">
|
|
||||||
<h3><label class="items-title-text">Equipement</label></h3>
|
|
||||||
</span>
|
|
||||||
<span class="item-field-label-short">
|
|
||||||
<label class="short-label">Intensité</label>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
{{#each equipements as |equip key|}}
|
|
||||||
<li class="item flexrow " data-item-id="{{equip._id}}">
|
|
||||||
<img class="item-name-img" src="{{equip.img}}" />
|
|
||||||
<span class="item-name-label">{{equip.name}}</span>
|
|
||||||
<span class="item-field-label-short">{{equip.system.value}}</span>
|
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
<div class="sheet-box color-bg-archetype">
|
|
||||||
<ul class="item-list alternate-list">
|
|
||||||
<li class="item flexrow">
|
|
||||||
<span class="item-name-label-header">
|
|
||||||
<h3><label class="items-title-text">Capacités</label></h3>
|
|
||||||
</span>
|
|
||||||
<span class="item-field-label-short">
|
|
||||||
<label class="short-label">Aide</label>
|
|
||||||
</span>
|
|
||||||
<span class="item-field-label-short">
|
|
||||||
<label class="short-label">Ressource</label>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
{{#each capacites as |capa key|}}
|
|
||||||
<li class="item flexrow " data-item-id="{{capa._id}}">
|
|
||||||
<img class="item-name-img" src="{{capa.img}}" /></a>
|
|
||||||
<span class="item-name-label">{{capa.name}}</span>
|
|
||||||
<span class="item-field-label-short"">{{capa.system.aide}}</span>
|
|
||||||
<span class=" item-field-label-short"">{{capa.system.ressource}}</span>
|
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
|
|
||||||
<div class="sheet-box color-bg-archetype">
|
|
||||||
<ul class="item-list alternate-list">
|
|
||||||
<li class="item flexrow">
|
|
||||||
<span class="item-name-label-header">
|
|
||||||
<h3><label class="items-title-text">Singularités</label></h3>
|
|
||||||
</span>
|
|
||||||
<span class="item-field-label-short">
|
|
||||||
<label class="short-label">Intensité</label>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
{{#each singularites as |singul key|}}
|
|
||||||
<li class="item flexrow " data-item-id="{{singul._id}}">
|
|
||||||
<img class="item-name-img" src="{{singul.img}}" />
|
|
||||||
<span class="item-name-label">{{singul.name}}</span>
|
|
||||||
<span class="item-field-label-short">{{singul.system.value}}</span>
|
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="sheet-box color-bg-archetype">
|
|
||||||
<ul class="item-list alternate-list">
|
|
||||||
<li class="item flexrow">
|
|
||||||
<span class="item-name-label-header">
|
|
||||||
<h3><label class="items-title-text">Contacts/Finances</label></h3>
|
|
||||||
</span>
|
|
||||||
<span class="item-field-label-short">
|
|
||||||
<label class="short-label">Intensité</label>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
{{#each contacts as |contact key|}}
|
|
||||||
<li class="item flexrow " data-item-id="{{contact._id}}">
|
|
||||||
<img class="item-name-img" src="{{contact.img}}" />
|
|
||||||
<span class="item-name-label">{{contact.name}}</span>
|
|
||||||
<span class="item-field-label-short">{{contact.system.value}}</span>
|
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
|
||||||
<div class="item-controls item-controls-fixed">
|
|
||||||
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
|
|
||||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{{!-- Biography Tab --}}
|
|
||||||
<div class="tab biodata" data-group="primary" data-tab="biodata">
|
|
||||||
<div class="grid grid-3col">
|
|
||||||
<div>
|
|
||||||
<ul class="item-list alternate-list">
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="generic-label">Imperium</label>
|
|
||||||
<input type="text" class="" name="system.biodata.imperium" value="{{system.biodata.imperium}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="generic-label">ADM ID</label>
|
|
||||||
<input type="text" class="" name="system.biodata.admid" value="{{system.biodata.admid}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="generic-label">Age</label>
|
|
||||||
<input type="text" class="" name="system.biodata.age" value="{{system.biodata.age}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<ul>
|
|
||||||
<li class="flexrow item">
|
|
||||||
<label class="generic-label">Poids</label>
|
|
||||||
<input type="text" class="" name="system.biodata.weight" value="{{system.biodata.weight}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="flexrow item">
|
|
||||||
<label class="generic-label">Sexe</label>
|
|
||||||
<input type="text" class="" name="system.biodata.sex" value="{{system.biodata.sex}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="generic-label">Taille</label>
|
|
||||||
<input type="text" class="" name="system.biodata.size" value="{{system.biodata.size}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="generic-label">Yeux</label>
|
|
||||||
<input type="text" class="" name="system.biodata.eyes" value="{{system.biodata.eyes}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="flexrow item">
|
|
||||||
<label class="generic-label">Main préférée</label>
|
|
||||||
<input type="text" class="" name="system.biodata.preferredhand" value="{{system.biodata.preferredhand}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="generic-label">Cheveux</label>
|
|
||||||
<input type="text" class="" name="system.biodata.hair" value="{{system.biodata.hair}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
<div>
|
|
||||||
<h3>Apparence actuelle : </h3>
|
|
||||||
<div class="form-group small-editor">
|
|
||||||
{{editor system.biodata.appactual target="system.biodata.appactual" button=true owner=owner
|
|
||||||
editable=editable}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<h3>Traits particuliers : </h3>
|
|
||||||
<div class="form-group small-editor">
|
|
||||||
{{editor system.biodata.traits target="system.biodata.traits" button=true owner=owner
|
|
||||||
editable=editable}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h3>Qui suis-je : </h3>
|
|
||||||
<div class="form-group editor">
|
|
||||||
{{editor system.biodata.whoami target="system.biodata.whoami" button=true owner=owner
|
|
||||||
editable=editable}}
|
|
||||||
</div>
|
|
||||||
<hr>
|
|
||||||
<h3>Notes : </h3>
|
|
||||||
<div class="form-group editor">
|
|
||||||
{{editor system.biodata.notes target="system.biodata.notes" button=true owner=owner editable=editable}}
|
|
||||||
</div>
|
|
||||||
<hr>
|
|
||||||
</article>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
</form>
|
|
@ -8,9 +8,9 @@
|
|||||||
<h1 class="charname margin-right"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname margin-right"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
{{!-- Sheet Tab Navigation --}}
|
{{!-- Sheet Tab Navigation --}}
|
||||||
<nav class="sheet-tabs tabs" data-group="primary">
|
<nav class="sheet-tabs tabs" data-group="primary">
|
||||||
<a class="item tab-title" data-tab="principal">Principal</a>
|
<a class="item" data-tab="principal">Principal</a>
|
||||||
<a class="item tab-title" data-tab="ressources">Ressources</a>
|
<a class="item" data-tab="ressources">Ressources</a>
|
||||||
<a class="item tab-title" data-tab="biodata">Bio</a>
|
<a class="item" data-tab="biodata">Bio</a>
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
<img class="profile-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="profile-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
||||||
@ -25,23 +25,20 @@
|
|||||||
<div class="tab principal" data-group="primary" data-tab="principal">
|
<div class="tab principal" data-group="primary" data-tab="principal">
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div class="sheet-box color-bg-ame ">
|
<div class="sheet-box color-bg-ame color-text-ame">
|
||||||
<div class=flexrow>
|
<div class=flexrow>
|
||||||
<h4 class="ame-margin title-font">KARMA</h4>
|
<h4 class="ame-margin title-font">KARMA</h4>
|
||||||
<span class="item-name-label flexrow">Karma
|
<span class="item-name-label flexrow">Karma
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
||||||
name="system.karma.value" value="{{system.karma.value}}" data-dtype="Number" {{#unless
|
name="system.karma.value" value="{{system.karma.value}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}} />
|
||||||
@root.editScore}}disabled{{/unless}} />
|
|
||||||
</span>
|
</span>
|
||||||
<span class="item-name-label flexrow">Source
|
<span class="item-name-label flexrow">Source
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
||||||
name="system.karma.source" value="{{system.karma.source}}" data-dtype="Number" {{#unless
|
name="system.karma.source" value="{{system.karma.source}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}} />
|
||||||
@root.editScore}}disabled{{/unless}} />
|
|
||||||
</span>
|
</span>
|
||||||
<span class="item-name-label flexrow">XP
|
<span class="item-name-label flexrow">XP
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common"
|
||||||
name="system.karma.xp" value="{{system.karma.xp}}" data-dtype="Number" {{#unless
|
name="system.karma.xp" value="{{system.karma.xp}}" data-dtype="Number" {{#unless @root.editScore}}disabled{{/unless}} />
|
||||||
@root.editScore}}disabled{{/unless}} />
|
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -50,32 +47,27 @@
|
|||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<div class="sheet-box color-bg-ame ">
|
<div class="sheet-box color-bg-ame color-text-ame">
|
||||||
<span class="flexrow">
|
<span class="flexrow">
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/ame_transparent.webp">
|
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/ame_transparent.webp">
|
||||||
<h4 class="ame-margin title-font">AMES</h4>
|
<h4 class="ame-margin title-font">AMES</h4>
|
||||||
</span>
|
</span>
|
||||||
{{>systems/fvtt-imperium5/templates/actor-partial-ames.html typeame="physique"
|
{{>systems/fvtt-imperium5/templates/actor-partial-ames.html typeame="physique" typedata=system.amestype.physique}}
|
||||||
typedata=system.amestype.physique}}
|
|
||||||
|
|
||||||
{{>systems/fvtt-imperium5/templates/actor-partial-ames.html typeame="social"
|
{{>systems/fvtt-imperium5/templates/actor-partial-ames.html typeame="social" typedata=system.amestype.social}}
|
||||||
typedata=system.amestype.social}}
|
|
||||||
|
|
||||||
{{>systems/fvtt-imperium5/templates/actor-partial-ames.html typeame="mental"
|
{{>systems/fvtt-imperium5/templates/actor-partial-ames.html typeame="mental" typedata=system.amestype.mental}}
|
||||||
typedata=system.amestype.mental}}
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<div class="sheet-box color-bg-archetype ">
|
<div class="sheet-box color-bg-archetype">
|
||||||
<span class="flexrow">
|
<span class="flexrow">
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/archetype_transparent.webp">
|
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/archetype_transparent.webp">
|
||||||
<h4 class="ame-margin title-font">ARCHETYPE</h4>
|
<h4 class="ame-margin title-font">ARCHETYPE</h4>
|
||||||
</span>
|
</span>
|
||||||
<h4 class="ame-margin"></h4>
|
<h4 class="ame-margin"></h4>
|
||||||
|
|
||||||
{{#if archetype}}
|
|
||||||
<ul>
|
<ul>
|
||||||
<li class="item stat flexrow" data-item-id="{{archetype._id}}">
|
<li class="item stat flexrow" data-item-id="{{archetype._id}}">
|
||||||
<img class="sheet-competence-img" src="{{archetype.img}}" /></a>
|
<img class="sheet-competence-img" src="{{archetype.img}}" /></a>
|
||||||
@ -87,14 +79,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
{{else}}
|
|
||||||
<ul>
|
|
||||||
<li class="item stat flexrow">
|
|
||||||
<span>Aucun archetype</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<h4 class="ame-margin">Spécialités</h4>
|
<h4 class="ame-margin">Spécialités</h4>
|
||||||
<ul>
|
<ul>
|
||||||
@ -132,7 +116,7 @@
|
|||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
|
|
||||||
<div class="sheet-box color-bg-paradigme ">
|
<div class="sheet-box color-bg-paradigme">
|
||||||
|
|
||||||
<span class="flexrow">
|
<span class="flexrow">
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/paradigme_transparent.webp">
|
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/paradigme_transparent.webp">
|
||||||
@ -143,14 +127,12 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="sheet-box color-bg-archetype ">
|
<div class="sheet-box color-bg-archetype">
|
||||||
|
|
||||||
<span class="flexrow">
|
<span class="flexrow">
|
||||||
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/nature_transparent.webp">
|
<img class="ame-icon" src="systems/fvtt-imperium5/images/icons/nature_transparent.webp">
|
||||||
<h4 class="ame-margin title-font">NATURE PROFONDE</h4>
|
<h4 class="ame-margin title-font">NATURE PROFONDE</h4>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
{{#if nature}}
|
|
||||||
<ul>
|
<ul>
|
||||||
<li class="item stat flexrow " data-item-id="{{nature._id}}">
|
<li class="item stat flexrow " data-item-id="{{nature._id}}">
|
||||||
<img class="sheet-competence-img" src="{{nature.img}}" />
|
<img class="sheet-competence-img" src="{{nature.img}}" />
|
||||||
@ -162,13 +144,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
{{else}}
|
|
||||||
<ul>
|
|
||||||
<li class="item stat flexrow ">
|
|
||||||
<span>Aucune nature profonde</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<h4 class="ame-margin">Traits</h4>
|
<h4 class="ame-margin">Traits</h4>
|
||||||
<ul>
|
<ul>
|
||||||
@ -214,18 +189,18 @@
|
|||||||
<div class="sheet-box color-bg-archetype">
|
<div class="sheet-box color-bg-archetype">
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<span class="item-name-label-header item-field-label-long2">
|
<span class="item-name-label-header">
|
||||||
<h3><label class="item-field-label-long2">Equipement</label></h3>
|
<h3><label class="items-title-text">Equipement</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-long">
|
<span class="item-field-label-short">
|
||||||
<label class="item-field-label-long">Ressouce/Intensité</label>
|
<label class="short-label">Intensité</label>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
{{#each equipements as |equip key|}}
|
{{#each equipements as |equip key|}}
|
||||||
<li class="item flexrow " data-item-id="{{equip._id}}">
|
<li class="item flexrow " data-item-id="{{equip._id}}">
|
||||||
<img class="item-name-img" src="{{equip.img}}" />
|
<img class="item-name-img" src="{{equip.img}}" />
|
||||||
<span class="item-field-label-long2-no-img">{{equip.name}}</span>
|
<span class="item-name-label">{{equip.name}}</span>
|
||||||
<span class="item-field-label-long">{{equip.system.ressource}}</span>
|
<span class="item-field-label-short">{{equip.system.value}}</span>
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
@ -237,28 +212,25 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flexrow">
|
|
||||||
<div class="sheet-box color-bg-archetype">
|
<div class="sheet-box color-bg-archetype">
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<span class="item-name-label-header item-field-label-long2">
|
<span class="item-name-label-header">
|
||||||
<h3><label class="item-field-label-long2">Capacités</label></h3>
|
<h3><label class="items-title-text">Capacités</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-short">
|
<span class="item-field-label-short">
|
||||||
<label class="short-label">Aide</label>
|
<label class="short-label">Aide</label>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-long">
|
<span class="item-field-label-short">
|
||||||
<label class="item-field-label-long">Ressource/Intensité</label>
|
<label class="short-label">Ressource</label>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
{{#each capacites as |capa key|}}
|
{{#each capacites as |capa key|}}
|
||||||
<li class="item flexrow " data-item-id="{{capa._id}}">
|
<li class="item flexrow " data-item-id="{{capa._id}}">
|
||||||
<img class="item-name-img" src="{{capa.img}}" /></a>
|
<img class="item-name-img" src="{{capa.img}}" /></a>
|
||||||
<span class="item-field-label-long2-no-img">{{capa.name}}</span>
|
<span class="item-name-label">{{capa.name}}</span>
|
||||||
<span class="item-field-label-short"">{{capa.system.aide}}</span>
|
<span class="item-field-label-short"">{{capa.system.aide}}</span>
|
||||||
<span class=" item-field-label-short"">{{capa.system.ressource}}</span>
|
<span class=" item-field-label-short"">{{capa.system.ressource}}</span>
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
@ -269,6 +241,7 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
@ -279,15 +252,15 @@
|
|||||||
<span class="item-name-label-header">
|
<span class="item-name-label-header">
|
||||||
<h3><label class="items-title-text">Singularités</label></h3>
|
<h3><label class="items-title-text">Singularités</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-long">
|
<span class="item-field-label-short">
|
||||||
<label class="item-field-label-long">Ressource/Intensité</label>
|
<label class="short-label">Intensité</label>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
{{#each singularites as |singul key|}}
|
{{#each singularites as |singul key|}}
|
||||||
<li class="item flexrow " data-item-id="{{singul._id}}">
|
<li class="item flexrow " data-item-id="{{singul._id}}">
|
||||||
<img class="item-name-img" src="{{singul.img}}" />
|
<img class="item-name-img" src="{{singul.img}}" />
|
||||||
<span class="item-name-label">{{singul.name}}</span>
|
<span class="item-name-label">{{singul.name}}</span>
|
||||||
<span class="item-field-label-long">{{singul.system.ressource}}</span>
|
<span class="item-field-label-short">{{singul.system.value}}</span>
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
@ -305,15 +278,15 @@
|
|||||||
<span class="item-name-label-header">
|
<span class="item-name-label-header">
|
||||||
<h3><label class="items-title-text">Contacts/Finances</label></h3>
|
<h3><label class="items-title-text">Contacts/Finances</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-long">
|
<span class="item-field-label-short">
|
||||||
<label class="item-field-label-long">Ressource/Intensité</label>
|
<label class="short-label">Intensité</label>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
{{#each contacts as |contact key|}}
|
{{#each contacts as |contact key|}}
|
||||||
<li class="item flexrow " data-item-id="{{contact._id}}">
|
<li class="item flexrow " data-item-id="{{contact._id}}">
|
||||||
<img class="item-name-img" src="{{contact.img}}" />
|
<img class="item-name-img" src="{{contact.img}}" />
|
||||||
<span class="item-name-label">{{contact.name}}</span>
|
<span class="item-name-label">{{contact.name}}</span>
|
||||||
<span class="item-field-label-long">{{contact.system.ressource}}</span>
|
<span class="item-field-label-short">{{contact.system.value}}</span>
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
@ -347,8 +320,7 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<label class="generic-label">Age</label>
|
<label class="generic-label">Age</label>
|
||||||
<input type="text" class="" name="system.biodata.age" value="{{system.biodata.age}}"
|
<input type="text" class="" name="system.biodata.age" value="{{system.biodata.age}}" data-dtype="String" />
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@ -361,21 +333,18 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="flexrow item">
|
<li class="flexrow item">
|
||||||
<label class="generic-label">Sexe</label>
|
<label class="generic-label">Sexe</label>
|
||||||
<input type="text" class="" name="system.biodata.sex" value="{{system.biodata.sex}}"
|
<input type="text" class="" name="system.biodata.sex" value="{{system.biodata.sex}}" data-dtype="String" />
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
</li>
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<label class="generic-label">Taille</label>
|
<label class="generic-label">Taille</label>
|
||||||
<input type="text" class="" name="system.biodata.size" value="{{system.biodata.size}}"
|
<input type="text" class="" name="system.biodata.size" value="{{system.biodata.size}}" data-dtype="String" />
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<label class="generic-label">Yeux</label>
|
<label class="generic-label">Yeux</label>
|
||||||
<input type="text" class="" name="system.biodata.eyes" value="{{system.biodata.eyes}}"
|
<input type="text" class="" name="system.biodata.eyes" value="{{system.biodata.eyes}}" data-dtype="String" />
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
</li>
|
||||||
<li class="flexrow item">
|
<li class="flexrow item">
|
||||||
<label class="generic-label">Main préférée</label>
|
<label class="generic-label">Main préférée</label>
|
||||||
@ -384,8 +353,7 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<label class="generic-label">Cheveux</label>
|
<label class="generic-label">Cheveux</label>
|
||||||
<input type="text" class="" name="system.biodata.hair" value="{{system.biodata.hair}}"
|
<input type="text" class="" name="system.biodata.hair" value="{{system.biodata.hair}}" data-dtype="String" />
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
</li>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -5,118 +5,29 @@
|
|||||||
<h4 class=chat-actor-name>{{alias}}</h4>
|
<h4 class=chat-actor-name>{{alias}}</h4>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
<div class="flexcol">
|
<div class="flexcol">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<ul>
|
<ul>
|
||||||
<li class="imperium5-roll">Réserve : {{humanFormula}}</li>
|
<li>Réserve : {{humanFormula}}</li>
|
||||||
<li>Score :
|
<li>Succés : {{successPC}}</li>
|
||||||
(
|
<li>Succés de Réalité : {{successGM}}</li>
|
||||||
{{#each resultsPC as |r k|}}
|
<li>Unités de narration : {{nbUnitesNarration}}</li>
|
||||||
{{#if @root.useSpecialite}}
|
{{#if nbKarma}}
|
||||||
<a class="apply-specialite common-button" data-result-index="{{k}}">{{r.result}}</a>
|
<li>Points de Karma utilisés : {{nbKarma}}</li>
|
||||||
{{else}}
|
{{/if}}
|
||||||
{{r.result}}
|
|
||||||
{{/if}}
|
|
||||||
{{/each}}
|
|
||||||
)
|
|
||||||
(
|
|
||||||
{{#each roll.terms.2.results as |r k|}}
|
|
||||||
{{r.result}}
|
|
||||||
{{/each}}
|
|
||||||
)
|
|
||||||
(
|
|
||||||
{{#each roll.terms.4.results as |r k|}}
|
|
||||||
{{r.result}}
|
|
||||||
{{/each}}
|
|
||||||
)
|
|
||||||
</li>
|
|
||||||
|
|
||||||
{{#if specialiteApplied}}
|
{{#if bonPresage}}
|
||||||
<li>Une Spécialité a réduit de 1 le résultat du dé</li>
|
<li>Bon Présage !</li>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
{{#if mauvaisPresage}}
|
||||||
|
<li>Mauvais Présage !</li>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
{{#if usedParadigme}}
|
|
||||||
<li>Paradigme utilisé : {{usedParadigme}}</li>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<li>Seuil : {{seuil}}
|
|
||||||
{{#if (count paradigmes)}}
|
|
||||||
<select class="common-button select-apply-paradigme" type="text" value="{{selectedParadigme}}"
|
|
||||||
data-dtype="String">
|
|
||||||
{{#select selectedParadigme}}
|
|
||||||
<option value="none">Pas de paradigme</option>
|
|
||||||
{{#each paradigmes as |para key|}}
|
|
||||||
<option value="{{para.key}}">{{para.label}} ({{para.value}})</option>
|
|
||||||
{{/each}}
|
|
||||||
{{/select}}
|
|
||||||
</select>
|
|
||||||
{{/if}}
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>Unités de narration : {{realSuccessPC}}
|
|
||||||
{{#if realSuccessPC}}
|
|
||||||
<select class="common-button transfer-success" type="text" value="{{nbSuccessSource}}" data-dtype="Number">
|
|
||||||
{{#select nbSuccessSource}}
|
|
||||||
<option value="none">0 -> Source</option>
|
|
||||||
{{#times realSuccessPC}}
|
|
||||||
<option value="{{this}}">{{this}} -> Source</option>
|
|
||||||
{{/times}}
|
|
||||||
{{/select}}
|
|
||||||
</select>
|
|
||||||
{{/if}}
|
|
||||||
</li>
|
|
||||||
|
|
||||||
{{#if realSuccessPC}}
|
|
||||||
<li>Ressource :
|
|
||||||
<select class="common-button select-ressource" type="text" value="none" data-dtype="String">
|
|
||||||
{{#select "none"}}
|
|
||||||
<option value="none">Aucun</option>
|
|
||||||
{{#each ressources as |ressource key|}}
|
|
||||||
<option value="{{ressource._id}}">{{ressource.name}} ({{ressource.system.ressource}})</option>
|
|
||||||
{{/each}}
|
|
||||||
{{/select}}
|
|
||||||
</select>
|
|
||||||
</li>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{#if (count selectedRessources)}}
|
|
||||||
<li>Ressources utilisées : </li>
|
|
||||||
<ul class="ul-level1">
|
|
||||||
{{#each selectedRessources as |ressource key|}}
|
|
||||||
<li>
|
|
||||||
{{ressource.name}} ({{ressource.system.ressource}});
|
|
||||||
</li>
|
|
||||||
{{/each}}
|
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</div>
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{#if totalIntensite}}
|
</div>
|
||||||
<li>Intensité totale : {{totalIntensite}}</li>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{#if sourceTransfer}}
|
|
||||||
<li>Succés transférés à la Source : {{sourceTransfer}}</li>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<li>Succés de Réalité : {{successGM}}</li>
|
|
||||||
|
|
||||||
{{#if nbKarma}}
|
|
||||||
<li>Points de Karma utilisés : {{nbKarma}}</li>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
{{#if bonPresage}}
|
|
||||||
<li>Bon Présage !</li>
|
|
||||||
{{/if}}
|
|
||||||
{{#if mauvaisPresage}}
|
|
||||||
<li>Mauvais Présage !</li>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
@ -13,24 +13,31 @@
|
|||||||
|
|
||||||
<div class="flexcol">
|
<div class="flexcol">
|
||||||
{{#if (exists system.capatype)}}
|
{{#if (exists system.capatype)}}
|
||||||
<span class="flexrow">
|
<span>
|
||||||
<label class="generic-label item-field-label-long">Type de capacité : </label>
|
<label class="generic-label">Type de capacité : </label>
|
||||||
<input type="text" class="padd-right status-small-label color-class-common" name="system.capatype" value="{{system.capatype}}"
|
<input type="text" class="padd-right status-small-label color-class-common" name="system.capatype" value="{{system.capatype}}"
|
||||||
data-dtype="String" />
|
data-dtype="String" />
|
||||||
</span>
|
</span>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
{{#if (exists system.value)}}
|
||||||
|
<span>
|
||||||
|
<label class="generic-label">Valeur : </label>
|
||||||
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common" name="system.value" value="{{system.value}}"
|
||||||
|
data-dtype="Number" />
|
||||||
|
</span>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
{{#if (exists system.aide)}}
|
{{#if (exists system.aide)}}
|
||||||
<span class="flexrow">
|
<span class="generic-label">
|
||||||
<label class="generic-label item-field-label-long">Aide : </label>
|
<label>Aide : </label>
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common" name="system.aide" value="{{system.aide}}"
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common" name="system.aide" value="{{system.aide}}"
|
||||||
data-dtype="Number" />
|
data-dtype="Number" />
|
||||||
</span>
|
</span>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if (exists system.ressource)}}
|
{{#if (exists system.ressource)}}
|
||||||
<span class="flexrow">
|
<span class="generic-label">
|
||||||
<label class="generic-label item-field-label-long">Resource/Intensité : </label>
|
<label>Resource : </label>
|
||||||
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common" name="system.ressource" value="{{system.ressource}}"
|
<input type="text" class="input-numeric-short padd-right status-small-label color-class-common" name="system.ressource" value="{{system.ressource}}"
|
||||||
data-dtype="Number" />
|
data-dtype="Number" />
|
||||||
</span>
|
</span>
|
||||||
|
@ -1,56 +1,48 @@
|
|||||||
<form class="skill-roll-dialog">
|
<form class="skill-roll-dialog">
|
||||||
<header class="roll-dialog-header">
|
<header class="roll-dialog-header">
|
||||||
{{#if actorImg}}
|
{{#if img}}
|
||||||
<img class="actor-icon" src="{{actorImg}}" data-edit="img" title="{{name}}" />
|
<img class="actor-icon" src="{{img}}" data-edit="img" title="{{name}}" />
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<h1 class="dialog-roll-title roll-dialog-header">{{ame.label}} ({{ame.value}})</h1>
|
<h1 class="dialog-roll-title roll-dialog-header">{{title}}</h1>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<div class="flexcol sheet-box color-bg-ame">
|
<div class="flexcol">
|
||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Ruptures : {{ameMalus}}</span>
|
<span class="roll-dialog-label">Ame : {{ame.label}} ({{ame.value}})</span>
|
||||||
|
</div>
|
||||||
|
<div class="flexrow">
|
||||||
|
<span class="roll-dialog-label">Malus : {{ameMalus}}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Utiliser l'Archetype ? : </span>
|
<span class="roll-dialog-label">Utiliser l'Archetype ? : </span>
|
||||||
<input class="ame-checkbox" id="select-use-archetype" type="checkbox" {{checked useArchetype}}>
|
<input class="ame-checkbox" id="select-use-archetype" type="checkbox" {{checked useArchetype}}>
|
||||||
</div>
|
</div>
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Aides ? : </span>
|
<span class="roll-dialog-label">Aide d'un autre personnage ? : </span>
|
||||||
<select class="roll-dialog-label" id="select-aide-pj" type="text" name="nbAide" value="{{nbAide}}"
|
<input class="ame-checkbox" id="select-use-aide" type="checkbox" {{checked useAide}}>
|
||||||
data-dtype="Number">
|
|
||||||
{{#select nbAide}}
|
|
||||||
<option value="0">0</option>
|
|
||||||
<option value="1">1</option>
|
|
||||||
<option value="2">2</option>
|
|
||||||
<option value="3">3</option>
|
|
||||||
{{/select}}
|
|
||||||
</select>
|
|
||||||
</div>
|
</div>
|
||||||
{{#if karma}}
|
{{#if karma}}
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Utiliser une capacité : </span>
|
<span class="roll-dialog-label">Utiliser une capacité : </span>
|
||||||
<select class="roll-dialog-label" id="select-capacite" type="text" name="usedCapacite" value="{{usedCapacite}}"
|
<select class="roll-dialog-label" id="select-capacite" type="text" name="usedCapacite" value="{{usedCapacite}}"
|
||||||
data-dtype="Number">
|
data-dtype="Number">
|
||||||
{{#select usedCapacite}}
|
{{#select usedCapacite}}
|
||||||
<option value="none">Aucune</option>
|
<option value="none">Aucune</option>
|
||||||
{{#each capacites as |capa key|}}
|
{{#each capacites as |capa key|}}
|
||||||
<option value="{{capa._id}}">{{capa.name}} ({{capa.system.aide}})</option>
|
<option value="{{capa._id}}">{{capa.name}} ({{capa.system.aide}})</option>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
{{/select}}
|
{{/select}}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Utiliser 1 Point de Karma ? : </span>
|
<span class="roll-dialog-label">Utiliser 1 Point de Karma ? : </span>
|
||||||
<input class="ame-checkbox" id="select-use-karma" type="checkbox" {{checked useKarma}}>
|
<input class="ame-checkbox" id="select-use-karma" type="checkbox" {{checked useKarma}}>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Total : <span id="ame-total">{{ame.value}}</span>d8</span>
|
<span class="roll-dialog-label">Total : <span id="ame-total">{{ame.value}}</span>d8</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flexcol sheet-box color-bg-archetype">
|
|
||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
<span class="roll-dialog-label">Dés de Réalité : </span>
|
<span class="roll-dialog-label">Dés de Réalité : </span>
|
||||||
@ -68,7 +60,6 @@
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user