Security fixes (#32)
* Generic Object Injection Sink * (fix) "Character" is not defined. * added eslint * improve code quality, use refactored function * (fix) eslint jest * "Character" is not defined * removed unused file Compare.js * (fix) PointsUsed is not defined * (fix) eslint moans jsconfig * turn off "no-prototype-builtins" * push code coverage
This commit is contained in:
@ -1,15 +1,9 @@
|
||||
const CalculateQuality = (PointsAvailable = 0) => {
|
||||
if (PointsAvailable <= 3)
|
||||
return 1;
|
||||
else if (PointsAvailable > 3 && PointsAvailable <= 6)
|
||||
return 2;
|
||||
else if (PointsAvailable > 6 && PointsAvailable <= 9)
|
||||
return 3;
|
||||
else if (PointsAvailable > 9 && PointsAvailable <= 12)
|
||||
return 4;
|
||||
else if (PointsAvailable > 12 && PointsAvailable <= 15)
|
||||
return 5;
|
||||
else if (PointsAvailable > 15)
|
||||
return 6;
|
||||
if (PointsAvailable <= 3) return 1;
|
||||
else if (PointsAvailable > 3 && PointsAvailable <= 6) return 2;
|
||||
else if (PointsAvailable > 6 && PointsAvailable <= 9) return 3;
|
||||
else if (PointsAvailable > 9 && PointsAvailable <= 12) return 4;
|
||||
else if (PointsAvailable > 12 && PointsAvailable <= 15) return 5;
|
||||
else return 6;
|
||||
};
|
||||
module.exports = { CalculateQuality };
|
||||
|
@ -1,6 +0,0 @@
|
||||
const Compare = () => {
|
||||
|
||||
return { result };
|
||||
};
|
||||
|
||||
module.exports = { Compare };
|
@ -18,28 +18,28 @@ const CompareResults = (
|
||||
let CriticalHit = 0;
|
||||
let AllPointsUsed = [];
|
||||
|
||||
for (let i = 0; i < Throws.length; i++) {
|
||||
Throws.forEach((Throw, key) => {
|
||||
let PointsUsed = 0;
|
||||
if (Math.floor(AttributeLevels[i] + Bonus) >= Throws[i]) {
|
||||
let AttributeLevel = AttributeLevels.find((v, k) => key === k);
|
||||
if (Math.floor(AttributeLevel + Bonus) >= Throw) {
|
||||
Passed++;
|
||||
} else if (Math.floor(AttributeLevels[i] + PointsRemaining + Bonus) >= Throws[i]) {
|
||||
} else if (Math.floor(AttributeLevel + PointsRemaining + Bonus) >= Throw) {
|
||||
Passed++;
|
||||
PointsUsed = Throws[i] - Bonus - AttributeLevels[i];
|
||||
PointsUsed = Throw - Bonus - AttributeLevel;
|
||||
PointsRemaining -= PointsUsed;
|
||||
} else {
|
||||
// We need to use all our points, so that next die/dice
|
||||
// would not return a 'Passed'.
|
||||
PointsUsed = PointsRemaining;
|
||||
PointsRemaining -= PointsUsed;
|
||||
}
|
||||
if (Throws[i] == 1) {
|
||||
if (Throw === 1) {
|
||||
CriticalHit++;
|
||||
}
|
||||
if (Throws[i] == 20) {
|
||||
if (Throw === 20) {
|
||||
Fumbles++;
|
||||
}
|
||||
AllPointsUsed.push(PointsUsed);
|
||||
}
|
||||
});
|
||||
|
||||
return {
|
||||
Passed: Passed,
|
||||
CriticalHit: CriticalHit,
|
||||
|
Reference in New Issue
Block a user