Move EClassJob to LLib

master
Liza 2024-08-05 06:48:36 +02:00
parent 1845ebf701
commit 3a8f9b8f66
Signed by: liza
GPG Key ID: 7199F8D727D55F67
11 changed files with 10 additions and 118 deletions

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using Gearsetter.GameData;
using Gearsetter.Model;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
using Xunit;

View File

@ -1,117 +0,0 @@
namespace Gearsetter.GameData;
internal enum EClassJob : uint
{
Adventurer = 0,
Gladiator = 1,
Pugilist = 2,
Marauder = 3,
Lancer = 4,
Archer = 5,
Conjurer = 6,
Thaumaturge = 7,
Carpenter = 8,
Blacksmith = 9,
Armorer = 10,
Goldsmith = 11,
Leatherworker = 12,
Weaver = 13,
Alchemist = 14,
Culinarian = 15,
Miner = 16,
Botanist = 17,
Fisher = 18,
Paladin = 19,
Monk = 20,
Warrior = 21,
Dragoon = 22,
Bard = 23,
WhiteMage = 24,
BlackMage = 25,
Arcanist = 26,
Summoner = 27,
Scholar = 28,
Rogue = 29,
Ninja = 30,
Machinist = 31,
DarkKnight = 32,
Astrologian = 33,
Samurai = 34,
RedMage = 35,
BlueMage = 36,
Gunbreaker = 37,
Dancer = 38,
Reaper = 39,
Sage = 40,
Viper = 41,
Pictomancer = 42,
}
internal static class EClassJobExtensions
{
public static EClassJob AsJob(this EClassJob classJob) => classJob switch
{
EClassJob.Gladiator => EClassJob.Paladin,
EClassJob.Marauder => EClassJob.Warrior,
EClassJob.Pugilist => EClassJob.Monk,
EClassJob.Lancer => EClassJob.Dragoon,
EClassJob.Rogue => EClassJob.Ninja,
EClassJob.Archer => EClassJob.Bard,
EClassJob.Conjurer => EClassJob.WhiteMage,
EClassJob.Thaumaturge => EClassJob.BlackMage,
EClassJob.Arcanist => EClassJob.Summoner,
_ => classJob,
};
public static bool IsTank(this EClassJob classJob) =>
classJob is EClassJob.Gladiator
or EClassJob.Paladin
or EClassJob.Marauder
or EClassJob.Warrior
or EClassJob.DarkKnight
or EClassJob.Gunbreaker;
public static bool IsHealer(this EClassJob classJob) =>
classJob is EClassJob.Conjurer
or EClassJob.WhiteMage
or EClassJob.Scholar
or EClassJob.Astrologian
or EClassJob.Sage;
public static bool IsMelee(this EClassJob classJob) =>
classJob is EClassJob.Pugilist
or EClassJob.Monk
or EClassJob.Lancer
or EClassJob.Dragoon
or EClassJob.Rogue
or EClassJob.Ninja
or EClassJob.Samurai
or EClassJob.Reaper
or EClassJob.Viper;
public static bool IsPhysicalRanged(this EClassJob classJob) =>
classJob is EClassJob.Archer
or EClassJob.Bard
or EClassJob.Machinist
or EClassJob.Dancer;
public static bool IsCaster(this EClassJob classJob) =>
classJob is EClassJob.Thaumaturge
or EClassJob.BlackMage
or EClassJob.Arcanist
or EClassJob.Summoner
or EClassJob.RedMage
or EClassJob.BlueMage
or EClassJob.Pictomancer;
public static bool DealsPhysicalDamage(this EClassJob classJob) =>
classJob.IsTank() || classJob.IsMelee() || classJob.IsPhysicalRanged();
public static bool DealsMagicDamage(this EClassJob classJob) =>
classJob.IsHealer() || classJob.IsCaster();
public static bool IsCrafter(this EClassJob classJob) =>
classJob is >= EClassJob.Carpenter and <= EClassJob.Culinarian;
public static bool IsGatherer(this EClassJob classJob) => classJob is >= EClassJob.Miner and <= EClassJob.Fisher;
}

View File

@ -6,6 +6,7 @@ using Dalamud.Game;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Client.Game;
using Gearsetter.Model;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
namespace Gearsetter.GameData;

View File

@ -15,6 +15,7 @@ using FFXIVClientStructs.FFXIV.Client.UI.Misc;
using Gearsetter.GameData;
using Gearsetter.Model;
using Gearsetter.Windows;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
using GrandCompany = FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany;
using InventoryItem = FFXIVClientStructs.FFXIV.Client.Game.InventoryItem;

View File

@ -1,4 +1,5 @@
using Gearsetter.GameData;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
namespace Gearsetter.Model;

View File

@ -1,4 +1,5 @@
using Gearsetter.GameData;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
namespace Gearsetter.Model;

View File

@ -2,6 +2,7 @@
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Client.UI.Misc;
using Gearsetter.GameData;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
namespace Gearsetter.Model;

View File

@ -1,4 +1,5 @@
using Gearsetter.GameData;
using LLib.GameData;
using Lumina.Excel.GeneratedSheets;
namespace Gearsetter.Model;

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using Gearsetter.GameData;
using LLib.GameData;
namespace Gearsetter.Model;

View File

@ -10,6 +10,7 @@ using Dalamud.Plugin.Services;
using Gearsetter.GameData;
using Gearsetter.Model;
using ImGuiNET;
using LLib.GameData;
using LLib.ImGui;
namespace Gearsetter.Windows;

2
LLib

@ -1 +1 @@
Subproject commit 7027d291efbbff6a55944dd521d3907210ddecbe
Subproject commit 9db9f95b8cd3f36262b5b4b14f12b7331d3c7279