Added HFH Settings

Added toggles for the Exploding 20s and BHR, and language for both.
master
The Happy Anarchist 2020-09-24 19:46:06 -10:00
parent 49044b84cc
commit fc1c721a00
5 changed files with 44 additions and 24 deletions

View File

@ -103,6 +103,8 @@
"ACKS.HealthShort": "HP", "ACKS.HealthShort": "HP",
"ACKS.HitDice": "Hit Dice", "ACKS.HitDice": "Hit Dice",
"ACKS.HitDiceShort": "HD", "ACKS.HitDiceShort": "HD",
"ACKS.BHR": "Base Healing Rate",
"ACKS.BHRShort": "BHR",
"ACKS.movement.base": "Movement Rate", "ACKS.movement.base": "Movement Rate",
"ACKS.movement.short": "MV", "ACKS.movement.short": "MV",
@ -137,8 +139,6 @@
"ACKS.AttacksShort": "ATT", "ACKS.AttacksShort": "ATT",
"ACKS.Damage": "Damage", "ACKS.Damage": "Damage",
"ACKS.Spellcaster": "Spellcaster", "ACKS.Spellcaster": "Spellcaster",
"ACKS.BHR": "Base Healing Rate",
"ACKS.BHRShort": "BHR",
"ACKS.Language": "Language", "ACKS.Language": "Language",
"ACKS.SpokenLanguages": "Spoken Languages", "ACKS.SpokenLanguages": "Spoken Languages",
@ -188,6 +188,10 @@
"ACKS.Setting.MovementAuto": "Calculate Movement", "ACKS.Setting.MovementAuto": "Calculate Movement",
"ACKS.Setting.SignificantTreasure": "Significant Treasure Weight", "ACKS.Setting.SignificantTreasure": "Significant Treasure Weight",
"ACKS.Setting.SignificantTreasureHint": "Weight at which treasure will reduce the movement, only useful for basic encumbrance", "ACKS.Setting.SignificantTreasureHint": "Weight at which treasure will reduce the movement, only useful for basic encumbrance",
"ACKS.Setting.Explode20": "HFH: Exploding attack throws",
"ACKS.Setting.Explode20Hint": "Heroic Fantasy Option: Attack throws explode on 20 - Critical if exceed target AC by 10",
"ACKS.Setting.BHR": "HFH: Base Healing Rate",
"ACKS.Setting.BHRHint": "Heroic Fantasy Option: Base Healing Rate per day varies by Max HP",
"ACKS.items.Equip": "Equip", "ACKS.items.Equip": "Equip",
"ACKS.items.Unequip": "Unequip", "ACKS.items.Unequip": "Unequip",

View File

@ -51,6 +51,7 @@ export class AcksActorSheetCharacter extends AcksActorSheet {
data.config.ascendingAC = game.settings.get("acks", "ascendingAC"); data.config.ascendingAC = game.settings.get("acks", "ascendingAC");
data.config.initiative = game.settings.get("acks", "initiative") != "group"; data.config.initiative = game.settings.get("acks", "initiative") != "group";
data.config.encumbrance = game.settings.get("acks", "encumbranceOption"); data.config.encumbrance = game.settings.get("acks", "encumbranceOption");
data.config.BHR = game.settings.get("acks", "bhr");
data.isNew = this.actor.isNew(); data.isNew = this.actor.isNew();
return data; return data;

View File

@ -451,7 +451,12 @@ export class AcksActor extends Actor {
rollAttack(attData, options = {}) { rollAttack(attData, options = {}) {
const data = this.data.data; const data = this.data.data;
const rollParts = ["1d20x="]; let rollParts = ["1d20"];
if (game.settings.get("acks", "exploding20s")) {
rollParts = ["1d20x="];
}
const dmgParts = []; const dmgParts = [];
let label = game.i18n.format("ACKS.roll.attacks", { let label = game.i18n.format("ACKS.roll.attacks", {
name: this.data.name, name: this.data.name,

View File

@ -20,7 +20,21 @@ export const registerSettings = function () {
default: true, default: true,
scope: "world", scope: "world",
type: Boolean, type: Boolean,
config: false,
onChange: _ => window.location.reload()
});
game.settings.register("acks", "encumbranceOption", {
name: game.i18n.localize("ACKS.Setting.Encumbrance"),
hint: game.i18n.localize("ACKS.Setting.EncumbranceHint"),
default: "detailed",
scope: "world",
type: String,
config: true, config: true,
choices: {
detailed: "ACKS.Setting.EncumbranceDetailed",
complete: "ACKS.Setting.EncumbranceComplete",
},
onChange: _ => window.location.reload() onChange: _ => window.location.reload()
}); });
@ -33,29 +47,23 @@ export const registerSettings = function () {
config: true, config: true,
}); });
game.settings.register("acks", "encumbranceOption", { game.settings.register("acks", "exploding20s", {
name: game.i18n.localize("ACKS.Setting.Encumbrance"), name: game.i18n.localize("ACKS.Setting.Explode20"),
hint: game.i18n.localize("ACKS.Setting.EncumbranceHint"), hint: game.i18n.localize("ACKS.Setting.Explode20Hint"),
default: "detailed", default: false,
scope: "world", scope: "world",
type: String, type: Boolean,
config: true, config: true,
choices: {
// disabled: "ACKS.Setting.EncumbranceDisabled",
// basic: "ACKS.Setting.EncumbranceBasic",
detailed: "ACKS.Setting.EncumbranceDetailed",
complete: "ACKS.Setting.EncumbranceComplete",
},
onChange: _ => window.location.reload() onChange: _ => window.location.reload()
}); });
// game.settings.register("acks", "significantTreasure", { game.settings.register("acks", "bhr", {
// name: game.i18n.localize("ACKS.Setting.SignificantTreasure"), name: game.i18n.localize("ACKS.Setting.BHR"),
// hint: game.i18n.localize("ACKS.Setting.SignificantTreasureHint"), hint: game.i18n.localize("ACKS.Setting.BHRHint"),
// default: 800, default: false,
// scope: "world", scope: "world",
// type: Number, type: Boolean,
// config: true, config: true,
// onChange: _ => window.location.reload() onChange: _ => window.location.reload()
// }); });
}; }

View File

@ -108,6 +108,7 @@
data-dtype="String" /> data-dtype="String" />
</div> </div>
</li> </li>
{{#if config.BHR}}
<li class="attribute bhr"> <li class="attribute bhr">
<h4 class="attribute-name box-title" title="{{ localize 'ACKS.BHR' }}"> <h4 class="attribute-name box-title" title="{{ localize 'ACKS.BHR' }}">
<a>{{ localize "ACKS.BHRShort" }}</a> <a>{{ localize "ACKS.BHRShort" }}</a>
@ -117,6 +118,7 @@
{{data.hp.bhr}} {{data.hp.bhr}}
</div> </div>
</li> </li>
{{/if}}
{{#if config.initiative}} {{#if config.initiative}}
<li class="attribute"> <li class="attribute">
<h4 class="attribute-name box-title" title="{{ localize 'ACKS.Initiative' }}"> <h4 class="attribute-name box-title" title="{{ localize 'ACKS.Initiative' }}">