System init

This commit is contained in:
2022-12-04 12:16:25 +01:00
parent 3668798fa7
commit 5b7f7dc075
64 changed files with 188 additions and 70 deletions

View File

@@ -13,7 +13,7 @@ export class DarkStarsActorSheet extends ActorSheet {
return mergeObject(super.defaultOptions, {
classes: ["fvtt-dark-stars", "sheet", "actor"],
template: "systems/fvtt-dark-stars/templates/actor-sheet.html",
template: "systems/fvtt-dark-stars/templates/actor-sheet.hbs",
width: 960,
height: 720,
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "skills" }],

View File

@@ -10,11 +10,11 @@ const __saveFirstToKey = { r: "reflex", f: "fortitude", w: "willpower"}
export class DarkStarsCommands {
static init() {
if (!game.system.cruciblerpg.commands) {
const crucibleCommands = new DarkStarsCommands();
crucibleCommands.registerCommand({ path: ["/rtarget"], func: (content, msg, params) => DarkStarsCommands.rollTarget(msg, params), descr: "Launch the target roll window" });
crucibleCommands.registerCommand({ path: ["/rsave"], func: (content, msg, params) => DarkStarsCommands.rollSave(msg, params), descr: "Performs a save roll" });
game.system.cruciblerpg.commands = crucibleCommands;
if (!game.system.darkstars.commands) {
const darkStarsCommands = new DarkStarsCommands();
darkStarsCommands.registerCommand({ path: ["/rtarget"], func: (content, msg, params) => DarkStarsCommands.rollTarget(msg, params), descr: "Launch the target roll window" });
darkStarsCommands.registerCommand({ path: ["/rsave"], func: (content, msg, params) => DarkStarsCommands.rollSave(msg, params), descr: "Performs a save roll" });
game.system.darkstars.commands = darkStarsCommands;
}
}
@@ -51,7 +51,7 @@ export class DarkStarsCommands {
if (path.length > 0 && path[0] && command.descr && (path.length != 1 || targetTable[path[0]] == undefined)) {
return true;
}
console.warn("crucibleCommands._validateCommand failed ", targetTable, path, command);
console.warn("darkStarsCommands._validateCommand failed ", targetTable, path, command);
return false;
}

View File

@@ -1,5 +1,5 @@
const DARKSTARS_CONFIG = {
export const DARKSTARS_CONFIG = {
basebonus : {
"csb": "CSB",

View File

@@ -11,7 +11,7 @@ export class DarkStarsItemSheet extends ItemSheet {
return mergeObject(super.defaultOptions, {
classes: ["fvtt-dark-stars", "sheet", "item"],
template: "systems/fvtt-dark-stars/templates/item-sheet.html",
template: "systems/fvtt-dark-stars/templates/items/item-sheet.hbs",
dragDrop: [{ dragSelector: null, dropSelector: null }],
width: 620,
height: 550,
@@ -49,12 +49,8 @@ export class DarkStarsItemSheet extends ItemSheet {
/* -------------------------------------------- */
async getData() {
if ( this.object.type == "skill") {
DarkStarsUtility.updateSkill(this.object)
}
let objectData = duplicate(this.object.system)
let itemData = objectData
let formData = {
title: this.title,
id: this.id,
@@ -66,7 +62,8 @@ export class DarkStarsItemSheet extends ItemSheet {
weaponSkills: DarkStarsUtility.getWeaponSkills(),
shieldSkills: DarkStarsUtility.getShieldSkills(),
description: await TextEditor.enrichHTML(this.object.system.description, {async: true}),
data: itemData,
config: game.system.darkstars.config,
system: objectData,
limited: this.object.limited,
options: this.options,
owner: this.document.isOwner,
@@ -78,7 +75,6 @@ export class DarkStarsItemSheet extends ItemSheet {
return formData;
}
/* -------------------------------------------- */
_getHeaderButtons() {
let buttons = super._getHeaderButtons();
@@ -107,7 +103,7 @@ export class DarkStarsItemSheet extends ItemSheet {
payload: chatData,
});
renderTemplate('systems/fvtt-dark-stars/templates/post-item.html', chatData).then(html => {
renderTemplate('systems/fvtt-dark-stars/templates/items/post-item.hbs', chatData).then(html => {
let chatOptions = DarkStarsUtility.chatDataSetup(html);
ChatMessage.create(chatOptions)
});
@@ -159,7 +155,7 @@ export class DarkStarsItemSheet extends ItemSheet {
/* -------------------------------------------- */
get template() {
let type = this.item.type;
return `systems/fvtt-dark-stars/templates/item-${type}-sheet.html`;
return `systems/fvtt-dark-stars/templates/items/item-${type}-sheet.hbs`;
}
/* -------------------------------------------- */

View File

@@ -1,13 +1,15 @@
import { DarkStarsUtility } from "./dark-stars-utility.js";
export const defaultItemImg = {
skill: "systems/fvtt-dark-stars/images/icons/icon_skill.webp",
armor: "systems/fvtt-dark-stars/images/icons/icon_armour.webp",
weapon: "systems/fvtt-dark-stars/images/icons/icon_weapon.webp",
equipment: "systems/fvtt-dark-stars/images/icons/icon_equipment.webp",
race: "systems/fvtt-dark-stars/images/icons/icon_race.webp",
money: "systems/fvtt-dark-stars/images/icons/icon_money.webp",
}
skill: "systems/fvtt-dark-stars/images/icons/skill.webp",
armor: "systems/fvtt-dark-stars/images/icons/armor.webp",
equipment: "systems/fvtt-dark-stars/images/icons/equipment.webp",
weapon: "systems/fvtt-dark-stars/images/icons/melee.webp",
perk: "systems/fvtt-dark-stars/images/icons/perk.webp",
ability: "systems/fvtt-dark-stars/images/icons/ability.webp",
genetic: "systems/fvtt-dark-stars/images/icons/genetic.webp",
cyber: "systems/fvtt-dark-stars/images/icons/cyber.webp"
}
/**
* Extend the basic ItemSheet with some very simple modifications

View File

@@ -15,8 +15,9 @@ import { DarkStarsNPCSheet } from "./dark-stars-npc-sheet.js";
import { DarkStarsUtility } from "./dark-stars-utility.js";
import { DarkStarsCombat } from "./dark-stars-combat.js";
import { DarkStarsItem } from "./dark-stars-item.js";
import { DarkStarsHotbar } from "./dark-star-shotbar.js"
import { DarkStarsHotbar } from "./dark-stars-hotbar.js"
import { DarkStarsCommands } from "./dark-stars-commands.js"
import { DARKSTARS_CONFIG } from "./dark-stars-config.js";
/* -------------------------------------------- */
/* Foundry VTT Initialization */
@@ -28,7 +29,8 @@ Hooks.once("init", async function () {
console.log(`Initializing DarkStars RPG`);
game.system.darkstars = {
DarkStarsCommands
DarkStarsCommands,
config: DARKSTARS_CONFIG
}
/* -------------------------------------------- */

View File

@@ -13,7 +13,7 @@ export class DarkStarsNPCSheet extends ActorSheet {
return mergeObject(super.defaultOptions, {
classes: ["dark-stars-rpg", "sheet", "actor"],
template: "systems/fvtt-dark-stars/templates/npc-sheet.html",
template: "systems/fvtt-dark-stars/templates/npc-sheet.hbs",
width: 640,
height: 720,
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "stats" }],

View File

@@ -6,7 +6,7 @@ export class DarkStarsRollDialog extends Dialog {
static async create(actor, rollData) {
let options = { classes: ["DarkStarsDialog"], width: 540, height: 340, 'z-index': 99999 };
let html = await renderTemplate('systems/fvtt-dark-stars/templates/roll-dialog-generic.html', rollData);
let html = await renderTemplate('systems/fvtt-dark-stars/templates/roll-dialog-generic.hbs', rollData);
return new DarkStarsRollDialog(actor, rollData, html, options);
}
@@ -44,7 +44,7 @@ export class DarkStarsRollDialog extends Dialog {
/* -------------------------------------------- */
async refreshDialog() {
const content = await renderTemplate("systems/fvtt-dark-stars/templates/roll-dialog-generic.html", this.rollData)
const content = await renderTemplate("systems/fvtt-dark-stars/templates/roll-dialog-generic.hbs", this.rollData)
this.data.content = content
this.render(true)
}

View File

@@ -3,7 +3,7 @@ import { DarkStarsCombat } from "./dark-stars-combat.js";
import { DarkStarsCommands } from "./dark-stars-commands.js";
/* -------------------------------------------- */
const __locationNames = { head: "Head", chest: "Chest", abdomen: "Abdomen", leftarm: "Left Arm", rightarm: "Right Arm", leftleg: "Left Leg", rightleg: "Right Leg" }
/* -------------------------------------------- */
export class DarkStarsUtility {
@@ -39,6 +39,10 @@ export class DarkStarsUtility {
Handlebars.registerHelper('mul', function (a, b) {
return parseInt(a) * parseInt(b);
})
Handlebars.registerHelper('locationLabel', function (key) {
return __locationNames[key]
})
this.gameSettings()
@@ -138,14 +142,14 @@ export class DarkStarsUtility {
static async preloadHandlebarsTemplates() {
const templatePaths = [
'systems/fvtt-dark-stars/templates/partials/editor-notes-gm.html',
'systems/fvtt-dark-stars/templates/partials/partial-roll-select.html',
'systems/fvtt-dark-stars/templates/partials/partial-actor-ability-block.html',
'systems/fvtt-dark-stars/templates/partials/partial-actor-status.html',
'systems/fvtt-dark-stars/templates/partials/partial-options-abilities.html',
'systems/fvtt-dark-stars/templates/partials/partial-item-nav.html',
'systems/fvtt-dark-stars/templates/partials/partial-item-description.html',
'systems/fvtt-dark-stars/templates/partials/partial-actor-equipment.html'
'systems/fvtt-dark-stars/templates/partials/editor-notes-gm.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-roll-select.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-actor-ability-block.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-actor-status.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-options-abilities.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-item-nav.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-item-description.hbs',
'systems/fvtt-dark-stars/templates/partials/partial-actor-equipment.hbs'
]
return loadTemplates(templatePaths);
}
@@ -391,7 +395,7 @@ export class DarkStarsUtility {
rollData.rollOrder = 1
rollData.rollType = (rollData.rollAdvantage == "roll-advantage") ? "Advantage" : "Disadvantage"
this.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat-generic-result.html`, rollData)
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat-generic-result.hbs`, rollData)
})
rollData.rollOrder = 2
@@ -401,7 +405,7 @@ export class DarkStarsUtility {
rollData.roll = myRoll2 // Tmp switch to display the proper results
rollData.nbSuccess = myRoll2.total
this.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat-generic-result.html`, rollData)
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat-generic-result.hbs`, rollData)
})
rollData.roll = myRoll // Revert the tmp switch
rollData.nbSuccess = myRoll.total
@@ -435,7 +439,7 @@ export class DarkStarsUtility {
actor.lastRoll = rollData
this.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat-generic-result.html`, rollData)
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat-generic-result.hbs`, rollData)
})
console.log("Rolldata result", rollData)