| 
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1756,70 +1756,29 @@ bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshol | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			// Get collision rectangle for two rectangles collision | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    Rectangle rec = { 0, 0, 0, 0 }; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (CheckCollisionRecs(rec1, rec2)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        float dxx = fabsf(rec1.x - rec2.x); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        float dyy = fabsf(rec1.y - rec2.y); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        if (rec1.x <= rec2.x) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            if (rec1.y <= rec2.y) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.x = rec2.x; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.y = rec2.y; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.width = rec1.width - dxx; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.height = rec1.height - dyy; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.x = rec2.x; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.y = rec1.y; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.width = rec1.width - dxx; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.height = rec2.height - dyy; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            if (rec1.y <= rec2.y) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.x = rec1.x; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.y = rec2.y; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.width = rec2.width - dxx; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.height = rec1.height - dyy; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.x = rec1.x; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.y = rec1.y; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.width = rec2.width - dxx; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                rec.height = rec2.height - dyy; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        if (rec1.width > rec2.width) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            if (rec.width >= rec2.width) rec.width = rec2.width; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            if (rec.width >= rec1.width) rec.width = rec1.width; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        if (rec1.height > rec2.height) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            if (rec.height >= rec2.height) rec.height = rec2.height; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			           if (rec.height >= rec1.height) rec.height = rec1.height; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2){ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    Rectangle overlap; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float left = ((rec1.x) > (rec2.x) ? (rec1.x) : (rec2.x)); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float right1 = rec1.x + rec1.width; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float right2 = rec2.x + rec2.width; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float right = ((right1) < (right2) ? (right1) : (right2)); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float top = ((rec1.y) > (rec2.y) ? (rec1.y) : (rec2.y)); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float bottom1 = rec1.y + rec1.height; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float bottom2 = rec2.y + rec2.height; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float bottom = ((bottom1) < (bottom2) ? (bottom1) : (bottom2)); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (left < right && top < bottom){ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.x = (left); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.y = (top); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.width = (right - left ); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.height = (bottom - top); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    return rec; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    else{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.x = 0; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.y = 0; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.width = 0; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        overlap.height = 0; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    return overlap; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			//---------------------------------------------------------------------------------- | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |