1
0
Fork 0
forked from aly/qstbak

muffin v7.5.6

This commit is contained in:
alydev 2026-08-17 20:27:25 +10:00
parent 6266f9e6b7
commit addf2d530f
619 changed files with 264792 additions and 446022 deletions

View file

@ -0,0 +1,17 @@
using System.Collections.Generic;
using System.Numerics;
namespace LLib.ImGui;
public interface IEditablePolygonSet
{
int PolygonCount { get; }
IList<Vector2> GetVertices(int polygonIndex);
uint GetColor(int polygonIndex);
string GetLabel(int polygonIndex);
void AddPolygon(IList<Vector2> vertices);
}

View file

@ -1,3 +1,4 @@
using System;
using Dalamud.Bindings.ImGui;
using Dalamud.Interface.Windowing;
@ -9,9 +10,7 @@ public abstract class LWindow : Window
private bool _wasCollapsedLastFrame;
protected bool ClickedHeaderLastFrame { get; private set; }
protected bool ClickedHeaderCurrentFrame { get; private set; }
private bool _closeRequested;
protected bool UncollapseNextFrame { get; set; }
@ -19,15 +18,29 @@ public abstract class LWindow : Window
{
get
{
if (base.IsOpen)
int num = ((!_202C_202D_206F_200C_202D_202E_200B_200E_206C_206A_200F_200F_202D_200D_200C_200B_200E_202C_200E_206C_200E_206D_202B_200D_202C_206E_200D_200E_202A_202C_202A_202B_200B_206C_206A_200D_200C_200F_202A_200F_202E()) ? 683185440 : 683185441);
while (true)
{
return !_wasCollapsedLastFrame;
int num2 = num;
int num3 = 683185440;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
goto IL_0046;
case 0:
return false;
case 1:
return !_wasCollapsedLastFrame;
}
continue;
IL_0046:
num = 683185441;
}
return false;
}
set
{
base.IsOpen = value;
_200F_200D_206A_200C_200C_200F_206F_200F_206C_202A_200D_206F_206D_206F_206D_200D_202D_202B_202D_206B_202D_202A_202B_202A_206E_200C_206D_202E_202C_200F_206B_206F_202D_202E_202A_202D_202E_202E_202C_206F_202E(value);
UncollapseNextFrame = value;
}
}
@ -36,11 +49,35 @@ public abstract class LWindow : Window
{
get
{
return (int?)(100000f * base.BgAlpha);
float? num = _202B_200B_200F_206E_202D_200E_200F_206B_202C_200F_206F_206E_206A_206B_200F_206C_202D_202E_200C_206B_200B_206C_202D_206C_206F_200B_206B_202E_206A_200D_206A_206D_206C_206C_202A_206A_202C_206C_206F_202E();
int num2 = ((!num.HasValue) ? (-473648869) : (-473648872));
float valueOrDefault = default(float);
while (true)
{
int num3 = num2;
int num4 = -473648870;
int num5 = num3;
int num6 = num5 + num4;
int num7 = num5 & num4;
switch (num6 - (num7 + num7))
{
case 0:
num2 = -473648872;
break;
case 3:
return (int)_202B_202B_200E_200C_200F_200B_200D_200D_200D_206D_200B_206B_202A_202B_200C_206C_206E_206D_206A_202C_206A_202D_206D_206E_206D_200E_202A_206C_200B_200D_206F_206F_200E_200C_206B_200E_200C_206F_206D_200D_202E(100000f * valueOrDefault);
case 2:
valueOrDefault = num.GetValueOrDefault();
num2 = -473648871;
break;
case 1:
return null;
}
}
}
set
{
base.BgAlpha = (float?)value / 100000f;
_200F_202B_206C_202C_206F_200C_200B_202D_200C_206E_202C_206D_202A_206D_202C_206A_202B_202B_202C_206E_200C_206D_206E_200D_202C_200B_200D_202C_200C_200C_206B_200E_200B_200D_200C_200C_206F_200E_202C_206D_202E((float?)value / 100000f);
}
}
@ -51,54 +88,123 @@ public abstract class LWindow : Window
private void LoadWindowConfig()
{
if (!(this is IPersistableWindowConfig persistableWindowConfig))
IPersistableWindowConfig persistableWindowConfig = this as IPersistableWindowConfig;
int num = ((persistableWindowConfig == null) ? (-1866426683) : (-1866426684));
WindowConfig windowConfig = default(WindowConfig);
while (true)
{
return;
}
WindowConfig windowConfig = persistableWindowConfig.WindowConfig;
if (windowConfig != null)
{
if (base.AllowPinning)
int num2 = num;
int num3 = -1866426683;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
base.IsPinned = windowConfig.IsPinned;
case 5:
Alpha = windowConfig.Alpha;
num = -1866426685;
break;
case 4:
_202A_202A_206B_206A_202A_200B_200B_206D_206E_206A_200C_202D_206E_202B_202B_206C_202D_206A_202B_200E_202C_202D_206E_202E_200F_202B_206D_206B_206A_202A_206B_200E_206C_200E_200D_206A_206B_200B_202E_206E_202E(windowConfig.IsPinned);
num = -1866426686;
break;
case 8:
num = ((!_206F_202C_200E_206A_202C_202E_200D_202E_202E_200F_206C_200C_200C_202C_202B_200F_200E_200C_206E_200E_200D_206F_206C_202A_206C_206B_206E_202E_202B_206B_200F_202A_202E_202B_200D_206A_206E_200C_202C_202C_202E()) ? (-1866426686) : (-1866426687));
break;
case 6:
_initializedConfig = true;
num = -1866426683;
break;
case 0:
return;
case 7:
num = ((!_202A_206A_200E_200F_202C_206F_206E_206A_206E_200C_200E_202E_202C_202B_206D_206A_206F_200B_200D_202B_206A_202C_200E_206C_206F_206D_206D_200B_206F_202D_200F_206E_206E_206D_206A_200E_202C_206C_202B_206A_202E()) ? (-1866426688) : (-1866426682));
break;
case 3:
_200D_200B_202D_200D_200D_206F_200B_202E_200E_202A_206D_202B_206D_202B_206F_200D_200E_206C_200D_206A_206E_200B_206A_200E_200F_200C_202B_206E_206A_200C_202B_206E_206F_206A_200B_202C_202B_202C_206B_206F_202E(windowConfig.IsClickthrough);
num = -1866426688;
break;
case 1:
windowConfig = persistableWindowConfig.WindowConfig;
num = ((windowConfig == null) ? (-1866426685) : (-1866426675));
break;
case 2:
num = -1866426684;
break;
}
if (base.AllowClickthrough)
{
base.IsClickthrough = windowConfig.IsClickthrough;
}
Alpha = windowConfig.Alpha;
}
_initializedConfig = true;
}
private void UpdateWindowConfig()
{
if (!(this is IPersistableWindowConfig persistableWindowConfig) || Dalamud.Bindings.ImGui.ImGui.IsAnyMouseDown())
IPersistableWindowConfig persistableWindowConfig = this as IPersistableWindowConfig;
int num = ((persistableWindowConfig == null) ? (-692903602) : (-692903601));
WindowConfig windowConfig = default(WindowConfig);
bool flag = default(bool);
while (true)
{
return;
}
WindowConfig windowConfig = persistableWindowConfig.WindowConfig;
if (windowConfig != null)
{
bool flag = false;
if (base.AllowPinning && windowConfig.IsPinned != base.IsPinned)
int num2 = num;
int num3 = -692903608;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
windowConfig.IsPinned = base.IsPinned;
case 0:
num = -692903601;
break;
case 6:
return;
case 1:
windowConfig.IsPinned = _200C_202C_202B_206A_206E_202C_200C_202A_206A_206B_202D_202C_200F_200F_206C_206C_206D_206E_202D_206A_206B_200D_202C_206C_200E_206E_200F_200F_202E_206B_206C_200E_206B_202E_202A_200C_202A_206B_206F_206B_202E();
flag = true;
}
if (base.AllowClickthrough && windowConfig.IsClickthrough != base.IsClickthrough)
{
windowConfig.IsClickthrough = base.IsClickthrough;
num = -692903603;
break;
case 3:
num = ((windowConfig.IsClickthrough == _200C_206A_200D_200B_202B_202B_206A_202B_206A_206A_202D_202B_202E_206E_202E_200B_206B_202E_200F_202D_202C_200F_202D_200F_202C_200F_202C_206A_206E_202C_202D_200C_202C_200C_206D_206E_206B_200F_200C_206B_202E()) ? (-692903606) : (-692903604));
break;
case 4:
windowConfig.IsClickthrough = _200C_206A_200D_200B_202B_202B_206A_202B_206A_206A_202D_202B_202E_206E_202E_200B_206B_202E_200F_202D_202C_200F_202D_200F_202C_200F_202C_206A_206E_202C_202D_200C_202C_200C_206D_206E_206B_200F_200C_206B_202E();
flag = true;
}
if (windowConfig.Alpha != Alpha)
{
num = -692903606;
break;
case 12:
flag = false;
num = ((!_206F_202C_200E_206A_202C_202E_200D_202E_202E_200F_206C_200C_200C_202C_202B_200F_200E_200C_206E_200E_200D_206F_206C_202A_206C_206B_206E_202E_202B_206B_200F_202A_202E_202B_200D_206A_206E_200C_202C_202C_202E()) ? (-692903603) : (-692903615));
break;
case 13:
windowConfig.Alpha = Alpha;
flag = true;
}
if (flag)
num = -692903616;
break;
case 5:
num = ((!_202A_206A_200E_200F_202C_206F_206E_206A_206E_200C_200E_202E_202C_202B_206D_206A_206F_200B_200D_202B_206A_202C_200E_206C_206F_206D_206D_200B_206F_202D_200F_206E_206E_206D_206A_200E_202C_206C_202B_206A_202E()) ? (-692903606) : (-692903605));
break;
case 10:
windowConfig = persistableWindowConfig.WindowConfig;
num = ((windowConfig == null) ? (-692903602) : (-692903612));
break;
case 7:
num = (_206E_206F_206B_200D_200F_202D_202A_202D_206D_200F_200B_200F_200C_202E_200E_200E_202C_206E_206C_206F_206E_202E_202C_206B_200F_202C_206E_206A_206B_206D_206D_202A_200F_206A_206C_200E_206F_200B_200C_206A_202E() ? (-692903602) : (-692903614));
break;
case 8:
num = ((!flag) ? (-692903602) : (-692903613));
break;
case 2:
{
int? alpha = windowConfig.Alpha;
int? alpha2 = Alpha;
bool num7 = alpha.GetValueOrDefault() == alpha2.GetValueOrDefault();
num3 = ((alpha.HasValue == alpha2.HasValue) ? 1 : 0);
num4 = (num7 ? 1 : 0);
num = ((num4 + num3 - (num4 | num3) != 0) ? (-692903616) : (-692903611));
break;
}
case 11:
persistableWindowConfig.SaveWindowConfig();
num = -692903602;
break;
case 9:
num = ((windowConfig.IsPinned == _200C_202C_202B_206A_206E_202C_200C_202A_206A_206B_202D_202C_200F_200F_206C_206C_206D_206E_202D_206A_206B_200D_202C_206C_200E_206E_200F_200F_202E_206B_206C_200E_206B_202E_202A_200C_202A_206B_206F_206B_202E()) ? (-692903603) : (-692903607));
break;
}
}
}
@ -108,10 +214,16 @@ public abstract class LWindow : Window
IsOpenAndUncollapsed = !IsOpenAndUncollapsed;
}
protected void RequestClose()
{
_closeRequested = true;
}
public override void OnOpen()
{
_closeRequested = false;
UncollapseNextFrame = true;
base.OnOpen();
_202B_206D_200D_206C_206F_202B_202C_200F_206E_206F_206B_200D_200E_202E_202A_200E_202C_202E_206A_202C_206F_206B_206B_206C_206F_202D_200E_200D_206A_202E_200B_200F_206E_202B_202A_202C_206D_206B_200C_206E_202E();
}
public override void Update()
@ -121,18 +233,42 @@ public abstract class LWindow : Window
public override void PreDraw()
{
if (!_initializedConfig)
int num = ((!_closeRequested) ? (-306664405) : (-306664404));
while (true)
{
LoadWindowConfig();
int num2 = num;
int num3 = -306664406;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 1:
num = (_initializedConfig ? (-306664408) : (-306664402));
break;
case 6:
_closeRequested = false;
_200F_200D_206A_200C_200C_200F_206F_200F_206C_202A_200D_206F_206D_206F_206D_200D_202D_202B_202D_206B_202D_202A_202B_202A_206E_200C_206D_202E_202C_200F_206B_206F_202D_202E_202A_202D_202E_202E_202C_206F_202E(false);
num = -306664405;
break;
case 4:
LoadWindowConfig();
num = -306664408;
break;
case 0:
_202E_206B_206E_206C_202C_202A_200D_202C_206E_200E_206C_206F_202B_202D_206A_206B_200F_206C_200D_206E_206A_206C_200C_200B_200B_202A_200D_200C_202A_206A_206D_206C_202A_202C_200B_200D_202E_200D_200E_202B_202E(false);
UncollapseNextFrame = false;
num = -306664407;
break;
case 5:
num = -306664404;
break;
case 3:
_200E_200F_200F_202A_206E_202D_200D_206C_206A_200D_202E_200C_200F_202D_200B_202E_200E_200D_202A_206C_206F_202E_202E_200F_200D_206E_206A_202A_206A_206B_206E_202D_202C_200F_206E_206C_206E_200C_206A_200C_202E();
return;
case 2:
num = ((!UncollapseNextFrame) ? (-306664407) : (-306664406));
break;
}
}
if (UncollapseNextFrame)
{
Dalamud.Bindings.ImGui.ImGui.SetNextWindowCollapsed(collapsed: false);
UncollapseNextFrame = false;
}
base.PreDraw();
ClickedHeaderLastFrame = ClickedHeaderCurrentFrame;
ClickedHeaderCurrentFrame = false;
}
public sealed override void Draw()
@ -145,10 +281,105 @@ public abstract class LWindow : Window
public override void PostDraw()
{
base.PostDraw();
if (_initializedConfig)
_200B_202E_202E_206B_202B_202A_206B_200B_202D_206E_202D_200F_202B_200C_200C_200B_206A_206E_206C_206B_206E_202D_202D_206E_200C_206B_202B_206F_202E_202B_206A_206B_206D_202E_202B_206E_200B_206A_200E_200C_202E();
int num = ((!_initializedConfig) ? (-1105315844) : (-1105315843));
while (true)
{
UpdateWindowConfig();
int num2 = num;
int num3 = -1105315844;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = -1105315843;
break;
case 0:
return;
case 1:
UpdateWindowConfig();
num = -1105315844;
break;
}
}
}
bool _202C_202D_206F_200C_202D_202E_200B_200E_206C_206A_200F_200F_202D_200D_200C_200B_200E_202C_200E_206C_200E_206D_202B_200D_202C_206E_200D_200E_202A_202C_202A_202B_200B_206C_206A_200D_200C_200F_202A_200F_202E()
{
return base.IsOpen;
}
void _200F_200D_206A_200C_200C_200F_206F_200F_206C_202A_200D_206F_206D_206F_206D_200D_202D_202B_202D_206B_202D_202A_202B_202A_206E_200C_206D_202E_202C_200F_206B_206F_202D_202E_202A_202D_202E_202E_202C_206F_202E(bool P_0)
{
base.IsOpen = P_0;
}
float? _202B_200B_200F_206E_202D_200E_200F_206B_202C_200F_206F_206E_206A_206B_200F_206C_202D_202E_200C_206B_200B_206C_202D_206C_206F_200B_206B_202E_206A_200D_206A_206D_206C_206C_202A_206A_202C_206C_206F_202E()
{
return base.BgAlpha;
}
static float _202B_202B_200E_200C_200F_200B_200D_200D_200D_206D_200B_206B_202A_202B_200C_206C_206E_206D_206A_202C_206A_202D_206D_206E_206D_200E_202A_206C_200B_200D_206F_206F_200E_200C_206B_200E_200C_206F_206D_200D_202E(float P_0)
{
return MathF.Round(P_0);
}
void _200F_202B_206C_202C_206F_200C_200B_202D_200C_206E_202C_206D_202A_206D_202C_206A_202B_202B_202C_206E_200C_206D_206E_200D_202C_200B_200D_202C_200C_200C_206B_200E_200B_200D_200C_200C_206F_200E_202C_206D_202E(float? P_0)
{
base.BgAlpha = P_0;
}
bool _206F_202C_200E_206A_202C_202E_200D_202E_202E_200F_206C_200C_200C_202C_202B_200F_200E_200C_206E_200E_200D_206F_206C_202A_206C_206B_206E_202E_202B_206B_200F_202A_202E_202B_200D_206A_206E_200C_202C_202C_202E()
{
return base.AllowPinning;
}
void _202A_202A_206B_206A_202A_200B_200B_206D_206E_206A_200C_202D_206E_202B_202B_206C_202D_206A_202B_200E_202C_202D_206E_202E_200F_202B_206D_206B_206A_202A_206B_200E_206C_200E_200D_206A_206B_200B_202E_206E_202E(bool P_0)
{
base.IsPinned = P_0;
}
bool _202A_206A_200E_200F_202C_206F_206E_206A_206E_200C_200E_202E_202C_202B_206D_206A_206F_200B_200D_202B_206A_202C_200E_206C_206F_206D_206D_200B_206F_202D_200F_206E_206E_206D_206A_200E_202C_206C_202B_206A_202E()
{
return base.AllowClickthrough;
}
void _200D_200B_202D_200D_200D_206F_200B_202E_200E_202A_206D_202B_206D_202B_206F_200D_200E_206C_200D_206A_206E_200B_206A_200E_200F_200C_202B_206E_206A_200C_202B_206E_206F_206A_200B_202C_202B_202C_206B_206F_202E(bool P_0)
{
base.IsClickthrough = P_0;
}
static bool _206E_206F_206B_200D_200F_202D_202A_202D_206D_200F_200B_200F_200C_202E_200E_200E_202C_206E_206C_206F_206E_202E_202C_206B_200F_202C_206E_206A_206B_206D_206D_202A_200F_206A_206C_200E_206F_200B_200C_206A_202E()
{
return Dalamud.Bindings.ImGui.ImGui.IsAnyMouseDown();
}
bool _200C_202C_202B_206A_206E_202C_200C_202A_206A_206B_202D_202C_200F_200F_206C_206C_206D_206E_202D_206A_206B_200D_202C_206C_200E_206E_200F_200F_202E_206B_206C_200E_206B_202E_202A_200C_202A_206B_206F_206B_202E()
{
return base.IsPinned;
}
bool _200C_206A_200D_200B_202B_202B_206A_202B_206A_206A_202D_202B_202E_206E_202E_200B_206B_202E_200F_202D_202C_200F_202D_200F_202C_200F_202C_206A_206E_202C_202D_200C_202C_200C_206D_206E_206B_200F_200C_206B_202E()
{
return base.IsClickthrough;
}
void _202B_206D_200D_206C_206F_202B_202C_200F_206E_206F_206B_200D_200E_202E_202A_200E_202C_202E_206A_202C_206F_206B_206B_206C_206F_202D_200E_200D_206A_202E_200B_200F_206E_202B_202A_202C_206D_206B_200C_206E_202E()
{
base.OnOpen();
}
static void _202E_206B_206E_206C_202C_202A_200D_202C_206E_200E_206C_206F_202B_202D_206A_206B_200F_206C_200D_206E_206A_206C_200C_200B_200B_202A_200D_200C_202A_206A_206D_206C_202A_202C_200B_200D_202E_200D_200E_202B_202E(bool P_0)
{
Dalamud.Bindings.ImGui.ImGui.SetNextWindowCollapsed(P_0);
}
void _200E_200F_200F_202A_206E_202D_200D_206C_206A_200D_202E_200C_200F_202D_200B_202E_200E_200D_202A_206C_206F_202E_202E_200F_200D_206E_206A_202A_206A_206B_206E_202D_202C_200F_206E_206C_206E_200C_206A_200C_202E()
{
base.PreDraw();
}
void _200B_202E_202E_206B_202B_202A_206B_200B_202D_206E_202D_200F_202B_200C_200C_200B_206A_206E_206C_206B_206E_202D_202D_206E_200C_206B_202B_206F_202E_202B_206A_206B_206D_202E_202B_206E_200B_206A_200E_200C_202E()
{
base.PostDraw();
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,363 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Numerics;
using System.Runtime.CompilerServices;
using Dalamud.Interface.Textures;
using Dalamud.Interface.Textures.TextureWraps;
using Dalamud.Plugin.Services;
using Lumina.Excel.Sheets;
using Microsoft.Extensions.Logging;
namespace LLib.ImGui;
public sealed class MapTextureService
{
private readonly ITextureProvider _textureProvider;
private readonly IDataManager _dataManager;
private readonly ILogger<MapTextureService> _logger;
private uint _loadedTerritoryType;
private ISharedImmediateTexture? _resolvedTexture;
private List<ISharedImmediateTexture>? _candidateTextures;
private bool _failed;
private long _retryAtMs;
private int _searchFrames;
private const int SearchTimeout = 120;
private const long RetryDelayMs = 30000L;
private ushort _sizeFactor;
private short _offsetX;
private short _offsetY;
public bool IsLoaded => _resolvedTexture != null;
public bool IsSearching => _candidateTextures != null;
public ushort SizeFactor => _sizeFactor;
public MapTextureService(ITextureProvider textureProvider, IDataManager dataManager, ILogger<MapTextureService> logger)
{
_textureProvider = textureProvider;
_dataManager = dataManager;
_logger = logger;
}
[MethodImpl(MethodImplOptions.NoInlining)]
public bool LoadForTerritory(uint territoryType)
{
int num = ((territoryType != _loadedTerritoryType) ? (-703602804) : (-703602806));
List<string> list2 = default(List<string>);
string value = default(string);
Map? map = default(Map?);
string[] array = default(string[]);
string text = default(string);
TerritoryType? rowOrDefault = default(TerritoryType?);
while (true)
{
int num2 = num;
int num3 = -703602814;
int num4 = num2;
Map? obj;
switch ((num4 | num3) - (num4 & num3))
{
default:
continue;
case 0:
return false;
case 3:
num = ((_200E_206C_202D_200C_200F_206A_202A_200E_200E_202C_202D_202D_202B_206B_206F_206F_200F_206D_206A_206E_202C_206E_200F_200F_206B_202A_206A_202A_200F_206A_206F_206A_200E_200D_206E_206D_206B_206B_200D_206E_202E() >= _retryAtMs) ? (-703602796) : (-703602814));
continue;
case 16:
num = ((_candidateTextures == null) ? (-703602797) : (-703602813));
continue;
case 21:
_failed = true;
return false;
case 1:
PollCandidates();
return _resolvedTexture != null;
case 7:
num = ((!_failed) ? (-703602799) : (-703602816));
continue;
case 15:
{
List<string> list = list2;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(19, 2);
defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._202E_202C_206D_206B_202B_202D_206D_202E_206F_202E_202A_206A_206A_202B_206A_202D_202C_206C_206B_202C_206E_202B_200E_206E_206A_206C_200D_200D_200F_200B_202C_200B_200E_206F_202C_200F_202D_202A_206E_202B_202E<string>(674220722));
defaultInterpolatedStringHandler.AppendFormatted(value);
defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._206A_202C_200C_206F_202A_200C_200F_206F_202B_202B_200D_206F_206D_200E_206A_206B_202A_200F_200B_206C_202B_202A_202B_206C_200F_206C_202C_202C_200C_206C_206F_200C_200B_202D_200E_202A_202A_206B_206B_200F_202E<string>(-27764842));
defaultInterpolatedStringHandler.AppendFormatted(value);
defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._206A_206D_202C_206E_206D_206E_202A_200F_200D_206A_200F_206C_202C_202D_206D_206A_200D_200F_206A_206C_202C_206D_206E_200F_200F_200C_206B_200B_206B_206E_202B_206B_200E_200E_200B_206F_200F_202E_200C_200C_202E<string>(582629916));
list.Add(defaultInterpolatedStringHandler.ToStringAndClear());
num = -703602795;
continue;
}
case 23:
_206F_200B_200E_206D_200C_200B_206B_206C_202A_206C_206C_206C_206D_202E_206E_206F_206A_200C_200D_200C_202D_202D_200E_206D_202E_202D_200D_202C_206C_200B_200E_202B_200F_202E_202E_206A_202D_206C_206A_206C_202E((ILogger)_logger, global::_003CModule_003E._202E_202C_206D_206B_202B_202D_206D_202E_206F_202E_202A_206A_206A_202B_206A_202D_202C_206C_206B_202C_206E_202B_200E_206E_206A_206C_200D_200D_200F_200B_202C_200B_200E_206F_202C_200F_202D_202A_206E_202B_202E<string>(1609496745), new object[2]
{
territoryType,
_200C_200F_206E_202C_206F_206E_206F_206F_200E_206B_202E_200B_206C_200F_200B_206A_200C_200E_202C_202A_202A_200B_202D_202C_202D_206B_202E_206A_200D_200E_202D_206E_202B_202C_200C_200C_202B_206C_206B_202E_202E(global::_003CModule_003E._202E_202C_206D_206B_202B_202D_206D_202E_206F_202E_202A_206A_206A_202B_206A_202D_202C_206C_206B_202C_206E_202B_200E_206E_206A_206C_200D_200D_200F_200B_202C_200B_200E_206F_202C_200F_202D_202A_206E_202B_202E<string>(1645706687), (IEnumerable<string>)list2)
});
_candidateTextures = list2.Select((string p) => _202E_206B_206B_200F_206B_206E_202B_202D_200C_200F_202C_202E_200B_206B_200B_202B_202B_200D_202B_202A_202C_202C_206F_206C_206D_200E_202A_200C_200E_200E_202C_202B_206B_200C_202D_202B_200B_202E_200D_206B_202E(_textureProvider, p)).ToList();
PollCandidates();
return _resolvedTexture != null;
case 14:
num = ((territoryType != _loadedTerritoryType) ? (-703602799) : (-703602811));
continue;
case 17:
num = ((territoryType != _loadedTerritoryType) ? (-703602796) : (-703602815));
continue;
case 20:
num = ((map.Value.RowId != 0) ? (-703602808) : (-703602809));
continue;
case 19:
num = ((territoryType != _loadedTerritoryType) ? (-703602797) : (-703602798));
continue;
case 13:
return true;
case 9:
obj = null;
break;
case 4:
num = -703602806;
continue;
case 2:
return false;
case 18:
array = _202B_200D_202E_202E_200B_206D_206C_206E_200C_200B_200E_202E_202B_200F_202C_200F_202E_206B_200E_206B_200C_202E_206D_206C_206F_206C_202D_200F_200B_200F_202D_206B_202A_206E_206D_206B_206A_202B_202A_200D_202E(text, '/', StringSplitOptions.None);
num = ((array.Length == 2) ? (-703602807) : (-703602793));
continue;
case 5:
_failed = true;
return false;
case 11:
{
value = array[0];
string text2 = array[1];
List<string> list3 = new List<string>();
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler2 = new DefaultInterpolatedStringHandler(14, 3);
defaultInterpolatedStringHandler2.AppendLiteral(global::_003CModule_003E._206E_202B_206C_202A_202A_200E_202B_202B_206D_200B_200C_206B_200B_206D_202E_202D_206C_202B_200B_206A_202D_206C_202A_200F_202D_200C_200B_200B_200B_200D_202C_206E_206D_202E_200C_206B_206A_206D_202D_202C_202E<string>(1333505234));
defaultInterpolatedStringHandler2.AppendFormatted(text);
defaultInterpolatedStringHandler2.AppendLiteral(global::_003CModule_003E._206A_206D_202C_206E_206D_206E_202A_200F_200D_206A_200F_206C_202C_202D_206D_206A_200D_200F_206A_206C_202C_206D_206E_200F_200F_200C_206B_200B_206B_206E_202B_206B_200E_200E_200B_206F_200F_202E_200C_200C_202E<string>(-102430846));
defaultInterpolatedStringHandler2.AppendFormatted(value);
defaultInterpolatedStringHandler2.AppendFormatted(text2);
defaultInterpolatedStringHandler2.AppendLiteral(global::_003CModule_003E._206A_206D_202C_206E_206D_206E_202A_200F_200D_206A_200F_206C_202C_202D_206D_206A_200D_200F_206A_206C_202C_206D_206E_200F_200F_200C_206B_200B_206B_206E_202B_206B_200E_200E_200B_206F_200F_202E_200C_200C_202E<string>(-25096421));
list3.Add(defaultInterpolatedStringHandler2.ToStringAndClear());
list2 = list3;
num = ((!_206A_200E_206B_206F_206B_200E_202B_206E_202E_200C_206F_206A_202E_200F_206B_206E_206A_200B_200D_202D_200B_202B_206A_200C_202E_206C_206D_206D_206D_206C_200F_202B_200D_200D_202C_206F_206B_206A_206A_206D_202E(text2, global::_003CModule_003E._206A_206D_202C_206E_206D_206E_202A_200F_200D_206A_200F_206C_202C_202D_206D_206A_200D_200F_206A_206C_202C_206D_206E_200F_200F_200C_206B_200B_206B_206E_202B_206B_200E_200E_200B_206F_200F_202E_200C_200C_202E<string>(-1596345032))) ? (-703602795) : (-703602803));
continue;
}
case 6:
_failed = true;
return false;
case 8:
num = ((_resolvedTexture == null) ? (-703602804) : (-703602801));
continue;
case 22:
_resolvedTexture = null;
_candidateTextures = null;
_failed = false;
_retryAtMs = 0L;
_loadedTerritoryType = territoryType;
_searchFrames = 0;
rowOrDefault = _dataManager.GetExcelSheet<TerritoryType>().GetRowOrDefault(territoryType);
num = (rowOrDefault.HasValue ? (-703602802) : (-703602805));
continue;
case 10:
_sizeFactor = map.Value.SizeFactor;
_offsetX = map.Value.OffsetX;
_offsetY = map.Value.OffsetY;
text = map.Value.Id.ExtractText();
num = ((!_206C_200D_202E_202D_202C_202E_200C_202D_202C_202A_200F_206D_200B_206B_200B_206B_202A_206A_200D_206F_206C_200B_206A_200E_206C_206E_200B_202E_200C_200E_206E_206F_206F_202A_206C_200D_200B_200B_206C_206B_202E(text)) ? (-703602800) : (-703602812));
continue;
case 12:
obj = rowOrDefault.GetValueOrDefault().Map.ValueNullable;
break;
}
map = obj;
num = ((!map.HasValue) ? (-703602809) : (-703602794));
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private void PollCandidates()
{
int num = ((_candidateTextures != null) ? 1719406812 : 1719406813);
ISharedImmediateTexture current = default(ISharedImmediateTexture);
while (true)
{
int num2 = num;
int num3 = 1719406812;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
goto IL_004b;
case 1:
return;
case 0:
{
using (List<ISharedImmediateTexture>.Enumerator enumerator = _candidateTextures.GetEnumerator())
{
num = -2142994811;
while (true)
{
int num7 = num;
num3 = -2142994811;
num4 = num7;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
num = (enumerator.MoveNext() ? (-2142994815) : (-2142994809));
break;
case 4:
current = enumerator.Current;
num = ((_202E_200B_200C_200B_206D_200E_200B_206F_200D_206E_202C_206D_200C_206C_200D_202D_206E_200E_206F_200C_206B_200F_200B_206A_206E_200F_202D_200D_200D_202E_202E_200C_200B_206A_206B_202E_206D_202E_202A_202D_202E(current, (IDalamudTextureWrap)null) == null) ? (-2142994811) : (-2142994812));
break;
case 3:
num = -2142994811;
break;
case 1:
_resolvedTexture = current;
_candidateTextures = null;
return;
case 2:
goto end_IL_006e;
}
continue;
end_IL_006e:
break;
}
}
int searchFrames = _searchFrames;
num3 = 1;
num4 = searchFrames;
int num8 = num4 ^ num3;
int num9 = num4 & num3;
_searchFrames = num8 + (num9 + num9);
num = ((_searchFrames < 120) ? 613954225 : 613954226);
while (true)
{
int num10 = num;
num3 = 613954224;
num4 = num10;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
num = 613954226;
break;
case 2:
_206D_206F_202C_200D_202B_202E_200C_200B_206C_206A_206D_202B_206B_202B_206B_202C_202A_206B_202C_200E_206E_200F_200F_206D_202A_206B_206F_206B_200D_200F_200D_206D_200C_206B_200D_202B_200D_206A_206D_200C_202E((ILogger)_logger, global::_003CModule_003E._206E_202B_206C_202A_202A_200E_202B_202B_206D_200B_200C_206B_200B_206D_202E_202D_206C_202B_200B_206A_202D_206C_202A_200F_202D_200C_200B_200B_200B_200D_202C_206E_206D_202E_200C_206B_206A_206D_202D_202C_202E<string>(1519773533), new object[2] { _loadedTerritoryType, 30L });
_candidateTextures = null;
_retryAtMs = _200E_206C_202D_200C_200F_206A_202A_200E_200E_202C_202D_202D_202B_206B_206F_206F_200F_206D_206A_206E_202C_206E_200F_200F_206B_202A_206A_202A_200F_206A_206F_206A_200E_200D_206E_206D_206B_206B_200D_206E_202E() + 30000;
num = 613954225;
break;
case 1:
return;
}
}
}
}
continue;
IL_004b:
num = 1719406813;
}
}
public IDalamudTextureWrap? GetTextureWrap()
{
ISharedImmediateTexture? resolvedTexture = _resolvedTexture;
if (resolvedTexture == null)
{
return null;
}
return _202E_200B_200C_200B_206D_200E_200B_206F_200D_206E_202C_206D_200C_206C_200D_202D_206E_200E_206F_200C_206B_200F_200B_206A_206E_200F_202D_200D_200D_202E_202E_200C_200B_206A_206B_202E_206D_202E_202A_202D_202E(resolvedTexture, (IDalamudTextureWrap)null);
}
public Vector2 WorldToUV(float worldX, float worldZ)
{
float num = (float)(int)_sizeFactor / 100f;
float x = (worldX * num + (float)_offsetX * num + 1024f) / 2048f;
float y = (worldZ * num + (float)_offsetY * num + 1024f) / 2048f;
return new Vector2(x, y);
}
public Vector2 UVToWorld(float u, float v)
{
float num = (float)(int)_sizeFactor / 100f;
float x = (u * 2048f - 1024f - (float)_offsetX * num) / num;
float y = (v * 2048f - 1024f - (float)_offsetY * num) / num;
return new Vector2(x, y);
}
public Vector2 WorldToScreen(float worldX, float worldZ, Vector2 imagePos, Vector2 imageSize)
{
Vector2 vector = WorldToUV(worldX, worldZ);
return imagePos + vector * imageSize;
}
public Vector2 ScreenToWorld(Vector2 screenPos, Vector2 imagePos, Vector2 imageSize)
{
Vector2 vector = (screenPos - imagePos) / imageSize;
return UVToWorld(vector.X, vector.Y);
}
static long _200E_206C_202D_200C_200F_206A_202A_200E_200E_202C_202D_202D_202B_206B_206F_206F_200F_206D_206A_206E_202C_206E_200F_200F_206B_202A_206A_202A_200F_206A_206F_206A_200E_200D_206E_206D_206B_206B_200D_206E_202E()
{
return Environment.TickCount64;
}
static bool _206C_200D_202E_202D_202C_202E_200C_202D_202C_202A_200F_206D_200B_206B_200B_206B_202A_206A_200D_206F_206C_200B_206A_200E_206C_206E_200B_202E_200C_200E_206E_206F_206F_202A_206C_200D_200B_200B_206C_206B_202E(string P_0)
{
return string.IsNullOrEmpty(P_0);
}
static string[] _202B_200D_202E_202E_200B_206D_206C_206E_200C_200B_200E_202E_202B_200F_202C_200F_202E_206B_200E_206B_200C_202E_206D_206C_206F_206C_202D_200F_200B_200F_202D_206B_202A_206E_206D_206B_206A_202B_202A_200D_202E(string P_0, char P_1, StringSplitOptions P_2)
{
return P_0.Split(P_1, P_2);
}
static bool _206A_200E_206B_206F_206B_200E_202B_206E_202E_200C_206F_206A_202E_200F_206B_206E_206A_200B_200D_202D_200B_202B_206A_200C_202E_206C_206D_206D_206D_206C_200F_202B_200D_200D_202C_206F_206B_206A_206A_206D_202E(string P_0, string P_1)
{
return P_0 != P_1;
}
static string _200C_200F_206E_202C_206F_206E_206F_206F_200E_206B_202E_200B_206C_200F_200B_206A_200C_200E_202C_202A_202A_200B_202D_202C_202D_206B_202E_206A_200D_200E_202D_206E_202B_202C_200C_200C_202B_206C_206B_202E_202E(string P_0, IEnumerable<string> P_1)
{
return string.Join(P_0, P_1);
}
static void _206F_200B_200E_206D_200C_200B_206B_206C_202A_206C_206C_206C_206D_202E_206E_206F_206A_200C_200D_200C_202D_202D_200E_206D_202E_202D_200D_202C_206C_200B_200E_202B_200F_202E_202E_206A_202D_206C_206A_206C_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogDebug(P_1, P_2);
}
static IDalamudTextureWrap _202E_200B_200C_200B_206D_200E_200B_206F_200D_206E_202C_206D_200C_206C_200D_202D_206E_200E_206F_200C_206B_200F_200B_206A_206E_200F_202D_200D_200D_202E_202E_200C_200B_206A_206B_202E_206D_202E_202A_202D_202E(ISharedImmediateTexture P_0, IDalamudTextureWrap P_1)
{
return P_0.GetWrapOrDefault(P_1);
}
static void _206D_206F_202C_200D_202B_202E_200C_200B_206C_206A_206D_202B_206B_202B_206B_202C_202A_206B_202C_200E_206E_200F_200F_206D_202A_206B_206F_206B_200D_200F_200D_206D_200C_206B_200D_202B_200D_206A_206D_200C_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogWarning(P_1, P_2);
}
static ISharedImmediateTexture _202E_206B_206B_200F_206B_206E_202B_202D_200C_200F_202C_202E_200B_206B_200B_202B_202B_200D_202B_202A_202C_202C_206F_206C_206D_200E_202A_200C_200E_200E_202C_202B_206B_200C_202D_202B_200B_202E_200D_206B_202E(ITextureProvider P_0, string P_1)
{
return P_0.GetFromGame(P_1);
}
}

