Example #1
0
void CollisionManager::CollideBulletTerrain( Bullet& bullet, Terrain& terrain )
{
	if( terrain.Type() != Terrain::Rock )
	{
		bullet.SetCoordinates( terrain.GetCoordinates() );
		return;
	}

	MessageBeep(MB_ICONSTOP);
	bullet.Explode();
	bullet.Damage(terrain);
}
Example #2
0
void CollisionManager::CollideTankTerrain( Tank& tank, Terrain& terrain )
{
	switch( terrain.Type() )
	{
	case Terrain::Rock:
		MessageBeep(MB_ICONHAND);
		break;

	case Terrain::Ice:
		if( ! tank.IsSkidding() )
		{
			tank.SetCoordinates( terrain.GetCoordinates() );
			tank.Skid();
		}
		break;

	case Terrain::Grass:
		tank.SetCoordinates( terrain.GetCoordinates() );
		break;
	}
}