Core/PacketIO: Updated to 11.0.0

Port From (https://github.com/TrinityCore/TrinityCore/commit/e59eef5432c7b70679d33f4911c88d0f7d75fd39)
This commit is contained in:
Hondacrx
2024-09-02 18:44:55 -04:00
parent bd0d40fa13
commit f38ad4607e
74 changed files with 4980 additions and 3595 deletions
+15 -13
View File
@@ -3,16 +3,16 @@
namespace Framework.Constants
{
public enum AccountDataTypes
public enum AccountDataTypes : uint
{
GlobalConfigCache = 0x00,
PerCharacterConfigCache = 0x01,
GlobalBindingsCache = 0x02,
PerCharacterBindingsCache = 0x03,
GlobalMacrosCache = 0x04,
PerCharacterMacrosCache = 0x05,
PerCharacterLayoutCache = 0x06,
PerCharacterChatCache = 0x07,
GlobalConfigCache = 0,
PerCharacterConfigCache = 1,
GlobalBindingsCache = 2,
PerCharacterBindingsCache = 3,
GlobalMacrosCache = 4,
PerCharacterMacrosCache = 5,
PerCharacterLayoutCache = 6,
PerCharacterChatCache = 7,
GlobalTtsCache = 8,
PerCharacterTtsCache = 9,
GlobalFlaggedCache = 10,
@@ -20,12 +20,14 @@ namespace Framework.Constants
PerCharacterClickBindingsCache = 12,
GlobalEditModeCache = 13,
PerCharacterEditModeCache = 14,
GlobalFrontendChatSettings = 15,
GlobalCharacterListOrder = 16,
Max = 15,
Max = 17,
AllAccountDataCacheMask = 0x7FFF,
GlobalCacheMask = 0x2515,
PerCharacterCacheMask = 0x5AEA
AllAccountDataCacheMask = 0x0001FFFFu,
GlobalCacheMask = 0x0001A515u,
PerCharacterCacheMask = 0x00005AEAu
}
public enum TutorialAction
+2 -1
View File
@@ -71,7 +71,8 @@ namespace Framework.Constants
Name = 1,
Level = 2,
Bid = 3,
Buyout = 4
Buyout = 4,
TimeRemaining = 5
}
public enum AuctionHouseBrowseMode
+4 -1
View File
@@ -2015,7 +2015,10 @@ namespace Framework.Constants
BarbersChoice = 62,
JailersTowerBuffs = 63,
MajorFactionRenown = 64,
PersonalTabardVendor = 65
PersonalTabardVendor = 65,
ForgeMaster = 66,
CharacterBanker = 67,
AccountBanker = 68,
}
[Flags]
+1 -1
View File
@@ -179,7 +179,7 @@ namespace Framework.Constants
None = 0x00,
Gossip = 0x01, // 100%
QuestGiver = 0x02, // 100%
Unk1 = 0x04,
AccountBanker = 0x04, //account banker
Unk2 = 0x08,
Trainer = 0x10, // 100%
TrainerClass = 0x20, // 100%
+5 -1
View File
@@ -89,6 +89,9 @@ namespace Framework.Constants
BarbersChoice = 52,
MajorFactionRenown = 53,
PersonalTabardVendor = 54,
ForgeMaster = 55,
CharacterBanker = 56,
AccountBanker = 57,
Max
}
@@ -164,7 +167,8 @@ namespace Framework.Constants
public enum GossipOptionFlags
{
None = 0x0,
QuestLabelPrepend = 0x1
QuestLabelPrepend = 0x1,
HideOptionIDFromClient = 0x2
}
[Flags]
+9 -1
View File
@@ -61,7 +61,7 @@ namespace Framework.Constants
EveryoneAssistant = 0x040, // Script_IsEveryoneAssistant()
GuildGroup = 0x100,
CrossFaction = 0x200,
RestrictPings = 0x400,
RestrictPings = 0x400, // deprecated
MaskBgRaid = FakeRaid | Raid
}
@@ -173,4 +173,12 @@ namespace Framework.Constants
ChallengeMode = 1,
PlayerCountdown = 2
}
public enum RestrictPingsTo
{
None = 0,
Lead = 1,
Assist = 2,
TankHealer = 3,
}
}
+10 -2
View File
@@ -11,7 +11,7 @@ namespace Framework.Constants
public const int MaxGemSockets = 3;
public const int MaxSpells = 5;
public const int MaxStats = 10;
public const int MaxBagSize = 36;
public const int MaxBagSize = 98;
public const byte NullBag = 0;
public const byte NullSlot = 255;
public const int MaxOutfitItems = 24;
@@ -1293,7 +1293,15 @@ namespace Framework.Constants
ReagentBagWrongSlot = 115,// Reagent Bags can only be placed in the reagent bag slot.
SlotOnlyReagentBag = 116,// Only Reagent Bags can be placed in the reagent bag slot.
ReagentBagItemType = 117,// Only Reagents can be placed in Reagent Bags.
CantBulkSellItemWithRefund = 118// Items that can be refunded can't be bulk sold.
CantBulkSellItemWithRefund = 118,// Items that can be refunded can't be bulk sold.
NoSoulboundItemInAccountBank = 119,// Soulbound items cannot be stored in the Warband Bank.
}
public enum BankType
{
Character = 0,
Guild = 1,
Account = 2
}
public enum BuyResult
+4 -5
View File
@@ -70,11 +70,10 @@ namespace Framework.Constants
public enum InstanceResetWarningType
{
WarningHours = 1, // WARNING! %s is scheduled to reset in %d hour(s).
WarningMin = 2, // WARNING! %s is scheduled to reset in %d minute(s)!
WarningMinSoon = 3, // WARNING! %s is scheduled to reset in %d minute(s). Please exit the zone or you will be returned to your bind location!
Welcome = 4, // Welcome to %s. This raid instance is scheduled to reset in %s.
Expired = 5
Welcome = 1, // Welcome to %s. Instance locks are scheduled to expire in %s.
Expired = 2, // Your instance lock for %s has expired.
WelcomeDaily = 3, // Welcome to %s. The daily reset is scheduled to occur in %s and will reset this instance.
WarningTime = 4, // any GlobalStrings tag that has 1 formattable argument, like DELVES_INSTANCE_RESET_WARNING
}
public enum InstanceResetMethod
File diff suppressed because it is too large Load Diff
+7 -1
View File
@@ -518,10 +518,16 @@ namespace Framework.Constants
// first slot for item stored (in any way in player items data)
Start = 0,
// last+1 slot for item stored (in any way in player items data)
End = 227,
End = 232,
Count = (End - Start)
}
enum AccountBankBagSlots
{
Start = 227,
End = 232
}
public enum PlayerTitle : ulong
{
Disabled = 0x0000000000000000,
+57 -34
View File
@@ -84,7 +84,7 @@ namespace Framework.Constants
public enum QuestType
{
TurnIn= 0,
TurnIn = 0,
WithMaxLevel = 1,
Normal = 2,
Task = 3,
@@ -417,39 +417,53 @@ namespace Framework.Constants
public enum QuestGiverStatus : ulong
{
None = 0x00,
Future = 0x02,
Trivial = 0x04,
TrivialRepeatableTurnin = 0x08,
TrivialDailyQuest = 0x10,
Reward = 0x20,
JourneyReward = 0x40,
CovenantCallingReward = 0x80,
RepeatableTurnin = 0x100,
DailyQuest = 0x200,
Quest = 0x400,
RewardCompleteNoPOI = 0x800,
RewardCompletePOI = 0x1000,
LegendaryQuest = 0x2000,
LegendaryRewardCompleteNoPOI = 0x4000,
LegendaryRewardCompletePOI = 0x8000,
JourneyQuest = 0x10000,
JourneyRewardCompleteNoPOI = 0x20000,
JourneyRewardCompletePOI = 0x40000,
CovenantCallingQuest = 0x80000,
CovenantCallingRewardCompleteNoPOI = 0x100000,
CovenantCallingRewardCompletePOI = 0x200000,
TrivialLegendaryQuest = 0x400000,
FutureLegendaryQuest = 0x800000,
LegendaryReward = 0x1000000,
ImportantReward = 0x2000000,
ImportantQuest = 0x4000000,
TrivialImportantQuest = 0x8000000,
FutureImportantQuest = 0x010000000,
ImportantQuestRewardCompleteNoPOI = 0x20000000,
ImportantQuestRewardCompletePOI = 0x40000000,
TrivialJourneyQuest = 0x80000000,
FutureJourneyQuest = 0x100000000,
None = 0x000000000000,
Future = 0x000000000002,
FutureJourneyQuest = 0x000000000004,
FutureLegendaryQuest = 0x000000000008,
FutureImportantQuest = 0x000000000010,
TrivialRepeatableTurnin = 0x000000000020,
Trivial = 0x000000000040,
TrivialDailyQuest = 0x000000000080,
TrivialRepeatableQuest = 0x000000000100,
TrivialMetaQuest = 0x000000000200,
TrivialJourneyQuest = 0x000000000400,
TrivialLegendaryQuest = 0x000000000800,
TrivialImportantQuest = 0x000000001000,
Reward = 0x000000002000,
RepeatableReward = 0x000000004000,
MetaReward = 0x000000008000,
JourneyReward = 0x000000010000,
CovenantCallingReward = 0x000000020000,
LegendaryReward = 0x000000040000,
ImportantReward = 0x000000080000,
RepeatableTurnin = 0x000000100000,
QuestAccountCompleted = 0x000000200000,
Quest = 0x000000400000,
DailyQuest = 0x000000800000,
RepeatableQuest = 0x000001000000,
MetaQuest = 0x000002000000,
CovenantCallingQuest = 0x000004000000,
JourneyQuestAccountCompleted = 0x000008000000,
JourneyQuest = 0x000010000000,
LegendaryQuestAccountCompleted = 0x000020000000,
LegendaryQuest = 0x000040000000,
ImportantQuestAccountCompleted = 0x000080000000,
ImportantQuest = 0x000100000000,
RewardCompleteNoPOI = 0x000200000000,
RewardCompletePOI = 0x000400000000,
RepeatableRewardCompleteNoPOI = 0x000800000000,
RepeatableRewardCompletePOI = 0x001000000000,
MetaQuestRewardCompleteNoPOI = 0x002000000000,
MetaQuestRewardCompletePOI = 0x004000000000,
CovenantCallingRewardCompleteNoPOI = 0x008000000000,
CovenantCallingRewardCompletePOI = 0x010000000000,
JourneyRewardCompleteNoPOI = 0x020000000000,
JourneyRewardCompletePOI = 0x040000000000,
LegendaryRewardCompleteNoPOI = 0x080000000000,
LegendaryRewardCompletePOI = 0x100000000000,
ImportantQuestRewardCompleteNoPOI = 0x200000000000,
ImportantQuestRewardCompletePOI = 0x400000000000,
}
[Flags]
@@ -554,6 +568,8 @@ namespace Framework.Constants
IgnoreSoulboundItems = 0x00200000,
DontDeferStartEffects = 0x00400000,
HideRequiredItemsPreTurnIn = 0x00800000,
AbandonOnDisable = 0x04000000,
}
public enum QuestSpecialFlags
@@ -598,4 +614,11 @@ namespace Framework.Constants
Threat,
CovenantCalling
}
public enum QuestRewardContextFlags
{
None = 0x0,
FirstCompletionBonus = 0x1,
RepeatCompletionBonus = 0x2
}
}
File diff suppressed because it is too large Load Diff
@@ -774,7 +774,8 @@ namespace Framework.Constants
CantFlyHere = 318,
DragonridingRidingRequirement = 319,
ItemModAppearanceGroupAlreadyKnown = 320,
Unknown = 321,
ItemCreationDisabledForEvent = 321,
Unknown = 322,
// Ok Cast Value - Here In Case A Future Version Removes Success And We Need To Use A Custom Value (Not Sent To Client Either Way)
SpellCastOk = Success
@@ -1416,8 +1417,48 @@ namespace Framework.Constants
YouDontHaveTheSwirlingMojoStone = 999, // You Don'T Have The Swirling Mojo Stone Equipped.
YouMustBeNearADragonflightOathstone = 1000, // You Must Be Near One Of The Five Dragonflight Oathstones In The Dragon Isles.
CanOnlyUseThisItemWhileAirborne = 1001, // You Can Only Use This Item While Airborne.
ThisPlayerIsNotOppositeFaction = 1002, // This Player Is Not Of The Opposite Faction.
ThisPlayerAlreadyHasThisMount = 1003, // This Player Already Has This Mount.
YourTargetIsInWarMode = 1004, // Your Target Is In War Mode.
CooldownReset = 1005, // Cooldown Reset
SoilNutrientsMustReplenish = 1006, // The Nutrients Of This Soil Must Replenish Before Further Growth.
TargetAlreadyHadSomeFeathersPlucked = 1007, // The Target Has Already Had Some Feathers Plucked. It Would Be Rude To Take More.
ThisCreatureHasAlreadyBeenAttunedWith = 1008, // This Creature Has Already Been Attuned With Recently.
YouAlreadyHaveSomeMulchPrepared = 1009, // You Already Have Some Mulch Prepared. Use Your Current Mulch First.
YouDontKnowHowToGatherThis = 1010, // You Don't Know How To Gather This.
YouDontHaveAnyItemsOfThisType = 1011, // You Don't Have Any Items Of This Type.
YouDontHaveAnyRadiantRemnants = 1012, // You Don't Have Any Radiant Remnants.
TargetsRingIsAlreadyBoundToAnotherPlayer = 1013, // Your Target's Ring Is Already Bound To Another Player.
TargetIsNotWearingThisRing = 1014, // Your Target Is Not Also Wearing This Ring.
CanOnlyBeUsedOnSocketablePvpTwwItems = 1015, // Can Only Be Used On Socket Eligible Pvp Items From The War Within Expansion.
HarvestbotsAlreadyActive = 1016, // Harvestbots Already Active.
AirshipDauntlessIsAlreadyActive = 1017, // The Airship Dauntless Is Already Active.
CannotSwapSpellsOnCooldownInCombat = 1026, // You Cannot Swap Spells On Cooldown While In Combat.
MustEquipCloakOfInfinitePotential = 1027, // You Must First Equip The Cloak Of Infinite Potential.
InsufficientBronze = 1028, // You Have Insufficient Bronze To Make This Trade.
RequiresSkyriding = 1029, // Requires Skyriding
YouAlreadyOverloadedThisGatheringNode = 1030, // You Have Already Overloaded This Gathering Node.
YouDontKnowHowToOverloadThisNode = 1031, // You Do Not Know How To Overload This Gathering Node.
TimerunnersCannotTeleportOutOfPandaria = 1032, // Timerunners Cannot Teleport Outside Of Pandaria.
SpecializeFurtherForTheseNotes = 1033, // Specialize Further Or Improve Your Hasty Handwriting To Make Sense Of These Notes.
ThereIsNothingLeftToInvent = 1034, // There Is Nothing Left To Invent And You Cannot Be Convinced Otherwise.
PlayerInPartyDoesntHaveThisTierUnlocked = 1035, // A Player In Your Party Does Not Have This Tier Unlocked
YouDontHaveAnyRadiantEchoes = 1036, // You Don't Have Any Radiant Echoes.
RequiresTwwPathfinderUnlocked = 1037, // Requires The War Within Pathfinder Unlocked To Use In This Area.
CanOnlyBeUsedWhileInCombat = 1039, // Can Only Be Used While In Combat.
NotHighEnoughLevelToEnterADelve = 1040, // You Are Not High Enough Level To Enter A Delve.
WondrousWisdomballIsNonresponsive = 1041, // For Some Reason The Wondrous Wisdomball Is Nonresponsive.
YouAlreadyHaveThisCurioInYourCollection = 1042, // You Already Have This Curio In Your Collection.
AlreadyHaveIdentifiedPrototype = 1043, // You Must Choose What To Do With Your Current Prototype Before Identifying New Ones.
YouAlreadyUsedKhazAlgarContract = 1044, // You Have Already Used A Khaz Algar Contract This Week.
YouAlreadyRevealedAllTodayPactLocations = 1051, // You Have Revealed Or Completed All Of Today's Pact Locations.
TimerunnersCannotCastThisSpell = 1053, // Timerunners Cannot Cast This Spell.
ThisEmblemHasNoMagicStored = 2001, // The Emblem Has No Magic Stored.
YouMustBeInVisageForm = 2222, // You Must Be In Visage Form To Do This.
TooCloseToAnotherMoltenRitual = 2424, // You Can'T Begin A Molten Ritual This Close To Another One.
ATrialIsBeingUndergoneNearby = 2223, // A Trial Is Already Being Undergone Nearby.
YouCannotUseVantusRuneInStoryMode = 2224, // You Cannot Use A Vantus Rune In Story Mode.
TooCloseToAnotherMoltenRitual = 2424, // You Can't Begin A Molten Ritual This Close To Another One.
EarthenCannotConsumeRegularFoodOrDrink = 2425, // Earthen Cannot Consume Traditional Food Or Drink.
}
public enum SpellMissInfo
@@ -473,7 +473,7 @@ namespace Framework.Database
PrepareStatement(CharStatements.UPD_ACCOUNT_ONLINE, "UPDATE characters SET online = 0 WHERE account = ?");
PrepareStatement(CharStatements.INS_CHARACTER_CUSTOMIZATION, "INSERT INTO character_customizations (guid, chrCustomizationOptionID, chrCustomizationChoiceID) VALUES (?, ?, ?)");
PrepareStatement(CharStatements.DEL_CHARACTER_CUSTOMIZATIONS, "DELETE FROM character_customizations WHERE guid = ?");
PrepareStatement(CharStatements.INS_GROUP, "INSERT INTO `groups` (guid, leaderGuid, lootMethod, looterGuid, lootThreshold, icon1, icon2, icon3, icon4, icon5, icon6, icon7, icon8, groupType, difficulty, raidDifficulty, legacyRaidDifficulty, masterLooterGuid) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
PrepareStatement(CharStatements.INS_GROUP, "INSERT INTO `groups` (guid, leaderGuid, lootMethod, looterGuid, lootThreshold, icon1, icon2, icon3, icon4, icon5, icon6, icon7, icon8, groupType, difficulty, raidDifficulty, legacyRaidDifficulty, masterLooterGuid, pingRestriction) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
PrepareStatement(CharStatements.INS_GROUP_MEMBER, "INSERT INTO group_member (guid, memberGuid, memberFlags, subgroup, roles) VALUES(?, ?, ?, ?, ?)");
PrepareStatement(CharStatements.DEL_GROUP_MEMBER, "DELETE FROM group_member WHERE memberGuid = ?");
PrepareStatement(CharStatements.UPD_GROUP_LEADER, "UPDATE `groups` SET leaderGuid = ? WHERE guid = ?");
@@ -483,6 +483,7 @@ namespace Framework.Database
PrepareStatement(CharStatements.UPD_GROUP_DIFFICULTY, "UPDATE `groups` SET difficulty = ? WHERE guid = ?");
PrepareStatement(CharStatements.UPD_GROUP_RAID_DIFFICULTY, "UPDATE `groups` SET raidDifficulty = ? WHERE guid = ?");
PrepareStatement(CharStatements.UPD_GROUP_LEGACY_RAID_DIFFICULTY, "UPDATE `groups` SET legacyRaidDifficulty = ? WHERE guid = ?");
PrepareStatement(CharStatements.UPD_GROUP_PING_RESTRICTION, "UPDATE `groups` SET pingRestriction = ? WHERE guid = ?");
PrepareStatement(CharStatements.DEL_INVALID_SPELL_SPELLS, "DELETE FROM character_spell WHERE spell = ?");
PrepareStatement(CharStatements.UPD_DELETE_INFO, "UPDATE characters SET deleteInfos_Name = name, deleteInfos_Account = account, deleteDate = UNIX_TIMESTAMP(), name = '', account = 0 WHERE guid = ?");
PrepareStatement(CharStatements.UPD_RESTORE_DELETE_INFO, "UPDATE characters SET name = ?, account = ?, deleteDate = NULL, deleteInfos_Name = NULL, deleteInfos_Account = NULL WHERE deleteDate IS NOT NULL AND guid = ?");
@@ -1121,6 +1122,7 @@ namespace Framework.Database
UPD_GROUP_DIFFICULTY,
UPD_GROUP_RAID_DIFFICULTY,
UPD_GROUP_LEGACY_RAID_DIFFICULTY,
UPD_GROUP_PING_RESTRICTION,
DEL_INVALID_SPELL_SPELLS,
UPD_DELETE_INFO,
UPD_RESTORE_DELETE_INFO,