Add overflow and stun damage tracks and include it functionality.
This commit is contained in:
parent
05a0feab52
commit
f600faf50e
6 changed files with 258 additions and 45 deletions
|
@ -2,14 +2,38 @@ const renderHealthBoxes = () => {
|
|||
//let physicalBoxes = calculateBoxes('physical')
|
||||
//let stunBoxes = calculateBoxes('stun')
|
||||
//let overflowBoxes = calculateBoxes('overflow')
|
||||
let tempObject = {}
|
||||
for (let j = 0; j < 12; j++) {
|
||||
let newRowId = generateRowID()
|
||||
let tempObject = {}
|
||||
tempObject[`repeating_physicaltracker_${newRowId}_boxNum`] = j
|
||||
tempObject[`repeating_physicaltracker_${newRowId}_woundMod`] = Math.trunc(j / 3) * -1
|
||||
tempObject[`repeating_physicaltracker_${newRowId}_isCrossed`] = 'false'
|
||||
setAttrs(tempObject)
|
||||
console.log(`Generating Physical Row Number: ${j}`)
|
||||
while (tempObject[`repeating_physicaltracker_${newRowId}_boxNum`] != j) {
|
||||
tempObject[`repeating_physicaltracker_${newRowId}_boxNum`] = j
|
||||
tempObject[`repeating_physicaltracker_${newRowId}_woundMod`] = Math.trunc(j / 3) * -1
|
||||
tempObject[`repeating_physicaltracker_${newRowId}_isCrossed`] = 'false'
|
||||
}
|
||||
}
|
||||
|
||||
for (let j = 0; j < 12; j++) {
|
||||
let newRowId = generateRowID()
|
||||
console.log(`Generating Stun Row Number: ${j}`)
|
||||
while (tempObject[`repeating_stuntracker_${newRowId}_boxNum`] != j) {
|
||||
tempObject[`repeating_stuntracker_${newRowId}_boxNum`] = j
|
||||
tempObject[`repeating_stuntracker_${newRowId}_woundMod`] = Math.trunc(j / 3) * -1
|
||||
tempObject[`repeating_stuntracker_${newRowId}_isCrossed`] = 'false'
|
||||
}
|
||||
}
|
||||
|
||||
for (let j = 0; j < 12; j++) {
|
||||
let newRowId = generateRowID()
|
||||
console.log(`Generating Overflow Row Number: ${j}`)
|
||||
while (tempObject[`repeating_overflowtracker_${newRowId}_boxNum`] != j) {
|
||||
tempObject[`repeating_overflowtracker_${newRowId}_boxNum`] = j
|
||||
tempObject[`repeating_overflowtracker_${newRowId}_woundMod`] = Math.trunc(j / 3) * -1
|
||||
tempObject[`repeating_overflowtracker_${newRowId}_isCrossed`] = 'false'
|
||||
}
|
||||
}
|
||||
console.log(tempObject)
|
||||
setAttrs(tempObject)
|
||||
}
|
||||
|
||||
const clearAllHealthBoxes = () => {
|
||||
|
@ -18,6 +42,25 @@ const clearAllHealthBoxes = () => {
|
|||
removeRepeatingRow(`repeating_physicaltracker_${id}`)
|
||||
});
|
||||
})
|
||||
|
||||
getSectionIDs('stuntracker', function (ids) {
|
||||
ids.forEach(id => {
|
||||
removeRepeatingRow(`repeating_stuntracker_${id}`)
|
||||
});
|
||||
})
|
||||
|
||||
getSectionIDs('overflowtracker', function (ids) {
|
||||
ids.forEach(id => {
|
||||
removeRepeatingRow(`repeating_overflowtracker_${id}`)
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
const calculateBoxes = (tracker, stat, freeBoxes, woundReduction) => {
|
||||
let trackerInfo = {}
|
||||
trackerInfo.tracker = tracker
|
||||
trackerInfo.startWoundCalc = freeBoxes
|
||||
trackerInfo.normalBoxes = Math.trunc(stat / 2) + 8 + freeBoxes
|
||||
}
|
||||
|
||||
const clearTracker = (tracker, resetWounds) => {
|
||||
|
@ -46,7 +89,6 @@ const setTrackerTo = (tracker, toId) => {
|
|||
}
|
||||
if (values[`repeating_${tracker}tracker_${id}_boxNum`] == toId) {
|
||||
tempObject[`${tracker}Wounds`] = toId + 1
|
||||
console.log(tempObject)
|
||||
setAttrs(tempObject)
|
||||
}
|
||||
})
|
||||
|
@ -54,15 +96,15 @@ const setTrackerTo = (tracker, toId) => {
|
|||
})
|
||||
}
|
||||
|
||||
on('clicked:testBox', function() {
|
||||
on('clicked:testBox', function () {
|
||||
renderHealthBoxes()
|
||||
})
|
||||
|
||||
on('clicked:clearBoxes', function() {
|
||||
on('clicked:clearBoxes', function () {
|
||||
clearAllHealthBoxes()
|
||||
})
|
||||
|
||||
on('clicked:repeating_physicaltracker:check-phys', function (ev) {
|
||||
on('clicked:repeating_physicaltracker:check-tracker', function (ev) {
|
||||
getAttrs(['repeating_physicaltracker_boxNum', 'repeating_physicaltracker_isCrossed', 'physicalWounds'], function (values) {
|
||||
let _isCrossed = values.repeating_physicaltracker_isCrossed
|
||||
let _boxId = values.repeating_physicaltracker_boxNum
|
||||
|
@ -74,4 +116,35 @@ on('clicked:repeating_physicaltracker:check-phys', function (ev) {
|
|||
} else {
|
||||
clearTracker('physical', true)
|
||||
}
|
||||
})})
|
||||
})
|
||||
})
|
||||
|
||||
on('clicked:repeating_stuntracker:check-tracker', function (ev) {
|
||||
getAttrs(['repeating_stuntracker_boxNum', 'repeating_stuntracker_isCrossed', 'stunWounds'], function (values) {
|
||||
let _isCrossed = values.repeating_stuntracker_isCrossed
|
||||
let _boxId = values.repeating_stuntracker_boxNum
|
||||
let _wounds = values.stunWounds
|
||||
if (_isCrossed === 'false') {
|
||||
setTrackerTo('stun', _boxId)
|
||||
} else if (_wounds - 1 != _boxId) {
|
||||
setTrackerTo('stun', _boxId)
|
||||
} else {
|
||||
clearTracker('stun', true)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
on('clicked:repeating_overflowtracker:check-tracker', function (ev) {
|
||||
getAttrs(['repeating_overflowtracker_boxNum', 'repeating_overflowtracker_isCrossed', 'overflowWounds'], function (values) {
|
||||
let _isCrossed = values.repeating_overflowtracker_isCrossed
|
||||
let _boxId = values.repeating_overflowtracker_boxNum
|
||||
let _wounds = values.overflowWounds
|
||||
if (_isCrossed === 'false') {
|
||||
setTrackerTo('overflow', _boxId)
|
||||
} else if (_wounds - 1 != _boxId) {
|
||||
setTrackerTo('overflow', _boxId)
|
||||
} else {
|
||||
clearTracker('overflow', true)
|
||||
}
|
||||
})
|
||||
})
|
Loading…
Add table
Add a link
Reference in a new issue