diff --git a/source/level/level.cpp b/source/level/level.cpp index 52868be32..af14494c7 100644 --- a/source/level/level.cpp +++ b/source/level/level.cpp @@ -421,6 +421,7 @@ void CLevel::initThings(int _respawningLevel) trigger->setPositionAndSize(TriggerList->Pos.X<<4,TriggerList->Pos.Y<<4, TriggerList->Width<<4,TriggerList->Height<<4); trigger->setTargetBox(TriggerList->TargetPos.X<<4,TriggerList->TargetPos.Y<<4,TriggerList->TargetSize.X<<4,TriggerList->TargetSize.Y<<4); + trigger->updateCollisionArea(); } TriggerList++; } @@ -443,6 +444,7 @@ void CLevel::initThings(int _respawningLevel) pos.vx=ItemList->Pos.X<<4; pos.vy=ItemList->Pos.Y<<4; newPickup=createPickup((PICKUP_TYPE)ItemList->Type,&pos); + newPickup->updateCollisionArea(); if(isSpat) { ((CSpatulaPickup*)newPickup)->setSpatulaNumber(spatNumber); @@ -477,6 +479,7 @@ void CLevel::initThings(int _respawningLevel) enemy->setLayerCollision( getCollisionLayer() ); enemy->setupWaypoints( ThisActor ); enemy->postInit(); + enemy->updateCollisionArea(); if ( ThisActor->Speed ) { @@ -491,6 +494,7 @@ void CLevel::initThings(int _respawningLevel) friendNpc=CNpcFriend::Create(ThisActor); friendNpc->setLayerCollision( getCollisionLayer() ); friendNpc->postInit(); + friendNpc->updateCollisionArea(); } break; @@ -510,6 +514,7 @@ void CLevel::initThings(int _respawningLevel) platform = CNpcPlatform::Create( ThisPlatform ); platform->setLayerCollision( getCollisionLayer() ); platform->postInit(); + platform->updateCollisionArea(); if ( ThisPlatform->Speed ) { @@ -527,7 +532,7 @@ void CLevel::initThings(int _respawningLevel) CNpcHazard *hazard; hazard = CNpcHazard::Create( ThisHazard ); hazard->setLayerCollision( getCollisionLayer() ); - + hazard->updateCollisionArea(); if ( ThisHazard->Respawn ) { hazard->setRespawnRate( ThisHazard->Respawn ); diff --git a/source/player/player.cpp b/source/player/player.cpp index 684e45740..d7a49180f 100644 --- a/source/player/player.cpp +++ b/source/player/player.cpp @@ -1377,6 +1377,7 @@ void CPlayer::respawn() clearPlatform(); GameScene.respawnLevel(); + updateCollisionArea(); }