fix: Fixes region duplicates (#1684)
This commit is contained in:
parent
d0d7be8de0
commit
0d5aa1d022
4 changed files with 18 additions and 17 deletions
|
|
@ -1450,6 +1450,11 @@ public sealed partial class Map : IComparable<Map>, ISpanFormattable, ISpanParsa
|
|||
|
||||
public void OnEnter(Region region, Rectangle3D rect)
|
||||
{
|
||||
if (_regions?.Contains(region) == true)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Utility.Add(ref _regions, region);
|
||||
|
||||
_regions.Sort();
|
||||
|
|
|
|||
|
|
@ -365,10 +365,11 @@ public class Region : IComparable<Region>, IValueLinkListNode<Region>
|
|||
{
|
||||
var sector = Map.GetRealSector(x, y);
|
||||
|
||||
sector.OnEnter(this, rect);
|
||||
|
||||
// Region Areas are approximate and will overlap
|
||||
// Don't add them multiple times!
|
||||
if (!sectors.Contains(sector))
|
||||
{
|
||||
sector.OnEnter(this, rect);
|
||||
sectors.Add(sector);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue