removed all Fatigue features from MWC sheetworker
proper OW enforces a -10 to all Tests at any Fatigue level, which at no point applies to Bonuses or Characteristics that Armor Limit could be nice to keep though. You might have noticed by now, my philosophy with this sheet is to keep OW rules as much as possible, but some extra features that don't affect the main rules don't hurt either
This commit is contained in:
@@ -2134,9 +2134,9 @@
|
||||
|
||||
|
||||
// ___________________________________________________________________________
|
||||
// ________________Movement, Weight, Fatigue sheet worker_____________________
|
||||
// __________________Movement and Weight sheet worker_________________________
|
||||
// ____________________and Characteristics Total/Mod__________________________
|
||||
let fieldsMWFC = [
|
||||
let fieldsMWC = [
|
||||
'size', 'carry', 'weight_total',
|
||||
'ws', 'ws_unnat', 'ws_advancement', 'ws_mod',
|
||||
'bs', 'bs_unnat', 'bs_advancement', 'bs_mod',
|
||||
@@ -2147,18 +2147,12 @@
|
||||
'wp', 'wp_unnat', 'wp_advancement', 'wp_mod',
|
||||
'fel', 'fel_unnat', 'fel_advancement', 'fel_mod',
|
||||
'agi', 'agi_unnat', 'agi_advancement', 'agi_mod', 'agi_mov_mod', 'armor_agi', 'armor_limit',
|
||||
'fatigue', 'fatigue_threshold', 'fatigue_ignore'
|
||||
];
|
||||
on('sheet:opened ' + fieldsMWFC.map(field => 'change:' + field).join(' '), function(e) {
|
||||
on('sheet:opened ' + fieldsMWC.map(field => 'change:' + field).join(' '), function(e) {
|
||||
// console.log(e);
|
||||
getAttrs(fieldsMWFC, function(values) {
|
||||
getAttrs(fieldsMWC, function(values) {
|
||||
// SIZE
|
||||
var size = parseInt(values['size'], 10) || 0;
|
||||
// FATIGUE
|
||||
var fatigue = parseInt(values['fatigue'], 10) || 0;
|
||||
var fatigueThreshold = parseInt(values['fatigue_threshold'], 10) || 0;
|
||||
var fatigueIgnore = parseInt(values['fatigue_ignore'], 10) || 0;
|
||||
if (fatigueIgnore) fatigue = 0;
|
||||
// CARRY
|
||||
var carry = parseInt(values['carry'], 10) || 0;
|
||||
var weight_total = parseInt(values['weight_total'], 10) || 0;
|
||||
@@ -2169,10 +2163,6 @@
|
||||
ws_advancement = parseInt(values['ws_advancement'], 10) || 0;
|
||||
var wsTotal = ws + ws_advancement + ws_mod;
|
||||
var ws_bonus = Math.floor(wsTotal / 10 + ws_unnat);
|
||||
if (ws_bonus < fatigue) {
|
||||
wsTotal = Math.ceil(wsTotal / 2);
|
||||
ws_bonus = Math.floor(wsTotal / 10 + ws_unnat);
|
||||
}
|
||||
// BS
|
||||
var bs = parseInt(values['bs'], 10) || 0,
|
||||
bs_unnat = parseInt(values['bs_unnat'], 10) || 0,
|
||||
@@ -2180,10 +2170,6 @@
|
||||
bs_advancement = parseInt(values['bs_advancement'], 10) || 0;
|
||||
var bsTotal = bs + bs_advancement + bs_mod;
|
||||
var bs_bonus = Math.floor(bsTotal / 10 + bs_unnat);
|
||||
if (bs_bonus < fatigue) {
|
||||
bsTotal = Math.ceil(bsTotal / 2);
|
||||
bs_bonus = Math.floor(bsTotal / 10 + bs_unnat);
|
||||
}
|
||||
// STR
|
||||
var str = parseInt(values['str'], 10) || 0,
|
||||
str_unnat = parseInt(values['str_unnat'], 10) || 0,
|
||||
@@ -2191,10 +2177,6 @@
|
||||
str_advancement = parseInt(values['str_advancement'], 10) || 0;
|
||||
var strTotal = str + str_advancement + str_mod;
|
||||
var str_bonus = Math.floor(strTotal / 10 + str_unnat);
|
||||
if (str_bonus < fatigue) {
|
||||
strTotal = Math.ceil(strTotal / 2);
|
||||
str_bonus = Math.floor(strTotal / 10 + str_unnat);
|
||||
}
|
||||
// TOU
|
||||
var tou = parseInt(values['tou'], 10) || 0,
|
||||
tou_unnat = parseInt(values['tou_unnat'], 10) || 0,
|
||||
@@ -2202,10 +2184,6 @@
|
||||
tou_advancement = parseInt(values['tou_advancement'], 10) || 0;
|
||||
var touTotal = tou + tou_advancement + tou_mod;
|
||||
var tou_bonus = Math.floor(touTotal / 10 + tou_unnat);
|
||||
if (tou_bonus < fatigue) {
|
||||
touTotal = Math.ceil(touTotal / 2);
|
||||
tou_bonus = Math.floor(touTotal / 10 + tou_unnat);
|
||||
}
|
||||
// AGI
|
||||
var agi = parseInt(values['agi'], 10) || 0,
|
||||
agi_unnat = parseInt(values['agi_unnat'], 10) || 0,
|
||||
@@ -2218,10 +2196,6 @@
|
||||
if (weight_total > carry) { agiTotal -= 10; }
|
||||
if (armor_limit) {agiTotal = (agiTotal > armor_agi ) ? armor_agi : agiTotal; }
|
||||
var agi_bonus = Math.floor(agiTotal / 10 + agi_unnat);
|
||||
if (agi_bonus < fatigue) {
|
||||
agiTotal = Math.ceil(agiTotal / 2);
|
||||
agi_bonus = Math.floor(agiTotal / 10 + agi_unnat);
|
||||
}
|
||||
// INT
|
||||
var int = parseInt(values['int'], 10) || 0,
|
||||
int_unnat = parseInt(values['int_unnat'], 10) || 0,
|
||||
@@ -2229,10 +2203,6 @@
|
||||
int_advancement = parseInt(values['int_advancement'], 10) || 0;
|
||||
var intTotal = int + int_advancement + int_mod;
|
||||
var int_bonus = Math.floor(intTotal / 10 + int_unnat);
|
||||
if (int_bonus < fatigue) {
|
||||
intTotal = Math.ceil(intTotal / 2);
|
||||
int_bonus = Math.floor(intTotal / 10 + int_unnat);
|
||||
}
|
||||
// PER
|
||||
var per = parseInt(values['per'], 10) || 0,
|
||||
per_unnat = parseInt(values['per_unnat'], 10) || 0,
|
||||
@@ -2240,10 +2210,6 @@
|
||||
per_advancement = parseInt(values['per_advancement'], 10) || 0;
|
||||
var perTotal = per + per_advancement + per_mod;
|
||||
var per_bonus = Math.floor(perTotal / 10 + per_unnat);
|
||||
if (per_bonus < fatigue) {
|
||||
perTotal = Math.ceil(perTotal / 2);
|
||||
per_bonus = Math.floor(perTotal / 10 + per_unnat);
|
||||
}
|
||||
// WP
|
||||
var wp = parseInt(values['wp'], 10) || 0,
|
||||
wp_unnat = parseInt(values['wp_unnat'], 10) || 0,
|
||||
@@ -2251,10 +2217,6 @@
|
||||
wp_advancement = parseInt(values['wp_advancement'], 10) || 0;
|
||||
var wpTotal = wp + wp_advancement + wp_mod;
|
||||
var wp_bonus = Math.floor(wpTotal / 10 + wp_unnat);
|
||||
if (wp_bonus < fatigue) {
|
||||
wpTotal = Math.ceil(wpTotal / 2);
|
||||
wp_bonus = Math.floor(wpTotal / 10 + wp_unnat);
|
||||
}
|
||||
// FEL
|
||||
var fel = parseInt(values['fel'], 10) || 0,
|
||||
fel_unnat = parseInt(values['fel_unnat'], 10) || 0,
|
||||
@@ -2262,10 +2224,6 @@
|
||||
fel_advancement = parseInt(values['fel_advancement'], 10) || 0;
|
||||
var felTotal = fel + fel_advancement + fel_mod;
|
||||
var fel_bonus = Math.floor(felTotal / 10 + fel_unnat);
|
||||
if (fel_bonus < fatigue) {
|
||||
felTotal = Math.ceil(felTotal / 2);
|
||||
fel_bonus = Math.floor(felTotal / 10 + fel_unnat);
|
||||
}
|
||||
|
||||
var move_mod = agi_bonus + size + agi_mov_mod;
|
||||
var carry_mod = str_bonus + tou_bonus;
|
||||
|
||||
Reference in New Issue
Block a user