Core/Objects: Unify Searcher classes into one common implementation
Port From (https://github.com/TrinityCore/TrinityCore/commit/261eb201bf107cef441d9b075e8f23bf0edfbaf0) Port From (https://github.com/TrinityCore/TrinityCore/commit/526b16fea41fb69a302fdebe8a727e175949f04b) Port From (https://github.com/TrinityCore/TrinityCore/commit/8b7dce6521323e788ebf28297ec941a6f9bf876f) Port From (https://github.com/TrinityCore/TrinityCore/commit/5334467f493eb16141f4ad0bce956bc3e19244a0) Port From (https://github.com/TrinityCore/TrinityCore/commit/1e7725c15b149baaf96731231239769e482ec2ed) Port From (https://github.com/TrinityCore/TrinityCore/commit/21712f475383f6f3fae107706f5de5195f75b760)
This commit is contained in:
@@ -633,7 +633,7 @@ namespace Game.Entities
|
||||
var checker = new NearestAttackableNoTotemUnitInObjectRangeCheck(this, radius);
|
||||
var searcher = new UnitLastSearcher(this, checker);
|
||||
Cell.VisitAllObjects(this, searcher, radius);
|
||||
target = searcher.GetTarget();
|
||||
target = searcher.GetResult();
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -641,7 +641,7 @@ namespace Game.Entities
|
||||
var check = new AnyUnitInObjectRangeCheck(this, radius);
|
||||
var searcher = new PlayerSearcher(this, check);
|
||||
Cell.VisitWorldObjects(this, searcher, radius);
|
||||
target = searcher.GetTarget();
|
||||
target = searcher.GetResult();
|
||||
}
|
||||
|
||||
if (target != null)
|
||||
@@ -1465,7 +1465,7 @@ namespace Game.Entities
|
||||
var checker = new GameObjectSearcher(this, u_check);
|
||||
|
||||
Cell.VisitGridObjects(this, checker, range);
|
||||
return checker.GetTarget();
|
||||
return checker.GetResult();
|
||||
}
|
||||
|
||||
public void ResetDoorOrButton()
|
||||
@@ -3975,7 +3975,7 @@ namespace Game.Entities
|
||||
ObjectGuid m_linkedTrap;
|
||||
#endregion
|
||||
|
||||
class ValuesUpdateForPlayerWithMaskSender : IDoWork<Player>
|
||||
class ValuesUpdateForPlayerWithMaskSender
|
||||
{
|
||||
public GameObject Owner;
|
||||
public ObjectFieldData ObjectMask = new();
|
||||
@@ -3995,6 +3995,8 @@ namespace Game.Entities
|
||||
udata.BuildPacket(out UpdateObject packet);
|
||||
player.SendPacket(packet);
|
||||
}
|
||||
|
||||
public static implicit operator IDoWork<Player>(ValuesUpdateForPlayerWithMaskSender obj) => obj.Invoke;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user