export const registerSystemSettings = function() { /** * Track the system version upon which point a migration was last applied */ game.settings.register("sw5e", "systemMigrationVersion", { name: "System Migration Version", scope: "world", config: false, type: String, default: game.system.data.version }); /** * Register resting variants */ game.settings.register("sw5e", "restVariant", { name: "SETTINGS.5eRestN", hint: "SETTINGS.5eRestL", scope: "world", config: true, default: "normal", type: String, choices: { "normal": "SETTINGS.5eRestPHB", "gritty": "SETTINGS.5eRestGritty", "epic": "SETTINGS.5eRestEpic", } }); /** * Register diagonal movement rule setting */ game.settings.register("sw5e", "diagonalMovement", { name: "SETTINGS.5eDiagN", hint: "SETTINGS.5eDiagL", scope: "world", config: true, default: "555", type: String, choices: { "555": "SETTINGS.5eDiagPHB", "5105": "SETTINGS.5eDiagDMG", "EUCL": "SETTINGS.5eDiagEuclidean", }, onChange: rule => canvas.grid.diagonalRule = rule }); /** * Register Initiative formula setting */ game.settings.register("sw5e", "initiativeDexTiebreaker", { name: "SETTINGS.5eInitTBN", hint: "SETTINGS.5eInitTBL", scope: "world", config: true, default: false, type: Boolean }); /** * Require Currency Carrying Weight */ game.settings.register("sw5e", "currencyWeight", { name: "SETTINGS.5eCurWtN", hint: "SETTINGS.5eCurWtL", scope: "world", config: true, default: true, type: Boolean }); /** * Option to disable XP bar for session-based or story-based advancement. */ game.settings.register("sw5e", "disableExperienceTracking", { name: "SETTINGS.5eNoExpN", hint: "SETTINGS.5eNoExpL", scope: "world", config: true, default: false, type: Boolean, }); /** * Option to automatically collapse Item Card descriptions */ game.settings.register("sw5e", "autoCollapseItemCards", { name: "SETTINGS.5eAutoCollapseCardN", hint: "SETTINGS.5eAutoCollapseCardL", scope: "client", config: true, default: false, type: Boolean, onChange: s => { ui.chat.render(); } }); /** * Option to allow GMs to restrict polymorphing to GMs only. */ game.settings.register('sw5e', 'allowPolymorphing', { name: 'SETTINGS.5eAllowPolymorphingN', hint: 'SETTINGS.5eAllowPolymorphingL', scope: 'world', config: true, default: false, type: Boolean }); /** * Remember last-used polymorph settings. */ game.settings.register('sw5e', 'polymorphSettings', { scope: 'client', default: { keepPhysical: false, keepMental: false, keepSaves: false, keepSkills: false, mergeSaves: false, mergeSkills: false, keepClass: false, keepFeats: false, keepPowers: false, keepItems: false, keepBio: false, keepVision: true, transformTokens: true } }); game.settings.register("sw5e", "colorTheme", { name: "SETTINGS.SWColorN", hint: "SETTINGS.SWColorL", scope: "world", config: true, default: "light", type: String, choices: { "light": "SETTINGS.SWColorLight", "dark": "SETTINGS.SWColorDark" } }); };