From aa247b5420e855f47ed7f68779a25c98c54a0b3e Mon Sep 17 00:00:00 2001 From: lahm86 <33758420+lahm86@users.noreply.github.com> Date: Sat, 18 Jan 2025 09:51:48 +0000 Subject: [PATCH] tr1/level: reset static mesh mesh count This ensures that if a static was previously used as an animating sprite (with a negative mesh count) it will be reset to 1 on the next load. Resolves #2309. --- docs/tr1/CHANGELOG.md | 1 + src/tr1/game/level.c | 1 + 2 files changed, 2 insertions(+) diff --git a/docs/tr1/CHANGELOG.md b/docs/tr1/CHANGELOG.md index f920a44c5..30514c107 100644 --- a/docs/tr1/CHANGELOG.md +++ b/docs/tr1/CHANGELOG.md @@ -31,6 +31,7 @@ - fixed wireframe mode discarding transparent pixels (#2315, regression from 4.2) - fixed sprite pickup not being paused in the pause/inventory screen (#2319, regression from 4.1) - fixed 3D pickups not being paused in the pause/inventory screen (#2319, regression from 2.16) +- fixed incorrect sprite sequences potentially animating after visiting a level with valid animating sprites (#2309, regression from 4.0) - improved pause screen compatibility with PS1 (#2248) ## [4.7.1](https://github.com/LostArtefacts/TRX/compare/tr1-4.7...tr1-4.7.1) - 2024-12-21 diff --git a/src/tr1/game/level.c b/src/tr1/game/level.c index e751402ce..c4fd2ce71 100644 --- a/src/tr1/game/level.c +++ b/src/tr1/game/level.c @@ -412,6 +412,7 @@ static void M_LoadStaticObjects(VFILE *file) object->c.max.z = VFile_ReadS16(file); object->flags = VFile_ReadU16(file); object->loaded = true; + object->mesh_count = 1; } Benchmark_End(benchmark, NULL);