mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-14 20:54:16 +01:00
Merge pull request #174 from ascclemens/process-plugin-chat
Process chat messages from plugins
This commit is contained in:
commit
834bf6357d
1 changed files with 10 additions and 10 deletions
|
|
@ -221,17 +221,17 @@ namespace Dalamud.Game.Internal.Gui {
|
|||
while (this.chatQueue.Count > 0) {
|
||||
var chat = this.chatQueue.Dequeue();
|
||||
|
||||
var sender = chat.Name ?? "";
|
||||
var message = chat.MessageBytes ?? new byte[0];
|
||||
if (this.baseAddress == IntPtr.Zero) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (this.baseAddress != IntPtr.Zero)
|
||||
using (var senderVec = framework.Libc.NewString(Encoding.UTF8.GetBytes(sender)))
|
||||
using (var messageVec = framework.Libc.NewString(message))
|
||||
{
|
||||
Log.Verbose($"String allocated to {messageVec.Address.ToInt64():X}");
|
||||
this.printMessageHook.Original(this.baseAddress, chat.Type, senderVec.Address,
|
||||
messageVec.Address, chat.SenderId, chat.Parameters);
|
||||
}
|
||||
var senderRaw = Encoding.UTF8.GetBytes(chat.Name ?? "");
|
||||
using var senderOwned = framework.Libc.NewString(senderRaw);
|
||||
|
||||
var messageRaw = chat.MessageBytes ?? new byte[0];
|
||||
using var messageOwned = framework.Libc.NewString(messageRaw);
|
||||
|
||||
this.HandlePrintMessageDetour(this.baseAddress, chat.Type, senderOwned.Address, messageOwned.Address, chat.SenderId, chat.Parameters);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue