diff options
Diffstat (limited to 'src/character_system.cpp')
| -rw-r--r-- | src/character_system.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
| diff --git a/src/character_system.cpp b/src/character_system.cpp index bcd3beb..d18c592 100644 --- a/src/character_system.cpp +++ b/src/character_system.cpp | |||
| @@ -70,6 +70,18 @@ void CharacterSystem::transplantParty(int leaderId, vec2i pos, Direction dir) { | |||
| 70 | } | 70 | } |
| 71 | } | 71 | } |
| 72 | 72 | ||
| 73 | void CharacterSystem::breakUpParty(int leaderId) { | ||
| 74 | Sprite& leader = game_.getSprite(leaderId); | ||
| 75 | std::vector<int> followers = leader.followers; | ||
| 76 | leader.followers.clear(); | ||
| 77 | leader.trailsAreHalved = false; | ||
| 78 | |||
| 79 | for (int followerId : followers) { | ||
| 80 | Sprite& follower = game_.getSprite(followerId); | ||
| 81 | follower.trail.clear(); | ||
| 82 | } | ||
| 83 | } | ||
| 84 | |||
| 73 | void CharacterSystem::moveInDirection(int spriteId, Direction dir) { | 85 | void CharacterSystem::moveInDirection(int spriteId, Direction dir) { |
| 74 | Sprite& sprite = game_.getSprite(spriteId); | 86 | Sprite& sprite = game_.getSprite(spriteId); |
| 75 | sprite.movementDir = dir; | 87 | sprite.movementDir = dir; |
