qstbak/LLib/LLib.GameData/EClassJobExtensions.cs
2026-08-17 20:27:25 +10:00

1259 lines
26 KiB
C#

using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using Dalamud.Plugin.Services;
using Lumina.Excel.Sheets;
namespace LLib.GameData;
public static class EClassJobExtensions
{
public static bool IsClass(this EClassJob classJob)
{
int num = ((classJob < EClassJob.Gladiator) ? (-1021997813) : (-1021997816));
bool flag = default(bool);
while (true)
{
int num2 = num;
int num3 = -1021997812;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 7:
flag = false;
num = -1021997809;
break;
case 4:
num = ((classJob <= EClassJob.Thaumaturge) ? (-1021997810) : (-1021997819));
break;
case 5:
num = ((classJob != EClassJob.Rogue) ? (-1021997813) : (-1021997810));
break;
case 8:
return true;
case 2:
flag = true;
num = -1021997809;
break;
case 3:
num = (flag ? (-1021997820) : (-1021997812));
break;
case 0:
num = (classJob.IsCrafter() ? (-1021997820) : (-1021997811));
break;
case 1:
return classJob.IsGatherer();
case 6:
num = -1021997816;
break;
case 9:
num = ((classJob == EClassJob.Arcanist) ? (-1021997810) : (-1021997815));
break;
}
}
}
public static bool HasBaseClass(this EClassJob classJob)
{
return classJob.GetBaseClass().HasValue;
}
public static EClassJob? GetBaseClass(this EClassJob classJob)
{
int num;
EClassJob? result = default(EClassJob?);
switch (classJob)
{
default:
num = 1515021;
goto IL_0044;
case EClassJob.Bard:
result = EClassJob.Archer;
num = 1515018;
goto IL_0044;
case EClassJob.Paladin:
goto IL_00ac;
case EClassJob.Dragoon:
goto IL_00be;
case EClassJob.BlackMage:
goto IL_00d0;
case EClassJob.Summoner:
goto IL_00e2;
case EClassJob.Arcanist:
case EClassJob.Rogue:
goto IL_00f5;
case EClassJob.Scholar:
goto IL_010a;
case EClassJob.Ninja:
goto IL_0128;
case EClassJob.Monk:
goto IL_013b;
case EClassJob.Warrior:
goto IL_0158;
case EClassJob.WhiteMage:
goto IL_016a;
IL_0044:
while (true)
{
int num2 = num;
int num3 = 1515022;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 1:
goto end_IL_0044;
case 4:
return result;
case 7:
goto IL_00ac;
case 10:
goto IL_00be;
case 0:
goto IL_00d0;
case 11:
goto IL_00e2;
case 8:
goto IL_00f5;
case 2:
goto IL_010a;
case 3:
num = 1515014;
break;
case 5:
goto IL_0128;
case 9:
goto IL_013b;
case 13:
num = 1515021;
break;
case 12:
goto IL_0158;
case 6:
goto IL_016a;
}
continue;
end_IL_0044:
break;
}
goto case EClassJob.Bard;
IL_016a:
result = EClassJob.Conjurer;
num = 1515018;
goto IL_0044;
IL_0158:
result = EClassJob.Marauder;
num = 1515018;
goto IL_0044;
IL_013b:
result = EClassJob.Pugilist;
num = 1515018;
goto IL_0044;
IL_0128:
result = EClassJob.Rogue;
num = 1515018;
goto IL_0044;
IL_010a:
result = EClassJob.Arcanist;
num = 1515018;
goto IL_0044;
IL_00f5:
result = null;
num = 1515018;
goto IL_0044;
IL_00e2:
result = EClassJob.Arcanist;
num = 1515018;
goto IL_0044;
IL_00d0:
result = EClassJob.Thaumaturge;
num = 1515018;
goto IL_0044;
IL_00be:
result = EClassJob.Lancer;
num = 1515018;
goto IL_0044;
IL_00ac:
result = EClassJob.Gladiator;
num = 1515018;
goto IL_0044;
}
}
public static EClassJob AsJob(this EClassJob classJob)
{
int num;
EClassJob result = default(EClassJob);
switch (classJob)
{
default:
num = 2104859750;
goto IL_002f;
case EClassJob.Archer:
result = EClassJob.Bard;
num = 2104859754;
goto IL_002f;
case EClassJob.Marauder:
goto IL_0094;
case EClassJob.Lancer:
goto IL_00a2;
case EClassJob.Conjurer:
goto IL_00d4;
case EClassJob.Pugilist:
goto IL_00e2;
case EClassJob.Gladiator:
goto IL_00f0;
case EClassJob.Thaumaturge:
goto IL_0155;
IL_002f:
while (true)
{
int num2 = num;
int num3 = 2104859745;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 11:
return result;
case 4:
goto end_IL_002f;
case 14:
goto IL_0094;
case 9:
goto IL_00a2;
case 10:
num = 2104859757;
break;
case 1:
result = EClassJob.Ninja;
num = 2104859754;
break;
case 13:
num = 2104859750;
break;
case 5:
goto IL_00d4;
case 0:
goto IL_00e2;
case 3:
goto IL_00f0;
case 7:
goto IL_00fe;
case 6:
goto IL_011c;
case 2:
result = EClassJob.Summoner;
num = 2104859754;
break;
case 12:
result = classJob;
num = 2104859754;
break;
case 8:
goto IL_0155;
}
continue;
IL_011c:
num = ((classJob == EClassJob.Rogue) ? 2104859744 : 2104859755);
continue;
IL_00fe:
num = ((classJob == EClassJob.Arcanist) ? 2104859747 : 2104859751);
continue;
end_IL_002f:
break;
}
goto case EClassJob.Archer;
IL_0155:
result = EClassJob.BlackMage;
num = 2104859754;
goto IL_002f;
IL_00f0:
result = EClassJob.Paladin;
num = 2104859754;
goto IL_002f;
IL_00e2:
result = EClassJob.Monk;
num = 2104859754;
goto IL_002f;
IL_00d4:
result = EClassJob.WhiteMage;
num = 2104859754;
goto IL_002f;
IL_00a2:
result = EClassJob.Dragoon;
num = 2104859754;
goto IL_002f;
IL_0094:
result = EClassJob.Warrior;
num = 2104859754;
goto IL_002f;
}
}
public static bool IsTank(this EClassJob classJob)
{
int num = ((classJob > EClassJob.Paladin) ? 2088962462 : 2088962449);
bool result = default(bool);
while (true)
{
int num2 = num;
int num3 = 2088962455;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 7:
num = 2088962449;
break;
case 6:
num = ((classJob == EClassJob.Gladiator) ? 2088962452 : 2088962461);
break;
case 9:
num = ((classJob == EClassJob.Warrior) ? 2088962452 : 2088962451);
break;
case 2:
result = false;
num = 2088962463;
break;
case 5:
num = 2088962453;
break;
case 3:
result = true;
num = 2088962463;
break;
case 4:
num = ((classJob == EClassJob.DarkKnight) ? 2088962452 : 2088962455);
break;
case 10:
num = ((classJob == EClassJob.Marauder) ? 2088962452 : 2088962454);
break;
case 8:
return result;
case 0:
num = ((classJob != EClassJob.Gunbreaker) ? 2088962453 : 2088962452);
break;
case 1:
num = ((classJob == EClassJob.Paladin) ? 2088962452 : 2088962450);
break;
}
}
}
public static bool IsHealer(this EClassJob classJob)
{
int num = ((classJob > EClassJob.WhiteMage) ? (-693082528) : (-693082517));
bool result = default(bool);
while (true)
{
int num2 = num;
int num3 = -693082519;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 7:
num = ((classJob == EClassJob.Astrologian) ? (-693082515) : (-693082520));
break;
case 3:
result = false;
num = -693082519;
break;
case 8:
num = ((classJob == EClassJob.WhiteMage) ? (-693082515) : (-693082513));
break;
case 2:
num = ((classJob == EClassJob.Conjurer) ? (-693082515) : (-693082527));
break;
case 0:
return result;
case 1:
num = ((classJob != EClassJob.Sage) ? (-693082518) : (-693082515));
break;
case 5:
num = -693082517;
break;
case 6:
num = -693082518;
break;
case 4:
result = true;
num = -693082519;
break;
case 9:
num = ((classJob == EClassJob.Scholar) ? (-693082515) : (-693082514));
break;
}
}
}
public static bool IsMelee(this EClassJob classJob)
{
int num = ((classJob > EClassJob.Monk) ? 1922031772 : 1922031771);
bool result = default(bool);
while (true)
{
int num2 = num;
int num3 = 1922031765;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 3:
num = ((classJob == EClassJob.Samurai) ? 1922031774 : 1922031769);
break;
case 11:
result = true;
num = 1922031767;
break;
case 4:
num = ((classJob == EClassJob.Dragoon) ? 1922031774 : 1922031765);
break;
case 13:
num = ((classJob == EClassJob.Monk) ? 1922031774 : 1922031762);
break;
case 7:
num = 1922031775;
break;
case 9:
num = ((classJob > EClassJob.Ninja) ? 1922031766 : 1922031761);
break;
case 6:
num = 1922031771;
break;
case 5:
num = 1922031775;
break;
case 1:
num = ((classJob == EClassJob.Lancer) ? 1922031774 : 1922031768);
break;
case 8:
num = 1922031775;
break;
case 12:
switch (classJob)
{
case EClassJob.Reaper:
case EClassJob.Viper:
case EClassJob.Beastmaster:
break;
default:
goto IL_015e;
case EClassJob.Sage:
case EClassJob.Pictomancer:
goto IL_016b;
}
goto case 11;
case 2:
return result;
case 10:
goto IL_016b;
case 0:
num = ((classJob - 29 <= EClassJob.Gladiator) ? 1922031774 : 1922031773);
break;
case 14:
{
num = ((classJob == EClassJob.Pugilist) ? 1922031774 : 1922031764);
break;
}
IL_016b:
result = false;
num = 1922031767;
break;
IL_015e:
num = 1922031760;
break;
}
}
}
public static bool IsPhysicalRanged(this EClassJob classJob)
{
int num = ((classJob > EClassJob.Bard) ? 361445859 : 361445862);
bool result = default(bool);
while (true)
{
int num2 = num;
int num3 = 361445858;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 3:
num = 361445862;
break;
case 7:
num = ((classJob != EClassJob.Dancer) ? 361445856 : 361445863);
break;
case 6:
num = ((classJob == EClassJob.Bard) ? 361445863 : 361445858);
break;
case 2:
result = false;
num = 361445866;
break;
case 1:
num = ((classJob == EClassJob.Machinist) ? 361445863 : 361445861);
break;
case 5:
result = true;
num = 361445866;
break;
case 0:
num = 361445856;
break;
case 4:
num = ((classJob == EClassJob.Archer) ? 361445863 : 361445860);
break;
case 8:
return result;
}
}
}
public static bool IsCaster(this EClassJob classJob)
{
int num = ((classJob > EClassJob.Summoner) ? (-152910150) : (-152910151));
bool result = default(bool);
while (true)
{
int num2 = num;
int num3 = -152910147;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 5:
num = ((classJob - 25 <= EClassJob.Pugilist) ? (-152910149) : (-152910145));
break;
case 7:
num = ((classJob - 35 <= EClassJob.Gladiator) ? (-152910149) : (-152910148));
break;
case 3:
return result;
case 6:
result = true;
num = -152910146;
break;
case 2:
num = -152910155;
break;
case 8:
result = false;
num = -152910146;
break;
case 1:
num = ((classJob != EClassJob.Pictomancer) ? (-152910155) : (-152910149));
break;
case 4:
num = ((classJob == EClassJob.Thaumaturge) ? (-152910149) : (-152910152));
break;
case 0:
num = -152910151;
break;
}
}
}
public static bool IsDps(this EClassJob classJob)
{
int num = (classJob.IsMelee() ? 652988313 : 652988314);
while (true)
{
int num2 = num;
int num3 = 652988315;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
return true;
case 1:
num = (classJob.IsPhysicalRanged() ? 652988313 : 652988315);
break;
case 3:
num = 652988314;
break;
case 0:
return classJob.IsCaster();
}
}
}
public static bool DealsPhysicalDamage(this EClassJob classJob)
{
int num = (classJob.IsTank() ? (-1539913949) : (-1539913950));
while (true)
{
int num2 = num;
int num3 = -1539913951;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
num = -1539913950;
break;
case 2:
return true;
case 1:
return classJob.IsPhysicalRanged();
case 3:
num = (classJob.IsMelee() ? (-1539913949) : (-1539913952));
break;
}
}
}
public static bool DealsMagicDamage(this EClassJob classJob)
{
int num = (classJob.IsHealer() ? (-686525847) : (-686525846));
while (true)
{
int num2 = num;
int num3 = -686525845;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
return true;
case 1:
return classJob.IsCaster();
case 0:
goto IL_004f;
}
continue;
IL_004f:
num = -686525846;
}
}
public static bool IsCrafter(this EClassJob classJob)
{
int num = ((classJob < EClassJob.Carpenter) ? 1685178901 : 1685178902);
while (true)
{
int num2 = num;
int num3 = 1685178903;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto IL_0042;
case 1:
return classJob <= EClassJob.Culinarian;
case 2:
return false;
}
continue;
IL_0042:
num = 1685178902;
}
}
public static bool IsGatherer(this EClassJob classJob)
{
int num = ((classJob < EClassJob.Miner) ? (-1618937167) : (-1618937166));
while (true)
{
int num2 = num;
int num3 = -1618937168;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto IL_0043;
case 1:
return false;
case 2:
return classJob <= EClassJob.Fisher;
}
continue;
IL_0043:
num = -1618937166;
}
}
public static bool IsLimitedJob(this EClassJob classJob)
{
int num = ((classJob == EClassJob.BlueMage) ? 421326945 : 421326949);
bool result = default(bool);
while (true)
{
int num2 = num;
int num3 = 421326945;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = 421326949;
break;
case 1:
return result;
case 0:
result = true;
num = 421326944;
break;
case 4:
num = ((classJob != EClassJob.Beastmaster) ? 421326946 : 421326945);
break;
case 3:
result = false;
num = 421326944;
break;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
public static string ToFriendlyString(this EClassJob classJob)
{
int num = ((classJob == EClassJob.WhiteMage) ? 1982513328 : 1982513340);
string result = default(string);
while (true)
{
int num2 = num;
int num3 = 1982513334;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
default:
continue;
case 8:
num = 1982513340;
continue;
case 0:
result = global::_003CModule_003E._202E_202C_206D_206B_202B_202D_206D_202E_206F_202E_202A_206A_206A_202B_206A_202D_202C_206C_206B_202C_206E_202B_200E_206E_206A_206C_200D_200D_200F_200B_202C_200B_200E_206F_202C_200F_202D_202A_206E_202B_202E<string>(1101047022);
num = 1982513330;
continue;
case 6:
result = global::_003CModule_003E._202E_202C_206D_206B_202B_202D_206D_202E_206F_202E_202A_206A_206A_202B_206A_202D_202C_206C_206B_202C_206E_202B_200E_206E_206A_206C_200D_200D_200F_200B_202C_200B_200E_206F_202C_200F_202D_202A_206E_202B_202E<string>(-1414195190);
num = 1982513330;
continue;
case 5:
result = global::_003CModule_003E._206A_202C_200C_206F_202A_200C_200F_206F_202B_202B_200D_206F_206D_200E_206A_206B_202A_200F_200B_206C_202B_202A_202B_206C_200F_206C_202C_202C_200C_206C_206F_200C_200B_202D_200E_202A_202A_206B_206B_200F_202E<string>(-1506629366);
num = 1982513330;
continue;
case 2:
num = 1982513329;
continue;
case 3:
goto IL_00bb;
case 10:
num = ((classJob == EClassJob.BlackMage) ? 1982513331 : 1982513343);
continue;
case 4:
return result;
case 1:
goto IL_00f1;
case 9:
switch (classJob)
{
case EClassJob.RedMage:
break;
case EClassJob.BlueMage:
goto IL_00bb;
case EClassJob.DarkKnight:
goto IL_00f1;
default:
goto IL_0124;
case EClassJob.Astrologian:
case EClassJob.Samurai:
goto end_IL_002d;
}
goto case 0;
case 7:
break;
IL_0124:
num = 1982513332;
continue;
IL_00f1:
result = global::_003CModule_003E._206A_206D_202C_206E_206D_206E_202A_200F_200D_206A_200F_206C_202C_202D_206D_206A_200D_200F_206A_206C_202C_206D_206E_200F_200F_200C_206B_200B_206B_206E_202B_206B_200E_200E_200B_206F_200F_202E_200C_200C_202E<string>(2050012990);
num = 1982513330;
continue;
IL_00bb:
result = global::_003CModule_003E._202E_202C_206D_206B_202B_202D_206D_202E_206F_202E_202A_206A_206A_202B_206A_202D_202C_206C_206B_202C_206E_202B_200E_206E_206A_206C_200D_200D_200F_200B_202C_200B_200E_206F_202C_200F_202D_202A_206E_202B_202E<string>(656115751);
num = 1982513330;
continue;
end_IL_002d:
break;
}
result = classJob.ToString();
num = 1982513330;
}
}
public static bool IsInCategory(this EClassJob classJob, ClassJobCategory category)
{
int num;
bool result = default(bool);
switch (classJob)
{
default:
num = -1564064857;
goto IL_00c1;
case EClassJob.Dragoon:
result = category.DRG;
num = -1564064876;
goto IL_00c1;
case EClassJob.Samurai:
goto IL_01af;
case EClassJob.Miner:
goto IL_01c2;
case EClassJob.Beastmaster:
goto IL_01d5;
case EClassJob.Carpenter:
goto IL_01e8;
case EClassJob.Astrologian:
goto IL_01fb;
case EClassJob.Fisher:
goto IL_020e;
case EClassJob.Sage:
goto IL_022c;
case EClassJob.Goldsmith:
goto IL_023f;
case EClassJob.Thaumaturge:
goto IL_0252;
case EClassJob.WhiteMage:
goto IL_0265;
case EClassJob.Lancer:
goto IL_0278;
case EClassJob.Leatherworker:
goto IL_028b;
case EClassJob.Pictomancer:
goto IL_029e;
case EClassJob.Botanist:
goto IL_02b1;
case EClassJob.Pugilist:
goto IL_02c4;
case EClassJob.Reaper:
goto IL_02d7;
case EClassJob.Viper:
goto IL_02ea;
case EClassJob.Paladin:
goto IL_02fd;
case EClassJob.Weaver:
goto IL_0310;
case EClassJob.Rogue:
goto IL_0323;
case EClassJob.Gunbreaker:
goto IL_0336;
case EClassJob.Culinarian:
goto IL_0354;
case EClassJob.Arcanist:
goto IL_0367;
case EClassJob.Blacksmith:
goto IL_037a;
case EClassJob.Summoner:
goto IL_038d;
case EClassJob.Marauder:
goto IL_03a0;
case EClassJob.BlueMage:
goto IL_03b3;
case EClassJob.Adventurer:
goto IL_03c6;
case EClassJob.Ninja:
goto IL_03d9;
case EClassJob.Monk:
goto IL_03ec;
case EClassJob.Archer:
goto IL_03ff;
case EClassJob.Alchemist:
goto IL_0412;
case EClassJob.Bard:
goto IL_0425;
case EClassJob.BlackMage:
goto IL_043a;
case EClassJob.Scholar:
goto IL_044d;
case EClassJob.Conjurer:
goto IL_0460;
case EClassJob.Machinist:
goto IL_0473;
case EClassJob.Gladiator:
goto IL_0486;
case EClassJob.Warrior:
goto IL_0499;
case EClassJob.Armorer:
goto IL_04ac;
case EClassJob.DarkKnight:
goto IL_04bf;
case EClassJob.Dancer:
goto IL_04d2;
case EClassJob.RedMage:
goto IL_04e5;
IL_00c1:
while (true)
{
int num2 = num;
int num3 = -1564064836;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 31:
goto end_IL_00c1;
case 5:
goto IL_01af;
case 4:
goto IL_01c2;
case 45:
goto IL_01d5;
case 14:
goto IL_01e8;
case 34:
goto IL_01fb;
case 18:
goto IL_020e;
case 9:
num = -1564064857;
break;
case 6:
goto IL_022c;
case 41:
goto IL_023f;
case 11:
goto IL_0252;
case 21:
goto IL_0265;
case 12:
goto IL_0278;
case 39:
goto IL_028b;
case 16:
goto IL_029e;
case 25:
goto IL_02b1;
case 44:
goto IL_02c4;
case 1:
goto IL_02d7;
case 2:
goto IL_02ea;
case 47:
goto IL_02fd;
case 37:
goto IL_0310;
case 38:
goto IL_0323;
case 36:
goto IL_0336;
case 27:
num = -1564064867;
break;
case 46:
goto IL_0354;
case 20:
goto IL_0367;
case 30:
goto IL_037a;
case 23:
goto IL_038d;
case 17:
goto IL_03a0;
case 29:
goto IL_03b3;
case 10:
goto IL_03c6;
case 3:
goto IL_03d9;
case 35:
goto IL_03ec;
case 26:
goto IL_03ff;
case 13:
goto IL_0412;
case 7:
goto IL_0425;
case 40:
return result;
case 15:
goto IL_043a;
case 0:
goto IL_044d;
case 43:
goto IL_0460;
case 42:
goto IL_0473;
case 8:
goto IL_0486;
case 28:
goto IL_0499;
case 22:
goto IL_04ac;
case 32:
goto IL_04bf;
case 19:
goto IL_04d2;
case 24:
goto IL_04e5;
case 33:
result = false;
num = -1564064876;
break;
}
continue;
end_IL_00c1:
break;
}
goto case EClassJob.Dragoon;
IL_04e5:
result = category.RDM;
num = -1564064876;
goto IL_00c1;
IL_04d2:
result = category.DNC;
num = -1564064876;
goto IL_00c1;
IL_04bf:
result = category.DRK;
num = -1564064876;
goto IL_00c1;
IL_04ac:
result = category.ARM;
num = -1564064876;
goto IL_00c1;
IL_0499:
result = category.WAR;
num = -1564064876;
goto IL_00c1;
IL_0486:
result = category.GLA;
num = -1564064876;
goto IL_00c1;
IL_0473:
result = category.MCH;
num = -1564064876;
goto IL_00c1;
IL_0460:
result = category.CNJ;
num = -1564064876;
goto IL_00c1;
IL_044d:
result = category.SCH;
num = -1564064876;
goto IL_00c1;
IL_043a:
result = category.BLM;
num = -1564064876;
goto IL_00c1;
IL_0425:
result = category.BRD;
num = -1564064876;
goto IL_00c1;
IL_0412:
result = category.ALC;
num = -1564064876;
goto IL_00c1;
IL_03ff:
result = category.ARC;
num = -1564064876;
goto IL_00c1;
IL_03ec:
result = category.MNK;
num = -1564064876;
goto IL_00c1;
IL_03d9:
result = category.NIN;
num = -1564064876;
goto IL_00c1;
IL_03c6:
result = category.ADV;
num = -1564064876;
goto IL_00c1;
IL_03b3:
result = category.BLU;
num = -1564064876;
goto IL_00c1;
IL_03a0:
result = category.MRD;
num = -1564064876;
goto IL_00c1;
IL_038d:
result = category.SMN;
num = -1564064876;
goto IL_00c1;
IL_037a:
result = category.BSM;
num = -1564064876;
goto IL_00c1;
IL_0367:
result = category.ACN;
num = -1564064876;
goto IL_00c1;
IL_0354:
result = category.CUL;
num = -1564064876;
goto IL_00c1;
IL_0336:
result = category.GNB;
num = -1564064876;
goto IL_00c1;
IL_0323:
result = category.ROG;
num = -1564064876;
goto IL_00c1;
IL_0310:
result = category.WVR;
num = -1564064876;
goto IL_00c1;
IL_02fd:
result = category.PLD;
num = -1564064876;
goto IL_00c1;
IL_02ea:
result = category.VPR;
num = -1564064876;
goto IL_00c1;
IL_02d7:
result = category.RPR;
num = -1564064876;
goto IL_00c1;
IL_02c4:
result = category.PGL;
num = -1564064876;
goto IL_00c1;
IL_02b1:
result = category.BTN;
num = -1564064876;
goto IL_00c1;
IL_029e:
result = category.PCT;
num = -1564064876;
goto IL_00c1;
IL_028b:
result = category.LTW;
num = -1564064876;
goto IL_00c1;
IL_0278:
result = category.LNC;
num = -1564064876;
goto IL_00c1;
IL_0265:
result = category.WHM;
num = -1564064876;
goto IL_00c1;
IL_0252:
result = category.THM;
num = -1564064876;
goto IL_00c1;
IL_023f:
result = category.GSM;
num = -1564064876;
goto IL_00c1;
IL_022c:
result = category.SGE;
num = -1564064876;
goto IL_00c1;
IL_020e:
result = category.FSH;
num = -1564064876;
goto IL_00c1;
IL_01fb:
result = category.AST;
num = -1564064876;
goto IL_00c1;
IL_01e8:
result = category.CRP;
num = -1564064876;
goto IL_00c1;
IL_01d5:
result = category.Unknown0;
num = -1564064876;
goto IL_00c1;
IL_01c2:
result = category.MIN;
num = -1564064876;
goto IL_00c1;
IL_01af:
result = category.SAM;
num = -1564064876;
goto IL_00c1;
}
}
public static int GetLevel(this EClassJob classJob, IDataManager dataManager)
{
ClassJob? rowOrDefault = dataManager.GetExcelSheet<ClassJob>().GetRowOrDefault((uint)classJob);
int num = ((!rowOrDefault.HasValue) ? (-2126726363) : (-2126726364));
while (true)
{
int num2 = num;
int num3 = -2126726361;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
return 0;
case 3:
num = ((rowOrDefault.Value.ExpArrayIndex >= 0) ? (-2126726362) : (-2126726363));
break;
case 1:
return PlayerStateHelper.GetClassJobLevel(rowOrDefault.Value.ExpArrayIndex);
case 0:
num = -2126726364;
break;
}
}
}
public static int GetExperience(this EClassJob classJob, IDataManager dataManager)
{
ClassJob? rowOrDefault = dataManager.GetExcelSheet<ClassJob>().GetRowOrDefault((uint)classJob);
int num = ((!rowOrDefault.HasValue) ? 638644957 : 638644959);
while (true)
{
int num2 = num;
int num3 = 638644958;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
num = 638644959;
break;
case 0:
return PlayerStateHelper.GetClassJobExperience(rowOrDefault.Value.ExpArrayIndex);
case 3:
return 0;
case 1:
num = ((rowOrDefault.Value.ExpArrayIndex >= 0) ? 638644958 : 638644957);
break;
}
}
}
public static List<Action> GetActions(this EClassJob classJob, IDataManager dataManager)
{
return (from a in dataManager.GetExcelSheet<Action>().Where(delegate(Action a)
{
int num = ((a.ClassJob.RowId != (uint)classJob) ? 783603201 : 783603202);
while (true)
{
int num2 = num;
int num3 = 783603203;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
return false;
case 1:
return a.ClassJobLevel > 0;
case 0:
goto IL_0064;
}
continue;
IL_0064:
num = 783603202;
}
})
orderby a.ClassJobLevel
select a).ToList();
}
}