Core/Grids: Move packet sending functionality out of MessageDistDeliverer and into separate, customizable class and unify LocalizedPacketDo, LocalizedPacketListDo as generic localizable action
Port From (https://github.com/TrinityCore/TrinityCore/commit/fb66575d38d2ba7ffc24c29824fa75d7019de549)
This commit is contained in:
@@ -1549,7 +1549,7 @@ namespace Game.Entities
|
||||
internal void SendCombatLogMessage(CombatLogServerPacket combatLog)
|
||||
{
|
||||
CombatLogSender combatLogCustomizer = new(combatLog);
|
||||
MessageDistDeliverer notifier = new(this, combatLogCustomizer, GetVisibilityRange());
|
||||
var notifier = new MessageDistDeliverer<CombatLogSender>(this, combatLogCustomizer, GetVisibilityRange());
|
||||
Cell.VisitWorldObjects(this, notifier, GetVisibilityRange());
|
||||
}
|
||||
|
||||
|
||||
@@ -578,7 +578,7 @@ namespace Game.Entities
|
||||
public StringArray name = new(SharedConst.MaxDeclinedNameCases);
|
||||
}
|
||||
|
||||
class CombatLogSender : MessageDistDelivererCustomizer
|
||||
class CombatLogSender : IDoWork<Player>
|
||||
{
|
||||
CombatLogServerPacket i_message;
|
||||
|
||||
@@ -587,11 +587,12 @@ namespace Game.Entities
|
||||
i_message = msg;
|
||||
}
|
||||
|
||||
public override ServerPacket Invoke(Player player)
|
||||
public void Invoke(Player player)
|
||||
{
|
||||
i_message.Clear();
|
||||
i_message.SetAdvancedCombatLogging(player.IsAdvancedCombatLoggingEnabled());
|
||||
|
||||
return i_message;
|
||||
player.SendPacket(i_message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -351,7 +351,7 @@ namespace Game.Entities
|
||||
public virtual void Talk(string text, ChatMsg msgType, Language language, float textRange, WorldObject target)
|
||||
{
|
||||
var builder = new CustomChatTextBuilder(this, msgType, text, language, target);
|
||||
var localizer = new LocalizedPacketDo(builder);
|
||||
var localizer = new LocalizedDo(builder);
|
||||
var worker = new PlayerDistWorker(this, textRange, localizer);
|
||||
Cell.VisitWorldObjects(this, worker, textRange);
|
||||
}
|
||||
@@ -391,7 +391,7 @@ namespace Game.Entities
|
||||
}
|
||||
|
||||
var builder = new BroadcastTextBuilder(this, msgType, textId, GetGender(), target);
|
||||
var localizer = new LocalizedPacketDo(builder);
|
||||
var localizer = new LocalizedDo(builder);
|
||||
var worker = new PlayerDistWorker(this, textRange, localizer);
|
||||
Cell.VisitWorldObjects(this, worker, textRange);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user