Methods to handle DotFilters. Dot filters are filters that filter in or out ERSMinimapDots.

type TRSDotFilter

TRSDotFilter = record
  Bounds: TPointArray;
  Circle: TCircle;
  Inside: Boolean;

  Timeout: Boolean;
  Timer: TCountDown;

Type used to filter minimap dots.


function TRSDotFilter.Create(bounds: TPointArray; c: TCircle; inside: Boolean; time: Int32 = -1): TRSDotFilter; static;

Static method to create a TRSDotFilter.


function TRSDotFilter.IsExpired(): Boolean;

Checks if a TRSDotFilter is already expired by checking it’s timer.


function TRSDotFilter.IsValid(p: TPoint): Boolean;

Checks if a point is valid accordint to the current TRSDotFilter;


procedure TRSDotFilter.Draw(out bitmap: TMufasaBitmap);

Internal method to draw the current dot filter on a bitmap for debugging. You can see this in action by calling Debug(TRSDotFilter).

type TRSDotFilterArray

Type used to manage and interact with arrays of TRSDotFilters.


procedure TRSDotFilterArray.Setup(bounds: TPointArray; circle: TCircle; inside: Boolean; time: Int32 = -1);
procedure TRSDotFilterArray.SetupBounds(bounds: TPointArray; inside: Boolean; time: Int32 = -1);
procedure TRSDotFilterArray.SetupCircle(circle: TCircle; inside: Boolean; time: Int32 = -1);

Creates and adds a TRSDotFilter to the current TRSDotFilterArray.


procedure TRSDotFilterArray.ClearExpired();

Clears expired TRSDotFilter from the current TRSDotFilterArray. You usually don’t need to call this directly, but you can if you want. Other methods already take care of this by default for you regardless.


function TRSDotFilterArray.IsValid(dot: TPoint; clearExpired: Boolean = True): Boolean;

Checks if a dot/point is valid in any of the TRSDotFilters in the current array. By default, expired TRSDotFilters are cleared from the array while this runs.


function TRSDotFilterArray.FilterDots(dots: TPointArray): TPointArray;

Filter the dots/points passed into this according to our current TRSDotFilters.


procedure TRSDotFilterArray.Draw(out bitmap: TMufasaBitmap);

Internal method for drawing the TRSDotFilterArray on a bitmap for debugging. You can see this in action by calling Debug(TRSDotFilterArray)


function TRSMinimap.GetFilteredDotArray(dot: ERSMinimapDot; dotFilters: TRSDotFilterArray): TPointArray;
function TRSMinimap.GetFilteredDot(dot: ERSMinimapDot; dotFilters: TRSDotFilterArray): TPoint;

Retrieves and filters minimap dots according to the specified TRSDotFilters.


procedure Debug(filter: TRSDotFilter); overload;
procedure Debug(filterArray: TRSDotFilterArray); overload;

Debugs a TRSDotFilter or TRSDotFilterArray on the client.