mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-22 03:07:04 +02:00
feat: cleaned blitzstars
This commit is contained in:
1 parent
c7821d03d2
commit
169588a211
13 files changed
+13
-65
No files matched your search
@@ -5,7 +5,7 @@ import sumStats from '../core/blitz/sumStats.js';
|
||||
import { tankopedia } from '../core/blitz/tankopedia.js';
|
||||
import getPeriodNow from '../core/blitzstars/getPeriodNow.js';
|
||||
import getPeriodStart from '../core/blitzstars/getPeriodStart.js';
|
||||
import getTankStatsOverTime from '../core/blitzstars/getTankStatsOverTime.js';
|
||||
import getTankStatsDiffed from '../core/blitzstars/getTankStatsDiffed.js';
|
||||
import { tankAverages } from '../core/blitzstars/tankAverages.js';
|
||||
import addUsernameOption from '../core/discord/addUsernameOption.js';
|
||||
import cleanTable, { TableInput } from '../core/discord/cleanTable.js';
|
||||
@@ -58,7 +58,7 @@ export default {
|
||||
let body = '';
|
||||
|
||||
if (clan === 'SKLLD') {
|
||||
const tankStatsOverTime = await getTankStatsOverTime(
|
||||
const tankStatsOverTime = await getTankStatsDiffed(
|
||||
server,
|
||||
id,
|
||||
getPeriodStart('30'),
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { AllStats } from '../../types/accountInfo.js';
|
||||
import { emptyAllStats } from '../blitzstars/getTankStatsOverTime.js';
|
||||
import { emptyAllStats } from '../blitzstars/getTankStatsDiffed.js';
|
||||
|
||||
export default function sumStats(allStatsCollection: AllStats[]) {
|
||||
return allStatsCollection.reduce((accumulated, current) => {
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
import {
|
||||
CacheType,
|
||||
ChatInputCommandInteraction,
|
||||
EmbedBuilder,
|
||||
} from 'discord.js';
|
||||
import { client } from '../../bot.js';
|
||||
import { NEGATIVE_COLOR } from '../../constants/colors.js';
|
||||
import { handleError } from '../../events/error.js';
|
||||
|
||||
export default async function blitzStarsError(
|
||||
interaction: ChatInputCommandInteraction<CacheType>,
|
||||
error: Error,
|
||||
command: string,
|
||||
) {
|
||||
await interaction.editReply({
|
||||
embeds: [
|
||||
new EmbedBuilder()
|
||||
.setColor(NEGATIVE_COLOR)
|
||||
.setTitle(`${client.user?.username} ran into an issue`)
|
||||
.setDescription(
|
||||
'BlitzStars returned an error. Please try again later.',
|
||||
),
|
||||
],
|
||||
});
|
||||
|
||||
console.log(`BlitzStars returned an error`);
|
||||
handleError(error, command);
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
import { BlitzServer } from '../../constants/servers.js';
|
||||
|
||||
export default function blitzStarsLinks(server: BlitzServer, nickname: string) {
|
||||
return `[View full stats](https://www.blitzstars.com/player/${server}/${nickname}) • [Support BlitzStars](https://www.blitzstars.com/supporters)`;
|
||||
}
|
||||
@@ -8,7 +8,7 @@ import {
|
||||
} from '../../types/histories.js';
|
||||
import getWargamingResponse from '../blitz/getWargamingResponse.js';
|
||||
import { WARGAMING_APPLICATION_ID } from '../node/args.js';
|
||||
import { emptyAllStats } from './getTankStatsOverTime.js';
|
||||
import { emptyAllStats } from './getTankStatsDiffed.js';
|
||||
|
||||
export interface PlayerHistoryRaw {
|
||||
clan: { clan_id: number; name: string; tag: string };
|
||||
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
getHistoriesDefaultOptions,
|
||||
} from '../../types/histories.js';
|
||||
import getTankStats from '../blitz/getTankStats.js';
|
||||
import { emptyAllStats } from './getTankStatsOverTime.js';
|
||||
import { emptyAllStats } from './getTankStatsDiffed.js';
|
||||
|
||||
export interface TankHistory extends History {
|
||||
tank_id: number;
|
||||
|
||||
+1
-1
@@ -34,7 +34,7 @@ export const emptyTankHistoryNode: TankHistoryRaw = {
|
||||
all: emptyAllStats,
|
||||
};
|
||||
|
||||
export default async function getTankStatsOverTime(
|
||||
export default async function getTankStatsDiffed(
|
||||
server: BlitzServer,
|
||||
id: number,
|
||||
start: number,
|
||||
@@ -1,4 +1,4 @@
|
||||
export default function getTimeDaysAgo(period: number) {
|
||||
export default function getTimeDaysAgo(daysAgo: number) {
|
||||
const now = new Date();
|
||||
now.setHours(5, 0, 0, 0);
|
||||
|
||||
@@ -6,7 +6,7 @@ export default function getTimeDaysAgo(period: number) {
|
||||
if (now.getTime() > Date.now()) now.setDate(now.getDate() - 1);
|
||||
|
||||
// subtract the period number of days from now
|
||||
now.setDate(now.getDate() - period);
|
||||
now.setDate(now.getDate() - daysAgo);
|
||||
|
||||
return now.getTime() / 1000;
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
export default function last5AM() {
|
||||
const fiveAM = new Date();
|
||||
fiveAM.setHours(5, 0, 0, 0); // Set the time to 5:00 AM today
|
||||
|
||||
if (fiveAM > new Date()) {
|
||||
// If it's now before 5:00 AM, go back one day
|
||||
fiveAM.setDate(fiveAM.getDate() - 1);
|
||||
}
|
||||
|
||||
return fiveAM;
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
import sumStats from '../blitz/sumStats.js';
|
||||
import { emptyAllStats } from './getTankStatsOverTime.js';
|
||||
import { emptyAllStats } from './getTankStatsDiffed.js';
|
||||
import { tankAverages } from './tankAverages.js';
|
||||
|
||||
console.log('Calculating player average...');
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
import { EmbedBuilder } from 'discord.js';
|
||||
|
||||
export default function poweredByBlitzStars(embed: EmbedBuilder) {
|
||||
return embed.setTimestamp().setFooter({
|
||||
text: 'Powered by BlitzStars',
|
||||
iconURL: 'https://www.blitzstars.com/assets/images/TankyMcPewpew.png',
|
||||
});
|
||||
}
|
||||
@@ -10,7 +10,7 @@ import getWargamingResponse from '../core/blitz/getWargamingResponse.js';
|
||||
import resolveTankName from '../core/blitz/resolveTankName.js';
|
||||
import sumStats from '../core/blitz/sumStats.js';
|
||||
import { Tier, tankopedia } from '../core/blitz/tankopedia.js';
|
||||
import getTankStatsOverTime from '../core/blitzstars/getTankStatsOverTime.js';
|
||||
import getTankStatsDiffed from '../core/blitzstars/getTankStatsDiffed.js';
|
||||
import { tankAverages } from '../core/blitzstars/tankAverages.js';
|
||||
import { ResolvedPeriod } from '../core/discord/resolvePeriodFromCommand.js';
|
||||
import { ResolvedPlayer } from '../core/discord/resolvePlayerFromCommand.js';
|
||||
@@ -49,7 +49,7 @@ export default async function stats<Type extends StatType>(
|
||||
image = tankopedia[tankId].images.normal;
|
||||
}
|
||||
|
||||
const tankStats = await getTankStatsOverTime(server, id, start, end);
|
||||
const tankStats = await getTankStatsDiffed(server, id, start, end);
|
||||
let stats: AllStats;
|
||||
let supplementaryStats: SupplementaryStats;
|
||||
let tierWeights: TierWeightsRecord;
|
||||
|
||||
@@ -11,7 +11,7 @@ import resolveTankName from '../core/blitz/resolveTankName.js';
|
||||
import sumStats from '../core/blitz/sumStats.js';
|
||||
import { tankopedia } from '../core/blitz/tankopedia.js';
|
||||
import getPeriodNow from '../core/blitzstars/getPeriodNow.js';
|
||||
import getTankStatsOverTime from '../core/blitzstars/getTankStatsOverTime.js';
|
||||
import getTankStatsDiffed from '../core/blitzstars/getTankStatsDiffed.js';
|
||||
import getTimeDaysAgo from '../core/blitzstars/getTimeDaysAgo.js';
|
||||
import { tankAverages } from '../core/blitzstars/tankAverages.js';
|
||||
import { ResolvedPlayer } from '../core/discord/resolvePlayerFromCommand.js';
|
||||
@@ -20,7 +20,7 @@ import { AccountInfo, AllStats } from '../types/accountInfo.js';
|
||||
import { PlayerClanData } from '../types/playerClanData.js';
|
||||
|
||||
export default async function today({ server, id }: ResolvedPlayer) {
|
||||
const tankStatsOverTime = await getTankStatsOverTime(
|
||||
const tankStatsOverTime = await getTankStatsDiffed(
|
||||
server,
|
||||
id,
|
||||
getTimeDaysAgo(0),
|
||||
|
||||
Reference in new issue
Block a user