forked from aly/qstbak
625 lines
30 KiB
C#
625 lines
30 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
using Dalamud.Plugin.Services;
|
|
using FFXIVClientStructs.FFXIV.Client.Game;
|
|
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
|
using LLib;
|
|
using LLib.Gear;
|
|
using Microsoft.Extensions.Logging;
|
|
using Questionable.Model;
|
|
using Questionable.Model.Questing;
|
|
|
|
namespace Questionable.Controller.Steps.Interactions;
|
|
|
|
internal static class MeldMateria
|
|
{
|
|
internal sealed class Factory : ITaskFactory
|
|
{
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
|
{
|
|
int num = ((_206C_206F_206E_206D_200C_200C_200B_202D_202D_206A_202D_206E_202D_206B_206D_200C_202D_200C_202B_206A_202D_200D_206A_206D_202B_202C_200E_206A_202C_206E_200D_202D_202E_200B_202C_200D_202E_202C_202C_202D_202E(step) == EInteractionType.MeldMateria) ? (-35265804) : (-35265801));
|
|
while (true)
|
|
{
|
|
int num2 = num;
|
|
int num3 = -35265802;
|
|
int num4 = num2;
|
|
switch ((num4 | num3) - (num4 & num3))
|
|
{
|
|
case 0:
|
|
goto IL_0048;
|
|
case 2:
|
|
_200E_202D_202A_206B_202B_200C_202B_202A_202D_202B_200B_206D_206A_200B_202C_206C_202B_206D_200D_206F_200D_206C_200C_200D_202D_206B_202A_200D_200F_200E_206B_200F_206C_202A_206C_206A_202D_206A_202D_206B_202E((object)_206D_200E_206B_202D_200E_206B_200B_206E_206A_200C_202C_200D_206F_200E_202E_202A_206B_200E_202C_202A_200E_206B_200F_206E_202B_200D_202B_206C_202B_206B_200F_206E_206E_206E_200C_202C_200D_206F_200B_206B_202E(step), 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>(87510835));
|
|
return new global::_003C_003Ez__ReadOnlySingleElementList<ITask>(new MeldTask(_206D_200E_206B_202D_200E_206B_200B_206E_206A_200C_202C_200D_206F_200E_202E_202A_206B_200E_202C_202A_200E_206B_200F_206E_202B_200D_202B_206C_202B_206B_200F_206E_206E_206E_200C_202C_200D_206F_200B_206B_202E(step).Value, _202D_202C_200D_200E_206C_200B_202B_202A_200F_202C_206C_202D_206B_206C_206E_200E_202D_202D_200B_202C_206F_202C_206A_202B_206E_200C_202A_200F_202E_202B_202E_202E_202A_206E_202C_206E_200F_206C_206E_200C_202E(step)));
|
|
case 1:
|
|
return Array.Empty<ITask>();
|
|
}
|
|
continue;
|
|
IL_0048:
|
|
num = -35265801;
|
|
}
|
|
}
|
|
|
|
IEnumerable<ITask> ITaskFactory.CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
|
{
|
|
//ILSpy generated this explicit interface implementation from .override directive in CreateAllTasks
|
|
return this.CreateAllTasks(quest, sequence, step);
|
|
}
|
|
|
|
static EInteractionType _206C_206F_206E_206D_200C_200C_200B_202D_202D_206A_202D_206E_202D_206B_206D_200C_202D_200C_202B_206A_202D_200D_206A_206D_202B_202C_200E_206A_202C_206E_200D_202D_202E_200B_202C_200D_202E_202C_202C_202D_202E(QuestStep P_0)
|
|
{
|
|
return P_0.InteractionType;
|
|
}
|
|
|
|
static uint? _206D_200E_206B_202D_200E_206B_200B_206E_206A_200C_202C_200D_206F_200E_202E_202A_206B_200E_202C_202A_200E_206B_200F_206E_202B_200D_202B_206C_202B_206B_200F_206E_206E_206E_200C_202C_200D_206F_200B_206B_202E(QuestStep P_0)
|
|
{
|
|
return P_0.ItemId;
|
|
}
|
|
|
|
static void _200E_202D_202A_206B_202B_200C_202B_202A_202D_202B_200B_206D_206A_200B_202C_206C_202B_206D_200D_206F_200D_206C_200C_200D_202D_206B_202A_200D_200F_200E_206B_200F_206C_202A_206C_206A_202D_206A_202D_206B_202E(object P_0, string P_1)
|
|
{
|
|
ArgumentNullException.ThrowIfNull(P_0, P_1);
|
|
}
|
|
|
|
static uint? _202D_202C_200D_200E_206C_200B_202B_202A_200F_202C_206C_202D_206B_206C_206E_200E_202D_202D_200B_202C_206F_202C_206A_202B_206E_200C_202A_200F_202E_202B_202E_202E_202A_206E_202C_206E_200F_206C_206E_200C_202E(QuestStep P_0)
|
|
{
|
|
return P_0.DataId;
|
|
}
|
|
}
|
|
|
|
internal sealed record MeldTask(uint MateriaItemId, uint? TargetItemId) : ITask
|
|
{
|
|
[CompilerGenerated]
|
|
private Type EqualityContract
|
|
{
|
|
[CompilerGenerated]
|
|
get
|
|
{
|
|
return _202C_206C_206F_200F_206B_206F_206E_202B_206F_206C_202A_202E_206D_200B_200E_206B_206B_206F_202C_202C_200D_200E_200E_200C_200B_202D_202C_202C_202D_206B_202B_206E_202A_202D_202D_206B_202A_202B_206C_202E(typeof(MeldTask).TypeHandle);
|
|
}
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
public override string ToString()
|
|
{
|
|
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(13, 1);
|
|
defaultInterpolatedStringHandler.AppendLiteral(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>(-1811893686));
|
|
defaultInterpolatedStringHandler.AppendFormatted(MateriaItemId);
|
|
string text = defaultInterpolatedStringHandler.ToStringAndClear();
|
|
string text2;
|
|
if (!TargetItemId.HasValue)
|
|
{
|
|
text2 = global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E<string>(-87324410);
|
|
}
|
|
else
|
|
{
|
|
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler2 = new DefaultInterpolatedStringHandler(11, 1);
|
|
defaultInterpolatedStringHandler2.AppendLiteral(global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E<string>(-1399814468));
|
|
defaultInterpolatedStringHandler2.AppendFormatted(TargetItemId);
|
|
text2 = defaultInterpolatedStringHandler2.ToStringAndClear();
|
|
}
|
|
return _202E_202C_202B_206C_202A_206A_206D_200F_206D_206D_202D_200B_202E_200B_202B_200D_206F_200C_202B_200D_206D_200F_200D_206D_202D_202B_202E_206B_202B_200E_202D_202D_202A_200F_202D_200C_202C_200F_206D_202B_202E(text, text2);
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
[CompilerGenerated]
|
|
private bool PrintMembers(StringBuilder builder)
|
|
{
|
|
_200F_206A_202E_200B_206E_206E_200E_206D_200E_206F_206D_200E_206E_202C_200E_206D_202A_206B_200F_200B_200C_206E_206B_206C_206D_202B_206B_206E_200E_200D_202C_200C_200F_200F_202E_200C_200F_206C_206D_202E_202E();
|
|
_202B_206C_200B_206F_200E_206D_200F_200B_202E_206F_200D_200C_202D_202E_206D_202E_200F_206F_202A_200C_202E_202D_200E_206A_206B_200B_206B_206F_200B_200E_202E_202D_206D_202A_202E_206E_200B_200C_202D_200F_202E(builder, 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>(1788087081));
|
|
_202B_206C_200B_206F_200E_206D_200F_200B_202E_206F_200D_200C_202D_202E_206D_202E_200F_206F_202A_200C_202E_202D_200E_206A_206B_200B_206B_206F_200B_200E_202E_202D_206D_202A_202E_206E_200B_200C_202D_200F_202E(builder, MateriaItemId.ToString());
|
|
_202B_206C_200B_206F_200E_206D_200F_200B_202E_206F_200D_200C_202D_202E_206D_202E_200F_206F_202A_200C_202E_202D_200E_206A_206B_200B_206B_206F_200B_200E_202E_202D_206D_202A_202E_206E_200B_200C_202D_200F_202E(builder, global::_003CModule_003E._200B_206B_206B_200E_200B_206A_206D_206B_206E_200F_206A_206F_206E_202B_200F_206C_202B_206D_206E_200F_200C_200E_206F_200D_200F_200B_202B_202B_202B_202B_206D_202C_206A_206D_200B_206E_200D_206A_206F_200F_202E<string>(-902104469));
|
|
_202B_206C_200B_206F_200E_206D_200F_200B_202E_206F_200D_200C_202D_202E_206D_202E_200F_206F_202A_200C_202E_202D_200E_206A_206B_200B_206B_206F_200B_200E_202E_202D_206D_202A_202E_206E_200B_200C_202D_200F_202E(builder, TargetItemId.ToString());
|
|
return true;
|
|
}
|
|
|
|
[CompilerGenerated]
|
|
public bool Equals(MeldTask? other)
|
|
{
|
|
int num = (((object)this == other) ? (-74015245) : (-74015243));
|
|
while (true)
|
|
{
|
|
int num2 = num;
|
|
int num3 = -74015241;
|
|
int num4 = num2;
|
|
int num5 = num4 + num3;
|
|
int num6 = num4 & num3;
|
|
switch (num5 - (num6 + num6))
|
|
{
|
|
case 0:
|
|
return EqualityComparer<uint?>.Default.Equals(TargetItemId, other.TargetItemId);
|
|
case 1:
|
|
return false;
|
|
case 4:
|
|
return true;
|
|
case 3:
|
|
num = -74015243;
|
|
break;
|
|
case 6:
|
|
num = ((!EqualityComparer<uint>.Default.Equals(MateriaItemId, other.MateriaItemId)) ? (-74015242) : (-74015241));
|
|
break;
|
|
case 5:
|
|
num = ((!_206F_202C_206B_202E_202E_206E_200E_206F_202E_202A_200B_206F_206C_200C_206A_200B_202E_202B_206F_200C_202C_206E_206A_202D_202B_200F_202E_202B_200D_202A_202A_206B_200C_206F_200E_200B_202D_200D_206F_202D_202E(EqualityContract, other.EqualityContract)) ? (-74015242) : (-74015247));
|
|
break;
|
|
case 2:
|
|
num = (((object)other == null) ? (-74015242) : (-74015246));
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
bool IEquatable<MeldTask>.Equals(MeldTask? other)
|
|
{
|
|
//ILSpy generated this explicit interface implementation from .override directive in Equals
|
|
return this.Equals(other);
|
|
}
|
|
|
|
static Type _202C_206C_206F_200F_206B_206F_206E_202B_206F_206C_202A_202E_206D_200B_200E_206B_206B_206F_202C_202C_200D_200E_200E_200C_200B_202D_202C_202C_202D_206B_202B_206E_202A_202D_202D_206B_202A_202B_206C_202E(RuntimeTypeHandle P_0)
|
|
{
|
|
return Type.GetTypeFromHandle(P_0);
|
|
}
|
|
|
|
static string _202E_202C_202B_206C_202A_206A_206D_200F_206D_206D_202D_200B_202E_200B_202B_200D_206F_200C_202B_200D_206D_200F_200D_206D_202D_202B_202E_206B_202B_200E_202D_202D_202A_200F_202D_200C_202C_200F_206D_202B_202E(string P_0, string P_1)
|
|
{
|
|
return P_0 + P_1;
|
|
}
|
|
|
|
static void _200F_206A_202E_200B_206E_206E_200E_206D_200E_206F_206D_200E_206E_202C_200E_206D_202A_206B_200F_200B_200C_206E_206B_206C_206D_202B_206B_206E_200E_200D_202C_200C_200F_200F_202E_200C_200F_206C_206D_202E_202E()
|
|
{
|
|
RuntimeHelpers.EnsureSufficientExecutionStack();
|
|
}
|
|
|
|
static StringBuilder _202B_206C_200B_206F_200E_206D_200F_200B_202E_206F_200D_200C_202D_202E_206D_202E_200F_206F_202A_200C_202E_202D_200E_206A_206B_200B_206B_206F_200B_200E_202E_202D_206D_202A_202E_206E_200B_200C_202D_200F_202E(StringBuilder P_0, string P_1)
|
|
{
|
|
return P_0.Append(P_1);
|
|
}
|
|
|
|
static bool _206F_202C_206B_202E_202E_206E_200E_206F_202E_202A_200B_206F_206C_200C_206A_200B_202E_202B_206F_200C_202C_206E_206A_202D_202B_200F_202E_202B_200D_202A_202A_206B_200C_206F_200E_200B_202D_200D_206F_202D_202E(Type P_0, Type P_1)
|
|
{
|
|
return P_0 == P_1;
|
|
}
|
|
}
|
|
|
|
internal sealed class DoMeld(IGameGui gameGui, ILogger<DoMeld> logger) : TaskExecutor<MeldTask>()
|
|
{
|
|
private enum EMeldState
|
|
{
|
|
OpeningAgent,
|
|
WaitingForAgent,
|
|
SelectingCategory,
|
|
WaitingAfterCategory,
|
|
SelectingItem,
|
|
WaitingAfterItem,
|
|
SelectingMateria,
|
|
WaitingForDialog,
|
|
Confirming,
|
|
WaitingForCompletion
|
|
}
|
|
|
|
private Throttle _throttle;
|
|
|
|
private int _materiaStartCount;
|
|
|
|
private unsafe InventoryItem* _targetItem;
|
|
|
|
private InventoryType _targetInventoryType;
|
|
|
|
private EMeldState _state;
|
|
|
|
private long _stateChangedAt;
|
|
|
|
public override bool HasTimedOut(float timeoutSeconds)
|
|
{
|
|
return _206E_200F_202E_202E_200F_202B_200C_200E_206E_202C_202B_202A_200E_200D_206E_200C_200C_206F_202A_200E_206A_200D_200B_202C_202C_206E_202A_202C_206A_206F_200B_206F_202B_202B_200C_206C_200D_202D_200D_200C_202E() - _stateChangedAt > (long)(timeoutSeconds * 1000f);
|
|
}
|
|
|
|
private void SetState(EMeldState state)
|
|
{
|
|
_state = state;
|
|
_stateChangedAt = _206E_200F_202E_202E_200F_202B_200C_200E_206E_202C_202B_202A_200E_200D_206E_200C_200C_206F_202A_200E_206A_200D_200B_202C_202C_206E_202A_202C_206A_206F_200B_206F_202B_202B_200C_206C_200D_202D_200D_200C_202E();
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
protected override bool Start()
|
|
{
|
|
_materiaStartCount = _202D_200B_206A_206C_200F_206D_200E_202B_202A_202B_200F_200D_206A_206E_202B_200F_206E_206B_202C_200E_202A_202D_206C_202B_202D_202A_200F_202C_200D_202D_200E_202C_206E_206B_202B_200D_206A_206A_200D_200D_202E(base.Task.MateriaItemId);
|
|
int num = ((_materiaStartCount != 0) ? (-739386602) : (-739386601));
|
|
while (true)
|
|
{
|
|
int num2 = num;
|
|
int num3 = -739386603;
|
|
int num4 = num2;
|
|
switch ((num4 | num3) - (num4 & num3))
|
|
{
|
|
case 1:
|
|
throw new TaskException(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>(545128444));
|
|
case 4:
|
|
SetState(EMeldState.OpeningAgent);
|
|
return true;
|
|
case 2:
|
|
_200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_200E_202E((ILogger)logger, global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E<string>(1528987763), new object[1] { base.Task.MateriaItemId });
|
|
return false;
|
|
case 0:
|
|
num = -739386601;
|
|
break;
|
|
case 3:
|
|
num = (FindTargetItem() ? (-739386607) : (-739386604));
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
public unsafe override ETaskResult Update()
|
|
{
|
|
int num = (_throttle.TryReset(0.5) ? 2029212334 : 2029212339);
|
|
int? num9 = default(int?);
|
|
int? num8 = default(int?);
|
|
int num7 = default(int);
|
|
while (true)
|
|
{
|
|
int num2 = num;
|
|
int num3 = 2029212349;
|
|
int num4 = num2;
|
|
int num5 = num4 + num3;
|
|
int num6 = num4 & num3;
|
|
switch (num5 - (num6 + num6))
|
|
{
|
|
case 11:
|
|
num = ((!_202E_206C_202B_202B_206D_202B_206F_206E_200C_206D_206D_206E_206B_200E_206A_200F_206B_200E_206F_202D_206E_206A_206C_200F_200D_200C_200D_202A_200E_200B_200E_206E_202D_200C_206B_202E_206A_200D_202D_206E_202E()) ? 2029212348 : 2029212335);
|
|
break;
|
|
case 22:
|
|
SetState(EMeldState.WaitingAfterCategory);
|
|
num = 2029212348;
|
|
break;
|
|
case 24:
|
|
goto IL_00fc;
|
|
case 23:
|
|
num = ((!_206F_206B_206B_202B_206B_200E_200C_206A_206C_206A_206E_200F_200C_200B_200F_200C_200B_200F_206F_206E_202C_200E_202C_206C_200E_202E_206F_206E_200C_202E_202A_206F_206A_206B_202C_206D_202B_202E_200C_202D_202E(num9.Value)) ? 2029212348 : 2029212321);
|
|
break;
|
|
case 18:
|
|
SetState(EMeldState.SelectingCategory);
|
|
num = 2029212348;
|
|
break;
|
|
case 9:
|
|
num = 2029212348;
|
|
break;
|
|
case 3:
|
|
_200D_202C_200B_206B_202B_206E_202B_200B_202C_206D_202C_202A_200D_202B_202C_202B_206D_206E_206D_202B_206D_202A_202E_202A_200B_206B_200B_202A_202D_202B_202B_202D_202A_206C_200C_206E_206C_206B_202C_200C_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>(-554197545), Array.Empty<object>());
|
|
num = 2029212348;
|
|
break;
|
|
case 12:
|
|
_200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_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>(-1216192232), new object[1] { num8.Value });
|
|
SetState(EMeldState.WaitingAfterItem);
|
|
num = 2029212348;
|
|
break;
|
|
case 10:
|
|
_200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_200E_202E((ILogger)logger, 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>(-15165068), Array.Empty<object>());
|
|
SetState(EMeldState.WaitingForCompletion);
|
|
num = 2029212348;
|
|
break;
|
|
case 28:
|
|
_200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_200E_202E((ILogger)logger, global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E<string>(-775372938), new object[1] { num9.Value });
|
|
SetState(EMeldState.WaitingForDialog);
|
|
num = 2029212348;
|
|
break;
|
|
case 7:
|
|
num = ((!_206B_202C_206F_206E_200E_206C_200F_200F_206A_206D_206D_206E_206A_202C_206B_206E_206C_202C_206E_200E_202C_202D_202E_206E_206B_200D_206E_206E_206F_200D_200B_200F_200B_202B_200D_206D_206B_200D_202E_202C_202E(num8.Value)) ? 2029212348 : 2029212337);
|
|
break;
|
|
case 5:
|
|
goto IL_025d;
|
|
case 20:
|
|
SetState(EMeldState.WaitingForAgent);
|
|
num = 2029212348;
|
|
break;
|
|
case 4:
|
|
SetState(EMeldState.SelectingItem);
|
|
num = 2029212348;
|
|
break;
|
|
case 26:
|
|
goto IL_02ab;
|
|
case 14:
|
|
return ETaskResult.StillRunning;
|
|
case 27:
|
|
SetState(EMeldState.Confirming);
|
|
num = 2029212348;
|
|
break;
|
|
case 15:
|
|
goto IL_02f5;
|
|
case 0:
|
|
goto IL_0317;
|
|
case 1:
|
|
goto IL_0344;
|
|
case 21:
|
|
goto IL_0346;
|
|
case 17:
|
|
goto IL_0368;
|
|
case 16:
|
|
num = 2029212339;
|
|
break;
|
|
case 13:
|
|
goto IL_039c;
|
|
case 25:
|
|
_200D_202C_200B_206B_202B_206E_202B_200B_202C_206D_202C_202A_200D_202B_202C_202B_206D_206E_206D_202B_206D_202A_202E_202A_200B_206B_200B_202A_202D_202B_202B_202D_202A_206C_200C_206E_206C_206B_202C_200C_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>(1073359256), new object[1] { base.Task.MateriaItemId });
|
|
num = 2029212348;
|
|
break;
|
|
case 2:
|
|
_200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_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>(-1739389446), new object[3]
|
|
{
|
|
base.Task.MateriaItemId,
|
|
_materiaStartCount,
|
|
num7
|
|
});
|
|
_202C_202E_206F_206C_206C_202E_202D_202B_202E_200F_202E_202C_200D_200F_202B_200C_202C_200D_206E_200C_200E_206C_206E_202A_206D_206C_206B_200F_200C_206B_200F_206E_202E_206A_206E_202E_200B_200E_206F_202C_202E();
|
|
return ETaskResult.TaskComplete;
|
|
case 6:
|
|
SetState(EMeldState.SelectingMateria);
|
|
num = 2029212348;
|
|
break;
|
|
case 19:
|
|
num7 = _202D_200B_206A_206C_200F_206D_200E_202B_202A_202B_200F_200D_206A_206E_202B_200F_206E_206B_202C_200E_202A_202D_206C_202B_202D_202A_200F_202C_200D_202D_200E_202C_206E_206B_202B_200D_206A_206A_200D_200D_202E(base.Task.MateriaItemId);
|
|
num = ((num7 >= _materiaStartCount) ? 2029212341 : 2029212351);
|
|
break;
|
|
case 8:
|
|
{
|
|
switch (_state)
|
|
{
|
|
case EMeldState.WaitingForAgent:
|
|
break;
|
|
case EMeldState.WaitingAfterItem:
|
|
goto IL_00fc;
|
|
case EMeldState.WaitingForDialog:
|
|
goto IL_025d;
|
|
case EMeldState.SelectingMateria:
|
|
goto IL_02ab;
|
|
case EMeldState.OpeningAgent:
|
|
goto IL_02f5;
|
|
case EMeldState.SelectingCategory:
|
|
goto IL_0317;
|
|
case EMeldState.WaitingForCompletion:
|
|
goto IL_0344;
|
|
case EMeldState.WaitingAfterCategory:
|
|
goto IL_0346;
|
|
case EMeldState.Confirming:
|
|
goto IL_0368;
|
|
case EMeldState.SelectingItem:
|
|
goto IL_039c;
|
|
default:
|
|
goto IL_04cf;
|
|
}
|
|
goto case 11;
|
|
}
|
|
IL_04cf:
|
|
num = 2029212340;
|
|
break;
|
|
IL_039c:
|
|
num8 = _202A_202D_202A_206C_200D_202C_206F_200D_200B_200F_202C_206D_206C_202C_200E_202E_202B_200F_206B_200F_202D_206B_200F_200C_206B_206B_202A_206F_202B_200D_206B_206C_202B_202C_202A_200F_206C_202E_206B_200F_202E(_targetItem);
|
|
num = (num8.HasValue ? 2029212346 : 2029212350);
|
|
break;
|
|
IL_025d:
|
|
num = ((!_206B_206D_206F_200C_206D_202A_206E_206A_200F_202A_206F_206B_202A_202E_200C_200D_202B_206C_202B_200B_206B_202C_206C_206B_206A_206D_202A_202B_200B_206F_202A_206C_202A_206C_202E_202E_202B_202C_200E_202B_202E(gameGui)) ? 2029212348 : 2029212326);
|
|
break;
|
|
IL_0368:
|
|
num = ((!_206F_202B_206B_206C_200D_206F_206E_206E_202A_200B_200C_200D_202C_202A_200D_202D_202E_206A_200C_200D_200D_206A_206C_200C_202A_206A_200E_202E_202C_200F_206F_200B_206B_206F_200F_200E_200C_206C_200B_202C_202E(gameGui)) ? 2029212348 : 2029212343);
|
|
break;
|
|
IL_0346:
|
|
num = (_200C_202D_206C_202C_202A_200F_202E_206B_200F_200E_200D_206A_206F_200F_200D_206D_200F_206D_206A_202D_202A_200C_200D_206B_206D_200B_200E_206E_206D_206B_202C_206C_200D_206D_200D_206A_200E_202A_206B_202C_202E() ? 2029212348 : 2029212345);
|
|
break;
|
|
IL_00fc:
|
|
num = (_200C_202D_206C_202C_202A_200F_202E_206B_200F_200E_200D_206A_206F_200F_200D_206D_200F_206D_206A_202D_202A_200C_200D_206B_206D_200B_200E_206E_206D_206B_202C_206C_200D_206D_200D_206A_200E_202A_206B_202C_202E() ? 2029212348 : 2029212347);
|
|
break;
|
|
IL_0344:
|
|
return ETaskResult.StillRunning;
|
|
IL_0317:
|
|
num = ((!_202B_202B_206D_206B_200F_200C_206D_200C_206A_200C_200F_206A_202E_200B_202E_206A_200D_206F_206F_206B_202D_200E_200E_206B_206A_200B_202B_202E_202E_202C_200D_206C_206E_202C_202D_202E_206B_202D_202B_202E((int)_206B_202A_206F_206A_202D_206D_200D_202C_202E_202D_206E_202C_202C_206D_202C_206F_206A_202B_206F_200B_202D_202E_200C_200D_200E_206D_200F_202A_202E_202E_200C_202E_202B_202B_202A_200C_202C_200D_200C_206D_202E(_targetInventoryType))) ? 2029212348 : 2029212331);
|
|
break;
|
|
IL_02f5:
|
|
num = ((!_206B_206B_200C_206F_200F_206C_206D_206B_200F_200D_200D_200F_202C_202D_200E_202B_200B_202E_206E_202D_202A_200D_200D_206A_200C_202E_200E_202C_202B_200F_206E_202C_202E_206D_206E_200F_202C_206A_202C_202E()) ? 2029212348 : 2029212329);
|
|
break;
|
|
IL_02ab:
|
|
num9 = _202A_206E_200B_202E_200D_206C_202B_202E_202C_202B_206A_206B_206A_200E_200D_200E_206C_202D_200C_202D_202B_200F_202E_200B_200B_206F_200E_206D_206F_200B_206E_206F_202C_200F_200F_202D_206B_206E_206A_206F_202E(base.Task.MateriaItemId);
|
|
num = (num9.HasValue ? 2029212330 : 2029212324);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
private unsafe bool FindTargetItem()
|
|
{
|
|
InventoryManager* ptr = InventoryManager.Instance();
|
|
int num = ((ptr != null) ? (-1479293445) : (-1479293444));
|
|
int num5 = default(int);
|
|
ReadOnlySpan<InventoryType> readOnlySpan = default(ReadOnlySpan<InventoryType>);
|
|
InventoryType inventoryType = default(InventoryType);
|
|
InventoryContainer* inventoryContainer = default(InventoryContainer*);
|
|
int num6 = default(int);
|
|
InventoryItem* inventorySlot = default(InventoryItem*);
|
|
while (true)
|
|
{
|
|
int num2 = num;
|
|
int num3 = -1479293451;
|
|
int num4 = num2;
|
|
switch ((num4 | num3) - (num4 & num3))
|
|
{
|
|
case 7:
|
|
{
|
|
int num10 = num5;
|
|
num3 = 1;
|
|
num4 = num10;
|
|
int num11 = num4 ^ num3;
|
|
int num12 = num4 & num3;
|
|
num5 = num11 + (num12 + num12);
|
|
num = -1479293456;
|
|
break;
|
|
}
|
|
case 5:
|
|
num = ((num5 < readOnlySpan.Length) ? (-1479293442) : (-1479293455));
|
|
break;
|
|
case 11:
|
|
inventoryType = readOnlySpan[num5];
|
|
inventoryContainer = ptr->GetInventoryContainer(inventoryType);
|
|
num = ((inventoryContainer == null) ? (-1479293454) : (-1479293452));
|
|
break;
|
|
case 1:
|
|
num6 = 0;
|
|
num = -1479293441;
|
|
break;
|
|
case 13:
|
|
_targetItem = inventorySlot;
|
|
_targetInventoryType = inventoryType;
|
|
_200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_200E_202E((ILogger)logger, 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>(-1804696669), new object[3]
|
|
{
|
|
inventorySlot->ItemId,
|
|
inventoryType,
|
|
num6
|
|
});
|
|
return true;
|
|
case 12:
|
|
num = -1479293444;
|
|
break;
|
|
case 2:
|
|
inventorySlot = inventoryContainer->GetInventorySlot(num6);
|
|
num = ((inventorySlot == null) ? (-1479293450) : (-1479293443));
|
|
break;
|
|
case 14:
|
|
readOnlySpan = new InventoryType[15]
|
|
{
|
|
InventoryType.Inventory1,
|
|
InventoryType.Inventory2,
|
|
InventoryType.Inventory3,
|
|
InventoryType.Inventory4,
|
|
InventoryType.ArmoryMainHand,
|
|
InventoryType.ArmoryOffHand,
|
|
InventoryType.ArmoryHead,
|
|
InventoryType.ArmoryBody,
|
|
InventoryType.ArmoryHands,
|
|
InventoryType.ArmoryLegs,
|
|
InventoryType.ArmoryFeets,
|
|
InventoryType.ArmoryEar,
|
|
InventoryType.ArmoryNeck,
|
|
InventoryType.ArmoryWrist,
|
|
InventoryType.ArmoryRings
|
|
};
|
|
num5 = 0;
|
|
num = -1479293456;
|
|
break;
|
|
case 0:
|
|
num = ((inventorySlot->ItemId != base.Task.TargetItemId.Value) ? (-1479293450) : (-1479293448));
|
|
break;
|
|
case 4:
|
|
return false;
|
|
case 9:
|
|
return false;
|
|
case 6:
|
|
num = ((!base.Task.TargetItemId.HasValue) ? (-1479293448) : (-1479293451));
|
|
break;
|
|
case 10:
|
|
num = ((num6 < inventoryContainer->Size) ? (-1479293449) : (-1479293454));
|
|
break;
|
|
case 3:
|
|
{
|
|
int num7 = num6;
|
|
num3 = 1;
|
|
num4 = num7;
|
|
int num8 = num4 ^ num3;
|
|
int num9 = num4 & num3;
|
|
num6 = num8 + (num9 + num9);
|
|
num = -1479293441;
|
|
break;
|
|
}
|
|
case 8:
|
|
num = ((inventorySlot->ItemId == 0) ? (-1479293450) : (-1479293453));
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
public override bool ShouldInterruptOnDamage()
|
|
{
|
|
return false;
|
|
}
|
|
|
|
static long _206E_200F_202E_202E_200F_202B_200C_200E_206E_202C_202B_202A_200E_200D_206E_200C_200C_206F_202A_200E_206A_200D_200B_202C_202C_206E_202A_202C_206A_206F_200B_206F_202B_202B_200C_206C_200D_202D_200D_200C_202E()
|
|
{
|
|
return Environment.TickCount64;
|
|
}
|
|
|
|
static int _202D_200B_206A_206C_200F_206D_200E_202B_202A_202B_200F_200D_206A_206E_202B_200F_206E_206B_202C_200E_202A_202D_206C_202B_202D_202A_200F_202C_200D_202D_200E_202C_206E_206B_202B_200D_206A_206A_200D_200D_202E(uint P_0)
|
|
{
|
|
return MateriaHelper.CountMateriaInInventory(P_0);
|
|
}
|
|
|
|
static void _200D_202C_206C_200B_206C_202C_202C_200D_202A_200F_202C_202E_200C_206A_206E_202A_206D_206C_202D_206C_206D_202E_200E_206C_206A_206B_200E_200F_206E_206B_206B_200B_200E_200B_202C_200B_202E_202E_202E_200E_202E(ILogger P_0, string P_1, object[] P_2)
|
|
{
|
|
P_0.LogInformation(P_1, P_2);
|
|
}
|
|
|
|
static void _202C_202E_206F_206C_206C_202E_202D_202B_202E_200F_202E_202C_200D_200F_202B_200C_202C_200D_206E_200C_200E_206C_206E_202A_206D_206C_206B_200F_200C_206B_200F_206E_202E_206A_206E_202E_200B_200E_206F_202C_202E()
|
|
{
|
|
MeldActions.CloseMeldAgent();
|
|
}
|
|
|
|
static bool _206B_206B_200C_206F_200F_206C_206D_206B_200F_200D_200D_200F_202C_202D_200E_202B_200B_202E_206E_202D_202A_200D_200D_206A_200C_202E_200E_202C_202B_200F_206E_202C_202E_206D_206E_200F_202C_206A_202C_202E()
|
|
{
|
|
return MeldActions.TryOpenMeldAgent();
|
|
}
|
|
|
|
static bool _202E_206C_202B_202B_206D_202B_206F_206E_200C_206D_206D_206E_206B_200E_206A_200F_206B_200E_206F_202D_206E_206A_206C_200F_200D_200C_200D_202A_200E_200B_200E_206E_202D_200C_206B_202E_206A_200D_202D_206E_202E()
|
|
{
|
|
return MeldActions.IsMeldAgentReady();
|
|
}
|
|
|
|
static AgentMateriaAttach.FilterCategory _206B_202A_206F_206A_202D_206D_200D_202C_202E_202D_206E_202C_202C_206D_202C_206F_206A_202B_206F_200B_202D_202E_200C_200D_200E_206D_200F_202A_202E_202E_200C_202E_202B_202B_202A_200C_202C_200D_200C_206D_202E(InventoryType P_0)
|
|
{
|
|
return MeldActions.GetFilterCategory(P_0);
|
|
}
|
|
|
|
static bool _202B_202B_206D_206B_200F_200C_206D_200C_206A_200C_200F_206A_202E_200B_202E_206A_200D_206F_206F_206B_202D_200E_200E_206B_206A_200B_202B_202E_202E_202C_200D_206C_206E_202C_202D_202E_206B_202D_202B_202E(int P_0)
|
|
{
|
|
return MeldActions.TrySelectItemCategory(P_0);
|
|
}
|
|
|
|
static bool _200C_202D_206C_202C_202A_200F_202E_206B_200F_200E_200D_206A_206F_200F_200D_206D_200F_206D_206A_202D_202A_200C_200D_206B_206D_200B_200E_206E_206D_206B_202C_206C_200D_206D_200D_206A_200E_202A_206B_202C_202E()
|
|
{
|
|
return MeldActions.IsAgentLoading();
|
|
}
|
|
|
|
unsafe static int? _202A_202D_202A_206C_200D_202C_206F_200D_200B_200F_202C_206D_206C_202C_200E_202E_202B_200F_206B_200F_202D_206B_200F_200C_206B_206B_202A_206F_202B_200D_206B_206C_202B_202C_202A_200F_206C_202E_206B_200F_202E(InventoryItem* P_0)
|
|
{
|
|
return MeldActions.FindItemIndex(P_0);
|
|
}
|
|
|
|
static void _200D_202C_200B_206B_202B_206E_202B_200B_202C_206D_202C_202A_200D_202B_202C_202B_206D_206E_206D_202B_206D_202A_202E_202A_200B_206B_200B_202A_202D_202B_202B_202D_202A_206C_200C_206E_206C_206B_202C_200C_202E(ILogger P_0, string P_1, object[] P_2)
|
|
{
|
|
P_0.LogWarning(P_1, P_2);
|
|
}
|
|
|
|
static bool _206B_202C_206F_206E_200E_206C_200F_200F_206A_206D_206D_206E_206A_202C_206B_206E_206C_202C_206E_200E_202C_202D_202E_206E_206B_200D_206E_206E_206F_200D_200B_200F_200B_202B_200D_206D_206B_200D_202E_202C_202E(int P_0)
|
|
{
|
|
return MeldActions.TrySelectItem(P_0);
|
|
}
|
|
|
|
static int? _202A_206E_200B_202E_200D_206C_202B_202E_202C_202B_206A_206B_206A_200E_200D_200E_206C_202D_200C_202D_202B_200F_202E_200B_200B_206F_200E_206D_206F_200B_206E_206F_202C_200F_200F_202D_206B_206E_206A_206F_202E(uint P_0)
|
|
{
|
|
return MeldActions.FindMateriaIndex(P_0);
|
|
}
|
|
|
|
static bool _206F_206B_206B_202B_206B_200E_200C_206A_206C_206A_206E_200F_200C_200B_200F_200C_200B_200F_206F_206E_202C_200E_202C_206C_200E_202E_206F_206E_200C_202E_202A_206F_206A_206B_202C_206D_202B_202E_200C_202D_202E(int P_0)
|
|
{
|
|
return MeldActions.TrySelectMateria(P_0);
|
|
}
|
|
|
|
static bool _206B_206D_206F_200C_206D_202A_206E_206A_200F_202A_206F_206B_202A_202E_200C_200D_202B_206C_202B_200B_206B_202C_206C_206B_206A_206D_202A_202B_200B_206F_202A_206C_202A_206C_202E_202E_202B_202C_200E_202B_202E(IGameGui P_0)
|
|
{
|
|
return MeldActions.IsMeldDialogReady(P_0);
|
|
}
|
|
|
|
static bool _206F_202B_206B_206C_200D_206F_206E_206E_202A_200B_200C_200D_202C_202A_200D_202D_202E_206A_200C_200D_200D_206A_206C_200C_202A_206A_200E_202E_202C_200F_206F_200B_206B_206F_200F_200E_200C_206C_200B_202C_202E(IGameGui P_0)
|
|
{
|
|
return MeldActions.TryConfirmMeld(P_0);
|
|
}
|
|
}
|
|
}
|