From e7ced1f9d2f5cd2ea6b300d44f44dd0f5cb5c695 Mon Sep 17 00:00:00 2001 From: Braeden Sowinski Date: Mon, 6 Nov 2023 13:10:25 -0800 Subject: [PATCH] update/20 combat rating history + track highest/lowest --- database/player.js | 2 ++ package.json | 2 +- util/KillfeedHandler.js | 8 ++++++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/database/player.js b/database/player.js index 3b03011..0555aa8 100644 --- a/database/player.js +++ b/database/player.js @@ -67,6 +67,8 @@ module.exports = { timesShotPerBodyPart: copy(BodyParts), }), combatRating: 800, + highestCombatRating: 800, + lowestCombatRating: 800, combatRatingHistory: [800], // General Session Data diff --git a/package.json b/package.json index 9bd13c9..2ca03e3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "dayzr-bot", - "version": "12.3.5", + "version": "12.3.6", "description": "A General Purpose Discord Bot for DayZ Nitrado Servers.", "main": "index.js", "nodemonConfig": { diff --git a/util/KillfeedHandler.js b/util/KillfeedHandler.js index 3e2e679..ec3f844 100644 --- a/util/KillfeedHandler.js +++ b/util/KillfeedHandler.js @@ -187,12 +187,16 @@ module.exports = { if (!client.exists(victimStat.combatRating)) victimStat.combatRating = 800; if (!client.exists(killerStat.combatRatingHistory)) killerStat.combatRatingHistory = [800]; if (!client.exists(victimStat.combatRatingHistory)) victimStat.combatRatingHistory = [800]; + if (!client.exists(killerStat.highestCombatRating)) killerStat.highestCombatRating = killerStat.combatRating; + if (!client.exists(victimStat.lowestCombatRating)) victimStat.lowestCombatRating = victimStat.lowestCombatRating; let killerOldRating = killerStat.combatRating; let victimOldRating = victimStat.combatRating; killerStat.combatRating = calculateNewCombatRating(killerStat.combatRating, victimStat.combatRating, client.exists(info.bodyPart) && info.bodyPart.includes('Head') ? 1.25 : 1); victimStat.combatRating = calculateNewCombatRating(victimStat.combatRating, killerStat.combatRating, 0); - if (killerStat.combatRatingHistory.length == 8) killerStat.combatRatingHistory = killerStat.combatRatingHistory.slice(1); // Remove first element (limits history to length 8) - if (victimStat.combatRatingHistory.length == 8) victimStat.combatRatingHistory = victimStat.combatRatingHistory.slice(1); // Remove first element (limits history to length 8) + if (killerStat.combatRating > killerStat.highestCombatRating) killerStat.highestCombatRating = killerStat.combatRating; + if (victimStat.combatRating < victimStat.lowestCombatRating) killerStat.lowestCombatRating = victimStat.combatRating; + if (killerStat.combatRatingHistory.length == 20) killerStat.combatRatingHistory = killerStat.combatRatingHistory.slice(1); // Remove first element (limits history to length 20) + if (victimStat.combatRatingHistory.length == 20) victimStat.combatRatingHistory = victimStat.combatRatingHistory.slice(1); // Remove first element (limits history to length 20) killerStat.combatRatingHistory.push(killerStat.combatRating); victimStat.combatRatingHistory.push(victimStat.combatRating); let kdiff = killerStat.combatRating - killerOldRating;