mirror of
https://github.com/xivdev/Penumbra.git
synced 2025-12-13 12:14:17 +01:00
Add equipment swaps and writing to option.
This commit is contained in:
parent
33b4905ae2
commit
ab53f17a7e
9 changed files with 723 additions and 526 deletions
|
|
@ -50,160 +50,4 @@ public enum WeaponCategory : byte
|
|||
Dancer = 107,
|
||||
Reaper = 108,
|
||||
Sage = 109,
|
||||
}
|
||||
|
||||
public static class WeaponCategoryExtensions
|
||||
{
|
||||
public static WeaponCategory AllowsOffHand( this WeaponCategory category )
|
||||
=> category switch
|
||||
{
|
||||
WeaponCategory.Pugilist => WeaponCategory.Pugilist,
|
||||
WeaponCategory.Gladiator => WeaponCategory.Shield,
|
||||
WeaponCategory.Marauder => WeaponCategory.Unknown,
|
||||
WeaponCategory.Archer => WeaponCategory.Unknown,
|
||||
WeaponCategory.Lancer => WeaponCategory.Unknown,
|
||||
WeaponCategory.Thaumaturge1 => WeaponCategory.Shield,
|
||||
WeaponCategory.Thaumaturge2 => WeaponCategory.Unknown,
|
||||
WeaponCategory.Conjurer1 => WeaponCategory.Shield,
|
||||
WeaponCategory.Conjurer2 => WeaponCategory.Unknown,
|
||||
WeaponCategory.Arcanist => WeaponCategory.Unknown,
|
||||
WeaponCategory.Shield => WeaponCategory.Unknown,
|
||||
WeaponCategory.CarpenterMain => WeaponCategory.CarpenterOff,
|
||||
WeaponCategory.CarpenterOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.BlacksmithMain => WeaponCategory.BlacksmithOff,
|
||||
WeaponCategory.BlacksmithOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.ArmorerMain => WeaponCategory.ArmorerOff,
|
||||
WeaponCategory.ArmorerOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.GoldsmithMain => WeaponCategory.GoldsmithOff,
|
||||
WeaponCategory.GoldsmithOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.LeatherworkerMain => WeaponCategory.LeatherworkerOff,
|
||||
WeaponCategory.LeatherworkerOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.WeaverMain => WeaponCategory.WeaverOff,
|
||||
WeaponCategory.WeaverOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.AlchemistMain => WeaponCategory.AlchemistOff,
|
||||
WeaponCategory.AlchemistOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.CulinarianMain => WeaponCategory.CulinarianOff,
|
||||
WeaponCategory.CulinarianOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.MinerMain => WeaponCategory.MinerOff,
|
||||
WeaponCategory.MinerOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.BotanistMain => WeaponCategory.BotanistOff,
|
||||
WeaponCategory.BotanistOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.FisherMain => WeaponCategory.FisherOff,
|
||||
WeaponCategory.Rogue => WeaponCategory.Rogue,
|
||||
WeaponCategory.DarkKnight => WeaponCategory.Unknown,
|
||||
WeaponCategory.Machinist => WeaponCategory.Machinist,
|
||||
WeaponCategory.Astrologian => WeaponCategory.Astrologian,
|
||||
WeaponCategory.Samurai => WeaponCategory.Unknown,
|
||||
WeaponCategory.RedMage => WeaponCategory.RedMage,
|
||||
WeaponCategory.Scholar => WeaponCategory.Unknown,
|
||||
WeaponCategory.FisherOff => WeaponCategory.Unknown,
|
||||
WeaponCategory.BlueMage => WeaponCategory.Unknown,
|
||||
WeaponCategory.Gunbreaker => WeaponCategory.Unknown,
|
||||
WeaponCategory.Dancer => WeaponCategory.Dancer,
|
||||
WeaponCategory.Reaper => WeaponCategory.Unknown,
|
||||
WeaponCategory.Sage => WeaponCategory.Unknown,
|
||||
_ => WeaponCategory.Unknown,
|
||||
};
|
||||
|
||||
public static EquipSlot ToSlot( this WeaponCategory category )
|
||||
=> category switch
|
||||
{
|
||||
WeaponCategory.Pugilist => EquipSlot.MainHand,
|
||||
WeaponCategory.Gladiator => EquipSlot.MainHand,
|
||||
WeaponCategory.Marauder => EquipSlot.MainHand,
|
||||
WeaponCategory.Archer => EquipSlot.MainHand,
|
||||
WeaponCategory.Lancer => EquipSlot.MainHand,
|
||||
WeaponCategory.Thaumaturge1 => EquipSlot.MainHand,
|
||||
WeaponCategory.Thaumaturge2 => EquipSlot.MainHand,
|
||||
WeaponCategory.Conjurer1 => EquipSlot.MainHand,
|
||||
WeaponCategory.Conjurer2 => EquipSlot.MainHand,
|
||||
WeaponCategory.Arcanist => EquipSlot.MainHand,
|
||||
WeaponCategory.Shield => EquipSlot.OffHand,
|
||||
WeaponCategory.CarpenterMain => EquipSlot.MainHand,
|
||||
WeaponCategory.CarpenterOff => EquipSlot.OffHand,
|
||||
WeaponCategory.BlacksmithMain => EquipSlot.MainHand,
|
||||
WeaponCategory.BlacksmithOff => EquipSlot.OffHand,
|
||||
WeaponCategory.ArmorerMain => EquipSlot.MainHand,
|
||||
WeaponCategory.ArmorerOff => EquipSlot.OffHand,
|
||||
WeaponCategory.GoldsmithMain => EquipSlot.MainHand,
|
||||
WeaponCategory.GoldsmithOff => EquipSlot.OffHand,
|
||||
WeaponCategory.LeatherworkerMain => EquipSlot.MainHand,
|
||||
WeaponCategory.LeatherworkerOff => EquipSlot.OffHand,
|
||||
WeaponCategory.WeaverMain => EquipSlot.MainHand,
|
||||
WeaponCategory.WeaverOff => EquipSlot.OffHand,
|
||||
WeaponCategory.AlchemistMain => EquipSlot.MainHand,
|
||||
WeaponCategory.AlchemistOff => EquipSlot.OffHand,
|
||||
WeaponCategory.CulinarianMain => EquipSlot.MainHand,
|
||||
WeaponCategory.CulinarianOff => EquipSlot.OffHand,
|
||||
WeaponCategory.MinerMain => EquipSlot.MainHand,
|
||||
WeaponCategory.MinerOff => EquipSlot.OffHand,
|
||||
WeaponCategory.BotanistMain => EquipSlot.MainHand,
|
||||
WeaponCategory.BotanistOff => EquipSlot.OffHand,
|
||||
WeaponCategory.FisherMain => EquipSlot.MainHand,
|
||||
WeaponCategory.Rogue => EquipSlot.MainHand,
|
||||
WeaponCategory.DarkKnight => EquipSlot.MainHand,
|
||||
WeaponCategory.Machinist => EquipSlot.MainHand,
|
||||
WeaponCategory.Astrologian => EquipSlot.MainHand,
|
||||
WeaponCategory.Samurai => EquipSlot.MainHand,
|
||||
WeaponCategory.RedMage => EquipSlot.MainHand,
|
||||
WeaponCategory.Scholar => EquipSlot.MainHand,
|
||||
WeaponCategory.FisherOff => EquipSlot.OffHand,
|
||||
WeaponCategory.BlueMage => EquipSlot.MainHand,
|
||||
WeaponCategory.Gunbreaker => EquipSlot.MainHand,
|
||||
WeaponCategory.Dancer => EquipSlot.MainHand,
|
||||
WeaponCategory.Reaper => EquipSlot.MainHand,
|
||||
WeaponCategory.Sage => EquipSlot.MainHand,
|
||||
_ => EquipSlot.Unknown,
|
||||
};
|
||||
|
||||
public static int ToIndex( this WeaponCategory category )
|
||||
=> category switch
|
||||
{
|
||||
WeaponCategory.Pugilist => 0,
|
||||
WeaponCategory.Gladiator => 1,
|
||||
WeaponCategory.Marauder => 2,
|
||||
WeaponCategory.Archer => 3,
|
||||
WeaponCategory.Lancer => 4,
|
||||
WeaponCategory.Thaumaturge1 => 5,
|
||||
WeaponCategory.Thaumaturge2 => 6,
|
||||
WeaponCategory.Conjurer1 => 7,
|
||||
WeaponCategory.Conjurer2 => 8,
|
||||
WeaponCategory.Arcanist => 9,
|
||||
WeaponCategory.Shield => 10,
|
||||
WeaponCategory.CarpenterMain => 11,
|
||||
WeaponCategory.CarpenterOff => 12,
|
||||
WeaponCategory.BlacksmithMain => 13,
|
||||
WeaponCategory.BlacksmithOff => 14,
|
||||
WeaponCategory.ArmorerMain => 15,
|
||||
WeaponCategory.ArmorerOff => 16,
|
||||
WeaponCategory.GoldsmithMain => 17,
|
||||
WeaponCategory.GoldsmithOff => 18,
|
||||
WeaponCategory.LeatherworkerMain => 19,
|
||||
WeaponCategory.LeatherworkerOff => 20,
|
||||
WeaponCategory.WeaverMain => 21,
|
||||
WeaponCategory.WeaverOff => 22,
|
||||
WeaponCategory.AlchemistMain => 23,
|
||||
WeaponCategory.AlchemistOff => 24,
|
||||
WeaponCategory.CulinarianMain => 25,
|
||||
WeaponCategory.CulinarianOff => 26,
|
||||
WeaponCategory.MinerMain => 27,
|
||||
WeaponCategory.MinerOff => 28,
|
||||
WeaponCategory.BotanistMain => 29,
|
||||
WeaponCategory.BotanistOff => 30,
|
||||
WeaponCategory.FisherMain => 31,
|
||||
WeaponCategory.Rogue => 32,
|
||||
WeaponCategory.DarkKnight => 33,
|
||||
WeaponCategory.Machinist => 34,
|
||||
WeaponCategory.Astrologian => 35,
|
||||
WeaponCategory.Samurai => 36,
|
||||
WeaponCategory.RedMage => 37,
|
||||
WeaponCategory.Scholar => 38,
|
||||
WeaponCategory.FisherOff => 39,
|
||||
WeaponCategory.BlueMage => 40,
|
||||
WeaponCategory.Gunbreaker => 41,
|
||||
WeaponCategory.Dancer => 42,
|
||||
WeaponCategory.Reaper => 43,
|
||||
WeaponCategory.Sage => 44,
|
||||
_ => -1,
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue