> For the complete documentation index, see [llms.txt](https://hiveminddocs.gitbook.io/hivemind/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hiveminddocs.gitbook.io/hivemind/code-systems/ultimate-building-system-framework-ubs/proxy-behaviour/placement-conditions.md).

# Placement Conditions

With `Placement Conditions`, you can create any logic required to control where and how a buildable can be placed. For example, you might want to prevent a buildable from being placed if it overlaps with the environment. You can add and combine multiple placement conditions to customize the placement behavior for your buildables.

To create your own placement condition, subclass the `UBF_BuildableCondition` class and override the `CanPlace` function. This function returns a boolean: if `true`, the buildable can be placed; if `false`, it cannot be placed.

<figure><img src="/files/FS9HT6sgtvDV7iNCDgUK" alt=""><figcaption><p>Example of a Placement Condition</p></figcaption></figure>

## Functions

* `CanPlace()`:\
  Create your conditional logic here. Returns a boolean - true will pass the condition, false will fail it.<br>