View file

@ -0,0 +1,79 @@
using System.CodeDom.Compiler;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace LLib.ImGui;
public static class WindowFlash
{
private struct FLASHWINFO
{
public uint cbSize;
public nint hwnd;
public uint dwFlags;
public uint uCount;
public uint dwTimeout;
}
private const uint FLASHW_ALL = 3u;
private const uint FLASHW_TIMERNOFG = 12u;
[LibraryImport("user32.dll")]
[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
[GeneratedCode("Microsoft.Interop.LibraryImportGenerator", "10.0.14.37416")]
[SkipLocalsInit]
[return: MarshalAs(UnmanagedType.Bool)]
private unsafe static bool FlashWindowEx(ref FLASHWINFO pwfi)
{
int num;
fixed (FLASHWINFO* _pwfi_native = &pwfi)
{
num = __PInvoke(_pwfi_native);
}
return num != 0;
[DllImport("user32.dll", EntryPoint = "FlashWindowEx", ExactSpelling = true)]
[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
static extern unsafe int __PInvoke(FLASHWINFO* __pwfi_native);
}
public static void Flash(nint hwnd, uint count = 3u)
{
int num = ((hwnd != 0) ? (-1584485795) : (-1584485796));
while (true)
{
int num2 = num;
int num3 = -1584485795;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
{
FLASHWINFO pwfi = new FLASHWINFO
{
cbSize = (uint)Marshal.SizeOf<FLASHWINFO>(),
hwnd = hwnd,
dwFlags = ((count == 0) ? 15u : 3u),
uCount = count,
dwTimeout = 0u
};
FlashWindowEx(ref pwfi);
return;
}
case 1:
return;
case 2:
goto IL_0093;
}
continue;
IL_0093:
num = -1584485796;
}
}
}