From 7dcedfb260b7f4a2f34f4cb3f860072e3af235ca Mon Sep 17 00:00:00 2001 From: Aaron van Geffen Date: Wed, 3 Jul 2024 23:09:56 +0200 Subject: [PATCH] Prevent having ANIMATION_FROZEN set while POSITION_FROZEN is not --- src/openrct2/entity/Peep.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/openrct2/entity/Peep.cpp b/src/openrct2/entity/Peep.cpp index cbbd245525..c928b29bfd 100644 --- a/src/openrct2/entity/Peep.cpp +++ b/src/openrct2/entity/Peep.cpp @@ -986,6 +986,13 @@ void Peep::Update() } return; } + else if (PeepFlags & PEEP_FLAGS_ANIMATION_FROZEN) + { + // Animation is frozen while position is not. This allows a peep to walk + // around without its sprite being updated, which looks very glitchy. + // We'll just remove the flag and continue as normal, in this case. + PeepFlags &= ~PEEP_FLAGS_ANIMATION_FROZEN; + } auto* guest = As(); if (guest != nullptr)