fix: keep old detection methods for history
This commit is contained in:
parent
22a3f97732
commit
c4f1c97bca
|
@ -14,7 +14,8 @@ using ImGuiNET;
|
|||
using ImGuiScene;
|
||||
using Lumina.Excel.GeneratedSheets;
|
||||
using Action = System.Action;
|
||||
using PartyFinderPayload = Dalamud.Game.Text.SeStringHandling.Payloads.PartyFinderPayload;
|
||||
using DalamudPartyFinderPayload = Dalamud.Game.Text.SeStringHandling.Payloads.PartyFinderPayload;
|
||||
using ChatTwoPartyFinderPayload = ChatTwo.Util.PartyFinderPayload;
|
||||
|
||||
namespace ChatTwo;
|
||||
|
||||
|
@ -295,8 +296,8 @@ internal sealed class PayloadHandler {
|
|||
this.ClickLinkPayload(chunk, payload, link);
|
||||
break;
|
||||
}
|
||||
case PartyFinderPayload pf: {
|
||||
if (pf.LinkType == PartyFinderPayload.PartyFinderLinkType.PartyFinderNotification) {
|
||||
case DalamudPartyFinderPayload pf: {
|
||||
if (pf.LinkType == DalamudPartyFinderPayload.PartyFinderLinkType.PartyFinderNotification) {
|
||||
GameFunctions.GameFunctions.OpenPartyFinder();
|
||||
} else {
|
||||
this.Ui.Plugin.Functions.OpenPartyFinder(pf.ListingId);
|
||||
|
@ -304,10 +305,21 @@ internal sealed class PayloadHandler {
|
|||
|
||||
break;
|
||||
}
|
||||
case ChatTwoPartyFinderPayload pf: {
|
||||
this.Ui.Plugin.Functions.OpenPartyFinder(pf.Id);
|
||||
break;
|
||||
}
|
||||
case AchievementPayload achievement: {
|
||||
this.Ui.Plugin.Functions.OpenAchievement(achievement.Id);
|
||||
break;
|
||||
}
|
||||
case RawPayload raw: {
|
||||
if (Equals(raw, ChunkUtil.PeriodicRecruitmentLink)) {
|
||||
GameFunctions.GameFunctions.OpenPartyFinder();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -71,6 +71,11 @@ internal static class ChunkUtil {
|
|||
if (rawPayload.Data.Length > 1 && rawPayload.Data[1] == 0x13) {
|
||||
foreground.Pop();
|
||||
glow.Pop();
|
||||
} else if (rawPayload.Data.Length > 7 && rawPayload.Data[1] == 0x27 && rawPayload.Data[3] == 0x0A) {
|
||||
// pf payload
|
||||
var reader = new BinaryReader(new MemoryStream(rawPayload.Data[4..]));
|
||||
var id = GetInteger(reader);
|
||||
link = new PartyFinderPayload(id);
|
||||
} else if (rawPayload.Data.Length > 5 && rawPayload.Data[1] == 0x27 && rawPayload.Data[3] == 0x06) {
|
||||
// achievement payload
|
||||
var reader = new BinaryReader(new MemoryStream(rawPayload.Data[4..]));
|
||||
|
|
Loading…
Reference in New Issue