From c25ab2537cb201dc46b7c1d375dd1c12411fe85c Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Wed, 10 Feb 2021 20:09:42 -0500 Subject: Player movement/input is halted during cutscenes --- src/character_system.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/character_system.cpp') diff --git a/src/character_system.cpp b/src/character_system.cpp index 781b50d..aad8c1b 100644 --- a/src/character_system.cpp +++ b/src/character_system.cpp @@ -248,6 +248,18 @@ void CharacterSystem::stopRunningSound(Sprite& sprite) { } } +void CharacterSystem::halt(int spriteId) { + // Because special stuff happens when we stop running, we have to handle the + // running case here. + Sprite& sprite = game_.getSprite(spriteId); + if (sprite.characterState == CharacterState::Running) { + stopRunning(spriteId); + } else { + // Other than that, it is simple to go to Still from Walking or Crouching. + setPartyState(spriteId, CharacterState::Still); + } +} + void CharacterSystem::clearSpriteCache() { for (Sprite& sprite : game_.getSprites() | game_.spriteView()) { if (sprite.runningSfxChannel != -1) { -- cgit 1.4.1