1
0
Fork 0
forked from aly/qstbak
qstbak/Questionable/Questionable.Controller.GameUi/ShopController.cs
2026-08-17 20:27:25 +10:00

619 lines
34 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Numerics;
using System.Runtime.CompilerServices;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Component.GUI;
using LLib.GameUI;
using LLib.Shop;
using LLib.Shop.Model;
using Microsoft.Extensions.Logging;
using Questionable.Model.Questing;
namespace Questionable.Controller.GameUi;
internal sealed class ShopController : IDisposable, IShopWindow
{
[CompilerGenerated]
private sealed class _003C_003Ec__DisplayClass28_0
{
public unsafe AtkValue* atkValues;
public QuestStep currentStep;
internal unsafe ItemForSale _003CUpdateShopStock_003Eb__0(int i)
{
ItemForSale itemForSale = _206D_206A_200F_206C_206E_200F_200E_202E_200B_200B_206F_206C_202D_206B_200E_200C_202E_202B_202A_206B_206A_206A_206F_206D_206A_200D_200C_202D_206F_200F_202D_206D_206C_200E_202D_200E_206F_206B_200E_202E_202E();
_200D_202B_206C_206B_200D_202B_200F_206B_200E_206A_206E_200E_202D_200B_206E_206B_202A_200C_206A_206A_206D_202A_202B_206E_200F_206E_202C_202D_202A_200C_202C_202C_206E_206B_200E_202A_202B_206D_200B_206F_202E(itemForSale, i);
AtkValue* num = atkValues;
int num2 = i;
int num3 = 14;
_206F_202E_206F_202E_206A_202C_202C_202B_202E_202C_202D_200D_200B_202B_206B_206F_202D_200E_202D_206F_206A_200E_206A_202D_206E_206D_206E_206A_202A_202D_200F_200C_202D_202C_200D_206C_200C_206D_202A_202E(itemForSale, _200E_200C_202C_200E_200F_202E_202D_200C_200D_200C_200C_202B_200B_202C_200D_206B_206E_202D_200C_206E_200F_202D_206E_200B_202B_206F_200C_200B_200D_206F_202B_206B_202B_206F_200F_200C_206F_200E_206E_202C_202E(num[(num3 | num2) + (num3 & num2)]));
AtkValue* num4 = atkValues;
num2 = i;
num3 = 75;
_206A_200B_206E_206D_202D_206B_206A_206C_202E_202B_200C_206B_206B_206B_202E_200D_200E_202C_206B_206B_202D_202E_202E_206E_206A_206B_200F_200E_206D_200F_206C_202C_202D_200B_206D_206B_206D_202C_202A_206D_202E(itemForSale, num4[(num3 | num2) + (num3 & num2)].UInt);
_202C_206E_206F_202E_200B_206C_202C_200C_206A_206F_200E_202A_200B_200B_206A_206C_206C_202A_202C_202C_200C_200B_202C_206F_206D_202B_206A_202E_202C_206A_206A_200D_200C_200F_202A_202E_202D_200B_202C_206A_202E(itemForSale, 1u);
AtkValue* num5 = atkValues;
num2 = i;
num3 = 136;
_202D_200D_200E_206A_200F_200F_200D_206E_200C_206C_202E_206D_206F_200C_206A_200B_200F_200B_206D_202D_200F_200E_202E_206B_200C_200F_200C_200F_200D_200B_200D_200E_200C_200F_200D_206F_202D_206C_206B_206B_202E(itemForSale, num5[(num3 | num2) + (num3 & num2)].UInt);
AtkValue* num6 = atkValues;
num2 = i;
num3 = 441;
_200F_202C_202E_202D_206C_206A_200B_200C_200B_202E_202A_200B_202E_200D_202B_202E_200C_202D_206B_202C_202A_206F_206C_202A_200F_200C_202B_206D_202B_200D_206C_202A_200D_206D_200D_206F_202B_206D_200B_202C_202E(itemForSale, num6[(num3 | num2) + (num3 & num2)].UInt);
return itemForSale;
}
internal bool _003CUpdateShopStock_003Eb__1(ItemForSale x)
{
return _206D_202C_206C_200B_200D_206D_206F_206C_206A_200D_206A_206E_200B_206F_200B_202E_206F_202C_206C_202C_206E_202A_206D_202D_200C_200D_206A_200F_202D_202C_202A_200F_206D_200F_206A_200D_200F_202D_202E_200D_202E(x) == _202D_202B_202E_206A_200F_202C_202A_206F_206E_206B_206D_206E_200C_200F_206A_202D_202B_200F_202B_200F_200B_206C_206E_202B_206F_206E_200E_200B_202B_200D_202C_202A_206E_202D_200D_200B_202C_206D_202D_206A_202E(currentStep);
}
static ItemForSale _206D_206A_200F_206C_206E_200F_200E_202E_200B_200B_206F_206C_202D_206B_200E_200C_202E_202B_202A_206B_206A_206A_206F_206D_206A_200D_200C_202D_206F_200F_202D_206D_206C_200E_202D_200E_206F_206B_200E_202E_202E()
{
return new ItemForSale();
}
static void _200D_202B_206C_206B_200D_202B_200F_206B_200E_206A_206E_200E_202D_200B_206E_206B_202A_200C_206A_206A_206D_202A_202B_206E_200F_206E_202C_202D_202A_200C_202C_202C_206E_206B_200E_202A_202B_206D_200B_206F_202E(ItemForSale P_0, int P_1)
{
P_0.Position = P_1;
}
static string _200E_200C_202C_200E_200F_202E_202D_200C_200D_200C_200C_202B_200B_202C_200D_206B_206E_202D_200C_206E_200F_202D_206E_200B_202B_206F_200C_200B_200D_206F_202B_206B_202B_206F_200F_200C_206F_200E_206E_202C_202E(AtkValue P_0)
{
return P_0.ReadAtkString();
}
static void _206F_202E_206F_202E_206A_202C_202C_202B_202E_202C_202D_200D_200B_202B_206B_206F_202D_200E_202D_206F_206A_200E_206A_202D_206E_206D_206E_206A_202A_202D_200F_200C_202D_202C_200D_206C_200C_206D_202A_202E(ItemForSale P_0, string P_1)
{
P_0.ItemName = P_1;
}
static void _206A_200B_206E_206D_202D_206B_206A_206C_202E_202B_200C_206B_206B_206B_202E_200D_200E_202C_206B_206B_202D_202E_202E_206E_206A_206B_200F_200E_206D_200F_206C_202C_202D_200B_206D_206B_206D_202C_202A_206D_202E(ItemForSale P_0, uint P_1)
{
P_0.Price = P_1;
}
static void _202C_206E_206F_202E_200B_206C_202C_200C_206A_206F_200E_202A_200B_200B_206A_206C_206C_202A_202C_202C_200C_200B_202C_206F_206D_202B_206A_202E_202C_206A_206A_200D_200C_200F_202A_202E_202D_200B_202C_206A_202E(ItemForSale P_0, uint P_1)
{
P_0.CurrencyItemId = P_1;
}
static void _202D_200D_200E_206A_200F_200F_200D_206E_200C_206C_202E_206D_206F_200C_206A_200B_200F_200B_206D_202D_200F_200E_202E_206B_200C_200F_200C_200F_200D_200B_200D_200E_200C_200F_200D_206F_202D_206C_206B_206B_202E(ItemForSale P_0, uint P_1)
{
P_0.OwnedItems = P_1;
}
static void _200F_202C_202E_202D_206C_206A_200B_200C_200B_202E_202A_200B_202E_200D_202B_202E_200C_202D_206B_202C_202A_206F_206C_202A_200F_200C_202B_206D_202B_200D_206C_202A_200D_206D_200D_206F_202B_206D_200B_202C_202E(ItemForSale P_0, uint P_1)
{
P_0.ItemId = P_1;
}
static uint _206D_202C_206C_200B_200D_206D_206F_206C_206A_200D_206A_206E_200B_206F_200B_202E_206F_202C_206C_202C_206E_202A_206D_202D_200C_200D_206A_200F_202D_202C_202A_200F_206D_200F_206A_200D_200F_202D_202E_200D_202E(ItemForSale P_0)
{
return P_0.ItemId;
}
static uint? _202D_202B_202E_206A_200F_202C_202A_206F_206E_206B_206D_206E_200C_200F_206A_202D_202B_200F_202B_200F_200B_206C_206E_202B_206F_206E_200E_200B_202B_200D_202C_202A_206E_202D_200D_200B_202C_206D_202D_206A_202E(QuestStep P_0)
{
return P_0.ItemId;
}
}
private readonly QuestController _questController;
private readonly IGameGui _gameGui;
private readonly IFramework _framework;
private readonly RegularShopBase _shop;
private readonly ILogger<ShopController> _logger;
private long _lastCurrentStockSwitchMs;
private int _currentStockSwitchAttempts;
private uint? _lastPurchaseItemId;
private const int MaxCurrentStockSwitchAttempts = 3;
public bool IsEnabled => _questController.IsRunning;
public bool IsOpen { get; set; }
public bool IsAutoBuyEnabled => _200C_202E_202B_202B_206C_206C_206E_200E_200B_200D_206E_202B_202A_202A_200B_200C_200D_206C_200D_206F_202A_202B_202A_200B_206B_202A_200B_200F_206F_202A_200E_202A_202B_206F_202B_200F_200E_200F_206F_202C_202E(_shop);
public bool IsAwaitingYesNo
{
get
{
return _206F_200B_202D_202B_206C_206B_200E_202B_200D_200E_206D_202D_202C_206D_206C_200F_200C_206F_200B_200E_202D_202D_200E_206E_202D_202C_206C_202D_202A_200F_202E_202D_202E_206F_202E_202D_200D_206B_202A_202A_202E(_shop);
}
set
{
_202E_200F_206E_206E_202D_200F_202D_202E_206A_206F_202B_206A_200B_202B_202B_206A_200C_206D_202A_206F_206A_202A_206B_200B_202E_202C_202D_202A_206B_200C_206B_200F_206C_200F_202A_202C_200D_206B_206F_206C_202E(_shop, value);
}
}
public Vector2? Position { get; set; }
[MethodImpl(MethodImplOptions.NoInlining)]
public ShopController(QuestController questController, IGameGui gameGui, IAddonLifecycle addonLifecycle, IFramework framework, ILogger<ShopController> logger, IPluginLog pluginLog, IDataManager dataManager)
{
_questController = questController;
_gameGui = gameGui;
_framework = framework;
_shop = _206D_202A_202E_206D_206B_202C_200C_206E_200B_202B_206D_202A_202B_206D_202E_200C_200B_206F_206C_206C_202C_206F_206C_202E_206B_202B_206E_202C_200D_206D_202A_206E_206B_206A_206B_206A_206E_206D_202E((IShopWindow)this, global::_003CModule_003E._202D_206D_206A_206E_202C_202B_200C_206C_200E_206A_206D_200E_206A_202A_200C_202E_206E_202C_206F_200B_206D_206F_200C_202C_200B_202B_200F_200B_206A_206F_200F_202E_206B_200E_202B_202A_200F_200B_202A_200E_202E<string>(-2121285778), pluginLog, gameGui, addonLifecycle, dataManager);
_logger = logger;
_200B_202A_200F_206D_200C_200B_206B_206A_202E_202A_200D_202C_202B_200D_202A_206A_206F_202A_206C_206F_200D_202D_202B_206E_206A_200C_206A_206D_206D_202A_202B_202B_202E_202B_206B_200D_206D_202B_200B_206C_202E(_framework, (IFramework.OnUpdateDelegate)FrameworkUpdate);
}
public void Dispose()
{
_202E_206A_206E_200F_206E_200C_206B_200B_200C_200D_200E_200C_206A_200D_206E_200C_202C_206E_206F_206D_202D_206F_200F_206E_202B_206A_206C_200D_206B_202C_206C_202D_206A_200C_206B_200B_206E_206D_200B_200E_202E(_framework, (IFramework.OnUpdateDelegate)FrameworkUpdate);
_200C_202E_206E_206C_202A_200C_202B_200C_202A_206E_206C_206F_202B_202C_202B_200E_206B_200F_202B_206D_206F_206E_200E_206F_206B_200B_202D_202E_206A_206B_200B_200E_200E_206C_202D_200E_202E_202C_206E_202A_202E(_shop);
}
void IDisposable.Dispose()
{
//ILSpy generated this explicit interface implementation from .override directive in Dispose
this.Dispose();
}
[MethodImpl(MethodImplOptions.NoInlining)]
private void FrameworkUpdate(IFramework framework)
{
int num = ((!IsOpen) ? (-1743708968) : (-1743708973));
QuestStep questStep = default(QuestStep);
int num7 = default(int);
while (true)
{
int num2 = num;
int num3 = -1743708974;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 4:
_202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(_shop, (ItemForSale)null);
RestoreExternalPluginState();
num = -1743708968;
break;
case 8:
num = ((_202B_200D_200D_206C_200E_200C_202C_206F_206A_206E_206C_202E_202C_200E_206C_206D_202E_206E_206B_202D_202B_200E_206F_202D_206C_202B_206C_206F_206D_202A_202D_200F_200F_202B_202B_202D_206A_200F_200F_202C_202E(_shop) == null) ? (-1743708974) : (-1743708975));
break;
case 1:
num = ((_206C_202C_206C_202D_206D_202A_206A_200C_202C_200B_202C_206F_200D_206B_206B_202C_206D_202D_200E_200B_206D_202B_206E_202D_202E_202E_206F_206E_206C_202E_206F_206A_206F_200B_202E_206E_200B_200D_200C_206F_202E(_shop) == null) ? (-1743708968) : (-1743708966));
break;
case 5:
{
int num8 = _200E_206D_206B_202D_200C_206A_200E_206D_200B_202D_202E_206A_206B_206E_206D_200E_200C_202A_200F_202E_202C_206A_200F_206A_200C_200E_206A_206D_200E_200D_202E_206F_206F_202A_200B_202D_206D_200C_206C_200E_202E(0, _206C_202A_206F_200F_200B_200F_206F_200B_200B_206B_200B_202E_202B_200B_200F_200B_202A_206C_206B_202C_206E_200F_200F_206D_206A_200B_206C_200E_202B_200D_202D_200F_206A_200E_200B_200E_202C_202D_206D_206D_202E(questStep).GetValueOrDefault() - (int)_202E_206F_202B_202C_202E_206F_200D_206B_202A_202B_206B_206A_206D_200D_202E_202C_200D_206E_200E_200D_206E_202D_206E_200E_200E_206D_206C_200B_200F_200E_202C_206A_206B_200B_200C_206A_206C_206B_202B_202A_202E(_206C_202C_206C_202D_206D_202A_206A_200C_202C_200B_202C_206F_200D_206B_206B_202C_206D_202D_200E_200B_206D_202B_206E_202D_202E_202E_206F_206E_206C_202E_206F_206A_206F_200B_202E_206E_200B_200D_200C_206F_202E(_shop)));
num7 = _200F_202B_202B_206C_200D_200C_200F_206A_206D_206D_202D_206A_202C_202D_206F_206F_202D_206C_202E_202B_206E_202B_200C_206F_206F_200C_200F_200E_206A_206C_206B_200D_200E_206F_206B_202A_202E_202C_206A_202A_202E(_202D_202D_200D_200D_206A_202C_202C_200C_206B_206C_200D_206B_202B_202E_206F_202B_202B_200D_202C_206E_202E_200E_200E_200D_200C_200E_202B_206C_206D_200F_200F_202D_200D_200B_206B_206E_202B_202C_200C_202A_202E(_shop), num8);
num = ((num7 <= 0) ? (-1743708970) : (-1743708965));
break;
}
case 2:
_202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(_shop, (ItemForSale)null);
RestoreExternalPluginState();
return;
case 10:
return;
case 6:
num = -1743708973;
break;
case 0:
questStep = FindCurrentStep();
num = ((questStep == null) ? (-1743708976) : (-1743708971));
break;
case 7:
num = ((_206B_200F_206A_200C_206B_206B_202D_202E_206E_202D_200C_202C_206C_200F_202C_206B_206C_202B_202A_200F_202A_206A_206C_206C_206F_206D_200F_200D_206B_202C_202B_202B_206A_200E_206A_202C_200C_206D_206A_202B_202E(questStep) == EInteractionType.PurchaseItem) ? (-1743708969) : (-1743708976));
break;
case 3:
_202E_200C_206B_202C_200E_202B_200C_206F_202A_206F_200D_206C_202D_202C_200F_206A_202B_200D_200B_202D_206F_206E_200E_206C_206F_206C_202E_206A_206C_202E_206B_206D_206C_206F_202A_200F_206B_206F_200E_202A_202E(_shop);
return;
case 9:
_202B_206A_206D_206D_206E_200E_202B_206E_202C_206D_200D_202A_202C_202D_206F_202C_202D_202D_206D_206E_206E_202A_202B_206F_200B_200E_202E_202E_202B_200B_206E_206A_206F_200E_202B_200C_200B_206C_200B_202E_202E((ILogger)_logger, global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E<string>(434015474), new object[2]
{
num7,
_200F_202B_206D_202E_202E_202C_200C_202D_200F_202B_202A_206E_206E_200F_206F_202B_202D_202D_202A_202A_200E_200B_206C_206A_200E_206F_206C_200C_206D_206F_206B_202B_200C_200E_202E_206C_202C_206B_202C_206D_202E(_206C_202C_206C_202D_206D_202A_206A_200C_202C_200B_202C_206F_200D_206B_206B_202C_206D_202D_200E_200B_206D_202B_206E_202D_202E_202E_206F_206E_206C_202E_206F_206A_206F_200B_202E_206E_200B_200D_200C_206F_202E(_shop))
});
_200D_200E_202E_202A_206E_206F_202E_206D_206B_206F_206A_200D_206C_200D_202B_202D_200E_200E_200E_200D_200D_200B_202A_206B_202E_206F_202C_200E_206B_200D_200B_202E_202E_202C_200D_206A_206B_206F_206D_202A_202E(_shop, num7);
_202E_200C_206B_202C_200E_202B_200C_206F_202A_206F_200D_206C_202D_202C_200F_206A_202B_200D_200B_202D_206F_206E_200E_206C_206F_206C_202E_206A_206C_202E_206B_206D_206C_206F_202A_200F_206B_206F_200E_202A_202E(_shop);
return;
}
}
}
private QuestStep? FindCurrentStep()
{
QuestController.QuestProgress currentQuest = _questController.CurrentQuest;
int num = ((currentQuest != null) ? (-2079361187) : (-2079361188));
object obj;
while (true)
{
int num2 = num;
int num3 = -2079361187;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
default:
continue;
case 2:
goto IL_004d;
case 0:
obj = currentQuest.Quest.FindSequence(currentQuest.Sequence);
break;
case 1:
obj = null;
break;
}
break;
IL_004d:
num = -2079361188;
}
if (obj == null)
{
return null;
}
return _206C_206B_200C_202A_206C_206C_200B_200C_202C_206A_200B_206C_200E_202E_202C_200D_206A_200B_202A_206A_206B_202E_206D_202E_200C_202D_200D_206B_200D_200F_206C_206E_206A_202A_206B_206F_200E_206D_206A_202D_202E((QuestSequence)obj, currentQuest?.Step ?? 0);
}
[MethodImpl(MethodImplOptions.NoInlining)]
public unsafe void UpdateShopStock(AtkUnitBase* addon)
{
QuestStep currentStep = FindCurrentStep();
int num = ((currentStep == null) ? 958087197 : 958087193);
uint uInt = default(uint);
AtkValue* atkValues = default(AtkValue*);
while (true)
{
int num2 = num;
int num3 = 958087192;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 4:
_202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(_shop, (ItemForSale)null);
return;
case 6:
return;
case 0:
uInt = atkValues[2].UInt;
num = ((uInt != 0) ? 958087189 : 958087196);
break;
case 7:
num = ((_currentStockSwitchAttempts >= 3) ? 958087198 : 958087195);
break;
case 9:
_lastPurchaseItemId = _206F_202C_200B_202C_200D_206E_202D_200C_200B_200F_202B_202C_200B_206E_206C_206E_202A_206A_200F_206B_200B_200F_202C_202D_206E_200D_200E_200E_206E_206F_206E_206C_202B_202D_206C_200E_206C_200E_200E_202D_202E(currentStep);
_currentStockSwitchAttempts = 0;
num = 958087192;
break;
case 5:
_202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(_shop, (ItemForSale)null);
return;
case 8:
_202A_200C_206E_202D_206D_206D_202C_202E_200B_200E_206C_200F_202A_200B_206F_206E_206E_206C_200F_200D_206E_202A_202E_202D_200B_200B_202E_206F_202D_206D_206A_202B_206E_202D_202A_206A_200C_206B_206E_206D_202E((ILogger)_logger, global::_003CModule_003E._206C_202A_206D_206A_206E_202A_202B_206F_206D_200F_202D_200F_202D_206A_202C_202B_206D_206A_200E_200E_202D_202D_200D_200C_200D_200D_206D_206E_202A_200F_206E_206C_206D_206A_206D_202B_200F_200D_206E_200C_202E<string>(-662596466), new object[1] { addon->AtkValuesCount });
_202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(_shop, (ItemForSale)null);
return;
case 3:
num = ((_202B_206B_206D_206A_202B_200F_200B_200F_200F_202D_206E_206F_200F_200C_206F_202E_202E_202A_200B_202E_200D_206D_200B_206C_200E_206A_206B_206C_202D_206C_202B_200F_206D_202E_200C_206A_206C_206A_200E_206B_202E() - _lastCurrentStockSwitchMs <= 2000) ? 958087198 : 958087188);
break;
case 14:
_currentStockSwitchAttempts = 0;
return;
case 1:
num = ((_206B_200F_206A_200C_206B_206B_202D_202E_206E_202D_200C_202C_206C_200F_202C_206B_206C_202B_202A_200F_202A_206A_206C_206C_206F_206D_200F_200D_206B_202C_202B_202B_206A_200E_206A_202C_200C_206D_206A_202B_202E(currentStep) == EInteractionType.PurchaseItem) ? 958087186 : 958087197);
break;
case 10:
num = ((addon->AtkValuesCount == 625) ? 958087187 : 958087184);
break;
case 11:
{
atkValues = addon->AtkValues;
uint? num7 = _206F_202C_200B_202C_200D_206E_202D_200C_200B_200F_202B_202C_200B_206E_206C_206E_202A_206A_200F_206B_200B_200F_202C_202D_206E_200D_200E_200E_206E_206F_206E_206C_202B_202D_206C_200E_206C_200E_200E_202D_202E(currentStep);
uint? lastPurchaseItemId = _lastPurchaseItemId;
bool num8 = num7.GetValueOrDefault() == lastPurchaseItemId.GetValueOrDefault();
num3 = ((num7.HasValue == lastPurchaseItemId.HasValue) ? 1 : 0);
num4 = (num8 ? 1 : 0);
num = (((num4 | num3) - (num4 ^ num3) != 0) ? 958087192 : 958087185);
break;
}
case 2:
num = 958087193;
break;
case 13:
_202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(_shop, _206C_202D_206B_206B_200E_206D_206B_200D_202C_200E_206C_206A_202D_206F_206C_200C_206A_206B_200E_200F_200E_206D_202D_206A_206D_206F_202D_200D_202A_202D_202D_202A_206C_200C_202C_206F_200E_202A_202D_206E_202E(0, (int)uInt).Select(delegate(int i)
{
ItemForSale itemForSale = _003C_003Ec__DisplayClass28_0._206D_206A_200F_206C_206E_200F_200E_202E_200B_200B_206F_206C_202D_206B_200E_200C_202E_202B_202A_206B_206A_206A_206F_206D_206A_200D_200C_202D_206F_200F_202D_206D_206C_200E_202D_200E_206F_206B_200E_202E_202E();
_003C_003Ec__DisplayClass28_0._200D_202B_206C_206B_200D_202B_200F_206B_200E_206A_206E_200E_202D_200B_206E_206B_202A_200C_206A_206A_206D_202A_202B_206E_200F_206E_202C_202D_202A_200C_202C_202C_206E_206B_200E_202A_202B_206D_200B_206F_202E(itemForSale, i);
AtkValue* num9 = atkValues;
int num10 = i;
int num11 = 14;
_003C_003Ec__DisplayClass28_0._206F_202E_206F_202E_206A_202C_202C_202B_202E_202C_202D_200D_200B_202B_206B_206F_202D_200E_202D_206F_206A_200E_206A_202D_206E_206D_206E_206A_202A_202D_200F_200C_202D_202C_200D_206C_200C_206D_202A_202E(itemForSale, _003C_003Ec__DisplayClass28_0._200E_200C_202C_200E_200F_202E_202D_200C_200D_200C_200C_202B_200B_202C_200D_206B_206E_202D_200C_206E_200F_202D_206E_200B_202B_206F_200C_200B_200D_206F_202B_206B_202B_206F_200F_200C_206F_200E_206E_202C_202E(num9[(num11 | num10) + (num11 & num10)]));
AtkValue* num12 = atkValues;
num10 = i;
num11 = 75;
_003C_003Ec__DisplayClass28_0._206A_200B_206E_206D_202D_206B_206A_206C_202E_202B_200C_206B_206B_206B_202E_200D_200E_202C_206B_206B_202D_202E_202E_206E_206A_206B_200F_200E_206D_200F_206C_202C_202D_200B_206D_206B_206D_202C_202A_206D_202E(itemForSale, num12[(num11 | num10) + (num11 & num10)].UInt);
_003C_003Ec__DisplayClass28_0._202C_206E_206F_202E_200B_206C_202C_200C_206A_206F_200E_202A_200B_200B_206A_206C_206C_202A_202C_202C_200C_200B_202C_206F_206D_202B_206A_202E_202C_206A_206A_200D_200C_200F_202A_202E_202D_200B_202C_206A_202E(itemForSale, 1u);
AtkValue* num13 = atkValues;
num10 = i;
num11 = 136;
_003C_003Ec__DisplayClass28_0._202D_200D_200E_206A_200F_200F_200D_206E_200C_206C_202E_206D_206F_200C_206A_200B_200F_200B_206D_202D_200F_200E_202E_206B_200C_200F_200C_200F_200D_200B_200D_200E_200C_200F_200D_206F_202D_206C_206B_206B_202E(itemForSale, num13[(num11 | num10) + (num11 & num10)].UInt);
AtkValue* num14 = atkValues;
num10 = i;
num11 = 441;
_003C_003Ec__DisplayClass28_0._200F_202C_202E_202D_206C_206A_200B_200C_200B_202E_202A_200B_202E_200D_202B_202E_200C_202D_206B_202C_202A_206F_206C_202A_200F_200C_202B_206D_202B_200D_206C_202A_200D_206D_200D_206F_202B_206D_200B_202C_202E(itemForSale, num14[(num11 | num10) + (num11 & num10)].UInt);
return itemForSale;
}).FirstOrDefault((ItemForSale x) => _003C_003Ec__DisplayClass28_0._206D_202C_206C_200B_200D_206D_206F_206C_206A_200D_206A_206E_200B_206F_200B_202E_206F_202C_206C_202C_206E_202A_206D_202D_200C_200D_206A_200F_202D_202C_202A_200F_206D_200F_206A_200D_200F_202D_202E_200D_202E(x) == _003C_003Ec__DisplayClass28_0._202D_202B_202E_206A_200F_202C_202A_206F_206E_206B_206D_206E_200C_200F_206A_202D_202B_200F_202B_200F_200B_206C_206E_202B_206F_206E_200E_200B_202B_200D_202C_202A_206E_202D_200D_200B_202C_206D_202D_206A_202E(currentStep)));
num = ((_206C_202C_206C_202D_206D_202A_206A_200C_202C_200B_202C_206F_200D_206B_206B_202C_206D_202D_200E_200B_206D_202B_206E_202D_202E_202E_206F_206E_206C_202E_206F_206A_206F_200B_202E_206E_200B_200D_200C_206F_202E(_shop) == null) ? 958087199 : 958087190);
break;
case 12:
{
int currentStockSwitchAttempts = _currentStockSwitchAttempts;
num3 = 1;
num4 = currentStockSwitchAttempts;
int num5 = num4 ^ num3;
int num6 = num4 & num3;
_currentStockSwitchAttempts = num5 + (num6 + num6);
_lastCurrentStockSwitchMs = _202B_206B_206D_206A_202B_200F_200B_200F_200F_202D_206E_206F_200F_200C_206F_202E_202E_202A_200B_202E_200D_206D_200B_206C_200E_206A_206B_206C_202D_206C_202B_200F_206D_202E_200C_206A_206C_206A_200E_206B_202E();
_200D_200B_200F_206C_200B_202D_202A_202A_206B_200D_202A_206A_206E_206E_206C_200E_206B_202E_200C_202A_202A_202E_206D_206C_206F_206F_206D_200D_206F_200C_200F_206B_200F_200B_206D_200B_200F_200B_202C_200E_202E((ILogger)_logger, global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E<string>(773010987), new object[4]
{
uInt,
_206F_202C_200B_202C_200D_206E_202D_200C_200B_200F_202B_202C_200B_206E_206C_206E_202A_206A_200F_206B_200B_200F_202C_202D_206E_200D_200E_200E_206E_206F_206E_206C_202B_202D_206C_200E_206C_200E_200E_202D_202E(currentStep),
_currentStockSwitchAttempts,
3
});
SwitchToCurrentStockTab(addon);
num = 958087198;
break;
}
}
}
}
unsafe void IShopWindow.UpdateShopStock(AtkUnitBase* addon)
{
//ILSpy generated this explicit interface implementation from .override directive in UpdateShopStock
this.UpdateShopStock(addon);
}
public unsafe void TriggerPurchase(AtkUnitBase* addonShop, int buyNow)
{
AtkValue* values = stackalloc AtkValue[4]
{
new AtkValue
{
Type = AtkValueType.Int,
Int = 0
},
new AtkValue
{
Type = AtkValueType.Int,
Int = _202A_200F_202A_202D_206E_202A_200E_202A_202A_206E_206B_202C_200F_202C_202D_206A_206C_202E_202C_206A_200D_200B_202B_206E_202A_200E_202A_202D_206F_200C_202B_202A_206F_206C_200F_206A_200B_202A_206D_206C_202E(_206C_202C_206C_202D_206D_202A_206A_200C_202C_200B_202C_206F_200D_206B_206B_202C_206D_202D_200E_200B_206D_202B_206E_202D_202E_202E_206F_206E_206C_202E_206F_206A_206F_200B_202E_206E_200B_200D_200C_206F_202E(_shop))
},
new AtkValue
{
Type = AtkValueType.Int,
Int = buyNow
},
new AtkValue
{
Type = AtkValueType.Undefined,
Int = 0
}
};
addonShop->FireCallback(4u, values);
}
unsafe void IShopWindow.TriggerPurchase(AtkUnitBase* addonShop, int buyNow)
{
//ILSpy generated this explicit interface implementation from .override directive in TriggerPurchase
this.TriggerPurchase(addonShop, buyNow);
}
private unsafe void SwitchToCurrentStockTab(AtkUnitBase* addonShop)
{
AtkValue* values = stackalloc AtkValue[3]
{
new AtkValue
{
Type = AtkValueType.Int,
Int = 1
},
new AtkValue
{
Type = AtkValueType.Int,
Int = -1
},
new AtkValue
{
Type = AtkValueType.Int,
Int = -1
}
};
addonShop->FireCallback(3u, values);
}
public void SaveExternalPluginState()
{
}
void IShopWindow.SaveExternalPluginState()
{
//ILSpy generated this explicit interface implementation from .override directive in SaveExternalPluginState
this.SaveExternalPluginState();
}
[MethodImpl(MethodImplOptions.NoInlining)]
public unsafe void RestoreExternalPluginState()
{
AtkUnitBase* addonPtr;
int num = ((!_gameGui.TryGetAddonByName<AtkUnitBase>(global::_003CModule_003E._206C_202A_206D_206A_206E_202A_202B_206F_206D_200F_202D_200F_202D_206A_202C_202B_206D_206A_200E_200E_202D_202D_200D_200C_200D_200D_206D_206E_202A_200F_206E_206C_206D_206A_206D_202B_200F_200D_206E_200C_202E<string>(831697146), out addonPtr)) ? 2003329777 : 2003329778);
while (true)
{
int num2 = num;
int num3 = 2003329776;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
num = 2003329778;
break;
case 2:
addonPtr->FireCallbackInt(-1);
num = 2003329777;
break;
case 1:
return;
}
}
}
void IShopWindow.RestoreExternalPluginState()
{
//ILSpy generated this explicit interface implementation from .override directive in RestoreExternalPluginState
this.RestoreExternalPluginState();
}
static RegularShopBase _206D_202A_202E_206D_206B_202C_200C_206E_200B_202B_206D_202A_202B_206D_202E_200C_200B_206F_206C_206C_202C_206F_206C_202E_206B_202B_206E_202C_200D_206D_202A_206E_206B_206A_206B_206A_206E_206D_202E(IShopWindow P_0, string P_1, IPluginLog P_2, IGameGui P_3, IAddonLifecycle P_4, IDataManager P_5)
{
return new RegularShopBase(P_0, P_1, P_2, P_3, P_4, P_5);
}
static void _200B_202A_200F_206D_200C_200B_206B_206A_202E_202A_200D_202C_202B_200D_202A_206A_206F_202A_206C_206F_200D_202D_202B_206E_206A_200C_206A_206D_206D_202A_202B_202B_202E_202B_206B_200D_206D_202B_200B_206C_202E(IFramework P_0, IFramework.OnUpdateDelegate P_1)
{
P_0.Update += P_1;
}
static bool _200C_202E_202B_202B_206C_206C_206E_200E_200B_200D_206E_202B_202A_202A_200B_200C_200D_206C_200D_206F_202A_202B_202A_200B_206B_202A_200B_200F_206F_202A_200E_202A_202B_206F_202B_200F_200E_200F_206F_202C_202E(RegularShopBase P_0)
{
return P_0.AutoBuyEnabled;
}
static bool _206F_200B_202D_202B_206C_206B_200E_202B_200D_200E_206D_202D_202C_206D_206C_200F_200C_206F_200B_200E_202D_202D_200E_206E_202D_202C_206C_202D_202A_200F_202E_202D_202E_206F_202E_202D_200D_206B_202A_202A_202E(RegularShopBase P_0)
{
return P_0.IsAwaitingYesNo;
}
static void _202E_200F_206E_206E_202D_200F_202D_202E_206A_206F_202B_206A_200B_202B_202B_206A_200C_206D_202A_206F_206A_202A_206B_200B_202E_202C_202D_202A_206B_200C_206B_200F_206C_200F_202A_202C_200D_206B_206F_206C_202E(RegularShopBase P_0, bool P_1)
{
P_0.IsAwaitingYesNo = P_1;
}
static void _202E_206A_206E_200F_206E_200C_206B_200B_200C_200D_200E_200C_206A_200D_206E_200C_202C_206E_206F_206D_202D_206F_200F_206E_202B_206A_206C_200D_206B_202C_206C_202D_206A_200C_206B_200B_206E_206D_200B_200E_202E(IFramework P_0, IFramework.OnUpdateDelegate P_1)
{
P_0.Update -= P_1;
}
static void _200C_202E_206E_206C_202A_200C_202B_200C_202A_206E_206C_206F_202B_202C_202B_200E_206B_200F_202B_206D_206F_206E_200E_206F_206B_200B_202D_202E_206A_206B_200B_200E_200E_206C_202D_200E_202E_202C_206E_202A_202E(RegularShopBase P_0)
{
P_0.Dispose();
}
static ItemForSale _206C_202C_206C_202D_206D_202A_206A_200C_202C_200B_202C_206F_200D_206B_206B_202C_206D_202D_200E_200B_206D_202B_206E_202D_202E_202E_206F_206E_206C_202E_206F_206A_206F_200B_202E_206E_200B_200D_200C_206F_202E(RegularShopBase P_0)
{
return P_0.ItemForSale;
}
static PurchaseState _202B_200D_200D_206C_200E_200C_202C_206F_206A_206E_206C_202E_202C_200E_206C_206D_202E_206E_206B_202D_202B_200E_206F_202D_206C_202B_206C_206F_206D_202A_202D_200F_200F_202B_202B_202D_206A_200F_200F_202C_202E(RegularShopBase P_0)
{
return P_0.PurchaseState;
}
static void _202E_200C_206B_202C_200E_202B_200C_206F_202A_206F_200D_206C_202D_202C_200F_206A_202B_200D_200B_202D_206F_206E_200E_206C_206F_206C_202E_206A_206C_202E_206B_206D_206C_206F_202A_200F_206B_206F_200E_202A_202E(RegularShopBase P_0)
{
P_0.HandleNextPurchaseStep();
}
static EInteractionType _206B_200F_206A_200C_206B_206B_202D_202E_206E_202D_200C_202C_206C_200F_202C_206B_206C_202B_202A_200F_202A_206A_206C_206C_206F_206D_200F_200D_206B_202C_202B_202B_206A_200E_206A_202C_200C_206D_206A_202B_202E(QuestStep P_0)
{
return P_0.InteractionType;
}
static void _202E_202A_200F_202E_200F_202E_200C_200D_206B_202D_202B_200E_206F_200C_202E_200D_200E_202E_206C_206D_206E_206C_202A_202A_202A_206F_206B_200F_202D_200B_202A_200B_202E_206C_206A_206E_200D_200F_202B_200D_202E(RegularShopBase P_0, ItemForSale P_1)
{
P_0.ItemForSale = P_1;
}
static int? _206C_202A_206F_200F_200B_200F_206F_200B_200B_206B_200B_202E_202B_200B_200F_200B_202A_206C_206B_202C_206E_200F_200F_206D_206A_200B_206C_200E_202B_200D_202D_200F_206A_200E_200B_200E_202C_202D_206D_206D_202E(QuestStep P_0)
{
return P_0.ItemCount;
}
static uint _202E_206F_202B_202C_202E_206F_200D_206B_202A_202B_206B_206A_206D_200D_202E_202C_200D_206E_200E_200D_206E_202D_206E_200E_200E_206D_206C_200B_200F_200E_202C_206A_206B_200B_200C_206A_206C_206B_202B_202A_202E(ItemForSale P_0)
{
return P_0.OwnedItems;
}
static int _200E_206D_206B_202D_200C_206A_200E_206D_200B_202D_202E_206A_206B_206E_206D_200E_200C_202A_200F_202E_202C_206A_200F_206A_200C_200E_206A_206D_200E_200D_202E_206F_206F_202A_200B_202D_206D_200C_206C_200E_202E(int P_0, int P_1)
{
return Math.Max(P_0, P_1);
}
static int _202D_202D_200D_200D_206A_202C_202C_200C_206B_206C_200D_206B_202B_202E_206F_202B_202B_200D_202C_206E_202E_200E_200E_200D_200C_200E_202B_206C_206D_200F_200F_202D_200D_200B_206B_206E_202B_202C_200C_202A_202E(RegularShopBase P_0)
{
return P_0.GetMaxItemsToPurchase();
}
static int _200F_202B_202B_206C_200D_200C_200F_206A_206D_206D_202D_206A_202C_202D_206F_206F_202D_206C_202E_202B_206E_202B_200C_206F_206F_200C_200F_200E_206A_206C_206B_200D_200E_206F_206B_202A_202E_202C_206A_202A_202E(int P_0, int P_1)
{
return Math.Min(P_0, P_1);
}
static string _200F_202B_206D_202E_202E_202C_200C_202D_200F_202B_202A_206E_206E_200F_206F_202B_202D_202D_202A_202A_200E_200B_206C_206A_200E_206F_206C_200C_206D_206F_206B_202B_200C_200E_202E_206C_202C_206B_202C_206D_202E(ItemForSale P_0)
{
return P_0.ItemName;
}
static void _202B_206A_206D_206D_206E_200E_202B_206E_202C_206D_200D_202A_202C_202D_206F_202C_202D_202D_206D_206E_206E_202A_202B_206F_200B_200E_202E_202E_202B_200B_206E_206A_206F_200E_202B_200C_200B_206C_200B_202E_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogDebug(P_1, P_2);
}
static void _200D_200E_202E_202A_206E_206F_202E_206D_206B_206F_206A_200D_206C_200D_202B_202D_200E_200E_200E_200D_200D_200B_202A_206B_202E_206F_202C_200E_206B_200D_200B_202E_202E_202C_200D_206A_206B_206F_206D_202A_202E(RegularShopBase P_0, int P_1)
{
P_0.StartAutoPurchase(P_1);
}
static QuestStep _206C_206B_200C_202A_206C_206C_200B_200C_202C_206A_200B_206C_200E_202E_202C_200D_206A_200B_202A_206A_206B_202E_206D_202E_200C_202D_200D_206B_200D_200F_206C_206E_206A_202A_206B_206F_200E_206D_206A_202D_202E(QuestSequence P_0, int P_1)
{
return P_0.FindStep(P_1);
}
static void _202A_200C_206E_202D_206D_206D_202C_202E_200B_200E_206C_200F_202A_200B_206F_206E_206E_206C_200F_200D_206E_202A_202E_202D_200B_200B_202E_206F_202D_206D_206A_202B_206E_202D_202A_206A_200C_206B_206E_206D_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogError(P_1, P_2);
}
static uint? _206F_202C_200B_202C_200D_206E_202D_200C_200B_200F_202B_202C_200B_206E_206C_206E_202A_206A_200F_206B_200B_200F_202C_202D_206E_200D_200E_200E_206E_206F_206E_206C_202B_202D_206C_200E_206C_200E_200E_202D_202E(QuestStep P_0)
{
return P_0.ItemId;
}
static IEnumerable<int> _206C_202D_206B_206B_200E_206D_206B_200D_202C_200E_206C_206A_202D_206F_206C_200C_206A_206B_200E_200F_200E_206D_202D_206A_206D_206F_202D_200D_202A_202D_202D_202A_206C_200C_202C_206F_200E_202A_202D_206E_202E(int P_0, int P_1)
{
return Enumerable.Range(P_0, P_1);
}
static long _202B_206B_206D_206A_202B_200F_200B_200F_200F_202D_206E_206F_200F_200C_206F_202E_202E_202A_200B_202E_200D_206D_200B_206C_200E_206A_206B_206C_202D_206C_202B_200F_206D_202E_200C_206A_206C_206A_200E_206B_202E()
{
return Environment.TickCount64;
}
static void _200D_200B_200F_206C_200B_202D_202A_202A_206B_200D_202A_206A_206E_206E_206C_200E_206B_202E_200C_202A_202A_202E_206D_206C_206F_206F_206D_200D_206F_200C_200F_206B_200F_200B_206D_200B_200F_200B_202C_200E_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogWarning(P_1, P_2);
}
static int _202A_200F_202A_202D_206E_202A_200E_202A_202A_206E_206B_202C_200F_202C_202D_206A_206C_202E_202C_206A_200D_200B_202B_206E_202A_200E_202A_202D_206F_200C_202B_202A_206F_206C_200F_206A_200B_202A_206D_206C_202E(ItemForSale P_0)
{
return P_0.Position;
}
}