diff --git a/CHANGELOG.md b/CHANGELOG.md index bee632b9d..07ded2b91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -137,6 +137,8 @@ So your change should look like: `drawSprite` (#1026) - @benhuangbmj - Fixed `onClick()` and `onCollide()` tag variants no longer working - @mflerackers +- Fixed `levelComp.getAt` to account for `tilePos.x` getting outside of the + level boundary - @benhuangbmj - Fixed `destroy()` messing up enumeration during `update()` and `fixedUpdate()`, thanks to @imaginarny for helping to find the cause - @mflerackers diff --git a/src/ecs/components/level/level.ts b/src/ecs/components/level/level.ts index a239a5260..bb71ebff9 100644 --- a/src/ecs/components/level/level.ts +++ b/src/ecs/components/level/level.ts @@ -476,6 +476,7 @@ export function level(map: string[], opt: LevelCompOpt): LevelComp { if (!spatialMap) { createSpatialMap(this); } + if (tilePos.x >= numColumns || tilePos.x < 0) return []; const hash = tile2Hash(tilePos); return spatialMap![hash] || []; },