### 🐛 Bug Fixes
- **[Folia] Entity hiding now actually works on Folia** — On Folia servers, `hideEntity()`/`showEntity()` calls were silently failing due to region-thread ownership violations. The plugin was scheduling visibility tasks on the region that owns the *spawned entity*, then attempting to mutate every online player's state from that thread — which Folia correctly rejects. The exceptions were being swallowed silently (logged at `.fine()`, invisible by default), making it appear as if "nothing happened." Entity hiding is now dispatched through Folia's `EntityScheduler` on a per-player basis, which always runs on the correct region thread for that player regardless of where they are in the world.
- **[Folia] Entity hiding after teleport now scans the correct location** — `entityHider.updateFor()` was being called *before* `teleportAsync()` completed, causing it to check for nearby entities around the player's *pre-teleport* position. Entities near the teleport destination were never hidden. The call is now correctly placed inside the `whenComplete` callback, after the teleport has landed.
- **[Folia] Entities now re-show correctly when protection deactivates** — `entityHider.updateFor()` was only invoked when arming protection (going underground), not when disarming (coming back up or dismounting a vehicle below protectionY). This caused entities hidden by EntityHider to remain invisible until an unrelated state change happened to trigger an update. Both arm and disarm paths now call `updateFor()`.
- **Hide/show failures are now visible in console** — `hideEntity()` and `showEntity()` errors were previously logged at `.fine()` (suppressed by default), masking failures entirely. They are now logged at `.warning()` level so server admins can see if something goes wrong.
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }