Compare commits

...

3 commits
1.0.0 ... main

3 changed files with 30 additions and 14 deletions

View file

@ -21,7 +21,7 @@ This module adds visually stunning effects to chat cardswhen a player or GM roll
1. Open FoundryVTT and go to the **Add-on Modules** tab. 1. Open FoundryVTT and go to the **Add-on Modules** tab.
2. Click **Install Module**. 2. Click **Install Module**.
3. In the "Manifest URL" field, paste the following link: 3. In the "Manifest URL" field, paste the following link:
`https://github.com/cptn-cosmo/dh-immersive-crits/releases/latest/download/module.json` `https://git.geeks.gay/cosmo/dh-immersive-crits/src/branch/main/module.json`
4. Click **Install**. 4. Click **Install**.
## Configuration ## Configuration
@ -36,8 +36,3 @@ Go to **Game Settings** -> **Configure Settings** -> **Module Settings** -> **Im
- **FoundryVTT**: v13+ - **FoundryVTT**: v13+
- **System**: Daggerheart - **System**: Daggerheart
## Credits
Created by **CPTN Cosmo**.
Project URL: [GitHub](https://github.com/cptn-cosmo/dh-immersive-crits)

View file

@ -1,7 +1,7 @@
{ {
"id": "dh-immersive-crits", "id": "dh-immersive-crits",
"title": "Immersive Crits for Daggerheart", "title": "Immersive Crits for Daggerheart",
"version": "1.0.0", "version": "1.1.0",
"compatibility": { "compatibility": {
"minimum": "13", "minimum": "13",
"verified": "13" "verified": "13"
@ -30,8 +30,8 @@
"styles": [ "styles": [
"styles/immersive-crits.css" "styles/immersive-crits.css"
], ],
"url": "https://github.com/cptn-cosmo/dh-immersive-crits", "url": "https://git.geeks.gay/cosmo/dh-immersive-crits",
"manifest": "https://github.com/cptn-cosmo/dh-immersive-crits/releases/latest/download/module.json", "manifest": "https://git.geeks.gay/cosmo/dh-immersive-crits/releases/latest/download/module.json",
"download": "https://github.com/cptn-cosmo/dh-immersive-crits/releases/download/1.0.0/dh-immersive-crits.zip", "download": "https://git.geeks.gay/cosmo/dh-immersive-crits/releases/download/1.1.0/dh-immersive-crits.zip",
"description": "Immersive crits for Daggerheart." "description": "Immersive crits for Daggerheart."
} }

View file

@ -1,9 +1,30 @@
Hooks.once('init', () => { Hooks.once('init', () => {
// Register Settings // Register Settings
// Register Configuration - Scope Mode
game.settings.register('dh-immersive-crits', 'configurationMode', {
name: 'Configuration Mode',
hint: 'Choose whether settings are global (GM controls everyone) or client-specific (users choose their own). Requires a reload to take effect.',
scope: 'world',
config: true,
type: String,
choices: {
"world": "Global (GM Controlled)",
"client": "Per-User (Player Controlled)"
},
default: 'world',
onChange: () => {
// We can't easily force a reload, but the hint says it's required.
// Ideally we'd pop a dialog but a hint is sufficient for now.
}
});
const configMode = game.settings.get('dh-immersive-crits', 'configurationMode');
const targetScope = configMode;
game.settings.register('dh-immersive-crits', 'critAnimation', { game.settings.register('dh-immersive-crits', 'critAnimation', {
name: 'Critical Hit Animation', name: 'Critical Hit Animation',
hint: 'Select the visual effect for critical hit chat cards.', hint: 'Select the visual effect for critical hit chat cards.',
scope: 'world', scope: targetScope,
config: true, config: true,
type: String, type: String,
choices: { choices: {
@ -21,7 +42,7 @@ Hooks.once('init', () => {
game.settings.register('dh-immersive-crits', 'pulseColor', { game.settings.register('dh-immersive-crits', 'pulseColor', {
name: 'Pulse Color', name: 'Pulse Color',
hint: 'Select the color for the Pulse animation.', hint: 'Select the color for the Pulse animation.',
scope: 'world', scope: targetScope,
config: true, config: true,
type: String, type: String,
default: '#ff0000' default: '#ff0000'
@ -30,7 +51,7 @@ Hooks.once('init', () => {
game.settings.register('dh-immersive-crits', 'dsnCritEffect', { game.settings.register('dh-immersive-crits', 'dsnCritEffect', {
name: 'DiceSoNice Critical Effect', name: 'DiceSoNice Critical Effect',
hint: 'Select the DiceSoNice special effect to play on critical hits.', hint: 'Select the DiceSoNice special effect to play on critical hits.',
scope: 'world', scope: targetScope,
config: true, config: true,
type: String, type: String,
choices: { choices: {