Skip to content

Commit ddc4614

Browse files
committed
Fix grid calculation
1 parent 9872e83 commit ddc4614

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

src/utils/constants.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ export const STEAMID64_LENGTH = 17;
4545
export const STEAM_PROFILE_NAME_MAX_LENGTH = 32;
4646
export const BOT_MESSAGE_HISTORY_LIMIT = 16;
4747
export const BOT_LEAVE_VOICE_CHAT_TIMEOUT_MS = 10000;
48-
export const GRID_DIAMETER = 146.28571428571428;
48+
export const GRID_DIAMETER = 146.28571;
4949
export const DEFAULT_LANGUAGE = 'en';
5050
export const DEFAULT_RECONNECT_TIMEOUT_SECONDS = 3;
5151
export const MAX_RECONNECT_TIMEOUT_SECONDS = 30;

src/utils/map.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -166,20 +166,29 @@ export function getGridPosLettersX(x: number, mapSize: number): string {
166166
let grid;
167167
const numberOfGrids = Math.floor(mapSize / constants.GRID_DIAMETER);
168168
const gridDiameter = mapSize / numberOfGrids;
169+
const margin = 1;
170+
169171
for (grid = 0; grid < numberOfGrids; grid++) {
170172
if (grid === (numberOfGrids - 1) || x > mapSize) break;
171-
if (x >= (grid * gridDiameter) && x < ((grid * gridDiameter) + gridDiameter)) break;
173+
const left = grid * gridDiameter;
174+
const right = left + gridDiameter;
175+
if ((x + margin) < right) break;
172176
}
177+
173178
return numberToLetters(grid + 1);
174179
}
175180

176181
export function getGridPosNumberY(y: number, mapSize: number): number {
177182
let grid;
178183
const numberOfGrids = Math.floor(mapSize / constants.GRID_DIAMETER);
179184
const gridDiameter = mapSize / numberOfGrids;
185+
const margin = 1;
186+
180187
for (grid = 0; grid < numberOfGrids; grid++) {
181188
if (grid === (numberOfGrids - 1) || y > mapSize) break;
182-
if (y <= (mapSize - grid * gridDiameter) && y > ((mapSize - grid * gridDiameter) - gridDiameter)) break;
189+
const upper = mapSize - (grid * gridDiameter);
190+
const lower = upper - gridDiameter;
191+
if ((y - margin) > lower) break;
183192
}
184193
return grid;
185194
}

0 commit comments

Comments
 (0)