muffin v7.5.6
This commit is contained in:
parent
6266f9e6b7
commit
addf2d530f
619 changed files with 264792 additions and 446022 deletions
|
|
@ -1,8 +1,14 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.CompilerServices;
|
||||
using Dalamud.Game.ClientState.Objects.SubKinds;
|
||||
using Dalamud.Game.ClientState.Objects.Types;
|
||||
using Dalamud.Plugin;
|
||||
using Dalamud.Plugin.Ipc;
|
||||
using Dalamud.Plugin.Ipc.Exceptions;
|
||||
using Dalamud.Plugin.Services;
|
||||
using Lumina.Excel;
|
||||
using Lumina.Excel.Sheets;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Questionable.Controller.Steps;
|
||||
|
||||
|
|
@ -42,7 +48,14 @@ internal sealed class WrathComboModule : ICombatModule, IDisposable
|
|||
OrbwalkerIntegration,
|
||||
AutoRezOutOfParty,
|
||||
DPSAoETargets,
|
||||
SingleTargetExcogHPP
|
||||
SingleTargetExcogHPP,
|
||||
AutoRezDPSJobsHealersOnly,
|
||||
DPSAlwaysHardTarget,
|
||||
HealerAlwaysHardTarget,
|
||||
BypassQuest,
|
||||
BypassFATE,
|
||||
IgnoreRangeInBoss,
|
||||
UnTargetAndDisableForPenalty
|
||||
}
|
||||
|
||||
public enum HealerRotationMode
|
||||
|
|
@ -52,12 +65,26 @@ internal sealed class WrathComboModule : ICombatModule, IDisposable
|
|||
Lowest_Current
|
||||
}
|
||||
|
||||
public enum DPSRotationMode
|
||||
{
|
||||
Manual,
|
||||
Highest_Max,
|
||||
Lowest_Max,
|
||||
Highest_Current,
|
||||
Lowest_Current,
|
||||
Tank_Target,
|
||||
Nearest,
|
||||
Furthest
|
||||
}
|
||||
|
||||
private const string CallbackPrefix = "Questionable$Wrath";
|
||||
|
||||
private readonly ILogger<WrathComboModule> _logger;
|
||||
|
||||
private readonly Configuration _configuration;
|
||||
|
||||
private readonly IObjectTable _objectTable;
|
||||
|
||||
private readonly ICallGateSubscriber<object> _test;
|
||||
|
||||
private readonly ICallGateSubscriber<string, string, string, Guid?> _registerForLeaseWithCallback;
|
||||
|
|
@ -70,118 +97,472 @@ internal sealed class WrathComboModule : ICombatModule, IDisposable
|
|||
|
||||
private readonly ICallGateSubscriber<Guid, ESetResult> _setCurrentJobAutoRotationReady;
|
||||
|
||||
private readonly ICallGateSubscriber<uint, List<string>?> _getComboNamesForJob;
|
||||
|
||||
private readonly ICallGateSubscriber<Guid, string, bool, bool, ESetResult> _setComboState;
|
||||
|
||||
private readonly ICallGateProvider<int, string, object> _callback;
|
||||
|
||||
private Guid? _lease;
|
||||
|
||||
public WrathComboModule(ILogger<WrathComboModule> logger, Configuration configuration, IDalamudPluginInterface pluginInterface)
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
public WrathComboModule(ILogger<WrathComboModule> logger, Configuration configuration, IObjectTable objectTable, IDalamudPluginInterface pluginInterface)
|
||||
{
|
||||
_logger = logger;
|
||||
_configuration = configuration;
|
||||
_test = pluginInterface.GetIpcSubscriber<object>("WrathCombo.Test");
|
||||
_registerForLeaseWithCallback = pluginInterface.GetIpcSubscriber<string, string, string, Guid?>("WrathCombo.RegisterForLeaseWithCallback");
|
||||
_releaseControl = pluginInterface.GetIpcSubscriber<Guid, object>("WrathCombo.ReleaseControl");
|
||||
_setAutoRotationState = pluginInterface.GetIpcSubscriber<Guid, bool, ESetResult>("WrathCombo.SetAutoRotationState");
|
||||
_setAutoRotationConfigState = pluginInterface.GetIpcSubscriber<Guid, object, object, ESetResult>("WrathCombo.SetAutoRotationConfigState");
|
||||
_setCurrentJobAutoRotationReady = pluginInterface.GetIpcSubscriber<Guid, ESetResult>("WrathCombo.SetCurrentJobAutoRotationReady");
|
||||
_callback = pluginInterface.GetIpcProvider<int, string, object>("Questionable$Wrath.WrathComboCallback");
|
||||
_objectTable = objectTable;
|
||||
_test = pluginInterface.GetIpcSubscriber<object>(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>(-881363820));
|
||||
_registerForLeaseWithCallback = pluginInterface.GetIpcSubscriber<string, string, string, Guid?>(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>(-200781622));
|
||||
_releaseControl = pluginInterface.GetIpcSubscriber<Guid, object>(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>(254606733));
|
||||
_setAutoRotationState = pluginInterface.GetIpcSubscriber<Guid, bool, ESetResult>(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>(-1072043349));
|
||||
_setAutoRotationConfigState = pluginInterface.GetIpcSubscriber<Guid, object, object, ESetResult>(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>(920538037));
|
||||
_setCurrentJobAutoRotationReady = pluginInterface.GetIpcSubscriber<Guid, ESetResult>(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>(-1662176505));
|
||||
_getComboNamesForJob = pluginInterface.GetIpcSubscriber<uint, List<string>>(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>(987268149));
|
||||
_setComboState = pluginInterface.GetIpcSubscriber<Guid, string, bool, bool, ESetResult>(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>(1902147951));
|
||||
_callback = pluginInterface.GetIpcProvider<int, string, object>(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>(-437654203));
|
||||
_callback.RegisterAction(Callback);
|
||||
}
|
||||
|
||||
public bool IsAvailable()
|
||||
{
|
||||
int num = ((_configuration.General.CombatModule == Configuration.ECombatModule.WrathCombo) ? (-1348986340) : (-1348986337));
|
||||
while (true)
|
||||
{
|
||||
int num2 = num;
|
||||
int num3 = -1348986338;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
case 0:
|
||||
goto IL_0053;
|
||||
case 1:
|
||||
return false;
|
||||
case 2:
|
||||
try
|
||||
{
|
||||
_test.InvokeAction();
|
||||
return true;
|
||||
}
|
||||
catch (IpcError)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
IL_0053:
|
||||
num = -1348986337;
|
||||
}
|
||||
}
|
||||
|
||||
public bool CanHandleFight(CombatController.CombatData combatData)
|
||||
{
|
||||
if (_configuration.General.CombatModule != Configuration.ECombatModule.WrathCombo)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
try
|
||||
{
|
||||
_test.InvokeAction();
|
||||
return true;
|
||||
}
|
||||
catch (IpcError)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return IsAvailable();
|
||||
}
|
||||
|
||||
bool ICombatModule.CanHandleFight(CombatController.CombatData combatData)
|
||||
{
|
||||
//ILSpy generated this explicit interface implementation from .override directive in CanHandleFight
|
||||
return this.CanHandleFight(combatData);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
public bool Start(CombatController.CombatData combatData)
|
||||
{
|
||||
try
|
||||
{
|
||||
_lease = _registerForLeaseWithCallback.InvokeFunc("Questionable", "Questionable", "Questionable$Wrath");
|
||||
if (_lease.HasValue)
|
||||
_lease = _registerForLeaseWithCallback.InvokeFunc(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>(1231541163), 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>(-1179749275), 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>(-121562455));
|
||||
int num = ((!_lease.HasValue) ? (-1358981583) : (-1358981584));
|
||||
while (true)
|
||||
{
|
||||
_logger.LogDebug("Wrath combo lease: {Lease}", _lease.Value);
|
||||
if (!_setAutoRotationState.InvokeFunc(_lease.Value, arg2: true).IsSuccess())
|
||||
int num2 = num;
|
||||
int num3 = -1358981583;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
_logger.LogError("Unable to set autorotation state");
|
||||
case 6:
|
||||
num = -1358981584;
|
||||
break;
|
||||
case 5:
|
||||
{
|
||||
ESetResult eSetResult2 = _setCurrentJobAutoRotationReady.InvokeFunc(_lease.Value);
|
||||
_202C_202A_202B_206B_202B_202D_206B_206D_202A_200D_202C_200F_200F_200B_202B_200E_200B_202D_200D_206A_200D_206C_202E_206E_202C_200D_200E_206B_200F_206E_206E_202C_200E_202E_206B_206D_200C_206B_200C_202B_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>(-246523235), new object[1] { eSetResult2 });
|
||||
num = (eSetResult2.IsSuccess() ? (-1358981581) : (-1358981579));
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
_202C_202A_202B_206B_202B_202D_206B_206D_202A_200D_202C_200F_200F_200B_202B_200E_200B_202D_200D_206A_200D_206C_202E_206E_202C_200D_200E_206B_200F_206E_206E_202C_200E_202E_206B_206D_200C_206B_200C_202B_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>(-1086439273), new object[1] { _lease.Value });
|
||||
ESetResult eSetResult = _setAutoRotationState.InvokeFunc(_lease.Value, arg2: true);
|
||||
_202C_202A_202B_206B_202B_202D_206B_206D_202A_200D_202C_200F_200F_200B_202B_200E_200B_202D_200D_206A_200D_206C_202E_206E_202C_200D_200E_206B_200F_206E_206E_202C_200E_202E_206B_206D_200C_206B_200C_202B_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>(-650979249), new object[1] { eSetResult });
|
||||
num = (eSetResult.IsSuccess() ? (-1358981580) : (-1358981582));
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
_200C_200D_202C_206F_200B_206E_206F_200D_200E_206D_200E_202E_200C_200C_202D_206A_202D_206E_202D_206F_200F_200D_200D_202E_206B_206F_200C_206C_202E_200F_202E_200C_202D_202E_202E_200E_206B_206E_202B_202D_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>(-831608674), Array.Empty<object>());
|
||||
Stop();
|
||||
return false;
|
||||
}
|
||||
if (!_setCurrentJobAutoRotationReady.InvokeFunc(_lease.Value).IsSuccess())
|
||||
{
|
||||
_logger.LogError("Unable to set current job for autorotation");
|
||||
case 2:
|
||||
EnableCombosForCurrentJob();
|
||||
SetConfig(AutoRotationConfigOption.HealerRotationMode, HealerRotationMode.Lowest_Current);
|
||||
SetConfig(AutoRotationConfigOption.DPSRotationMode, DPSRotationMode.Manual);
|
||||
SetConfig(AutoRotationConfigOption.InCombatOnly, 0);
|
||||
SetConfig(AutoRotationConfigOption.IncludeNPCs, 1);
|
||||
SetConfig(AutoRotationConfigOption.OnlyAttackInCombat, 0);
|
||||
SetConfig(AutoRotationConfigOption.AutoCleanse, 1);
|
||||
SetConfig(AutoRotationConfigOption.AutoRez, 1);
|
||||
SetConfig(AutoRotationConfigOption.AutoRezDPSJobs, 1);
|
||||
SetConfig(AutoRotationConfigOption.ManageKardia, 1);
|
||||
SetConfig(AutoRotationConfigOption.DPSAoETargets, 3);
|
||||
SetConfig(AutoRotationConfigOption.AutoRezOutOfParty, 0);
|
||||
SetConfig(AutoRotationConfigOption.DPSAlwaysHardTarget, 1);
|
||||
SetConfig(AutoRotationConfigOption.BypassQuest, 1);
|
||||
return true;
|
||||
case 3:
|
||||
_200C_200D_202C_206F_200B_206E_206F_200D_200E_206D_200E_202E_200C_200C_202D_206A_202D_206E_202D_206F_200F_200D_200D_202E_206B_206F_200C_206C_202E_200F_202E_200C_202D_202E_202E_200E_206B_206E_202B_202D_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>(-2060892089), Array.Empty<object>());
|
||||
Stop();
|
||||
return false;
|
||||
case 0:
|
||||
_200C_200D_202C_206F_200B_206E_206F_200D_200E_206D_200E_202E_200C_200C_202D_206A_202D_206E_202D_206F_200F_200D_200D_202E_206B_206F_200C_206C_202E_200F_202E_200C_202D_202E_202E_200E_206B_206E_202B_202D_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>(-1103601186), Array.Empty<object>());
|
||||
return false;
|
||||
}
|
||||
ESetResult eSetResult = _setAutoRotationConfigState.InvokeFunc(_lease.Value, AutoRotationConfigOption.HealerRotationMode, HealerRotationMode.Lowest_Current);
|
||||
if (!eSetResult.IsSuccess())
|
||||
{
|
||||
_logger.LogError("Unable to configure healing priority for autorotation: {Result}", eSetResult);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
_logger.LogError("Wrath combo did not return a lease");
|
||||
return false;
|
||||
}
|
||||
catch (IpcError exception)
|
||||
catch (IpcError ipcError)
|
||||
{
|
||||
_logger.LogError(exception, "Unable to use wrath combo for combat");
|
||||
_206B_206A_206C_202C_200F_202D_206B_202C_206F_200D_200B_206A_206E_202E_200B_200F_200E_206C_200C_206B_200D_200D_206E_206F_202D_202B_206A_200D_206A_200F_202C_202C_202E_202E_206C_206B_202C_202C_202A_202D_202E((ILogger)_logger, (Exception)ipcError, 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>(-1303013100), Array.Empty<object>());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
bool ICombatModule.Start(CombatController.CombatData combatData)
|
||||
{
|
||||
//ILSpy generated this explicit interface implementation from .override directive in Start
|
||||
return this.Start(combatData);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
public bool Stop()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (_lease.HasValue)
|
||||
int num = ((!_lease.HasValue) ? (-1077439308) : (-1077439305));
|
||||
while (true)
|
||||
{
|
||||
_releaseControl.InvokeAction(_lease.Value);
|
||||
_lease = null;
|
||||
int num2 = num;
|
||||
int num3 = -1077439307;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
case 0:
|
||||
num = -1077439305;
|
||||
break;
|
||||
case 2:
|
||||
_releaseControl.InvokeAction(_lease.Value);
|
||||
_lease = null;
|
||||
num = -1077439308;
|
||||
break;
|
||||
case 1:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch (IpcError exception)
|
||||
catch (IpcError ipcError)
|
||||
{
|
||||
_logger.LogWarning(exception, "Could not turn off wrath combo");
|
||||
_202C_202C_202C_202B_200E_202C_202B_202B_202D_202C_206F_206C_202C_206C_202E_206F_206C_202D_200F_200B_200D_202D_200E_206E_200D_206E_200E_206B_206D_202D_206C_206E_202D_200E_202C_200D_202D_202D_200D_200C_202E((ILogger)_logger, (Exception)ipcError, 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>(1222809597), Array.Empty<object>());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
bool ICombatModule.Stop()
|
||||
{
|
||||
//ILSpy generated this explicit interface implementation from .override directive in Stop
|
||||
return this.Stop();
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
public void Update(IGameObject nextTarget)
|
||||
{
|
||||
if (!_lease.HasValue)
|
||||
int num = (_lease.HasValue ? 1213985662 : 1213985663);
|
||||
while (true)
|
||||
{
|
||||
throw new TaskException("Wrath Combo Lease is cancelled");
|
||||
int num2 = num;
|
||||
int num3 = 1213985662;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
case 0:
|
||||
return;
|
||||
case 1:
|
||||
throw new TaskException(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>(688347319));
|
||||
case 2:
|
||||
goto IL_005e;
|
||||
}
|
||||
continue;
|
||||
IL_005e:
|
||||
num = 1213985663;
|
||||
}
|
||||
}
|
||||
|
||||
void ICombatModule.Update(IGameObject nextTarget)
|
||||
{
|
||||
//ILSpy generated this explicit interface implementation from .override directive in Update
|
||||
this.Update(nextTarget);
|
||||
}
|
||||
|
||||
public bool CanAttack(IBattleNpc target)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ICombatModule.CanAttack(IBattleNpc target)
|
||||
{
|
||||
//ILSpy generated this explicit interface implementation from .override directive in CanAttack
|
||||
return this.CanAttack(target);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
private void EnableCombosForCurrentJob()
|
||||
{
|
||||
int num = (_lease.HasValue ? (-1738503464) : (-1738503461));
|
||||
uint num7 = default(uint);
|
||||
string current = default(string);
|
||||
ESetResult eSetResult = default(ESetResult);
|
||||
while (true)
|
||||
{
|
||||
int num2 = num;
|
||||
int num3 = -1738503463;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
case 0:
|
||||
num = -1738503461;
|
||||
break;
|
||||
case 1:
|
||||
{
|
||||
IPlayerCharacter playerCharacter = _200C_200E_200F_206E_202E_206F_206E_200B_206F_202E_202B_202C_206D_206F_202A_202D_200C_206A_200B_206A_206D_202E_206D_202E_206F_202B_206E_200B_202C_206F_200D_206D_206B_202A_206B_200D_206E_202B_202D_206F_202E(_objectTable);
|
||||
num7 = ((playerCharacter != null) ? _200B_202E_206C_200D_202E_200B_202D_202C_200E_202B_202D_206F_202D_200D_206D_206E_206F_200E_206E_200B_200C_202A_206E_200C_206D_200F_206E_206B_200D_202D_206F_202B_206F_200C_206E_206E_206C_206A_202C_202A_202E((ICharacter)playerCharacter).RowId : 0u);
|
||||
num = ((num7 != 0) ? (-1738503462) : (-1738503459));
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
return;
|
||||
case 4:
|
||||
return;
|
||||
case 3:
|
||||
try
|
||||
{
|
||||
List<string> list = _getComboNamesForJob.InvokeFunc(num7);
|
||||
num = ((list == null) ? 406782414 : 406782415);
|
||||
while (true)
|
||||
{
|
||||
int num8 = num;
|
||||
num3 = 406782413;
|
||||
num4 = num8;
|
||||
int num9 = num4 + num3;
|
||||
int num10 = num4 & num3;
|
||||
switch (num9 - (num10 + num10))
|
||||
{
|
||||
case 0:
|
||||
num = 406782415;
|
||||
break;
|
||||
case 3:
|
||||
_200E_202E_206F_200D_206A_200E_206B_202D_200D_200B_200D_206D_200C_200F_206A_200C_202E_202D_202C_206B_202D_200B_206D_202D_200E_206C_206A_206F_200E_202A_206E_202E_202C_206F_206F_202B_200C_200D_206F_206A_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>(-1097438702), new object[1] { num7 });
|
||||
return;
|
||||
case 2:
|
||||
num = ((list.Count != 0) ? 406782412 : 406782414);
|
||||
break;
|
||||
case 1:
|
||||
{
|
||||
_202C_202A_202B_206B_202B_202D_206B_206D_202A_200D_202C_200F_200F_200B_202B_200E_200B_202D_200D_206A_200D_206C_202E_206E_202C_200D_200E_206B_200F_206E_206E_202C_200E_202E_206B_206D_200C_206B_200C_202B_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>(-155886281), new object[3]
|
||||
{
|
||||
list.Count,
|
||||
num7,
|
||||
_206F_206D_206C_206C_206E_206A_200B_200D_200E_206A_206C_202C_206B_202D_200F_206D_206B_206A_202C_200E_200F_200F_202C_202C_206F_206F_202A_200F_202D_206B_200B_200F_200F_206D_206B_200E_202B_200C_200F_200C_202E(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>(1467939024), (IEnumerable<string>)list)
|
||||
});
|
||||
int num11 = 0;
|
||||
using (List<string>.Enumerator enumerator = list.GetEnumerator())
|
||||
{
|
||||
num = 1772577375;
|
||||
while (true)
|
||||
{
|
||||
int num12 = num;
|
||||
num3 = 1772577374;
|
||||
num4 = num12;
|
||||
switch ((num4 | num3) - (num4 & num3))
|
||||
{
|
||||
case 4:
|
||||
_200E_202E_206F_200D_206A_200E_206B_202D_200D_200B_200D_206D_200C_200F_206A_200C_202E_202D_202C_206B_202D_200B_206D_202D_200E_206C_206A_206F_200E_202A_206E_202E_202C_206F_206F_202B_200C_200D_206F_206A_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>(-1020041796), new object[2] { current, eSetResult });
|
||||
num = 1772577375;
|
||||
break;
|
||||
case 3:
|
||||
current = enumerator.Current;
|
||||
eSetResult = _setComboState.InvokeFunc(_lease.Value, current, arg3: true, arg4: true);
|
||||
num = ((!eSetResult.IsSuccess()) ? 1772577370 : 1772577371);
|
||||
break;
|
||||
case 0:
|
||||
num = 1772577375;
|
||||
break;
|
||||
case 1:
|
||||
num = (enumerator.MoveNext() ? 1772577373 : 1772577372);
|
||||
break;
|
||||
case 5:
|
||||
{
|
||||
int num13 = num11;
|
||||
num3 = 1;
|
||||
num4 = num13;
|
||||
num11 = (num4 | num3) + (num4 & num3);
|
||||
num = 1772577375;
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
goto end_IL_01cd;
|
||||
}
|
||||
continue;
|
||||
end_IL_01cd:
|
||||
break;
|
||||
}
|
||||
}
|
||||
_202C_202A_202B_206B_202B_202D_206B_206D_202A_200D_202C_200F_200F_200B_202B_200E_200B_202D_200D_206A_200D_206C_202E_206E_202C_200D_200E_206B_200F_206E_206E_202C_200E_202E_206B_206D_200C_206B_200C_202B_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>(-1723018308), new object[3] { num11, list.Count, num7 });
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (IpcError ipcError)
|
||||
{
|
||||
_202C_202C_202C_202B_200E_202C_202B_202B_202D_202C_206F_206C_202C_206C_202E_206F_206C_202D_200F_200B_200D_202D_200E_206E_200D_206E_200E_206B_206D_202D_206C_206E_202D_200E_202C_200D_202D_202D_200D_200C_202E((ILogger)_logger, (Exception)ipcError, 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>(-290281876), new object[1] { num7 });
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
private void SetConfig(AutoRotationConfigOption configKey, object value)
|
||||
{
|
||||
int num = (_lease.HasValue ? 965536274 : 965536273);
|
||||
while (true)
|
||||
{
|
||||
int num2 = num;
|
||||
int num3 = 965536272;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
case 0:
|
||||
goto IL_0050;
|
||||
case 1:
|
||||
return;
|
||||
case 2:
|
||||
try
|
||||
{
|
||||
ESetResult eSetResult = _setAutoRotationConfigState.InvokeFunc(_lease.Value, configKey, value);
|
||||
num = (eSetResult.IsSuccess() ? (-646726898) : (-646726899));
|
||||
while (true)
|
||||
{
|
||||
int num7 = num;
|
||||
num3 = -646726897;
|
||||
num4 = num7;
|
||||
int num8 = num4 + num3;
|
||||
int num9 = num4 & num3;
|
||||
switch (num8 - (num9 + num9))
|
||||
{
|
||||
case 0:
|
||||
num = -646726899;
|
||||
break;
|
||||
case 2:
|
||||
_200E_202E_206F_200D_206A_200E_206B_202D_200D_200B_200D_206D_200C_200F_206A_200C_202E_202D_202C_206B_202D_200B_206D_202D_200E_206C_206A_206F_200E_202A_206E_202E_202C_206F_206F_202B_200C_200D_206F_206A_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>(1491997045), new object[3] { configKey, value, eSetResult });
|
||||
num = -646726898;
|
||||
break;
|
||||
case 1:
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (IpcError ipcError)
|
||||
{
|
||||
_202C_202C_202C_202B_200E_202C_202B_202B_202D_202C_206F_206C_202C_206C_202E_206F_206C_202D_200F_200B_200D_202D_200E_206E_200D_206E_200E_206B_206D_202D_206C_206E_202D_200E_202C_200D_202D_202D_200D_200C_202E((ILogger)_logger, (Exception)ipcError, 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>(-931599605), new object[2] { configKey, value });
|
||||
return;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
IL_0050:
|
||||
num = 965536273;
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
private void Callback(int reason, string additionalInfo)
|
||||
{
|
||||
_logger.LogWarning("WrathCombo callback: {Reason} ({Info})", reason, additionalInfo);
|
||||
_200E_202E_206F_200D_206A_200E_206B_202D_200D_200B_200D_206D_200C_200F_206A_200C_202E_202D_202C_206B_202D_200B_206D_202D_200E_206C_206A_206F_200E_202A_206E_202E_202C_206F_206F_202B_200C_200D_206F_206A_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>(-935286471), new object[2] { reason, additionalInfo });
|
||||
_lease = null;
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
Stop();
|
||||
_callback.UnregisterAction();
|
||||
_lease = null;
|
||||
_202C_206B_202E_206B_202D_200E_200F_206C_200E_206D_200C_200B_202B_202D_206E_206A_206C_206B_206F_206A_200D_202E_206D_206D_202C_200D_200E_206E_202C_202A_202B_200B_202B_202E_202B_206F_200D_200F_206F_202E((ICallGateProvider)_callback);
|
||||
}
|
||||
|
||||
void IDisposable.Dispose()
|
||||
{
|
||||
//ILSpy generated this explicit interface implementation from .override directive in Dispose
|
||||
this.Dispose();
|
||||
}
|
||||
|
||||
static void _202C_202A_202B_206B_202B_202D_206B_206D_202A_200D_202C_200F_200F_200B_202B_200E_200B_202D_200D_206A_200D_206C_202E_206E_202C_200D_200E_206B_200F_206E_206E_202C_200E_202E_206B_206D_200C_206B_200C_202B_202E(ILogger P_0, string P_1, object[] P_2)
|
||||
{
|
||||
P_0.LogDebug(P_1, P_2);
|
||||
}
|
||||
|
||||
static void _200C_200D_202C_206F_200B_206E_206F_200D_200E_206D_200E_202E_200C_200C_202D_206A_202D_206E_202D_206F_200F_200D_200D_202E_206B_206F_200C_206C_202E_200F_202E_200C_202D_202E_202E_200E_206B_206E_202B_202D_202E(ILogger P_0, string P_1, object[] P_2)
|
||||
{
|
||||
P_0.LogError(P_1, P_2);
|
||||
}
|
||||
|
||||
static void _206B_206A_206C_202C_200F_202D_206B_202C_206F_200D_200B_206A_206E_202E_200B_200F_200E_206C_200C_206B_200D_200D_206E_206F_202D_202B_206A_200D_206A_200F_202C_202C_202E_202E_206C_206B_202C_202C_202A_202D_202E(ILogger P_0, Exception P_1, string P_2, object[] P_3)
|
||||
{
|
||||
P_0.LogError(P_1, P_2, P_3);
|
||||
}
|
||||
|
||||
static void _202C_202C_202C_202B_200E_202C_202B_202B_202D_202C_206F_206C_202C_206C_202E_206F_206C_202D_200F_200B_200D_202D_200E_206E_200D_206E_200E_206B_206D_202D_206C_206E_202D_200E_202C_200D_202D_202D_200D_200C_202E(ILogger P_0, Exception P_1, string P_2, object[] P_3)
|
||||
{
|
||||
P_0.LogWarning(P_1, P_2, P_3);
|
||||
}
|
||||
|
||||
static IPlayerCharacter _200C_200E_200F_206E_202E_206F_206E_200B_206F_202E_202B_202C_206D_206F_202A_202D_200C_206A_200B_206A_206D_202E_206D_202E_206F_202B_206E_200B_202C_206F_200D_206D_206B_202A_206B_200D_206E_202B_202D_206F_202E(IObjectTable P_0)
|
||||
{
|
||||
return P_0.LocalPlayer;
|
||||
}
|
||||
|
||||
static RowRef<ClassJob> _200B_202E_206C_200D_202E_200B_202D_202C_200E_202B_202D_206F_202D_200D_206D_206E_206F_200E_206E_200B_200C_202A_206E_200C_206D_200F_206E_206B_200D_202D_206F_202B_206F_200C_206E_206E_206C_206A_202C_202A_202E(ICharacter P_0)
|
||||
{
|
||||
return P_0.ClassJob;
|
||||
}
|
||||
|
||||
static void _200E_202E_206F_200D_206A_200E_206B_202D_200D_200B_200D_206D_200C_200F_206A_200C_202E_202D_202C_206B_202D_200B_206D_202D_200E_206C_206A_206F_200E_202A_206E_202E_202C_206F_206F_202B_200C_200D_206F_206A_202E(ILogger P_0, string P_1, object[] P_2)
|
||||
{
|
||||
P_0.LogWarning(P_1, P_2);
|
||||
}
|
||||
|
||||
static string _206F_206D_206C_206C_206E_206A_200B_200D_200E_206A_206C_202C_206B_202D_200F_206D_206B_206A_202C_200E_200F_200F_202C_202C_206F_206F_202A_200F_202D_206B_200B_200F_200F_206D_206B_200E_202B_200C_200F_200C_202E(string P_0, IEnumerable<string> P_1)
|
||||
{
|
||||
return string.Join(P_0, P_1);
|
||||
}
|
||||
|
||||
static void _202C_206B_202E_206B_202D_200E_200F_206C_200E_206D_200C_200B_202B_202D_206E_206A_206C_206B_206F_206A_200D_202E_206D_206D_202C_200D_200E_206E_202C_202A_202B_200B_202B_202E_202B_206F_200D_200F_206F_202E(ICallGateProvider P_0)
|
||||
{
|
||||
P_0.UnregisterAction();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue