Add dev settings for convenience

This commit is contained in:
Oliver-Akins 2024-12-12 00:39:09 -07:00
parent 930b24a2a9
commit 2fc3b86792
3 changed files with 54 additions and 1 deletions

View file

@ -1,9 +1,31 @@
// Applications
import { HeroSummaryCardV1 } from "../Apps/ActorSheets/HeroSummaryCardV1.mjs";
// Data Models
import { HeroData } from "../data/Actor/Hero.mjs"; import { HeroData } from "../data/Actor/Hero.mjs";
import { registerDevSettings } from "../settings/devSettings.mjs";
// Misc
import { Logger } from "../utils/Logger.mjs"; import { Logger } from "../utils/Logger.mjs";
Hooks.once(`init`, () => { Hooks.once(`init`, () => {
Logger.log(`Initializing`); Logger.log(`Initializing`);
// Datamodel registrations // #region Settings
registerDevSettings();
// #endregion
// #region Datamodels
CONFIG.Actor.dataModels.hero = HeroData; CONFIG.Actor.dataModels.hero = HeroData;
// #endregion
// #region Sheets
// #region Actors
Actors.registerSheet(game.system.id, HeroSummaryCardV1, {
makeDefault: true,
types: [`hero`],
label: `RipCrypt.sheet-names.HeroSummaryCardV1`,
});
// #endregion
// #endregion
}); });

View file

@ -2,4 +2,18 @@ import { Logger } from "../utils/Logger.mjs";
Hooks.once(`ready`, () => { Hooks.once(`ready`, () => {
Logger.log(`Ready`); Logger.log(`Ready`);
let defaultTab = game.settings.get(`ripcrypt`, `defaultTab`);
if (defaultTab) {
if (!ui.sidebar?.tabs?.[defaultTab]) {
Logger.error(`Couldn't find a sidebar tab with ID:`, defaultTab);
} else {
Logger.debug(`Switching sidebar tab to:`, defaultTab);
ui.sidebar.tabs[defaultTab].activate();
};
};
if (game.settings.get(`ripcrypt`, `devMode`)) {
if (game.paused) { game.togglePause() };
};
}); });

View file

@ -0,0 +1,17 @@
export function registerDevSettings() {
game.settings.register(`ripcrypt`, `devMode`, {
scope: `client`,
type: Boolean,
config: false,
default: false,
requiresReload: false,
});
game.settings.register(`ripcrypt`, `defaultTab`, {
name: `Default Tab`,
scope: `client`,
type: String,
config: game.settings.get(`ripcrypt`, `devMode`),
requiresReload: false,
});
};