| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 
 |  
int brick::collide_haut_brique(ball balle)
{
 
// la balle touche le haut de la brique, il faut la faire remonter
//if(balle->direc==DOWN)
//{
	if(float(balle.ballposx/400)+0.1f >= float(brickposX/400) )// on teste que la balle est sur la case en x;
	{
		if ( float(balle.ballposx/400) <= float(brickposX/400)+0.1f )
		{
			if( float(balle.ballposy/400) <= float(brickposY/400)+0.1f)// on teste que la balle est sur la case en y;
			{
				if(float(balle.ballposy/400) >= float(brickposY/400)-0.1f )
				{
 
					//balle->direc=UP;
					return UP;
					//balle->direc=-balle->direc;
				}
			}
		}
	}
//}
 
return 0;
}
 
 
int brick::collide_bas_brique(ball balle)
{
 
// la balle touche le bas de la brique il faut la faire redescendre
//if(balle->direc==UP)
//{
	if(float(balle.ballposx/400)+0.1f >= float(brickposX/400) ) // on teste que la balle est sur la case en x;
	{
		if ( float(balle.ballposx/400) <= float(brickposX/400)+0.1f )
		{
			if( float(balle.ballposy/400) >= float(brickposY/400)-0.1f  )// on teste que la balle est sur la case en y;
			{
				if(float(balle.ballposy/400) <= float(brickposY/400)+0.1f )
				{
 
					//balle->direc=DOWN;
					return DOWN;
					//balle->direc=-balle->direc;
				}
			}
		}
	}
//}
 
return 0;
}
 
 
int level::checkcollides(ball *balle)
{
 
	for (int p=0; p<20 ; p++ )
	{
		if(bricks[p].isalive==true)
		{	
			if(bricks[p].collide_haut_brique(*balle)==UP)
			{
				balle->direc=UP;
				std::cout <<"UP ! balle.direc = " << balle->direc << "\n";
				bricks[p].isalive=false;
			}
 
			//std::cout <<"HAUT BRICK " << bricks[p].collide_bas_brique(balle) << "\n";
 
			if(bricks[p].collide_bas_brique(*balle)==DOWN) 
			{
				balle->direc=DOWN;
				std::cout <<"DOWN ! balle.direc = " << balle->direc << "\n";
				bricks[p].isalive=false;
			}
			//std::cout <<"BAS BRICK " << bricks[p].collide_bas_brique(balle) << "\n";
		}
	}
 
 
 
return 0;
} | 
Partager