TWINE: fixed invalid processActor reset
was the cause of this blocker bug: https://bugs.scummvm.org/ticket/13177 the _processCollision variable is overwritten in getBrickShape and the 'backup' is lost
This commit is contained in:
parent
0ebd30c15f
commit
3d5d5317a8
1 changed files with 2 additions and 1 deletions
|
@ -668,7 +668,7 @@ void Animations::processActorAnimations(int32 actorIdx) {
|
|||
|
||||
_engine->_collision->_causeActorDamage = 0;
|
||||
|
||||
_engine->_collision->_processCollision = processActor;
|
||||
const IVec3 processActorSave = processActor;
|
||||
|
||||
if (IS_HERO(actorIdx) && !actor->_staticFlags.bComputeLowCollision) {
|
||||
// check hero collisions with bricks
|
||||
|
@ -683,6 +683,7 @@ void Animations::processActorAnimations(int32 actorIdx) {
|
|||
_engine->_collision->checkActorCollisionWithBricks(actor->_boudingBox.maxs.x, actor->_boudingBox.mins.y, actor->_boudingBox.maxs.z, 4);
|
||||
_engine->_collision->checkActorCollisionWithBricks(actor->_boudingBox.mins.x, actor->_boudingBox.mins.y, actor->_boudingBox.maxs.z, 8);
|
||||
}
|
||||
processActor = processActorSave;
|
||||
|
||||
// process wall hit while running
|
||||
if (_engine->_collision->_causeActorDamage && !actor->_dynamicFlags.bIsFalling && IS_HERO(_currentlyProcessedActorIdx) && _engine->_actor->_heroBehaviour == HeroBehaviourType::kAthletic && actor->_anim == AnimationTypes::kForward) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue