Compare commits
22 Commits
fvtt-ecrym
...
fvtt-ecrym
| Author | SHA1 | Date | |
|---|---|---|---|
| bda88c067e | |||
| 4003e0e42b | |||
| a6d811bcda | |||
| 94eb637637 | |||
| 8c58367cdc | |||
| c439ca978c | |||
| ffe1144f2a | |||
| 38ef07d17b | |||
| a8cc2dce4b | |||
| 0fadd0783c | |||
| a55a038d32 | |||
| d012f78881 | |||
| 01e13da234 | |||
| bc09b5050d | |||
| d68001b376 | |||
| 6b22dade9c | |||
| 965fc02eb3 | |||
| 0ef689bf1b | |||
| c6dcc187d8 | |||
| e2f24405af | |||
| 0487893f47 | |||
| d7b7bccbdf |
@@ -1,3 +1,8 @@
|
||||
v12.0.0
|
||||
|
||||
- Support Foundry v11/v12
|
||||
- Correction sur le niveau de jeu par défaut
|
||||
|
||||
v11.0.39
|
||||
|
||||
- Modification sur la prise en compte des traits en bonus/malus
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
import { EcrymeUtility } from "../common/ecryme-utility.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
export class EcrymeActorSheet extends ActorSheet {
|
||||
export class EcrymeActorSheet extends foundry.appv1.sheets.ActorSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
@@ -53,9 +53,9 @@ export class EcrymeActorSheet extends ActorSheet {
|
||||
cephalySkills: this.actor.getCephalySkills(),
|
||||
subActors: foundry.utils.duplicate(this.actor.getSubActors()),
|
||||
annency: this.actor.getAnnency(),
|
||||
description: await TextEditor.enrichHTML(this.object.system.biodata.description, { async: true }),
|
||||
notes: await TextEditor.enrichHTML(this.object.system.biodata.notes, { async: true }),
|
||||
equipementlibre: await TextEditor.enrichHTML(this.object.system.equipmentfree, { async: true }),
|
||||
description: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.biodata.description, { async: true }),
|
||||
notes: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.biodata.notes, { async: true }),
|
||||
equipementlibre: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.equipmentfree, { async: true }),
|
||||
options: this.options,
|
||||
owner: this.document.isOwner,
|
||||
editScore: this.options.editScore,
|
||||
@@ -63,7 +63,7 @@ export class EcrymeActorSheet extends ActorSheet {
|
||||
}
|
||||
this.formData = formData;
|
||||
|
||||
console.log("PC : ", formData, this.object);
|
||||
//console.log("PC : ", formData, this.object);
|
||||
return formData;
|
||||
}
|
||||
|
||||
|
||||
@@ -449,6 +449,7 @@ export class EcrymeActor extends Actor {
|
||||
rollData.applyTranscendence = "execution"
|
||||
rollData.traitsBonus = foundry.utils.duplicate(rollData.traits)
|
||||
rollData.traitsMalus = foundry.utils.duplicate(rollData.traits)
|
||||
console.log("ROLLDATA", rollData)
|
||||
let confrontStartDialog = await EcrymeConfrontStartDialog.create(this, rollData)
|
||||
confrontStartDialog.render(true)
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
import { EcrymeUtility } from "../common/ecryme-utility.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
export class EcrymeAnnencySheet extends ActorSheet {
|
||||
export class EcrymeAnnencySheet extends foundry.appv1.sheets.ActorSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
|
||||
@@ -10,14 +10,14 @@ export const ECRYME_CONFIG = {
|
||||
"melee": "ECRY.ui.melee",
|
||||
"ranged": "ECRY.ui.ranged"
|
||||
},
|
||||
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"}
|
||||
],
|
||||
traitLevel: {
|
||||
"-3":{value: "-3", text: "-3"},
|
||||
"-2":{value: "-2", text: "-2"},
|
||||
"-1":{value: "-1", text: "-1"},
|
||||
"+1":{value: "+1", text: "+1"},
|
||||
"+2":{value: "+2", text: "+2"},
|
||||
"+3":{value: "+3", text: "+3"}
|
||||
},
|
||||
impactTypes: {
|
||||
physical: "ECRY.ui.physical",
|
||||
mental: "ECRY.ui.mental",
|
||||
@@ -30,7 +30,7 @@ export const ECRYME_CONFIG = {
|
||||
major: "ECRY.ui.major"
|
||||
},
|
||||
difficulty: {
|
||||
"-1": {difficulty: "ECRY.ui.none", frequency: "ECRY.ui.none", value: "-"},
|
||||
"-1": {difficulty: "ECRY.ui.none", frequency: "ECRY.ui.none", value: "-1"},
|
||||
"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 },
|
||||
@@ -60,17 +60,16 @@ export const ECRYME_CONFIG = {
|
||||
},
|
||||
transcendanceOptions: {
|
||||
"execution": "ECRY.ui.execution",
|
||||
"preservation": "EC,RY.ui.preservation"
|
||||
"preservation": "ECRY.ui.preservation"
|
||||
},
|
||||
bonusMalusPersoOptions: [
|
||||
{value: "-3", label: "-3"},
|
||||
{value: "-2", label: "-2"},
|
||||
{value: "-1", label: "-1"},
|
||||
{value: "0", label: "0"},
|
||||
{value: "+1", label: "+1"},
|
||||
{value: "+2", label: "+2"},
|
||||
{value: "+3", label: "+3"}
|
||||
]
|
||||
|
||||
bonusMalusPersoOptions: {
|
||||
"-3": {value: "-3", label: "-3"},
|
||||
"-2": {value: "-2", label: "-2"},
|
||||
"-1": {value: "-1", label: "-1"},
|
||||
"0": {value: "0", label: "0"},
|
||||
"+1": {value: "1", label: "+1"},
|
||||
"+2": {value: "2", label: "+2"},
|
||||
"+3": {value: "3", label: "+3"}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -36,7 +36,7 @@ export class EcrymeUtility {
|
||||
/* -------------------------------------------- */
|
||||
static async init() {
|
||||
Hooks.on('renderChatLog', (log, html, data) => EcrymeUtility.chatListeners(html));
|
||||
Hooks.on("getChatLogEntryContext", (html, options) => EcrymeUtility.chatMenuManager(html, options));
|
||||
Hooks.on("getChatMessageContextOptions", (html, options) => EcrymeUtility.chatMenuManager(html, options));
|
||||
|
||||
this.rollDataStore = {}
|
||||
this.defenderStore = {}
|
||||
@@ -155,8 +155,8 @@ export class EcrymeUtility {
|
||||
/* -------------------------------------------- */
|
||||
static getActorFromRollData(rollData) {
|
||||
let actor = game.actors.get(rollData.actorId)
|
||||
if (rollData.tokenId) {
|
||||
let token = canvas.tokens.placeables.find(t => t.id == rollData.tokenId)
|
||||
if (rollData.defenderTokenId) {
|
||||
let token = canvas.tokens.placeables.find(t => t.id == rollData.defenderTokenId)
|
||||
if (token) {
|
||||
actor = token.actor
|
||||
}
|
||||
@@ -216,7 +216,7 @@ export class EcrymeUtility {
|
||||
confront.impactPreservation = this.getImpactFromEffect(Math.abs(confront.effectPreservation))
|
||||
}
|
||||
if (confront.marginPreservation > 0) {
|
||||
confront.bonus1 = -confront.marginPreservation
|
||||
confront.bonus1 = confront.marginPreservation
|
||||
}
|
||||
|
||||
let msg = await this.createChatWithRollMode(this.confrontData1.alias, {
|
||||
@@ -273,20 +273,17 @@ export class EcrymeUtility {
|
||||
let canTranscendRoll = []
|
||||
for (let i = 1; i <= 10; i++) {
|
||||
canTranscendRoll[i] = function (li) {
|
||||
let message = game.messages.get(li.attr("data-message-id"))
|
||||
let message = game.messages.get($(li).attr("data-message-id"))
|
||||
let rollData = message.getFlag("world", "rolldata")
|
||||
//console.log(">>>>>>>>>>>>>>>>>>>>>>>>>> Menu !!!!", rollData)
|
||||
if (rollData.skill && rollData.skill.value >= i && !rollData.transcendUsed && rollData.spec) {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
return (rollData?.skill?.value >= i && !rollData.transcendUsed && rollData.spec)
|
||||
}
|
||||
options.push({
|
||||
name: game.i18n.localize("ECRY.chat.spectranscend") + i,
|
||||
icon: '<i class="fas fa-plus-square"></i>',
|
||||
condition: canTranscendRoll[i],
|
||||
callback: li => {
|
||||
let message = game.messages.get(li.attr("data-message-id"))
|
||||
let message = game.messages.get($(li).attr("data-message-id"))
|
||||
let rollData = message.getFlag("world", "rolldata")
|
||||
EcrymeUtility.transcendFromSpec(rollData, i).catch("Error on Transcend")
|
||||
}
|
||||
@@ -297,27 +294,35 @@ export class EcrymeUtility {
|
||||
/* -------------------------------------------- */
|
||||
static async chatListeners(html) {
|
||||
|
||||
html.on("click", '.button-select-confront', event => {
|
||||
$(html).on("click", '.button-select-confront', event => {
|
||||
let messageId = EcrymeUtility.findChatMessageId(event.currentTarget)
|
||||
let message = game.messages.get(messageId)
|
||||
let rollData = message.getFlag("world", "ecryme-rolldata")
|
||||
ui.notifications.info( game.i18n.localize("ECRY.chat.confrontselect"))
|
||||
ui.notifications.info(game.i18n.localize("ECRY.chat.confrontselect"))
|
||||
EcrymeUtility.manageConfrontation(rollData)
|
||||
})
|
||||
html.on("click", '.button-apply-cephaly-difficulty', event => {
|
||||
$(html).on("click", '.button-apply-cephaly-difficulty', event => {
|
||||
let messageId = EcrymeUtility.findChatMessageId(event.currentTarget)
|
||||
let message = game.messages.get(messageId)
|
||||
let rollData = message.getFlag("world", "ecryme-rolldata")
|
||||
let difficulty = $("#" + rollData.rollId + "-cephaly-difficulty").val()
|
||||
EcrymeUtility.manageCephalyDifficulty(rollData, difficulty)
|
||||
})
|
||||
html.on("click", '.button-apply-impact', event => {
|
||||
$(html).on("click", '.button-apply-impact', event => {
|
||||
let messageId = EcrymeUtility.findChatMessageId(event.currentTarget)
|
||||
let message = game.messages.get(messageId)
|
||||
let actor = game.actors.get($(event.currentTarget).data("actor-id"))
|
||||
let tokenId = $(event.currentTarget).data("token-id")
|
||||
let actor
|
||||
if (!tokenId) {
|
||||
actorId = $(event.currentTarget).data("actor-id")
|
||||
actor = game.actors.get(actorId)
|
||||
} else {
|
||||
let token = canvas.tokens.placeables.find(t => t.id == tokenId)
|
||||
actor = token?.actor
|
||||
}
|
||||
actor.modifyImpact($(event.currentTarget).data("impact-type"), $(event.currentTarget).data("impact"), 1)
|
||||
})
|
||||
html.on("click", '.button-apply-bonus', event => {
|
||||
$(html).on("click", '.button-apply-bonus', event => {
|
||||
let messageId = EcrymeUtility.findChatMessageId(event.currentTarget)
|
||||
let message = game.messages.get(messageId)
|
||||
let actor = game.actors.get($(event.currentTarget).data("actor-id"))
|
||||
@@ -339,7 +344,7 @@ export class EcrymeUtility {
|
||||
'systems/fvtt-ecryme/templates/dialogs/partial-confront-bonus-area.hbs',
|
||||
'systems/fvtt-ecryme/templates/actors/partial-impacts.hbs',
|
||||
]
|
||||
return loadTemplates(templatePaths);
|
||||
return foundry.applications.handlebars.loadTemplates(templatePaths);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -414,7 +419,7 @@ export class EcrymeUtility {
|
||||
console.log("SOCKET MESSAGE", msg)
|
||||
if (msg.name == "msg_gm_chat_message") {
|
||||
let rollData = msg.data.rollData
|
||||
if ( game.user.isGM ) {
|
||||
if (game.user.isGM) {
|
||||
let chatMsg = await this.createChatMessage(rollData.alias, "blindroll", {
|
||||
content: await renderTemplate(msg.data.template, rollData),
|
||||
whisper: game.user.id
|
||||
@@ -558,7 +563,7 @@ export class EcrymeUtility {
|
||||
|
||||
let actor = game.actors.get(rollData.actorId)
|
||||
// Fix difficulty
|
||||
if (!rollData.difficulty || rollData.difficulty == "-") {
|
||||
if (!rollData.difficulty || rollData.difficulty == "-1") {
|
||||
rollData.difficulty = 0
|
||||
}
|
||||
rollData.difficulty = Number(rollData.difficulty)
|
||||
@@ -575,7 +580,7 @@ export class EcrymeUtility {
|
||||
this.computeResults(rollData)
|
||||
|
||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
||||
content: await renderTemplate(`systems/fvtt-ecryme/templates/chat/chat-generic-result.hbs`, rollData)
|
||||
content: await foundry.applications.handlebars.renderTemplate(`systems/fvtt-ecryme/templates/chat/chat-generic-result.hbs`, rollData)
|
||||
})
|
||||
await msg.setFlag("world", "ecryme-rolldata", rollData)
|
||||
console.log("Rolldata result", rollData)
|
||||
@@ -685,14 +690,14 @@ export class EcrymeUtility {
|
||||
let rollData = {
|
||||
rollId: foundry.utils.randomID(16),
|
||||
type: "roll-data",
|
||||
bonusMalusPerso: 0,
|
||||
bonusMalusPerso: "0",
|
||||
bonusMalusSituation: 0,
|
||||
bonusMalusDef: 0,
|
||||
annencyBonus: 0,
|
||||
bonusMalusPortee: 0,
|
||||
skillTranscendence: 0,
|
||||
rollMode: game.settings.get("core", "rollMode"),
|
||||
difficulty: "-",
|
||||
difficulty: "-1",
|
||||
useSpleen: false,
|
||||
useIdeal: false,
|
||||
impactMalus: 0,
|
||||
@@ -718,11 +723,11 @@ export class EcrymeUtility {
|
||||
/* -------------------------------------------- */
|
||||
static async confirmDelete(actorSheet, li) {
|
||||
let itemId = li.data("item-id");
|
||||
let msgTxt = "<p>Are you sure to remove this Item ?";
|
||||
let msgTxt = "<p>Etes vous certain de souhaiter envoyer cet item dans les limbes ?";
|
||||
let buttons = {
|
||||
delete: {
|
||||
icon: '<i class="fas fa-check"></i>',
|
||||
label: "Yes, remove it",
|
||||
label: "Oui, retirez-le",
|
||||
callback: () => {
|
||||
actorSheet.actor.deleteEmbeddedDocuments("Item", [itemId]);
|
||||
li.slideUp(200, () => actorSheet.render(false));
|
||||
@@ -730,7 +735,7 @@ export class EcrymeUtility {
|
||||
},
|
||||
cancel: {
|
||||
icon: '<i class="fas fa-times"></i>',
|
||||
label: "Cancel"
|
||||
label: "Annuler"
|
||||
}
|
||||
}
|
||||
msgTxt += "</p>";
|
||||
|
||||
@@ -12,7 +12,7 @@ export class EcrymeConfrontDialog extends Dialog {
|
||||
width: 620, height: 'fit-content', 'z-index': 99999
|
||||
});
|
||||
|
||||
let html = await renderTemplate('systems/fvtt-ecryme/templates/dialogs/confront-dialog.hbs', rollData);
|
||||
let html = await foundry.applications.handlebars.renderTemplate('systems/fvtt-ecryme/templates/dialogs/confront-dialog.hbs', rollData);
|
||||
return new EcrymeConfrontDialog(actor, rollData, html, options);
|
||||
}
|
||||
|
||||
@@ -163,9 +163,9 @@ export class EcrymeConfrontDialog extends Dialog {
|
||||
// Apply Transcend if needed
|
||||
if (this.rollData.skillTranscendence > 0) {
|
||||
if (this.rollData.applyTranscendence == "execution") {
|
||||
this.rollData.executionTotal += this.rollData.skillTranscendence
|
||||
this.rollData.executionTotal += Number(this.rollData.skillTranscendence)
|
||||
} else {
|
||||
this.rollData.preservationTotal += this.rollData.skillTranscendence
|
||||
this.rollData.preservationTotal += Number(this.rollData.skillTranscendence)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -212,19 +212,19 @@ export class EcrymeConfrontDialog extends Dialog {
|
||||
for (let id of rollData.traitsBonusSelected) {
|
||||
let trait = rollData.traitsBonus.find(t => t._id == id)
|
||||
trait.activated = true
|
||||
rollData.bonusMalusTraits += trait.system.level
|
||||
rollData.bonusMalusTraits += Number(trait.system.level)
|
||||
}
|
||||
}
|
||||
if (rollData.traitsMalusSelected && rollData.traitsMalusSelected.length > 0) {
|
||||
for (let id of rollData.traitsMalusSelected) {
|
||||
let trait = rollData.traitsMalus.find(t => t._id == id)
|
||||
trait.activated = true
|
||||
rollData.bonusMalusTraits -= trait.system.level
|
||||
rollData.bonusMalusTraits -= Number(trait.system.level)
|
||||
}
|
||||
}
|
||||
|
||||
rollData.executionTotal += rollData.bonusMalusTraits + rollData.bonusMalusPerso
|
||||
rollData.preservationTotal += rollData.bonusMalusTraits + rollData.bonusMalusPerso
|
||||
rollData.executionTotal += Number(rollData.bonusMalusTraits) + Number(rollData.bonusMalusPerso)
|
||||
rollData.preservationTotal += Number(rollData.bonusMalusTraits) + Number(rollData.bonusMalusPerso)
|
||||
|
||||
this.refreshDialog()
|
||||
}
|
||||
@@ -234,7 +234,7 @@ export class EcrymeConfrontDialog extends Dialog {
|
||||
super.activateListeners(html);
|
||||
|
||||
html.find('#bonusMalusPerso').change((event) => {
|
||||
this.rollData.bonusMalusPerso = Number(event.currentTarget.value)
|
||||
this.rollData.bonusMalusPerso = event.currentTarget.value
|
||||
this.computeTotals()
|
||||
})
|
||||
html.find('#roll-specialization').change((event) => {
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
import { EcrymeUtility } from "../common/ecryme-utility.js";
|
||||
import {EcrymeConfrontDialog } from "./ecryme-confront-dialog.js";
|
||||
import { EcrymeConfrontDialog } from "./ecryme-confront-dialog.js";
|
||||
|
||||
export class EcrymeConfrontStartDialog extends Dialog {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async create(actor, rollData) {
|
||||
if (!actor) throw new Error("Ecryme | No actor provided for confront dialog");
|
||||
if (!rollData) throw new Error("Ecryme | No roll data provided for confront dialog");
|
||||
|
||||
if (actor?.token) rollData.tokenId = actor.token.id;
|
||||
let options = { classes: ["fvtt-ecryme ecryme-confront-dialog"], width: 540, height: 'fit-content', 'z-index': 99999 }
|
||||
let html = await renderTemplate('systems/fvtt-ecryme/templates/dialogs/confront-start-dialog.hbs', rollData);
|
||||
let html = await foundry.applications.handlebars.renderTemplate('systems/fvtt-ecryme/templates/dialogs/confront-start-dialog.hbs', rollData);
|
||||
return new EcrymeConfrontStartDialog(actor, rollData, html, options);
|
||||
}
|
||||
|
||||
@@ -43,12 +46,12 @@ export class EcrymeConfrontStartDialog extends Dialog {
|
||||
|
||||
super(conf, options);
|
||||
|
||||
this.actor = actor;
|
||||
this.actor = actor?.token?.actor || actor;
|
||||
this.rollData = rollData;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollConfront( diceFormula ) {
|
||||
async rollConfront(diceFormula) {
|
||||
// Do the initial roll
|
||||
let myRoll = await new Roll(diceFormula).roll()
|
||||
await EcrymeUtility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||
@@ -57,7 +60,7 @@ export class EcrymeConfrontStartDialog extends Dialog {
|
||||
rollData.roll = foundry.utils.duplicate(myRoll)
|
||||
rollData.availableDices = []
|
||||
for (let result of myRoll.terms[0].results) {
|
||||
if ( !result.discarded) {
|
||||
if (!result.discarded) {
|
||||
let resultDup = foundry.utils.duplicate(result)
|
||||
resultDup.location = "mainpool"
|
||||
rollData.availableDices.push(resultDup)
|
||||
|
||||
@@ -6,7 +6,7 @@ export class EcrymeRollDialog 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);
|
||||
let html = await foundry.applications.handlebars.renderTemplate('systems/fvtt-ecryme/templates/dialogs/roll-dialog-generic.hbs', rollData);
|
||||
return new EcrymeRollDialog(actor, rollData, html, options);
|
||||
}
|
||||
|
||||
@@ -52,12 +52,12 @@ export class EcrymeRollDialog extends Dialog {
|
||||
activateListeners(html) {
|
||||
super.activateListeners(html);
|
||||
|
||||
var dialog = this;
|
||||
function onLoad() {
|
||||
}
|
||||
$(function () { onLoad(); });
|
||||
|
||||
html.find('#bonusMalusPerso').change((event) => {
|
||||
console.log("DIFF", event.currentTarget.value)
|
||||
this.rollData.bonusMalusPerso = Number(event.currentTarget.value)
|
||||
})
|
||||
html.find('#roll-difficulty').change((event) => {
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
*/
|
||||
|
||||
/* -------------------------------------------- */
|
||||
const ECRYME_WELCOME_MESSAGE_URL = "https://www.uberwald.me/gitea/public/fvtt-ecryme/raw/branch/master/welcome-message-ecryme.html"
|
||||
|
||||
/* -------------------------------------------- */
|
||||
// Import Modules
|
||||
@@ -57,28 +58,40 @@ Hooks.once("init", async function () {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
// 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 });
|
||||
foundry.documents.collections.Actors.unregisterSheet("core", foundry.appv1.sheets.ActorSheet);
|
||||
foundry.documents.collections.Actors.registerSheet("fvtt-ecryme", EcrymeActorSheet, { types: ["pc"], makeDefault: true });
|
||||
foundry.documents.collections.Actors.registerSheet("fvtt-ecryme", EcrymeActorSheet, { types: ["npc"], makeDefault: true });
|
||||
foundry.documents.collections.Actors.registerSheet("fvtt-ecryme", EcrymeAnnencySheet, { types: ["annency"], makeDefault: false });
|
||||
|
||||
Items.unregisterSheet("core", ItemSheet);
|
||||
Items.registerSheet("fvtt-ecryme", EcrymeItemSheet, { makeDefault: true });
|
||||
foundry.documents.collections.Items.unregisterSheet("core", foundry.appv1.sheets.ItemSheet);
|
||||
foundry.documents.collections.Items.registerSheet("fvtt-ecryme", EcrymeItemSheet, { makeDefault: true });
|
||||
|
||||
EcrymeUtility.init()
|
||||
|
||||
Babele.get().setSystemTranslationsDir("translated")
|
||||
|
||||
});
|
||||
|
||||
/* -------------------------------------------- */
|
||||
function welcomeMessage() {
|
||||
if (game.user.isGM) {
|
||||
// Try to fetch the welcome message from the github repo "welcome-message-ecryme.html"
|
||||
fetch(ECRYME_WELCOME_MESSAGE_URL)
|
||||
.then(response => response.text())
|
||||
.then(html => {
|
||||
console.log("Fetched welcome message:", html);
|
||||
ChatMessage.create({
|
||||
user: game.user.id,
|
||||
whisper: [game.user.id],
|
||||
content: `<div id="welcome-message-ecryme"><span class="rdd-roll-part">
|
||||
<strong>Bienvenu dans Ecryme !</strong>` });
|
||||
content: html
|
||||
});
|
||||
})
|
||||
.catch(error => {
|
||||
console.error("Error fetching welcome message:", error);
|
||||
ChatMessage.create({
|
||||
user: game.user.id,
|
||||
whisper: [game.user.id],
|
||||
content: "<b>Bienvenue dans Ecryme RPG !</b><br>Visitez le site officiel pour plus d'informations."
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,6 +104,7 @@ async function importDefaultScene() {
|
||||
await game.scenes.documentClass.create(newDocuments);
|
||||
game.scenes.find(i => i.name == "Landing page 1").activate();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -107,10 +121,10 @@ Hooks.once("ready", function () {
|
||||
});
|
||||
}
|
||||
|
||||
import("https://www.uberwald.me/fvtt_appcount/count-class-ready.js").then(moduleCounter=>{
|
||||
import("https://www.uberwald.me/fvtt_appcount/count-class-ready.js").then(moduleCounter => {
|
||||
console.log("ClassCounter loaded", moduleCounter)
|
||||
moduleCounter.ClassCounter.registerUsageCount()
|
||||
}).catch(err=>
|
||||
}).catch(err =>
|
||||
console.log("No stats available, giving up.")
|
||||
)
|
||||
|
||||
@@ -119,6 +133,9 @@ Hooks.once("ready", function () {
|
||||
EcrymeCharacterSummary.ready();
|
||||
importDefaultScene();
|
||||
|
||||
// Load translations
|
||||
Babele.get().setSystemTranslationsDir("translated")
|
||||
|
||||
})
|
||||
|
||||
|
||||
@@ -135,4 +152,3 @@ Hooks.on("chatMessage", (html, content, msg) => {
|
||||
}
|
||||
return true;
|
||||
});
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ import { EcrymeUtility } from "../common/ecryme-utility.js";
|
||||
* Extend the basic ItemSheet with some very simple modifications
|
||||
* @extends {ItemSheet}
|
||||
*/
|
||||
export class EcrymeItemSheet extends ItemSheet {
|
||||
export class EcrymeItemSheet extends foundry.appv1.sheets.ItemSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
@@ -61,8 +61,8 @@ export class EcrymeItemSheet extends ItemSheet {
|
||||
limited: this.object.limited,
|
||||
options: this.options,
|
||||
owner: this.document.isOwner,
|
||||
description: await TextEditor.enrichHTML(this.object.system.description, { async: true }),
|
||||
notes: await TextEditor.enrichHTML(this.object.system.notes, { async: true }),
|
||||
description: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.description, { async: true }),
|
||||
notes: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.notes, { async: true }),
|
||||
isGM: game.user.isGM
|
||||
}
|
||||
|
||||
|
||||
Binary file not shown.
BIN
packs/equipment/000192.ldb
Normal file
BIN
packs/equipment/000192.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000159
|
||||
MANIFEST-000241
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2024/04/26-19:22:08.707793 7f89060006c0 Recovering log #156
|
||||
2024/04/26-19:22:08.718085 7f89060006c0 Delete type=3 #154
|
||||
2024/04/26-19:22:08.718160 7f89060006c0 Delete type=0 #156
|
||||
2024/04/26-19:25:18.674002 7f88ffe006c0 Level-0 table #162: started
|
||||
2024/04/26-19:25:18.674046 7f88ffe006c0 Level-0 table #162: 0 bytes OK
|
||||
2024/04/26-19:25:18.715930 7f88ffe006c0 Delete type=0 #160
|
||||
2024/04/26-19:25:18.747436 7f88ffe006c0 Manual compaction at level-0 from '!folders!1GrTlI1xWvaxdKRI' @ 72057594037927935 : 1 .. '!items!zs7krgXhDRndtqbl' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:30:30.745305 7f7b753f96c0 Recovering log #239
|
||||
2025/10/17-15:30:30.799430 7f7b753f96c0 Delete type=3 #237
|
||||
2025/10/17-15:30:30.799501 7f7b753f96c0 Delete type=0 #239
|
||||
2025/10/17-15:38:10.264480 7f7b6f3ff6c0 Level-0 table #244: started
|
||||
2025/10/17-15:38:10.264510 7f7b6f3ff6c0 Level-0 table #244: 0 bytes OK
|
||||
2025/10/17-15:38:10.271838 7f7b6f3ff6c0 Delete type=0 #242
|
||||
2025/10/17-15:38:10.286239 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!1GrTlI1xWvaxdKRI' @ 72057594037927935 : 1 .. '!items!zs7krgXhDRndtqbl' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,14 +1,7 @@
|
||||
2024/04/26-18:42:26.253704 7f89060006c0 Recovering log #152
|
||||
2024/04/26-18:42:26.264507 7f89060006c0 Delete type=3 #150
|
||||
2024/04/26-18:42:26.264666 7f89060006c0 Delete type=0 #152
|
||||
2024/04/26-19:22:04.326808 7f88ffe006c0 Level-0 table #157: started
|
||||
2024/04/26-19:22:04.330698 7f88ffe006c0 Level-0 table #157: 26343 bytes OK
|
||||
2024/04/26-19:22:04.337326 7f88ffe006c0 Delete type=0 #155
|
||||
2024/04/26-19:22:04.358386 7f88ffe006c0 Manual compaction at level-0 from '!folders!1GrTlI1xWvaxdKRI' @ 72057594037927935 : 1 .. '!items!zs7krgXhDRndtqbl' @ 0 : 0; will stop at '!items!zs7krgXhDRndtqbl' @ 338 : 1
|
||||
2024/04/26-19:22:04.358402 7f88ffe006c0 Compacting 1@0 + 1@1 files
|
||||
2024/04/26-19:22:04.362396 7f88ffe006c0 Generated table #158@0: 174 keys, 27263 bytes
|
||||
2024/04/26-19:22:04.362426 7f88ffe006c0 Compacted 1@0 + 1@1 files => 27263 bytes
|
||||
2024/04/26-19:22:04.368459 7f88ffe006c0 compacted to: files[ 0 1 0 0 0 0 0 ]
|
||||
2024/04/26-19:22:04.368664 7f88ffe006c0 Delete type=2 #9
|
||||
2024/04/26-19:22:04.368919 7f88ffe006c0 Delete type=2 #157
|
||||
2024/04/26-19:22:04.400712 7f88ffe006c0 Manual compaction at level-0 from '!items!zs7krgXhDRndtqbl' @ 338 : 1 .. '!items!zs7krgXhDRndtqbl' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:00:21.595853 7f7b75bfa6c0 Recovering log #235
|
||||
2025/10/17-15:00:21.649813 7f7b75bfa6c0 Delete type=3 #233
|
||||
2025/10/17-15:00:21.649870 7f7b75bfa6c0 Delete type=0 #235
|
||||
2025/10/17-15:19:41.013969 7f7b6f3ff6c0 Level-0 table #240: started
|
||||
2025/10/17-15:19:41.014009 7f7b6f3ff6c0 Level-0 table #240: 0 bytes OK
|
||||
2025/10/17-15:19:41.021013 7f7b6f3ff6c0 Delete type=0 #238
|
||||
2025/10/17-15:19:41.041182 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!1GrTlI1xWvaxdKRI' @ 72057594037927935 : 1 .. '!items!zs7krgXhDRndtqbl' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/equipment/MANIFEST-000241
Normal file
BIN
packs/equipment/MANIFEST-000241
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/help/000129.ldb
Normal file
BIN
packs/help/000129.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000096
|
||||
MANIFEST-000178
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2024/04/26-19:22:08.762783 7f89074006c0 Recovering log #93
|
||||
2024/04/26-19:22:08.773921 7f89074006c0 Delete type=3 #91
|
||||
2024/04/26-19:22:08.774007 7f89074006c0 Delete type=0 #93
|
||||
2024/04/26-19:25:18.785678 7f88ffe006c0 Level-0 table #99: started
|
||||
2024/04/26-19:25:18.785720 7f88ffe006c0 Level-0 table #99: 0 bytes OK
|
||||
2024/04/26-19:25:18.821605 7f88ffe006c0 Delete type=0 #97
|
||||
2024/04/26-19:25:18.901806 7f88ffe006c0 Manual compaction at level-0 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
2024/04/26-19:25:18.901870 7f88ffe006c0 Manual compaction at level-1 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:30:30.971906 7f7b75bfa6c0 Recovering log #176
|
||||
2025/10/17-15:30:31.026021 7f7b75bfa6c0 Delete type=3 #174
|
||||
2025/10/17-15:30:31.026086 7f7b75bfa6c0 Delete type=0 #176
|
||||
2025/10/17-15:38:10.306636 7f7b6f3ff6c0 Level-0 table #181: started
|
||||
2025/10/17-15:38:10.306674 7f7b6f3ff6c0 Level-0 table #181: 0 bytes OK
|
||||
2025/10/17-15:38:10.313150 7f7b6f3ff6c0 Delete type=0 #179
|
||||
2025/10/17-15:38:10.313296 7f7b6f3ff6c0 Manual compaction at level-0 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:38:10.313313 7f7b6f3ff6c0 Manual compaction at level-1 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,15 +1,8 @@
|
||||
2024/04/26-18:42:26.318647 7f8906a006c0 Recovering log #89
|
||||
2024/04/26-18:42:26.329907 7f8906a006c0 Delete type=3 #87
|
||||
2024/04/26-18:42:26.329974 7f8906a006c0 Delete type=0 #89
|
||||
2024/04/26-19:22:04.427916 7f88ffe006c0 Level-0 table #94: started
|
||||
2024/04/26-19:22:04.431410 7f88ffe006c0 Level-0 table #94: 2184 bytes OK
|
||||
2024/04/26-19:22:04.438566 7f88ffe006c0 Delete type=0 #92
|
||||
2024/04/26-19:22:04.449035 7f88ffe006c0 Manual compaction at level-0 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
2024/04/26-19:22:04.449082 7f88ffe006c0 Manual compaction at level-1 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 14 : 1
|
||||
2024/04/26-19:22:04.449091 7f88ffe006c0 Compacting 1@1 + 1@2 files
|
||||
2024/04/26-19:22:04.452506 7f88ffe006c0 Generated table #95@1: 4 keys, 2184 bytes
|
||||
2024/04/26-19:22:04.452542 7f88ffe006c0 Compacted 1@1 + 1@2 files => 2184 bytes
|
||||
2024/04/26-19:22:04.458702 7f88ffe006c0 compacted to: files[ 0 0 1 0 0 0 0 ]
|
||||
2024/04/26-19:22:04.458800 7f88ffe006c0 Delete type=2 #74
|
||||
2024/04/26-19:22:04.458954 7f88ffe006c0 Delete type=2 #94
|
||||
2024/04/26-19:22:04.482775 7f88ffe006c0 Manual compaction at level-1 from '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 14 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:00:21.833480 7f7b74bf86c0 Recovering log #172
|
||||
2025/10/17-15:00:21.882268 7f7b74bf86c0 Delete type=3 #170
|
||||
2025/10/17-15:00:21.882323 7f7b74bf86c0 Delete type=0 #172
|
||||
2025/10/17-15:19:41.054674 7f7b6f3ff6c0 Level-0 table #177: started
|
||||
2025/10/17-15:19:41.054706 7f7b6f3ff6c0 Level-0 table #177: 0 bytes OK
|
||||
2025/10/17-15:19:41.060762 7f7b6f3ff6c0 Delete type=0 #175
|
||||
2025/10/17-15:19:41.066886 7f7b6f3ff6c0 Manual compaction at level-0 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:19:41.066920 7f7b6f3ff6c0 Manual compaction at level-1 from '!journal!wooTFYjEwh83FwgT' @ 72057594037927935 : 1 .. '!journal.pages!wooTFYjEwh83FwgT.xhc7hqoL8kdW6lrD' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/help/MANIFEST-000178
Normal file
BIN
packs/help/MANIFEST-000178
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/maneuvers/000192.ldb
Normal file
BIN
packs/maneuvers/000192.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000159
|
||||
MANIFEST-000241
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2024/04/26-19:22:08.749669 7f8906a006c0 Recovering log #156
|
||||
2024/04/26-19:22:08.759716 7f8906a006c0 Delete type=3 #154
|
||||
2024/04/26-19:22:08.759885 7f8906a006c0 Delete type=0 #156
|
||||
2024/04/26-19:25:18.747562 7f88ffe006c0 Level-0 table #162: started
|
||||
2024/04/26-19:25:18.747596 7f88ffe006c0 Level-0 table #162: 0 bytes OK
|
||||
2024/04/26-19:25:18.785476 7f88ffe006c0 Delete type=0 #160
|
||||
2024/04/26-19:25:18.901779 7f88ffe006c0 Manual compaction at level-0 from '!items!13IYF6BPUTivFZzB' @ 72057594037927935 : 1 .. '!items!oSutlbe9wyBZccmf' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:30:30.916441 7f7b6ffff6c0 Recovering log #239
|
||||
2025/10/17-15:30:30.969161 7f7b6ffff6c0 Delete type=3 #237
|
||||
2025/10/17-15:30:30.969226 7f7b6ffff6c0 Delete type=0 #239
|
||||
2025/10/17-15:38:10.293308 7f7b6f3ff6c0 Level-0 table #244: started
|
||||
2025/10/17-15:38:10.293344 7f7b6f3ff6c0 Level-0 table #244: 0 bytes OK
|
||||
2025/10/17-15:38:10.299936 7f7b6f3ff6c0 Delete type=0 #242
|
||||
2025/10/17-15:38:10.313277 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!13IYF6BPUTivFZzB' @ 72057594037927935 : 1 .. '!items!oSutlbe9wyBZccmf' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,14 +1,7 @@
|
||||
2024/04/26-18:42:26.305585 7f89056006c0 Recovering log #152
|
||||
2024/04/26-18:42:26.316048 7f89056006c0 Delete type=3 #150
|
||||
2024/04/26-18:42:26.316142 7f89056006c0 Delete type=0 #152
|
||||
2024/04/26-19:22:04.400858 7f88ffe006c0 Level-0 table #157: started
|
||||
2024/04/26-19:22:04.404082 7f88ffe006c0 Level-0 table #157: 6648 bytes OK
|
||||
2024/04/26-19:22:04.410232 7f88ffe006c0 Delete type=0 #155
|
||||
2024/04/26-19:22:04.438765 7f88ffe006c0 Manual compaction at level-0 from '!items!13IYF6BPUTivFZzB' @ 72057594037927935 : 1 .. '!items!oSutlbe9wyBZccmf' @ 0 : 0; will stop at '!items!oSutlbe9wyBZccmf' @ 45 : 1
|
||||
2024/04/26-19:22:04.438781 7f88ffe006c0 Compacting 1@0 + 1@1 files
|
||||
2024/04/26-19:22:04.442180 7f88ffe006c0 Generated table #158@0: 15 keys, 6648 bytes
|
||||
2024/04/26-19:22:04.442217 7f88ffe006c0 Compacted 1@0 + 1@1 files => 6648 bytes
|
||||
2024/04/26-19:22:04.448645 7f88ffe006c0 compacted to: files[ 0 1 0 0 0 0 0 ]
|
||||
2024/04/26-19:22:04.448777 7f88ffe006c0 Delete type=2 #9
|
||||
2024/04/26-19:22:04.448921 7f88ffe006c0 Delete type=2 #157
|
||||
2024/04/26-19:22:04.449050 7f88ffe006c0 Manual compaction at level-0 from '!items!oSutlbe9wyBZccmf' @ 45 : 1 .. '!items!oSutlbe9wyBZccmf' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:00:21.772351 7f7b753f96c0 Recovering log #235
|
||||
2025/10/17-15:00:21.831028 7f7b753f96c0 Delete type=3 #233
|
||||
2025/10/17-15:00:21.831106 7f7b753f96c0 Delete type=0 #235
|
||||
2025/10/17-15:19:41.021157 7f7b6f3ff6c0 Level-0 table #240: started
|
||||
2025/10/17-15:19:41.021192 7f7b6f3ff6c0 Level-0 table #240: 0 bytes OK
|
||||
2025/10/17-15:19:41.028272 7f7b6f3ff6c0 Delete type=0 #238
|
||||
2025/10/17-15:19:41.041197 7f7b6f3ff6c0 Manual compaction at level-0 from '!items!13IYF6BPUTivFZzB' @ 72057594037927935 : 1 .. '!items!oSutlbe9wyBZccmf' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/maneuvers/MANIFEST-000241
Normal file
BIN
packs/maneuvers/MANIFEST-000241
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/scenes/000090.ldb
Normal file
BIN
packs/scenes/000090.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000043
|
||||
MANIFEST-000127
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2024/04/26-19:22:08.735377 7f89074006c0 Recovering log #40
|
||||
2024/04/26-19:22:08.745776 7f89074006c0 Delete type=3 #38
|
||||
2024/04/26-19:22:08.745887 7f89074006c0 Delete type=0 #40
|
||||
2024/04/26-19:25:18.595904 7f88ffe006c0 Level-0 table #46: started
|
||||
2024/04/26-19:25:18.595980 7f88ffe006c0 Level-0 table #46: 0 bytes OK
|
||||
2024/04/26-19:25:18.630930 7f88ffe006c0 Delete type=0 #44
|
||||
2024/04/26-19:25:18.747411 7f88ffe006c0 Manual compaction at level-0 from '!scenes!YYBr138LR7ntGFdo' @ 72057594037927935 : 1 .. '!scenes!wJJTdzEVyJpkUXaM' @ 0 : 0; will stop at (end)
|
||||
2024/04/26-19:25:18.747487 7f88ffe006c0 Manual compaction at level-1 from '!scenes!YYBr138LR7ntGFdo' @ 72057594037927935 : 1 .. '!scenes!wJJTdzEVyJpkUXaM' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:30:30.864236 7f7b75bfa6c0 Recovering log #125
|
||||
2025/10/17-15:30:30.913603 7f7b75bfa6c0 Delete type=3 #123
|
||||
2025/10/17-15:30:30.913658 7f7b75bfa6c0 Delete type=0 #125
|
||||
2025/10/17-15:38:10.278555 7f7b6f3ff6c0 Level-0 table #130: started
|
||||
2025/10/17-15:38:10.278587 7f7b6f3ff6c0 Level-0 table #130: 0 bytes OK
|
||||
2025/10/17-15:38:10.286086 7f7b6f3ff6c0 Delete type=0 #128
|
||||
2025/10/17-15:38:10.286263 7f7b6f3ff6c0 Manual compaction at level-0 from '!scenes!DDibQQLAvyIq9y09' @ 72057594037927935 : 1 .. '!scenes!zvY1RwBhTfwdZIBa' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:38:10.286292 7f7b6f3ff6c0 Manual compaction at level-1 from '!scenes!DDibQQLAvyIq9y09' @ 72057594037927935 : 1 .. '!scenes!zvY1RwBhTfwdZIBa' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,15 +1,8 @@
|
||||
2024/04/26-18:42:26.291319 7f8906a006c0 Recovering log #36
|
||||
2024/04/26-18:42:26.301937 7f8906a006c0 Delete type=3 #34
|
||||
2024/04/26-18:42:26.302002 7f8906a006c0 Delete type=0 #36
|
||||
2024/04/26-19:22:04.316977 7f88ffe006c0 Level-0 table #41: started
|
||||
2024/04/26-19:22:04.320512 7f88ffe006c0 Level-0 table #41: 1610 bytes OK
|
||||
2024/04/26-19:22:04.326671 7f88ffe006c0 Delete type=0 #39
|
||||
2024/04/26-19:22:04.358352 7f88ffe006c0 Manual compaction at level-0 from '!scenes!YYBr138LR7ntGFdo' @ 72057594037927935 : 1 .. '!scenes!wJJTdzEVyJpkUXaM' @ 0 : 0; will stop at (end)
|
||||
2024/04/26-19:22:04.389705 7f88ffe006c0 Manual compaction at level-1 from '!scenes!YYBr138LR7ntGFdo' @ 72057594037927935 : 1 .. '!scenes!wJJTdzEVyJpkUXaM' @ 0 : 0; will stop at '!scenes!wJJTdzEVyJpkUXaM' @ 4 : 1
|
||||
2024/04/26-19:22:04.389720 7f88ffe006c0 Compacting 1@1 + 1@2 files
|
||||
2024/04/26-19:22:04.392996 7f88ffe006c0 Generated table #42@1: 2 keys, 1610 bytes
|
||||
2024/04/26-19:22:04.393035 7f88ffe006c0 Compacted 1@1 + 1@2 files => 1610 bytes
|
||||
2024/04/26-19:22:04.400428 7f88ffe006c0 compacted to: files[ 0 0 1 0 0 0 0 ]
|
||||
2024/04/26-19:22:04.400531 7f88ffe006c0 Delete type=2 #5
|
||||
2024/04/26-19:22:04.400646 7f88ffe006c0 Delete type=2 #41
|
||||
2024/04/26-19:22:04.400749 7f88ffe006c0 Manual compaction at level-1 from '!scenes!wJJTdzEVyJpkUXaM' @ 4 : 1 .. '!scenes!wJJTdzEVyJpkUXaM' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:00:21.717758 7f7b74bf86c0 Recovering log #121
|
||||
2025/10/17-15:00:21.769008 7f7b74bf86c0 Delete type=3 #119
|
||||
2025/10/17-15:00:21.769070 7f7b74bf86c0 Delete type=0 #121
|
||||
2025/10/17-15:19:41.060844 7f7b6f3ff6c0 Level-0 table #126: started
|
||||
2025/10/17-15:19:41.060869 7f7b6f3ff6c0 Level-0 table #126: 0 bytes OK
|
||||
2025/10/17-15:19:41.066791 7f7b6f3ff6c0 Delete type=0 #124
|
||||
2025/10/17-15:19:41.066893 7f7b6f3ff6c0 Manual compaction at level-0 from '!scenes!DDibQQLAvyIq9y09' @ 72057594037927935 : 1 .. '!scenes!zvY1RwBhTfwdZIBa' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:19:41.066927 7f7b6f3ff6c0 Manual compaction at level-1 from '!scenes!DDibQQLAvyIq9y09' @ 72057594037927935 : 1 .. '!scenes!zvY1RwBhTfwdZIBa' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/scenes/MANIFEST-000127
Normal file
BIN
packs/scenes/MANIFEST-000127
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/specialisation/000192.ldb
Normal file
BIN
packs/specialisation/000192.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000159
|
||||
MANIFEST-000241
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2024/04/26-19:22:08.694940 7f89056006c0 Recovering log #156
|
||||
2024/04/26-19:22:08.705096 7f89056006c0 Delete type=3 #154
|
||||
2024/04/26-19:22:08.705158 7f89056006c0 Delete type=0 #156
|
||||
2024/04/26-19:25:18.631092 7f88ffe006c0 Level-0 table #162: started
|
||||
2024/04/26-19:25:18.631157 7f88ffe006c0 Level-0 table #162: 0 bytes OK
|
||||
2024/04/26-19:25:18.673806 7f88ffe006c0 Delete type=0 #160
|
||||
2024/04/26-19:25:18.747426 7f88ffe006c0 Manual compaction at level-0 from '!folders!00Hn2nNarlL7b0DR' @ 72057594037927935 : 1 .. '!items!yozTUjNuc2rEGjFK' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:30:30.682022 7f7b75bfa6c0 Recovering log #239
|
||||
2025/10/17-15:30:30.742602 7f7b75bfa6c0 Delete type=3 #237
|
||||
2025/10/17-15:30:30.742693 7f7b75bfa6c0 Delete type=0 #239
|
||||
2025/10/17-15:38:10.271948 7f7b6f3ff6c0 Level-0 table #244: started
|
||||
2025/10/17-15:38:10.271975 7f7b6f3ff6c0 Level-0 table #244: 0 bytes OK
|
||||
2025/10/17-15:38:10.278425 7f7b6f3ff6c0 Delete type=0 #242
|
||||
2025/10/17-15:38:10.286252 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!00Hn2nNarlL7b0DR' @ 72057594037927935 : 1 .. '!items!yozTUjNuc2rEGjFK' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,14 +1,7 @@
|
||||
2024/04/26-18:42:26.237456 7f89074006c0 Recovering log #152
|
||||
2024/04/26-18:42:26.248857 7f89074006c0 Delete type=3 #150
|
||||
2024/04/26-18:42:26.249007 7f89074006c0 Delete type=0 #152
|
||||
2024/04/26-19:22:04.337456 7f88ffe006c0 Level-0 table #157: started
|
||||
2024/04/26-19:22:04.340711 7f88ffe006c0 Level-0 table #157: 14514 bytes OK
|
||||
2024/04/26-19:22:04.346950 7f88ffe006c0 Delete type=0 #155
|
||||
2024/04/26-19:22:04.369097 7f88ffe006c0 Manual compaction at level-0 from '!folders!00Hn2nNarlL7b0DR' @ 72057594037927935 : 1 .. '!items!yozTUjNuc2rEGjFK' @ 0 : 0; will stop at '!items!yozTUjNuc2rEGjFK' @ 208 : 1
|
||||
2024/04/26-19:22:04.369120 7f88ffe006c0 Compacting 1@0 + 1@1 files
|
||||
2024/04/26-19:22:04.373318 7f88ffe006c0 Generated table #158@0: 113 keys, 16306 bytes
|
||||
2024/04/26-19:22:04.373343 7f88ffe006c0 Compacted 1@0 + 1@1 files => 16306 bytes
|
||||
2024/04/26-19:22:04.379990 7f88ffe006c0 compacted to: files[ 0 1 0 0 0 0 0 ]
|
||||
2024/04/26-19:22:04.380097 7f88ffe006c0 Delete type=2 #9
|
||||
2024/04/26-19:22:04.380204 7f88ffe006c0 Delete type=2 #157
|
||||
2024/04/26-19:22:04.400725 7f88ffe006c0 Manual compaction at level-0 from '!items!yozTUjNuc2rEGjFK' @ 208 : 1 .. '!items!yozTUjNuc2rEGjFK' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:00:21.537451 7f7b74bf86c0 Recovering log #235
|
||||
2025/10/17-15:00:21.591584 7f7b74bf86c0 Delete type=3 #233
|
||||
2025/10/17-15:00:21.591645 7f7b74bf86c0 Delete type=0 #235
|
||||
2025/10/17-15:19:41.028380 7f7b6f3ff6c0 Level-0 table #240: started
|
||||
2025/10/17-15:19:41.028403 7f7b6f3ff6c0 Level-0 table #240: 0 bytes OK
|
||||
2025/10/17-15:19:41.034791 7f7b6f3ff6c0 Delete type=0 #238
|
||||
2025/10/17-15:19:41.041211 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!00Hn2nNarlL7b0DR' @ 72057594037927935 : 1 .. '!items!yozTUjNuc2rEGjFK' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/specialisation/MANIFEST-000241
Normal file
BIN
packs/specialisation/MANIFEST-000241
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/traits/000192.ldb
Normal file
BIN
packs/traits/000192.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000159
|
||||
MANIFEST-000241
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2024/04/26-19:22:08.721470 7f8906a006c0 Recovering log #156
|
||||
2024/04/26-19:22:08.732531 7f8906a006c0 Delete type=3 #154
|
||||
2024/04/26-19:22:08.732624 7f8906a006c0 Delete type=0 #156
|
||||
2024/04/26-19:25:18.716069 7f88ffe006c0 Level-0 table #162: started
|
||||
2024/04/26-19:25:18.716099 7f88ffe006c0 Level-0 table #162: 0 bytes OK
|
||||
2024/04/26-19:25:18.747273 7f88ffe006c0 Delete type=0 #160
|
||||
2024/04/26-19:25:18.747446 7f88ffe006c0 Manual compaction at level-0 from '!folders!DiwHbtGAkTYxtshX' @ 72057594037927935 : 1 .. '!items!zgNI2haxhBxBDBdl' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:30:30.802095 7f7b6ffff6c0 Recovering log #239
|
||||
2025/10/17-15:30:30.861659 7f7b6ffff6c0 Delete type=3 #237
|
||||
2025/10/17-15:30:30.861731 7f7b6ffff6c0 Delete type=0 #239
|
||||
2025/10/17-15:38:10.258105 7f7b6f3ff6c0 Level-0 table #244: started
|
||||
2025/10/17-15:38:10.258177 7f7b6f3ff6c0 Level-0 table #244: 0 bytes OK
|
||||
2025/10/17-15:38:10.264342 7f7b6f3ff6c0 Delete type=0 #242
|
||||
2025/10/17-15:38:10.286223 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!DiwHbtGAkTYxtshX' @ 72057594037927935 : 1 .. '!items!zgNI2haxhBxBDBdl' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,14 +1,7 @@
|
||||
2024/04/26-18:42:26.268836 7f89056006c0 Recovering log #152
|
||||
2024/04/26-18:42:26.284952 7f89056006c0 Delete type=3 #150
|
||||
2024/04/26-18:42:26.285029 7f89056006c0 Delete type=0 #152
|
||||
2024/04/26-19:22:04.347189 7f88ffe006c0 Level-0 table #157: started
|
||||
2024/04/26-19:22:04.350819 7f88ffe006c0 Level-0 table #157: 3577 bytes OK
|
||||
2024/04/26-19:22:04.358154 7f88ffe006c0 Delete type=0 #155
|
||||
2024/04/26-19:22:04.380268 7f88ffe006c0 Manual compaction at level-0 from '!folders!DiwHbtGAkTYxtshX' @ 72057594037927935 : 1 .. '!items!zgNI2haxhBxBDBdl' @ 0 : 0; will stop at '!items!zgNI2haxhBxBDBdl' @ 98 : 1
|
||||
2024/04/26-19:22:04.380277 7f88ffe006c0 Compacting 1@0 + 1@1 files
|
||||
2024/04/26-19:22:04.383386 7f88ffe006c0 Generated table #158@0: 25 keys, 4133 bytes
|
||||
2024/04/26-19:22:04.383409 7f88ffe006c0 Compacted 1@0 + 1@1 files => 4133 bytes
|
||||
2024/04/26-19:22:04.389454 7f88ffe006c0 compacted to: files[ 0 1 0 0 0 0 0 ]
|
||||
2024/04/26-19:22:04.389551 7f88ffe006c0 Delete type=2 #9
|
||||
2024/04/26-19:22:04.389636 7f88ffe006c0 Delete type=2 #157
|
||||
2024/04/26-19:22:04.400736 7f88ffe006c0 Manual compaction at level-0 from '!items!zgNI2haxhBxBDBdl' @ 98 : 1 .. '!items!zgNI2haxhBxBDBdl' @ 0 : 0; will stop at (end)
|
||||
2025/10/17-15:00:21.652305 7f7b753f96c0 Recovering log #235
|
||||
2025/10/17-15:00:21.715259 7f7b753f96c0 Delete type=3 #233
|
||||
2025/10/17-15:00:21.715340 7f7b753f96c0 Delete type=0 #235
|
||||
2025/10/17-15:19:41.034921 7f7b6f3ff6c0 Level-0 table #240: started
|
||||
2025/10/17-15:19:41.034948 7f7b6f3ff6c0 Level-0 table #240: 0 bytes OK
|
||||
2025/10/17-15:19:41.041045 7f7b6f3ff6c0 Delete type=0 #238
|
||||
2025/10/17-15:19:41.041223 7f7b6f3ff6c0 Manual compaction at level-0 from '!folders!DiwHbtGAkTYxtshX' @ 72057594037927935 : 1 .. '!items!zgNI2haxhBxBDBdl' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/traits/MANIFEST-000241
Normal file
BIN
packs/traits/MANIFEST-000241
Normal file
Binary file not shown.
1339
postcss/ecryme.css
1339
postcss/ecryme.css
File diff suppressed because it is too large
Load Diff
1366
styles/ecryme.css
1366
styles/ecryme.css
File diff suppressed because it is too large
Load Diff
14
system.json
14
system.json
@@ -3,8 +3,10 @@
|
||||
"esmodules": [
|
||||
"modules/ecryme-main.js"
|
||||
],
|
||||
"gridDistance": 1,
|
||||
"gridUnits": "m",
|
||||
"grid": {
|
||||
"distance": 2,
|
||||
"units": "m"
|
||||
},
|
||||
"languages": [
|
||||
{
|
||||
"lang": "fr",
|
||||
@@ -102,8 +104,8 @@
|
||||
"license": "LICENSE.txt",
|
||||
"manifest": "https://www.uberwald.me/gitea/public/fvtt-ecryme/raw/branch/master/system.json",
|
||||
"compatibility": {
|
||||
"minimum": "11",
|
||||
"verified": "12"
|
||||
"minimum": "13",
|
||||
"verified": "13"
|
||||
},
|
||||
"id": "fvtt-ecryme",
|
||||
"primaryTokenAttribute": "secondary.health",
|
||||
@@ -123,7 +125,7 @@
|
||||
},
|
||||
"title": "Ecryme, le Jeu de Rôles",
|
||||
"url": "https://www.uberwald.me/gitea/public/fvtt-ecryme",
|
||||
"version": "12.0.0",
|
||||
"download": "https://www.uberwald.me/gitea/public/fvtt-ecryme/archive/fvtt-ecryme-v12.0.0.zip",
|
||||
"version": "13.0.3",
|
||||
"download": "https://www.uberwald.me/gitea/public/fvtt-ecryme/archive/fvtt-ecryme-v13.0.3.zip",
|
||||
"background": "systems/fvtt-ecryme/images/assets/ecryme_extract_panel_01.webp"
|
||||
}
|
||||
@@ -31,26 +31,31 @@
|
||||
"pnjvalue": 0,
|
||||
"skilllist": {
|
||||
"athletics": {
|
||||
"key": "athletics",
|
||||
"name": "ECRY.ui.athletics",
|
||||
"max": 0,
|
||||
"value": 0
|
||||
},
|
||||
"driving": {
|
||||
"key": "driving",
|
||||
"name": "ECRY.ui.driving",
|
||||
"max": 0,
|
||||
"value": 0
|
||||
},
|
||||
"fencing": {
|
||||
"key": "fencing",
|
||||
"name": "ECRY.ui.fencing",
|
||||
"max": 0,
|
||||
"value": 0
|
||||
},
|
||||
"brawling": {
|
||||
"key": "brawling",
|
||||
"name": "ECRY.ui.brawling",
|
||||
"max": 0,
|
||||
"value": 0
|
||||
},
|
||||
"shooting": {
|
||||
"key": "shooting",
|
||||
"name": "ECRY.ui.shooting",
|
||||
"max": 0,
|
||||
"value": 0
|
||||
@@ -62,26 +67,31 @@
|
||||
"pnjvalue": 0,
|
||||
"skilllist": {
|
||||
"anthropomecanology": {
|
||||
"key": "anthropomecanology",
|
||||
"name": "ECRY.ui.anthropomecanology",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"ecrymology": {
|
||||
"key": "ecrymology",
|
||||
"name": "ECRY.ui.ecrymology",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"traumatology": {
|
||||
"key": "traumatology",
|
||||
"name": "ECRY.ui.traumatology",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"traversology": {
|
||||
"key": "traversology",
|
||||
"name": "ECRY.ui.traversology",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"urbatechnology": {
|
||||
"key": "urbatechnology",
|
||||
"name": "ECRY.ui.urbatechnology",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
@@ -93,26 +103,31 @@
|
||||
"pnjvalue": 0,
|
||||
"skilllist": {
|
||||
"quibbling": {
|
||||
"key": "quibbling",
|
||||
"name": "ECRY.ui.quibbling",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"creativity": {
|
||||
"key": "creativity",
|
||||
"name": "ECRY.ui.creativity",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"loquacity": {
|
||||
"key": "loquacity",
|
||||
"name": "ECRY.ui.loquacity",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"guile": {
|
||||
"key": "guile",
|
||||
"name": "ECRY.ui.guile",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"performance": {
|
||||
"key": "performance",
|
||||
"name": "ECRY.ui.performance",
|
||||
"value": 0,
|
||||
"max": 10
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
<div>
|
||||
<ul>
|
||||
<li>Confrontation : {{rollData1.alias}} vs {{rollData2.alias}}</li>
|
||||
<li><strong>Confrontation</strong> : {{rollData1.alias}} vs {{rollData2.alias}}</li>
|
||||
<li>{{localize rollData1.skill.name}} ({{rollData1.skill.value}}) vs {{localize rollData2.skill.name}} ({{rollData2.skill.value}}) </li>
|
||||
<li>{{rollData1.executionTotal}} vs {{rollData2.preservationTotal}} : {{marginExecution}}</li>
|
||||
<li>{{rollData1.preservationTotal}} vs {{rollData2.executionTotal}} : {{marginPreservation}}</li>
|
||||
@@ -32,21 +32,21 @@
|
||||
<li>{{localize "ECRY.ui.effect"}} {{localize "ECRY.ui.execution"}} : {{effectExecution}}</li>
|
||||
{{#if impactExecution}}
|
||||
<li>Impact {{rollData2.alias}} : 1 {{localize (concat "ECRY.ui." impactExecution)}}</li>
|
||||
<button class="button-apply-impact" data-actor-id="{{rollData2.actorId}}" data-impact-type={{rollData1.skill.categKey}} data-impact="{{impactExecution}}">{{localize "ECRY.ui.applyimpact"}}</button>
|
||||
<button class="button-apply-impact" data-token-id="{{rollData2.tokenId}}" data-actor-id="{{rollData2.actorId}}" data-impact-type={{rollData1.skill.categKey}} data-impact="{{impactExecution}}">{{localize "ECRY.ui.applyimpact"}}</button>
|
||||
{{/if}}
|
||||
{{#if bonus2}}
|
||||
<li>Bonus {{rollData2.alias}} : {{bonus2}}</li>
|
||||
<button class="button-apply-bonus" data-actor-id="{{rollData2.actorId}}" data-bonus="{{bonus2}}">{{localize "ECRY.ui.applybonus"}}</button>
|
||||
<button class="button-apply-bonus" data-token-id="{{rollData2.tokenId}}" data-actor-id="{{rollData2.actorId}}" data-bonus="{{bonus2}}">{{localize "ECRY.ui.applybonus"}}</button>
|
||||
{{/if}}
|
||||
|
||||
<li>{{localize "ECRY.ui.effect"}} {{localize "ECRY.ui.preservation"}} : {{effectPreservation}}</li>
|
||||
{{#if impactPreservation}}
|
||||
<li>Impact {{rollData1.alias}} : 1 {{localize (concat "ECRY.ui." impactPreservation)}}</li>
|
||||
<button class="button-apply-impact" data-actor-id="{{rollData1.actorId}}" data-impact-type={{rollData1.skill.categKey}} data-impact="{{impactPreservation}}">{{localize "ECRY.ui.applyimpact"}}</button>
|
||||
<button class="button-apply-impact" data-token-id="{{rollData1.tokenId}}" data-actor-id="{{rollData1.actorId}}" data-impact-type={{rollData1.skill.categKey}} data-impact="{{impactPreservation}}">{{localize "ECRY.ui.applyimpact"}}</button>
|
||||
{{/if}}
|
||||
{{#if bonus1}}
|
||||
<li>Bonus {{rollData1.alias}} : {{bonus1}}</li>
|
||||
<button class="button-apply-bonus" data-actor-id="{{rollData1.actorId}}" data-bonus="{{bonus1}}">{{localize "ECRY.ui.applybonus"}}</button>
|
||||
<button class="button-apply-bonus" data-token-id="{{rollData1.tokenId}}" data-actor-id="{{rollData1.actorId}}" data-bonus="{{bonus1}}">{{localize "ECRY.ui.applybonus"}}</button>
|
||||
{{/if}}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -114,8 +114,8 @@
|
||||
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Bonus/Malus : </span>
|
||||
<select id="bonusMalusPerso" name="bonusMalusPerso">
|
||||
{{selectOptions config.bonusMalusPersoOptions selected=bonusMalusPerso valueAttr="value" labelAttr="label"}}
|
||||
<select id="bonusMalusPerso" name="bonusMalusPerso" type="text" data-dtype="String">
|
||||
{{selectOptions config.bonusMalusPersoOptions selected=bonusMalusPerso labelAttr="label"}}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -71,8 +71,8 @@
|
||||
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Bonus/Malus : </span>
|
||||
<select id="bonusMalusPerso" name="bonusMalusPerso">
|
||||
{{selectOptions config.bonusMalusPersoOptions selected=bonusMalusPerso valueAttr="value" labelAttr="label"}}
|
||||
<select type="text" id="bonusMalusPerso" name="bonusMalusPerso" data-dtype="String">
|
||||
{{selectOptions config.bonusMalusPersoOptions selected=bonusMalusPerso labelAttr="label"}}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
|
||||
<div class="flexrow">
|
||||
<span class="roll-dialog-label">Difficulté : </span>
|
||||
<select class="" type="text" id="roll-difficulty" data-dtype="Number">
|
||||
{{selectOptions config.difficulty selected=difficulty localize=true valueAttr="value" labelAttr="difficulty"}}
|
||||
<select class="" type="text" id="roll-difficulty" data-dtype="String">
|
||||
{{selectOptions config.difficulty selected=difficulty localize=true labelAttr="difficulty"}}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<li class="flexrow">
|
||||
<label class="item-name-label-long">{{localize "ECRY.ui.skill"}}</label>
|
||||
<select class="item-field-label-medium" type="text" name="system.skillkey" value="{{system.skillkey}}" data-dtype="String">
|
||||
{{selectOptions config.skills selected=system.skillkey localize=true valueAttr="key" textAttr="name"}}
|
||||
{{selectOptions config.skills selected=system.skillkey localize=true valueAttr="key" labelAttr="name"}}
|
||||
</select>
|
||||
</li>
|
||||
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
|
||||
<li class="flexrow">
|
||||
<label class="item-name-label-long">{{localize "ECRY.ui.niveauTrait"}}</label>
|
||||
<select class="item-field-label-medium" type="text" name="system.level" value="{{system.level}}" data-dtype="Number">
|
||||
{{selectOptions config.traitLevel selected=system.level valueAttr="value" textAttr="text"}}
|
||||
<select class="item-field-label-medium" type="text" name="system.level" value="{{system.level}}" data-dtype="String">
|
||||
{{selectOptions config.traitLevel selected=system.level labelAttr="text"}}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<label class="item-field-label-long">{{localize "ECRY.ui.cost"}}</label>
|
||||
<input type="text" class="item-field-label-short" name="system.cost" value="{{system.cost}}" data-dtype="Number" />
|
||||
<select class="item-field-label-medium" type="text" name="system.costunit" value="{{system.costunit}}" data-dtype="String">
|
||||
{{selectOptions config.costUnits selected=system.costunit localize=true}}
|
||||
{{selectOptions config.costUnits selected=system.costunit localize=true labelAttr="name"}}
|
||||
</select>
|
||||
</li>
|
||||
|
||||
|
||||
42
welcome-message-ecryme.html
Normal file
42
welcome-message-ecryme.html
Normal file
@@ -0,0 +1,42 @@
|
||||
<h3 class="welcome-message-h3">Bonjour à tous !</h3>
|
||||
|
||||
<div class="message-chat-center">
|
||||
👋 Juste un petit message pour vous informer que :
|
||||
<br />
|
||||
<strong
|
||||
>⚠️ Le nouveau financement participatif pour la prochaine extension
|
||||
d'Écryme, LES SECRETS DE L'ÉCRYME ouvre le 21 octobre !</strong
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="message-chat-center">
|
||||
⚠️ Suivez la page de pré-lancement ici pour être sûr de ne pas manquer le
|
||||
lancement : <br /><a href="https://shorturl.at/qDjg7"
|
||||
>https://shorturl.at/qDjg7</a
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="message-chat-center">
|
||||
Nous avons aussi un nouveau Discord pour ceux ou celles qui souhaiteraient
|
||||
participer plus activement à la communauté des jeux d'Open Sesame Games, avec
|
||||
un espace dédié aux écrymiens ! <br />
|
||||
Nouveaux joueurs comme vétérans sont les bienvenus, n'hésitez pas à passer
|
||||
pour papoter, profiter de nos ressources, ou suivre les nouvelles d'OSG plus
|
||||
directement. Cliquez ici :<br />
|
||||
<a href="https://discord.gg/dUPhNfJdaD">https://discord.gg/dUPhNfJdaD</a
|
||||
><br />
|
||||
</div>
|
||||
|
||||
<div class="message-chat-center">
|
||||
Ce système vous est proposé par Open Sesame Games.<br />
|
||||
Vous trouverez de l'aide dans
|
||||
@UUID[Compendium.fvtt-ecryme.help.JournalEntry.wooTFYjEwh83FwgT]{Aide pour
|
||||
Ecryme}<br />
|
||||
ainsi que sur le Discord de Foundry FR :<br>
|
||||
<a href="https://discord.gg/pPSDNJk">https://discord.gg/pPSDNJk</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
Merci pour votre attention et à très bientôt pour la suite ! L'équipe Open
|
||||
Sesame Games
|
||||
</div>
|
||||
Reference in New Issue
Block a user