# SU.Buildings.AddBuildingEx

## SU.Buildings.AddBuildingEx(x, y, playerID, buildingType\[, radius=24\[, externalTowers=0]]

Platziert ein Gebäude des angegebenen Gebäude-Typs für den genannten Spieler möglichst nahe an den angegebenen Koordinaten. Dabei wird im gegebenen Radius nach einer freien Stelle gesucht, an der das Gebäude platziert werden kann.

Diese Funktion behebt das Fehlverhalten der originalen S4-Funktion `Buildings.AddBuildingEx(...)`, die dieses Verhalten eigentlich haben sollte.

#### Notiz

* diese Funktion prüft z.Z. **nicht**, ob Siedler im Weg stehen. **D.h., wird ein Gebäude mit dieser Funktion an einer Stelle platziert, an der Siedler stehen, stürzt das Spiel ab**, da die Siedler im Gebäude gefangen werden und feststecke&#x6E;**!** Eine Lösung ist in Arbeit...\
  ⇒ D.h. **diese Funktion** sollte **nur ganz zu Beginn des Spieles verwendet** werden, wenn noch keine/kaum Siedler in der Map verteilt sind!\
  ⇒ **Der sicherste Weg** ist es, statt Gebäuden **Baustellen zu platzieren**. Diese können nämlich auch über Siedler gesetzt werden kann (siehe [SU.Buildings.AddConstructionSiteEx](/s4-lua-api-de/su-library-functions/su.buildings/su.buildings.addconstructionsiteex.md)).

#### Parameter

* `x, y`: Koordinaten
* `playerID [1-8]`: Spieler-ID, **Index 0 ist ungültig!**
* `buildingType`: [Buildings](/s4-lua-api-de/api-enums/buildings.md)
* `radius [0-74]`(optional): Radius
* `externalTowers [0-1]`(optional): bei 1 werden Militärgebäude nur außerhalb des eigenen Landes platziert, um dieses größtmöglich zu erweitern.

#### Rückgabewert

* Gebäude-ID
* 0: Fehler, z.B. wenn das Gebäude hier nicht platziert werden konnte

#### Beispiel

```lua
local buildingID1 = SU.Buildings.AddBuildingEx(100,100, 1, Buildings.GUARDTOWERSMALL)    // Radius = 24
local buildingID2 = SU.Buildings.AddBuildingEx(100,100, 1, Buildings.GUARDTOWERSMALL, 10)    // Radius = 10
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.settlers-united.com/s4-lua-api-de/su-library-functions/su.buildings/su.buildings.addbuildingex.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
