ModernUO/Projects/UOContent/Mobiles
Quick 0b34cc4417
feat: Changes Spawner HomeRange to SpawnBounds (#2290)
### Summary

This PR transitions the spawner system from a simple radius-based model to a flexible 3D boundary system.

### Core Changes

* **Replaced `HomeRange` with `SpawnBounds`**: Spawners now use a `Rectangle3D` to define spawn areas instead of a circular integer range.
* **Backward Compatibility**:
* The `HomeRange` property remains as a helper that generates square `SpawnBounds` centered on the spawner.
* Included a migration path (v10 to v11) that automatically converts old range data into new bounds during deserialization.


* **Dynamic Bounds Shifting**: If a spawner is moved, its `SpawnBounds` will automatically shift with it, provided the bounds are currently configured as a centered square.
* **New Spawn Logic**: Added `SpawnLocationIsHome` toggle. If enabled, spawned mobiles treat their exact spawn coordinates as their "Home" rather than the spawner's location.

### Implementation Details

* **Interface Updates**: Updated `ISpawner` to include `WalkingRange`, `SpawnBounds`, and `IsInSpawnBounds()`.
* **UI Enhancements**: The Spawner Controller Gump now displays "Custom" for complex bounds and allows copying of the new boundary properties between spawners.
* **Refactored Constructors**: Streamlined `BaseSpawner`, `ProximitySpawner`, and `RegionSpawner` constructors to support the new data types.
2025-12-26 18:07:26 -08:00
..
Abilities fix: fixes death explosion trigger on death (#2228) 2025-07-03 09:47:52 -07:00
AI feat: Changes Spawner HomeRange to SpawnBounds (#2290) 2025-12-26 18:07:26 -08:00
Animals chore: Fixes variable types for possible performance issues (#2172) 2025-05-01 21:54:41 -07:00
Familiars fix: Fixes movement pathing while in combat (#2271) 2025-11-16 10:14:06 -08:00
Guards feat: Changes Spawner HomeRange to SpawnBounds (#2290) 2025-12-26 18:07:26 -08:00
Healers feat: Adds PlayerDeathEvent and CreatureDeathEvent using code generated events (#1927) 2024-09-05 21:23:03 -07:00
Hireables fix: Do not add an extraneous Open Paperdoll context menu entry (#2224) 2025-06-28 17:30:18 -07:00
Monsters fix: Adds GetDistanceToSqrt for Point3D and centralizes all the calls (#2233) 2025-07-18 09:24:41 -07:00
Special fix: Fixes tentacles not getting removed from harrower's list (#2239) 2025-07-24 14:18:16 -07:00
Townfolk fix: Withdraw should have positive amount to work (#2221) 2025-06-28 11:42:43 -07:00
Vendors feat: Adds size/style support to gump builders, optimizes EscapeHtml (#2257) 2025-11-23 11:35:31 -08:00
BaseCreature.cs feat: Changes Spawner HomeRange to SpawnBounds (#2290) 2025-12-26 18:07:26 -08:00
NPCSpeeds.cs feat: Overhauls AI (Speech/Movement) (#2232) 2025-07-18 22:39:57 -07:00
PlayerMobile.cs fix: Eliminates List allocations in various places. (#2158) 2025-11-16 18:33:53 -08:00
VirtualMountItem.cs fix: Fixes mount stamina, adds Pub46+ Ethereal stamina (#1716) 2024-04-05 21:05:16 -07:00