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)