diff --git a/modules/actors/tedeum-actor-sheet.js b/modules/actors/tedeum-actor-sheet.js index d3b74dc..ec43a60 100644 --- a/modules/actors/tedeum-actor-sheet.js +++ b/modules/actors/tedeum-actor-sheet.js @@ -3,7 +3,7 @@ * @extends {ActorSheet} */ -import { EcrymeUtility } from "../common/tedeum-utility.js"; +import { TeDeumUtility } from "../common/tedeum-utility.js"; /* -------------------------------------------- */ export class EcrymeActorSheet extends ActorSheet { @@ -12,8 +12,8 @@ export class EcrymeActorSheet extends ActorSheet { static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["fvtt-ecryme", "sheet", "actor"], - template: "systems/fvtt-ecryme/templates/actors/actor-sheet.hbs", + classes: ["fvtt-tedeum", "sheet", "actor"], + template: "systems/fvtt-tedeum/templates/actors/actor-sheet.hbs", width: 860, height:680, tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "skills" }], diff --git a/modules/actors/tedeum-actor.js b/modules/actors/tedeum-actor.js index 440cb30..1c19513 100644 --- a/modules/actors/tedeum-actor.js +++ b/modules/actors/tedeum-actor.js @@ -1,7 +1,5 @@ /* -------------------------------------------- */ -import { EcrymeUtility } from "../common/ecryme-utility.js"; -import { EcrymeRollDialog } from "../dialogs/ecryme-roll-dialog.js"; -import { EcrymeConfrontStartDialog } from "../dialogs/ecryme-confront-start-dialog.js"; +import { TeDeumUtility } from "../common/tedeum-utility.js"; /* -------------------------------------------- */ /* -------------------------------------------- */ @@ -9,7 +7,7 @@ import { EcrymeConfrontStartDialog } from "../dialogs/ecryme-confront-start-dial * Extend the base Actor entity by defining a custom roll data structure which is ideal for the Simple system. * @extends {Actor} */ -export class EcrymeActor extends Actor { +export class TeDeumActor extends Actor { /* -------------------------------------------- */ /** diff --git a/modules/app/tedeum-combat.js b/modules/app/tedeum-combat.js index 0869aad..ba53f27 100644 --- a/modules/app/tedeum-combat.js +++ b/modules/app/tedeum-combat.js @@ -1,7 +1,7 @@ -import { EcrymeUtility } from "../common/tedeum-utility.js"; +import { TeDeumUtility } from "../common/tedeum-utility.js"; /* -------------------------------------------- */ -export class EcrymeCombat extends Combat { +export class TeDeumCombat extends Combat { /* -------------------------------------------- */ async rollInitiative(ids, formula = undefined, messageOptions = {} ) { diff --git a/modules/app/tedeum-commands.js b/modules/app/tedeum-commands.js index 061dbdc..9ca1c27 100644 --- a/modules/app/tedeum-commands.js +++ b/modules/app/tedeum-commands.js @@ -1,13 +1,12 @@ /* -------------------------------------------- */ -import { EcrymeUtility } from "../common/tedeum-utility.js"; -import { EcrymeCharacterSummary } from "./ecryme-summary-app.js" +import { TeDeumUtility } from "../common/tedeum-utility.js"; /* -------------------------------------------- */ export class EcrymeCommands { static init() { - if (!game.system.ecryme.commands) { + if (!game.system.tedeum.commands) { const commands = new EcrymeCommands(); commands.registerCommand({ path: ["/resume"], func: (content, msg, params) => EcrymeCharacterSummary.displayPCSummary(), descr: "Affiche la liste des PJs!" }); game.system.ecryme.commands = commands; diff --git a/modules/app/tedeum-hotbar.js b/modules/app/tedeum-hotbar.js index ab016b6..8ec5351 100644 --- a/modules/app/tedeum-hotbar.js +++ b/modules/app/tedeum-hotbar.js @@ -1,5 +1,5 @@ -export class EcrymeHotbar { +export class TeDeumHotbar { /** * Create a macro when dropping an entity on the hotbar diff --git a/modules/common/tedeum-config.js b/modules/common/tedeum-config.js index e652b72..190ae75 100644 --- a/modules/common/tedeum-config.js +++ b/modules/common/tedeum-config.js @@ -1,62 +1,71 @@ +export const SYSTEM_ID = "fvtt-te-deum"; -export const ECRYME_CONFIG = { +export const LOCALISATION = { + "pieddroit":{ label: "Pied Droit", value: 1, id :"pieddroit", nbArmure: 1 }, + "jambedroite": { label: "Jambe Droite", value: 1, id :"jambedroite", nbArmure: 1 }, + "jambegauche": { label: "Jambe Gauche", value: 1, id :"jambegauche", nbArmure: 1 }, + "piedgauche":{ label: "Pied Gauche", value: 1, id :"piedgauche", nbArmure: 1 }, + "piedgauche":{ label: "Pied Gauche", value: 1, id :"piedgauche", nbArmure: 1 }, + "maindroite":{ label: "Main Droite", value: 1, id :"maindroite", nbArmure: 1 }, + "maingauche":{ label: "Main Gauche", value: 1, id :"maingauche", nbArmure: 1 }, + "brasdroit":{ label: "Bras Droit", value: 1, id :"brasdroit", nbArmure: 2 }, + "brasgauche":{ label: "Bras Gauche", value: 1, id :"brasgauche", nbArmure: 2 }, + "corps":{ label: "Corps", value: 1, id :"corps", nbArmure: 2 }, + "tete":{ label: "Tête", value: 1, id :"tete", nbArmure: 2 }, +} - traitTypes: { - normal: "Normal", - spleen: "Spleen", - ideal: "Ideal" +export const TEDEUM_CONFIG = { + descriptionValeur: { + 1: { qualite: "Mauvais", dice: "d4", negativeDice: "d20", savoir: "Sot", sensibilite: "Obtus", entregent: "Rustaud", puissance: "Menu", complexion: "Anémique", adresse: "Empesé" }, + 2: { qualite: "Médiocre", dice: "d6", negativeDice: "d12", savoir: "Limité", sensibilite: "Etriqué", entregent: "Frustre", puissance: "Délicat", complexion: "Languide", adresse: "Gauche" }, + 3: { qualite: "Correct", dice: "d8", negativeDice: "d10", savoir: "Mêlé", sensibilite: "Ouvert", entregent: "Badin", puissance: "Membru", complexion: "Dispos", adresse: "Ingambe" }, + 4: { qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettré", sensibilite: "Fin", entregent: "Disert", puissance: "Vigoureux", complexion: "Gaillard", adresse: "Leste" }, + 5: { qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettré", sensibilite: "Fin", entregent: "Disert", puissance: "Vigoureux", complexion: "Gaillard", adresse: "Leste" }, + 6: { qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettré", sensibilite: "Fin", entregent: "Disert", puissance: "Vigoureux", complexion: "Gaillard", adresse: "Leste" }, + 7: { qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtil", entregent: "Galant", puissance: "Musculeux", complexion: "Sanguin", adresse: "Preste" }, + 8: { qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtil", entregent: "Galant", puissance: "Musculeux", complexion: "Sanguin", adresse: "Preste" }, + 9: { qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtil", entregent: "Galant", puissance: "Musculeux", complexion: "Sanguin", adresse: "Preste" }, + 10: { qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtil", entregent: "Galant", puissance: "Musculeux", complexion: "Sanguin", adresse: "Preste" }, + 11: { qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtil", entregent: "Galant", puissance: "Musculeux", complexion: "Sanguin", adresse: "Preste" }, + 12: { qualite: "Admirabme", dice: "d20", negativeDice: "d4", savoir: "Humaniste", sensibilite: "Spirituel", entregent: "Sémillant", puissance: "Hercule", complexion: "Aguerri", adresse: "Alerte" }, }, - weaponTypes: { - "melee": "ECRY.ui.melee", - "ranged": "ECRY.ui.ranged" + caracteristiques: { + savoir: { id: "savoir", value: 1, label: "Savoir" }, + sensibilite: { id: "sensibilite", value: 1, label: "Sensibilité" }, + entregent: { id: "entregent", value: 1, label: "Entregent" }, + complexion: { id: "complexion", value: 1, label: "Complexion" }, + puissance: { id:"puissance", value: 1, label: "Puissance" }, + adresse: { id: "adresse", value: 1, label: "Adresse" }, }, - traitLevel: [ - {value: -3, text: "-3"}, - {value: -2, text: "-2"}, - {value: -1, text: "-1"}, - {value: +1, text: "+1"}, - {value: +2, text: "+2"}, - {value: +3, text: "+3"} - ], - impactTypes: { - physical: "ECRY.ui.physical", - mental: "ECRY.ui.mental", - social: "ECRY.ui.social" + localisation: { + 1: LOCALISATION.pieddroit, + 2: LOCALISATION.piedgauche, + 3: LOCALISATION.jambedroite, + 4: LOCALISATION.jambedroite, + 5: LOCALISATION.jambegauche, + 6: LOCALISATION.jambegauche, + 7: LOCALISATION.maindroite, + 8: LOCALISATION.maingauche, + 9: LOCALISATION.brasdroit, + 10: LOCALISATION.brasdroit, + 11: LOCALISATION.brasgauche, + 12: LOCALISATION.brasgauche, + 13: LOCALISATION.corps, + 14: LOCALISATION.corps, + 15: LOCALISATION.corps, + 16: LOCALISATION.corps, + 17: LOCALISATION.corps, + 18: LOCALISATION.tete, + 19: LOCALISATION.tete, + 20: LOCALISATION.tete }, - impactLevels: { - superficial: "ECRY.ui.superficial", - light: "ECRY.ui.light", - serious: "ECRY.ui.serious", - major: "ECRY.ui.major" - }, - difficulty: { - "-1": {difficulty: "ECRY.ui.none", frequency: "ECRY.ui.none", value: "-"}, - "8": { difficulty: "ECRY.ui.troublesome", frequency: "ECRY.ui.occasional", value: 8 }, - "10": { difficulty: "ECRY.ui.difficult", frequency: "ECRY.ui.uncommon", value: 10 }, - "12": { difficulty: "ECRY.ui.verydifficult", frequency: "ECRY.ui.rare", value: 12 }, - "14": { difficulty: "ECRY.ui.extremdifficult", frequency: "ECRY.ui.veryrare", value: 14 }, - "16": { difficulty: "ECRY.ui.increddifficult", frequency: "ECRY.ui.exceptrare", value: 16 }, - }, - skillLevel: { - "0": "0", - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5", - "6": "6", - "7": "7", - "8": "8", - "9": "9", - "10": "10" - }, - costUnits: { - "ingot": {name: "ECRY.ui.ingot", value: 100000}, - "ingotin": {name: "ECRY.ui.ingotin", value: 10000}, - "goldcoin": {name: "ECRY.ui.goldcoin", value: 1000 }, - "lige": {name: "ECRY.ui.lige", value: 100 }, - "hurle": {name: "ECRY.ui.hurle", value: 10 }, - "coin": {name: "ECRY.ui.coin", value: 1 } + difficulte: { + routine: {label: "Routine", value: 3}, + facile: {label: "Facile", value: 5}, + pardefaut: {label: "Par Défaut", value: 7}, + malaise: {label: "Malaisé", value: 9}, + difficile: {label: "difficile", value:11}, + perilleux: {label: "Perilleux", value:13}, + desespere: {label: "Désespéré", value:15} } - } \ No newline at end of file diff --git a/modules/common/tedeum-utility.js b/modules/common/tedeum-utility.js index a909d92..f19f5de 100644 --- a/modules/common/tedeum-utility.js +++ b/modules/common/tedeum-utility.js @@ -1,47 +1,13 @@ /* -------------------------------------------- */ -import { EcrymeCommands } from "../app/tedeum-commands.js"; /* -------------------------------------------- */ -const __maxImpacts = { superficial: 4, light: 3, serious: 2, major: 1 } -const __nextImpacts = { superficial: "light", light: "serious", serious: "major", major: "major" } -const __effect2Impact = ["none", "superficial", "superficial", "light", "light", "serious", "serious", "major", "major"] -const __cephalySuccess = { - 1: "cephaly-success-2", - 2: "cephaly-success-2", - 3: "cephaly-success-4", - 4: "cephaly-success-4", - 5: "cephaly-success-6", - 6: "cephaly-success-6", - 7: "cephaly-success-8", - 8: "cephaly-success-8", - 9: "cephaly-success-9", - 10: "cephaly-success-10" -} -const __cephalyFailure = { - 1: "cephaly-failure-2", - 2: "cephaly-failure-2", - 3: "cephaly-failure-4", - 4: "cephaly-failure-4", - 5: "cephaly-failure-6", - 6: "cephaly-failure-6", - 7: "cephaly-failure-8", - 8: "cephaly-failure-8", - 9: "cephaly-failure-9", - 10: "cephaly-failure-10" -} - -/* -------------------------------------------- */ -export class EcrymeUtility { +export class TeDeumUtility { /* -------------------------------------------- */ static async init() { - Hooks.on('renderChatLog', (log, html, data) => EcrymeUtility.chatListeners(html)); - Hooks.on("getChatLogEntryContext", (html, options) => EcrymeUtility.chatMenuManager(html, options)); + Hooks.on('renderChatLog', (log, html, data) => TeDeumUtility.chatListeners(html)); + Hooks.on("getChatLogEntryContext", (html, options) => TeDeumUtility.chatMenuManager(html, options)); - this.rollDataStore = {} - this.defenderStore = {} - - EcrymeCommands.init(); } /* -------------------------------------------- */ diff --git a/modules/dialogs/tedeum-roll-dialog.js b/modules/dialogs/tedeum-roll-dialog.js index 2fa4833..a2373d5 100644 --- a/modules/dialogs/tedeum-roll-dialog.js +++ b/modules/dialogs/tedeum-roll-dialog.js @@ -1,13 +1,13 @@ -import { EcrymeUtility } from "../common/ecryme-utility.js"; +import { TeDeumUtility } from "../common/tedeum-utility.js"; -export class EcrymeRollDialog extends Dialog { +export class TeDeumRollDialog extends Dialog { /* -------------------------------------------- */ static async create(actor, rollData) { - let options = { classes: ["ecryme-roll-dialog"], width: 540, height: 'fit-content', 'z-index': 99999 } - let html = await renderTemplate('systems/fvtt-ecryme/templates/dialogs/roll-dialog-generic.hbs', rollData); - return new EcrymeRollDialog(actor, rollData, html, options); + let options = { classes: ["tedeum-roll-dialog"], width: 540, height: 'fit-content', 'z-index': 99999 } + let html = await renderTemplate('systems/fvtt-tedeum/templates/dialogs/roll-dialog-generic.hbs', rollData); + return new TeDeumRollDialog(actor, rollData, html, options); } /* -------------------------------------------- */ diff --git a/modules/items/tedeum-item-sheet.js b/modules/items/tedeum-item-sheet.js index 8352025..f0a0d6d 100644 --- a/modules/items/tedeum-item-sheet.js +++ b/modules/items/tedeum-item-sheet.js @@ -1,16 +1,16 @@ -import { EcrymeUtility } from "../common/tedeum-utility.js"; +import { TeDeumUtility } from "../common/tedeum-utility.js"; /** * Extend the basic ItemSheet with some very simple modifications * @extends {ItemSheet} */ -export class EcrymeItemSheet extends ItemSheet { +export class TeDeumItemSheet extends ItemSheet { /** @override */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["fvtt-ecryme", "sheet", "item"], - template: "systems/fvtt-ecryme/templates/item-sheet.hbs", + classes: ["fvtt-tedeum", "sheet", "item"], + template: "systems/fvtt-tedeum/templates/item-sheet.hbs", dragDrop: [{ dragSelector: null, dropSelector: null }], width: 620, height: 580, diff --git a/modules/items/tedeum-item.js b/modules/items/tedeum-item.js index b7362dd..8080547 100644 --- a/modules/items/tedeum-item.js +++ b/modules/items/tedeum-item.js @@ -1,21 +1,16 @@ -import { EcrymeUtility } from "../common/ecryme-utility.js"; +import { TeDeumUtility } from "../common/tedeum-utility.js"; export const defaultItemImg = { - weapon: "systems/fvtt-ecryme/images/icons/icon_weapon.webp", + arme: "systems/fvtt-ecryme/images/icons/icon_arme.webp", equipment: "systems/fvtt-ecryme/images/icons/icon_equipment.webp", - contact: "systems/fvtt-ecryme/images/icons/icon_contact.webp", - boheme: "systems/fvtt-ecryme/images/icons/icon_boheme.webp", - trait: "systems/fvtt-ecryme/images/icons/icon_trait.webp", - annency: "systems/fvtt-ecryme/images/icons/icon_annency.webp", - skill: "systems/fvtt-ecryme/images/icons/icon_skill.webp", - specialization: "systems/fvtt-ecryme/images/icons/icon_spec.webp" + competence: "systems/fvtt-ecryme/images/icons/icon_competence.webp", } /** * Extend the basic ItemSheet with some very simple modifications * @extends {ItemSheet} */ -export class EcrymeItem extends Item { +export class TeDeumItem extends Item { constructor(data, context) { if (!data.img) { diff --git a/modules/tedeum-main.js b/modules/tedeum-main.js index defda9b..e448024 100644 --- a/modules/tedeum-main.js +++ b/modules/tedeum-main.js @@ -1,5 +1,5 @@ /** - * Ecryme system + * Te Deum system * Author: Uberwald * Software License: Prop */ @@ -8,16 +8,14 @@ /* -------------------------------------------- */ // Import Modules -import { EcrymeActor } from "./actors/ecryme-actor.js"; -import { EcrymeItemSheet } from "./items/tedeum-item-sheet.js"; -import { EcrymeActorSheet } from "./actors/ecryme-actor-sheet.js"; -import { EcrymeAnnencySheet } from "./actors/ecryme-annency-sheet.js"; -import { EcrymeUtility } from "./common/ecryme-utility.js"; -import { EcrymeCombat } from "./app/ecryme-combat.js"; -import { EcrymeItem } from "./items/ecryme-item.js"; -import { EcrymeHotbar } from "./app/ecryme-hotbar.js" -import { EcrymeCharacterSummary } from "./app/ecryme-summary-app.js" -import { ECRYME_CONFIG } from "./common/ecryme-config.js" +import { TeDeumActor } from "./actors/tedeum-actor.js"; +import { TeDeumItemSheet } from "./items/tedeum-item-sheet.js"; +import { TeDeumActorSheet } from "./actors/tedeum-actor-sheet.js"; +import { TeDeumUtility } from "./common/tedeum-utility.js"; +import { TeDeumCombat } from "./app/tedeum-combat.js"; +import { TeDeumItem } from "./items/tedeum-item.js"; +import { TeDeumHotbar } from "./app/tedeum-hotbar.js" +import { TEDEUM_CONFIG } from "./common/tedeum-config.js" /* -------------------------------------------- */ /* Foundry VTT Initialization */ @@ -26,16 +24,16 @@ import { ECRYME_CONFIG } from "./common/ecryme-config.js" /************************************************************************************/ Hooks.once("init", async function () { - console.log(`Initializing Ecryme RPG`); + console.log(`Initializing TeDeum RPG`); - game.system.ecryme = { + game.system.tedeum = { config: ECRYME_CONFIG, - EcrymeHotbar + TeDeumHotbar } /* -------------------------------------------- */ // preload handlebars templates - EcrymeUtility.preloadHandlebarsTemplates(); + TeDeumUtility.preloadHandlebarsTemplates(); /* -------------------------------------------- */ // Set an initiative formula for the system @@ -45,31 +43,27 @@ Hooks.once("init", async function () { }; /* -------------------------------------------- */ - game.socket.on("system.fvtt-ecryme", data => { - EcrymeUtility.onSocketMesssage(data) + game.socket.on("system.fvtt-tedeum", data => { + TeDeumUtility.onSocketMesssage(data) }); /* -------------------------------------------- */ // Define custom Entity classes - CONFIG.Combat.documentClass = EcrymeCombat - CONFIG.Actor.documentClass = EcrymeActor - CONFIG.Item.documentClass = EcrymeItem + CONFIG.Combat.documentClass = TeDeumCombat + CONFIG.Actor.documentClass = TeDeumActor + CONFIG.Item.documentClass = TeDeumItem /* -------------------------------------------- */ // Register sheet application classes Actors.unregisterSheet("core", ActorSheet); - Actors.registerSheet("fvtt-ecryme", EcrymeActorSheet, { types: ["pc"], makeDefault: true }); - Actors.registerSheet("fvtt-ecryme", EcrymeActorSheet, { types: ["npc"], makeDefault: true }); - Actors.registerSheet("fvtt-ecryme", EcrymeAnnencySheet, { types: ["annency"], makeDefault: false }); + Actors.registerSheet("fvtt-tedeum", TeDeumActorSheet, { types: ["pc"], makeDefault: true }); + Actors.registerSheet("fvtt-tedeum", TeDeumActorSheet, { types: ["npc"], makeDefault: true }); + Actors.registerSheet("fvtt-tedeum", TeDeumAnnencySheet, { types: ["annency"], makeDefault: false }); Items.unregisterSheet("core", ItemSheet); - Items.registerSheet("fvtt-ecryme", EcrymeItemSheet, { makeDefault: true }); - - EcrymeUtility.init() - - console.log("Babele INIT!") - Babele.get().setSystemTranslationsDir("translated") + Items.registerSheet("fvtt-tedeum", TeDeumItemSheet, { makeDefault: true }); + TeDeumUtility.init() }); /* -------------------------------------------- */ @@ -78,8 +72,8 @@ function welcomeMessage() { ChatMessage.create({ user: game.user.id, whisper: [game.user.id], - content: `
- Bienvenu dans Ecryme !` }); + content: `
+ Bienvenu dans TeDeum !` }); } } @@ -125,8 +119,7 @@ Hooks.once("ready", function () { registerUsageCount(game.system.id) welcomeMessage(); - EcrymeUtility.ready() - EcrymeCharacterSummary.ready() + TeDeumUtility.ready() }) @@ -138,7 +131,7 @@ Hooks.on("chatMessage", (html, content, msg) => { if (content[0] == '/') { let regExp = /(\S+)/g; let commands = content.match(regExp); - if (game.system.ecryme.commands.processChatCommand(commands, content, msg)) { + if (game.system.tedeum.commands.processChatCommand(commands, content, msg)) { return false; } } diff --git a/template.json b/template.json index 197b048..69d15a6 100644 --- a/template.json +++ b/template.json @@ -1,312 +1,11 @@ { "Actor": { - "types": [ - "pc","annency", "npc" - ], - "templates": { - "biodata": { - "biodata": { - "age": "", - "size": "", - "lieunaissance": "", - "nationalite": "", - "profession": "", - "residence": "", - "milieusocial": "", - "poids": "", - "cheveux": "", - "sexe": "", - "yeux": "", - "enfance": "", - "description": "", - "gmnotes": "" - } - }, - "core": { - "subactors": [], - "equipmentfree": "", - "skills": { - "physical": { - "name": "ECRY.ui.physical", - "skilllist": { - "athletics": { - "name": "ECRY.ui.athletics", - "max": 0, - "value": 0 - }, - "driving": { - "name": "ECRY.ui.driving", - "max": 0, - "value": 0 - }, - "fencing": { - "name": "ECRY.ui.fencing", - "max": 0, - "value": 0 - }, - "brawling": { - "name": "ECRY.ui.brawling", - "max": 0, - "value": 0 - }, - "shooting": { - "name": "ECRY.ui.shooting", - "max": 0, - "value": 0 - } - } - }, - "mental": { - "name": "ECRY.ui.mental", - "skilllist": { - "anthropomecanology": { - "name": "ECRY.ui.anthropomecanology", - "value": 0, - "max": 10 - }, - "ecrymology": { - "name": "ECRY.ui.ecrymology", - "value": 0, - "max": 10 - }, - "traumatology": { - "name": "ECRY.ui.traumatology", - "value": 0, - "max": 10 - }, - "traversology": { - "name": "ECRY.ui.traversology", - "value": 0, - "max": 10 - }, - "urbatechnology": { - "name": "ECRY.ui.urbatechnology", - "value": 0, - "max": 10 - } - } - }, - "social": { - "name": "ECRY.ui.social", - "skilllist": { - "quibbling": { - "name": "ECRY.ui.quibbling", - "value": 0, - "max": 10 - }, - "creativity": { - "name": "ECRY.ui.creativity", - "value": 0, - "max": 10 - }, - "loquacity": { - "name": "ECRY.ui.loquacity", - "value": 0, - "max": 10 - }, - "guile": { - "name": "ECRY.ui.guile", - "value": 0, - "max": 10 - }, - "performance": { - "name": "ECRY.ui.performance", - "value": 0, - "max": 10 - } - } - } - }, - "impacts": { - "physical": { - "superficial": 0, - "light": 0, - "serious": 0, - "major": 0 - }, - "mental": { - "superficial": 0, - "light": 0, - "serious": 0, - "major": 0 - }, - "social": { - "superficial": 0, - "light": 0, - "serious": 0, - "major": 0 - } - }, - "cephaly": { - "name": "ECRY.ui.cephaly", - "skilllist": { - "elegy": { - "name": "ECRY.ui.elegy", - "value": 0, - "max": 10 - }, - "entelechy": { - "name": "ECRY.ui.entelechy", - "value": 0, - "max": 10 - }, - "mekany": { - "name": "ECRY.ui.mekany", - "value": 0, - "max": 10 - }, - "psyche": { - "name": "ECRY.ui.psyche", - "value": 0, - "max": 10 - }, - "scoria": { - "name": "ECRY.ui.scoria", - "value": 0, - "max": 10 - } - } - }, - "internals": { - "confrontbonus": 0 - } - }, - "npccore": { - "npctype": "", - "description": "" - }, - "annency": { - "base": { - "iscollective": false, - "ismultiple": false, - "characters": [], - "location": {"1": "", "2": "", "3":"", "4":"", "5":"" }, - "description": "", - "enhancements": "" - }, - "boheme": { - "name": "", - "ideals": "", - "politic": "", - "description": "" - } - } - }, - "annency": { - "templates": [ - "annency" - ] - }, - "npc": { - "templates": [ - "biodata", - "core" - ] - }, - "pc": { - "templates": [ - "biodata", - "core" - ] - } + "types": ["pj", "pnj"], + "pj": {}, + "pnj": {} }, "Item": { - "types": [ - "equipment", - "trait", - "weapon", - "specialization", - "maneuver" - ], - "templates": { - "common": { - "description": "" - }, - "equipement": { - "weight": 0, - "cost": 0, - "costunit": "" - } - }, - "maneuver": { - "templates": [ - "common" - ] - }, - "confrontation": { - "templates": [ - "common" - ], - "attackerId": "", - "defenserId": "", - "rolllist": [], - "bonusexecution": 0, - "bonuspreservation": 0 - }, - "equipment": { - "templates": [ - "common", - "equipement" - ], - "quantity": 1, - "weight": 0 - }, - "trait": { - "templates": [ - "common" - ], - "traitype": "normal", - "level": 1 - }, - "weapon": { - "templates": [ - "common", - "equipement" - ], - "weapontype": "melee", - "effect": 0 - }, - "specialization": { - "bonus": 2, - "templates": [ - "common" - ], - "skillkey": "" - }, - "scar": { - "templates": [ - "common" - ], - "skillcategory": [ - "physical", - "mental", - "social", - "cephalie" - ], - "scarLevel": 1 - }, - "annency": { - "templates": [ - "common" - ], - "collective": false, - "multiple": false, - "improvements": "" - }, - "boheme": { - "templates": [ - "common" - ], - "ideals": "", - "political": "" - }, - "contact": { - "templates": [ - "common" - ], - "attitude": "neutral", - "organization": "", - "location": "" - } + "types": ["arme"], + "arme": {} } } \ No newline at end of file