# Kollisioner

## CheckCollisionRecs()

Tar emot två [Rectangles ](https://csharp.progdocs.se/annat/raylib/rectangle)som parametrar och returnerar true om de överlappar, false om de inte gör det.

```csharp
Rectangle playerRect = new Rectangle(5,5,10,10);
Rectangle enemyRect = new Rectangle(10,10,10,10);

bool areOverlapping = Raylib.CheckCollisionRecs(playerRect, enemyRect); // true
```

## GetCollisionRec()

Tar emot två [Rectangles](https://csharp.progdocs.se/annat/raylib/rectangle) som parametrar och returnerar en Rectangle som motsvarar överlappet mellan dem.

```csharp
Rectangle playerRect = new Rectangle(50,50,100,100);
Rectangle enemyRect = new Rectangle(100,100,100,100);
Rectangle overlap = Raylib.GetCollisionRec(playerRect, enemyRect);

Raylib.DrawRectangleRec(playerRect, Color.RED);
Raylib.DrawRectangleRec(enemyRect, Color.BLUE);
Raylib.DrawRectangleRec(overlap, Color.ORANGE);
```

![](https://3459450691-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MHmNgpRz-b16wpwGwZI%2F-MVNgoLuQfzpkKK_bIKU%2F-MVNjKjAtFjx_GqmDAOd%2Fimage.png?alt=media\&token=92e8f9c1-9a13-4e69-96ea-93399b0c2006)

## CheckCollisionCircles()

Tar emot två [vektorer ](https://csharp.progdocs.se/grundlaggande/vektorer-numerics)som beskriver två cirklars mittpunkter, och två floats som beskriver cirklarnas radie, och returnerar true om de överlappar, false om de inte gör det.

```csharp
Vector2 playerPos = new Vector2(10,10);
Vector2 enemyPos = new Vector2(20,20);

// true
bool areOverlapping = Raylib.CheckCollisionCircles(playerPos, 10, enemyPos, 15);
```

## CheckCollisionCircleRec()

Tar emot en positions[vektor](https://csharp.progdocs.se/grundlaggande/vektorer-numerics) och en radie för en cirkel, och en [Rectangle](https://csharp.progdocs.se/annat/raylib/rectangle). Returnerar true om rektangeln och cirkeln överlappar varandra, false om de inte gör det.

```csharp
Rectangle playerRect = new Rectangle(5,5,10,10);
Vector2 enemyPos = new Vector2(20,20);

// true
bool areOverlapping = Raylib.CheckCollisionCircleRec(enemyPos, 15, playerRect);
```

## CheckCollisionPointRec()

Tar emot en punkt i form av en positions[vektor](https://csharp.progdocs.se/grundlaggande/vektorer-numerics) samt en [Rectangle](https://csharp.progdocs.se/annat/raylib/rectangle). Returnerar true om punkten befinner sig inuti rektangeln, false om den inte gör det.

```csharp
Rectangle enemyRect = new Rectangle(10,10,10,10);

mousePos = Raylib.GetMousePosition();

bool areOverlapping = Raylib.CheckCollisionPointRec(mousePos, enemyRect))
```
