The main release package of Ashita v3. Contains all the needed files for users to get up and running. Used by the launcher/injector to auto-update as well.
https://ashitaxi.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
659 lines
19 KiB
659 lines
19 KiB
/** |
|
* Ashita - Copyright (c) 2014 - 2017 atom0s [[email protected]] |
|
* |
|
* This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. |
|
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/ or send a letter to |
|
* Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. |
|
* |
|
* By using Ashita, you agree to the above license and its terms. |
|
* |
|
* Attribution - You must give appropriate credit, provide a link to the license and indicate if changes were |
|
* made. You must do so in any reasonable manner, but not in any way that suggests the licensor |
|
* endorses you or your use. |
|
* |
|
* Non-Commercial - You may not use the material (Ashita) for commercial purposes. |
|
* |
|
* No-Derivatives - If you remix, transform, or build upon the material (Ashita), you may not distribute the |
|
* modified material. You are, however, allowed to submit the modified works back to the original |
|
* Ashita project in attempt to have it added to the original project. |
|
* |
|
* You may not apply legal terms or technological measures that legally restrict others |
|
* from doing anything the license permits. |
|
* |
|
* No warranties are given. |
|
*/ |
|
|
|
#ifndef __ASHITA_AS_FFXI_ENUMS_H_INCLUDED__ |
|
#define __ASHITA_AS_FFXI_ENUMS_H_INCLUDED__ |
|
|
|
#if defined (_MSC_VER) && (_MSC_VER >= 1020) |
|
#pragma once |
|
#endif |
|
|
|
/** |
|
* Name Flag Definitions |
|
*/ |
|
#define FLAG_INEVENT 0x00000002 |
|
#define FLAG_CHOCOBO 0x00000040 |
|
#define FLAG_WALLHACK 0x00000200 |
|
#define FLAG_INVITE 0x00000800 |
|
#define FLAG_ANON 0x00001000 |
|
#define FLAG_UNKNOWN 0x00002000 |
|
#define FLAG_AWAY 0x00004000 |
|
#define FLAG_PLAYONLINE 0x00010000 |
|
#define FLAG_LINKSHELL 0x00020000 |
|
#define FLAG_DC 0x00040000 |
|
#define FLAG_GM 0x04000000 |
|
#define FLAG_GM_SUPPORT 0x04000000 |
|
#define FLAG_GM_SENIOR 0x05000000 |
|
#define FLAG_GM_LEAD 0x06000000 |
|
#define FLAG_GM_PRODUCER 0x07000000 |
|
#define FLAG_BAZAAR 0x80000000 |
|
|
|
namespace Ashita { |
|
namespace FFXI { |
|
namespace Enums |
|
{ |
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// |
|
// Equipment / Inventory Related Enumerations |
|
// |
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
/** |
|
* Containers Enumeration |
|
*/ |
|
enum class Containers : uint32_t { |
|
Inventory = 0, |
|
Safe = 1, |
|
Storage = 2, |
|
Temporary = 3, |
|
Locker = 4, |
|
Satchel = 5, |
|
Sack = 6, |
|
Case = 7, |
|
Wardrobe = 8, |
|
Safe2 = 9, |
|
Wardrobe2 = 10, |
|
Wardrobe3 = 11, |
|
Wardrobe4 = 12, |
|
|
|
ContainerMax = 13 |
|
}; |
|
|
|
/** |
|
* Equipment Slots Enumeration |
|
*/ |
|
enum class EquipmentSlots : uint32_t { |
|
Main = 0, |
|
Sub, |
|
Range, |
|
Ammo, |
|
Head, |
|
Body, |
|
Hands, |
|
Legs, |
|
Feet, |
|
Waist, |
|
Ear1, |
|
Ear2, |
|
Ring1, |
|
Ring2, |
|
Back, |
|
|
|
EquipmentSlotMax = 16 |
|
}; |
|
|
|
/** |
|
* Treasure Status Enumeration |
|
*/ |
|
enum class TreasureStatus { |
|
None = 0, |
|
Pass, |
|
Lot |
|
}; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// |
|
// Entity Related Enumerations |
|
// |
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
/** |
|
* Entity Types Enumeration |
|
*/ |
|
enum class EntityTypes : uint32_t { |
|
Player = 0, // Player Entities |
|
Npc1 = 1, // NPC Entities (Town Folk, etc.) |
|
Npc2 = 2, // NPC Entities (Home Points, Moogles, Coffers, Town Folk, etc.) |
|
Npc3 = 3, // NPC Entities (Doors, Lights, Unique Objects, Bridges, etc.) |
|
Elevator = 4, // Elevator Entities |
|
Airship = 5, // Airship / Boat Entities |
|
}; |
|
|
|
/** |
|
* Entity Spawn Flags Enumeration |
|
*/ |
|
enum class EntitySpawnFlags : uint32_t { |
|
Player = 0x0001, // Entity is a player. |
|
Npc = 0x0002, // Entity is an NPC. |
|
PartyMember = 0x0004, // Entity is a party member. |
|
AllianceMember = 0x0008, // Entity is an alliance member. |
|
Monster = 0x0010, // Entity is a monster. |
|
Object = 0x0020, // Entity is an object. |
|
LocalPlayer = 0x0200, // Entity is the local player. |
|
}; |
|
|
|
/** |
|
* Entity Hair Enumeration |
|
*/ |
|
enum class EntityHair { |
|
Hair1A = 0, |
|
Hair1B, |
|
Hair2A, |
|
Hair2B, |
|
Hair3A, |
|
Hair3B, |
|
Hair4A, |
|
Hair4B, |
|
Hair5A, |
|
Hair5B, |
|
Hair6A, |
|
Hair6B, |
|
Hair7A, |
|
Hair7B, |
|
Hair8A, |
|
Hair8B, |
|
|
|
// Non-Player Hair Styles |
|
Fomar = 29, |
|
Mannequin = 30, |
|
}; |
|
|
|
/** |
|
* Entity Race Enumeration |
|
*/ |
|
enum class EntityRace { |
|
Invalid = 0, |
|
HumeMale, |
|
HumeFemale, |
|
ElvaanMale, |
|
ElvaanFemale, |
|
TarutaruMale, |
|
TarutaruFemale, |
|
Mithra, |
|
Galka, |
|
|
|
// Non-Player Races |
|
MithraChild = 29, |
|
HumeChildFemale = 30, |
|
HumeChildMale = 31, |
|
GoldChocobo = 32, |
|
BlackChocobo = 33, |
|
BlueChocobo = 34, |
|
RedChocobo = 35, |
|
GreenChocobo = 36 |
|
}; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// |
|
// Player Related Enumerations |
|
// |
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
/** |
|
* Jobs Enumeration |
|
*/ |
|
enum class Jobs : uint32_t { |
|
None = 0, |
|
Warrior = 1, |
|
Monk = 2, |
|
WhiteMage = 3, |
|
BlackMage = 4, |
|
RedMage = 5, |
|
Thief = 6, |
|
Paladin = 7, |
|
DarkKnight = 8, |
|
Beastmaster = 9, |
|
Bard = 10, |
|
Ranger = 11, |
|
Samurai = 12, |
|
Ninja = 13, |
|
Dragoon = 14, |
|
Summoner = 15, |
|
BlueMage = 16, |
|
Corsair = 17, |
|
Puppetmaster = 18, |
|
Dancer = 19, |
|
Scholar = 20, |
|
Geomancer = 21, |
|
RuneFencer = 22 |
|
}; |
|
|
|
/** |
|
* Login Status Enumeration |
|
*/ |
|
enum class LoginStatus { |
|
LoginScreen = 0, |
|
Loading = 1, |
|
LoggedIn = 2 |
|
}; |
|
|
|
/** |
|
* Craft Rank Enumeration |
|
*/ |
|
enum class CraftRank { |
|
Amateur = 0, |
|
Recruit, |
|
Initiate, |
|
Novice, |
|
Apprentice, |
|
Journeyman, |
|
Craftsman, |
|
Artisan, |
|
Adept, |
|
Veteran |
|
}; |
|
|
|
/** |
|
* Skill Types Enumeration |
|
*/ |
|
enum class SkillTypes : uint32_t { |
|
// Weapon Skills |
|
HandToHand = 1, |
|
Dagger = 2, |
|
Sword = 3, |
|
GreatSword = 4, |
|
Axe = 5, |
|
GreatAxe = 6, |
|
Scythe = 7, |
|
Polarm = 8, |
|
Katana = 9, |
|
GreatKatana = 10, |
|
Club = 11, |
|
Staff = 12, |
|
|
|
// Combat Skills |
|
Archery = 25, |
|
Marksmanship = 26, |
|
Throwing = 27, |
|
Guard = 28, |
|
Evasion = 29, |
|
Shield = 30, |
|
Parry = 31, |
|
Divine = 32, |
|
Healing = 33, |
|
Enhancing = 34, |
|
Enfeebling = 35, |
|
Elemental = 36, |
|
Dark = 37, |
|
Summoning = 38, |
|
Ninjutsu = 39, |
|
Singing = 40, |
|
String = 41, |
|
Wind = 42, |
|
BlueMagic = 43, |
|
|
|
// Crafting Skills |
|
Fishing = 48, |
|
Woodworking = 49, |
|
Smithing = 50, |
|
Goldsmithing = 51, |
|
Clothcraft = 52, |
|
Leathercraft = 53, |
|
Bonecraft = 54, |
|
Alchemy = 55, |
|
Cooking = 56, |
|
Synergy = 57, |
|
ChocoboDigging = 58, |
|
}; |
|
|
|
/** |
|
* Player Nation Id |
|
*/ |
|
enum class Nation { |
|
SandOria, |
|
Bastok, |
|
Windurst |
|
}; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// |
|
// Resources Related Enumerations |
|
// |
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
/** |
|
* Equipment Slot Mask Enumeration |
|
*/ |
|
enum class EquipmentSlotMask { |
|
None = 0x0000, |
|
Main = 0x0001, |
|
Sub = 0x0002, |
|
Range = 0x0004, |
|
Ammo = 0x0008, |
|
Head = 0x0010, |
|
Body = 0x0020, |
|
Hands = 0x0040, |
|
Legs = 0x0080, |
|
Feet = 0x0100, |
|
Neck = 0x0200, |
|
Waist = 0x0400, |
|
LEar = 0x0800, |
|
REar = 0x1000, |
|
LRing = 0x2000, |
|
RRing = 0x4000, |
|
Back = 0x8000, |
|
|
|
// Slot Groups |
|
Ears = LEar | REar, |
|
Rings = LRing | RRing, |
|
|
|
// All Slots |
|
All = 0xFFFF |
|
}; |
|
|
|
/** |
|
* Item Flags Enumeration |
|
*/ |
|
enum class ItemFlags : uint32_t { |
|
None = 0x0000, |
|
WallHanging = 0x0001, |
|
Flag1 = 0x0002, |
|
Flag2 = 0x0004, |
|
Flag3 = 0x0008, |
|
DeliveryInner = 0x0010, |
|
Inscribable = 0x0020, |
|
NoAuction = 0x0040, |
|
Scroll = 0x0080, |
|
Linkshell = 0x0100, |
|
CanUse = 0x0200, |
|
CanTradeNpc = 0x0400, |
|
CanEquip = 0x0800, |
|
NoSale = 0x1000, |
|
NoDelivery = 0x2000, |
|
NoTrade = 0x4000, |
|
Rare = 0x8000, |
|
|
|
Exclusive = NoAuction | NoDelivery | NoTrade, |
|
Nothing = Linkshell | NoSale | Exclusive | Rare |
|
}; |
|
|
|
/** |
|
* Item Type Enumeration |
|
*/ |
|
enum class ItemType : uint32_t { |
|
None = 0x0000, |
|
Item = 0x0001, |
|
QuestItem = 0x0002, |
|
Fish = 0x0003, |
|
Weapon = 0x0004, |
|
Armor = 0x0005, |
|
Linkshell = 0x0006, |
|
UsableItem = 0x0007, |
|
Crystal = 0x0008, |
|
Currency = 0x0009, |
|
Furnishing = 0x000A, |
|
Plant = 0x000B, |
|
Flowerpot = 0x000C, |
|
PuppetItem = 0x000D, |
|
Mannequin = 0x000E, |
|
Book = 0x000F, |
|
RacingForm = 0x0010, |
|
BettingSlip = 0x0011, |
|
SoulPlate = 0x0012, |
|
Reflector = 0x0013, |
|
Logs = 0x0014, |
|
LotteryTicket = 0x0015, |
|
TabulaM = 0x0016, |
|
TabulaR = 0x0017, |
|
Voucher = 0x0018, |
|
Rune = 0x0019, |
|
Evolith = 0x001A, |
|
StorageSlip = 0x001B, |
|
Type1 = 0x001C |
|
}; |
|
|
|
/** |
|
* Job Mask Enumeration |
|
*/ |
|
enum class JobMask : uint32_t { |
|
None = 0x00000000, |
|
WAR = 0x00000002, |
|
MNK = 0x00000004, |
|
WHM = 0x00000008, |
|
BLM = 0x00000010, |
|
RDM = 0x00000020, |
|
THF = 0x00000040, |
|
PLD = 0x00000080, |
|
DRK = 0x00000100, |
|
BST = 0x00000200, |
|
BRD = 0x00000400, |
|
RNG = 0x00000800, |
|
SAM = 0x00001000, |
|
NIN = 0x00002000, |
|
DRG = 0x00004000, |
|
SMN = 0x00008000, |
|
BLU = 0x00010000, |
|
COR = 0x00020000, |
|
PUP = 0x00040000, |
|
DNC = 0x00080000, |
|
SCH = 0x00100000, |
|
GEO = 0x00200000, |
|
RUN = 0x00400000, |
|
MON = 0x00800000, |
|
JOB24 = 0x01000000, |
|
JOB25 = 0x02000000, |
|
JOB26 = 0x04000000, |
|
JOB27 = 0x08000000, |
|
JOB28 = 0x10000000, |
|
JOB29 = 0x20000000, |
|
JOB30 = 0x40000000, |
|
JOB31 = 0x80000000, |
|
|
|
AllJobs = 0x007FFFFE, |
|
}; |
|
|
|
/** |
|
* Combat Type Enumeration |
|
*/ |
|
enum class CombatType { |
|
Magic = 0x1000, |
|
Combat = 0x2000 |
|
}; |
|
|
|
/** |
|
* Ability Type Enumeration |
|
*/ |
|
enum class AbilityType { |
|
General = 0, |
|
Job, |
|
Pet, |
|
Weapon, |
|
Trait, |
|
BloodPactRage, |
|
Corsair, |
|
CorsairShot, |
|
BloodPactWard, |
|
Samba, |
|
Waltz, |
|
Step, |
|
Florish1, |
|
Scholar, |
|
Jig, |
|
Flourish2, |
|
Monster, |
|
Flourish3, |
|
Weaponskill, |
|
Rune, |
|
Ward, |
|
Effusion, |
|
}; |
|
|
|
/** |
|
* Magic Type Enumeration |
|
*/ |
|
enum class MagicType : uint32_t { |
|
None = 0, |
|
WhiteMagic = 1, |
|
BlackMagic = 2, |
|
Summon = 3, |
|
Ninjutsu = 4, |
|
Song = 5, |
|
BlueMagic = 6, |
|
Geomancy = 7, |
|
Trust = 8 |
|
}; |
|
|
|
/** |
|
* Element Color Enumeration |
|
*/ |
|
enum class ElementColor { |
|
Red, |
|
Clear, |
|
Green, |
|
Yellow, |
|
Purple, |
|
Blue, |
|
White, |
|
Black |
|
}; |
|
|
|
/** |
|
* Element Type Enumeration |
|
*/ |
|
enum class ElementType { |
|
Fire, |
|
Ice, |
|
Air, |
|
Earth, |
|
Thunder, |
|
Water, |
|
Light, |
|
Dark, |
|
|
|
Special = 0x0F, |
|
Unknown = 0xFF |
|
}; |
|
|
|
/** |
|
* Puppet Slot Enumeration |
|
*/ |
|
enum class PuppetSlot { |
|
None, |
|
Head, |
|
Body, |
|
Attachment |
|
}; |
|
|
|
/** |
|
* Race Mask Enumeration |
|
*/ |
|
enum class RaceMask { |
|
None = 0x0000, |
|
HumeMale = 0x0002, |
|
HumeFemale = 0x0004, |
|
ElvaanMale = 0x0008, |
|
ElvaanFemale = 0x0010, |
|
TarutaruMale = 0x0020, |
|
TarutaruFemale = 0x0040, |
|
Mithra = 0x0080, |
|
Galka = 0x0100, |
|
Hume = 0x0006, |
|
Elvaan = 0x0018, |
|
Tarutaru = 0x0060, |
|
|
|
Male = 0x012A, |
|
Female = 0x00D4, |
|
|
|
All = 0x01FE, |
|
}; |
|
|
|
/** |
|
* Target Type Enumeration |
|
*/ |
|
enum class TargetType { |
|
None = 0x00, |
|
Self = 0x01, |
|
Player = 0x02, |
|
PartyMember = 0x04, |
|
AllianceMember = 0x08, |
|
Npc = 0x10, |
|
Enemy = 0x20, |
|
Unknown = 0x40, |
|
CorpseOnly = 0x80, |
|
Corpse = 0x9D |
|
}; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
// |
|
// Vana'diel Related Enumerations |
|
// |
|
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
/** |
|
* Moon Phase Enumeration |
|
*/ |
|
enum class MoonPhase { |
|
New, |
|
WaxingCrescent, |
|
WaxingCrescent2, |
|
FirstQuarter, |
|
WaxingGibbous, |
|
WaxingGibbous2, |
|
Full, |
|
WaningGibbous, |
|
WaningGibbous2, |
|
LastQuarter, |
|
WaningCrescent, |
|
WaningCrescent2, |
|
|
|
Unknown |
|
}; |
|
|
|
/** |
|
* Weekday Enumeration |
|
*/ |
|
enum class Weekday { |
|
Firesday, |
|
Earthsday, |
|
Watersday, |
|
Windsday, |
|
Iceday, |
|
Lightningday, |
|
Lightsday, |
|
Darksday, |
|
|
|
Unknown |
|
}; |
|
|
|
/** |
|
* Weather Enumeration |
|
*/ |
|
enum class Weather : uint32_t { |
|
Clear = 0, |
|
Sunny, |
|
Cloudy, |
|
Fog, |
|
Fire, |
|
FireTwo, |
|
Water, |
|
WaterTwo, |
|
Earth, |
|
EarthTwo, |
|
Wind, |
|
WindTwo, |
|
Ice, |
|
IceTwo, |
|
Lightning, |
|
LightningTwo, |
|
Light, |
|
LightTwo, |
|
Dark, |
|
DarkTwo |
|
}; |
|
}; // namespace Enums |
|
}; // namespace FFXI |
|
}; // namespace Ashita |
|
|
|
#endif // __ASHITA_AS_FFXI_ENUMS_H_INCLUDED__
|