diff --git a/packages/dota/src/dota/GSIHandler.ts b/packages/dota/src/dota/GSIHandler.ts index 85f1ddba..1bb1aba6 100644 --- a/packages/dota/src/dota/GSIHandler.ts +++ b/packages/dota/src/dota/GSIHandler.ts @@ -91,9 +91,8 @@ export class GSIHandler { // Server could reboot and lose these in memory // But that's okay they will get reset based on current match state + blockCache: string | null = null - playingBetMatchId: string | undefined | null = null - playingTeam: 'radiant' | 'dire' | 'spectator' | undefined | null = null events: DotaEvent[] = [] bountyHeroNames: string[] = [] noTpChatter: { diff --git a/packages/dota/src/dota/events/gsi-events/newdata.ts b/packages/dota/src/dota/events/gsi-events/newdata.ts index 42853082..2e6a6f99 100644 --- a/packages/dota/src/dota/events/gsi-events/newdata.ts +++ b/packages/dota/src/dota/events/gsi-events/newdata.ts @@ -42,7 +42,7 @@ const steamDelayDataLookupMap = new Map() async function saveMatchData(client: SocketClient) { // This now waits for the bet to complete before checking match data // Since match data is delayed it will run far fewer than before, when checking actual match id of an ingame match - // the playingBetMatchId is saved when the hero is selected + // the matchid is saved when the hero is selected const matchId = await redisClient.client.get(`${client.token}:matchId`) if (!Number(matchId)) return diff --git a/packages/dota/src/dota/events/gsi-events/saveHeroesForMatchId.ts b/packages/dota/src/dota/events/gsi-events/saveHeroesForMatchId.ts index 7f30e520..8d83600e 100644 --- a/packages/dota/src/dota/events/gsi-events/saveHeroesForMatchId.ts +++ b/packages/dota/src/dota/events/gsi-events/saveHeroesForMatchId.ts @@ -1,11 +1,10 @@ -// Only call to update our local players variable with hero ids - -import { GSIHandler } from '../../GSIHandler.js' +import { GSIHandler, redisClient } from '../../GSIHandler' import eventHandler from '../EventHandler.js' eventHandler.registerEvent(`saveHeroesForMatchId`, { handler: async (dotaClient: GSIHandler, { matchId }: { matchId: string }) => { - if (dotaClient.playingBetMatchId && dotaClient.playingBetMatchId === matchId) { + const playingMatchId = await redisClient.client.get(`${dotaClient.getToken()}:matchId`) + if (playingMatchId && playingMatchId === matchId) { await dotaClient.emitNotablePlayers() } },