From 19f56f890c06d18b56d49ae7d88dd6b8139539d7 Mon Sep 17 00:00:00 2001 From: Braeden Sowinski Date: Sat, 4 Nov 2023 20:02:02 -0700 Subject: [PATCH] change/combat rank graph --- commands/player-stats.js | 45 ++++++++++++++++++++++++++++++---------- package.json | 2 +- util/LogsHandler.js | 2 +- 3 files changed, 36 insertions(+), 13 deletions(-) diff --git a/commands/player-stats.js b/commands/player-stats.js index 6d7ced3..c7a5bdf 100644 --- a/commands/player-stats.js +++ b/commands/player-stats.js @@ -208,22 +208,45 @@ module.exports = { statsEmbed.addFields({ name: 'Combat Rating', value: `${query.combatRating}`, inline: true }); const chart = { - type: 'bar', + type: 'line', data: { labels: new Array(query.combatRatingHistory), - datasets: [ - { - type: 'line', - label: 'Combat Rating over time', - borderColor: 'rgb(54, 162, 235)', - borderWidth: 2, - fill: false, - data: query.combatRatingHistory, + datasets: [{ + data: query.combatRating, + label: 'Combat Rating Over Time', + }], + }, + options: { + layout: { + padding: { + right: 40, }, - ], + }, + plugins: { + datalabels: { + display: true, + align: 'top', + color: '#000', + backgroundColor: '#ccc', + borderRadius: 4, + offset: 10, + display: (context) => { + const index = context.dataIndex; + const value = context.dataset.data[index]; + const min = Math.min.apply(null, context.dataset.data); + const max = Math.max.apply(null, context.dataset.data); + return ( + index == 0 || + index == context.dataset.data.length - 1 || + value == min || + value == max + ); + }, + }, + }, }, } - + const encodedChart = encodeURIComponent(JSON.stringify(chart)); const chartURL = `https://quickchart.io/chart?c=${encodedChart}`; diff --git a/package.json b/package.json index bca4f5b..39d600e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "dayzr-bot", - "version": "12.2.3", + "version": "12.2.4", "description": "A General Purpose Discord Bot for DayZ Nitrado Servers.", "main": "index.js", "nodemonConfig": { diff --git a/util/LogsHandler.js b/util/LogsHandler.js index d5435ea..b82c44d 100644 --- a/util/LogsHandler.js +++ b/util/LogsHandler.js @@ -178,7 +178,7 @@ module.exports = { if (!client.exists(playerStat.shotsLanded)) playerStat = insertPVPstats(playerStat); if (!client.exists(attackerStat.shotsLanded)) attackerStat = insertPVPstats(attackerStat); - // Update in depth PVP stats if non Melee weapon\ + // Update in depth PVP stats if non Melee weapon if (info.weapon.includes("Sawed-off")) info.weapon = info.weapon.split("Sawed-off ")[1]; if (info.weapon in playerStat.weaponStats) { playerStat.timesShot++;