void SpaceInvadersModel::handleAllCollisions() {
		detectAllCollisions();

		checkForDestroyedRegularAliens();
		checkForDestroyedBullets();
		checkForDestroyedShields();
		checkForDestroyedPlayer();
		checkForDestroyedBonusAlien();
	}
Exemplo n.º 2
0
static void gameScreen_Process( void )
{
	getLaunchToPosition( );
	processTroops( );

	// check all collisions
	detectAllCollisions( panjandrumColliders, troopColliders, drumTroopCollision );
	detectAllCollisions( panjandrumColliders, explosionColliders, drumExplosionCollision );
	detectAllCollisions( explosionColliders, troopColliders, explosionTroopCollision );
	detectAllCollisions( panjandrumColliders, barbedWireColliders, drumWireCollision );
	detectAllCollisions( panjandrumColliders, mineColliders, drumMineCollision );
	detectAllCollisions( explosionColliders, mineColliders, explosionMineCollision );
	detectAllCollisions( barbedWireColliders, troopColliders, wireTroopCollision );
	detectAllCollisions( mineColliders, troopColliders, mineTroopCollision );
	detectAllCollisions( pitColliders, troopColliders, pitTroopCollision );
	detectAllCollisions( sideColliders, troopColliders, sideTroopCollision );

	if( introMode ) {
		detectCollisions( &startCollider, explosionColliders.firstCollider, explosionColliders.stride, explosionColliders.count,
			startExplosionCollision, 0 );
	}
}