Core: Updated to 10.0.2
Port From (https://github.com/TrinityCore/TrinityCore/commit/e98e1283ea0034baf6be9aa2ffb386eb5582801b)
This commit is contained in:
@@ -47,6 +47,7 @@ namespace Game.DataStorage
|
||||
public sealed class BattlePetBreedQualityRecord
|
||||
{
|
||||
public uint Id;
|
||||
public int MaxQualityRoll;
|
||||
public float StateMultiplier;
|
||||
public sbyte QualityEnum;
|
||||
}
|
||||
@@ -68,7 +69,7 @@ namespace Game.DataStorage
|
||||
public uint SummonSpellID;
|
||||
public int IconFileDataID;
|
||||
public sbyte PetTypeEnum;
|
||||
public ushort Flags;
|
||||
public int Flags;
|
||||
public sbyte SourceTypeEnum;
|
||||
public int CardUIModelSceneID;
|
||||
public int LoadoutUIModelSceneID;
|
||||
@@ -96,8 +97,8 @@ namespace Game.DataStorage
|
||||
public byte MinLevel;
|
||||
public byte MaxLevel;
|
||||
public sbyte RatedPlayers;
|
||||
public byte MinPlayers;
|
||||
public byte MaxPlayers;
|
||||
public sbyte MinPlayers;
|
||||
public int MaxPlayers;
|
||||
public sbyte GroupsAllowed;
|
||||
public sbyte MaxGroupSize;
|
||||
public ushort HolidayWorldState;
|
||||
|
||||
@@ -44,8 +44,8 @@ namespace Game.DataStorage
|
||||
public uint Id;
|
||||
public long RaceMask;
|
||||
public sbyte ChrClassID;
|
||||
public sbyte Purpose;
|
||||
public sbyte Unused910;
|
||||
public int Purpose;
|
||||
public sbyte ItemContext;
|
||||
|
||||
public bool IsForNewCharacter() { return Purpose == 9; }
|
||||
}
|
||||
@@ -131,6 +131,7 @@ namespace Game.DataStorage
|
||||
public uint Id;
|
||||
public uint ChrCustomizationOptionID;
|
||||
public uint ChrCustomizationReqID;
|
||||
public int ChrCustomizationVisReqID;
|
||||
public ushort SortOrder;
|
||||
public ushort UiOrderIndex;
|
||||
public int Flags;
|
||||
@@ -159,6 +160,7 @@ namespace Game.DataStorage
|
||||
public int ChrCustomizationCondModelID;
|
||||
public int ChrCustomizationDisplayInfoID;
|
||||
public int ChrCustItemGeoModifyID;
|
||||
public int ChrCustomizationVoiceID;
|
||||
}
|
||||
|
||||
public sealed class ChrCustomizationOptionRecord
|
||||
@@ -181,9 +183,11 @@ namespace Game.DataStorage
|
||||
public sealed class ChrCustomizationReqRecord
|
||||
{
|
||||
public uint Id;
|
||||
public string ReqSource;
|
||||
public int Flags;
|
||||
public int ClassMask;
|
||||
public int AchievementID;
|
||||
public int QuestID;
|
||||
public int OverrideArchive; // -1: allow any, otherwise must match OverrideArchive cvar
|
||||
public uint ItemModifiedAppearanceID;
|
||||
|
||||
@@ -223,6 +227,8 @@ namespace Game.DataStorage
|
||||
public uint Id;
|
||||
public int ChrRacesID;
|
||||
public int ChrModelID;
|
||||
public int Sex;
|
||||
public int AllowedTransmogSlots;
|
||||
}
|
||||
|
||||
public sealed class ChrRacesRecord
|
||||
@@ -273,6 +279,7 @@ namespace Game.DataStorage
|
||||
public float AlteredFormCustomizeRotationFallback;
|
||||
public float[] Unknown910_1 = new float[3];
|
||||
public float[] Unknown910_2 = new float[3];
|
||||
public int Unknown1000;
|
||||
public sbyte BaseLanguage;
|
||||
public sbyte CreatureType;
|
||||
public sbyte MaleModelFallbackSex;
|
||||
@@ -312,7 +319,7 @@ namespace Game.DataStorage
|
||||
public uint SoundID; // Sound ID (voiceover for cinematic)
|
||||
public float OriginFacing; // Orientation in map used for basis for M2 co
|
||||
public uint FileDataID; // Model
|
||||
public int Unknown915;
|
||||
public uint ConversationID;
|
||||
}
|
||||
|
||||
public sealed class CinematicSequencesRecord
|
||||
@@ -409,7 +416,7 @@ namespace Game.DataStorage
|
||||
public sbyte Gender;
|
||||
public int DissolveOutEffectID;
|
||||
public sbyte CreatureModelMinLod;
|
||||
public int[] TextureVariationFileDataID = new int[3];
|
||||
public int[] TextureVariationFileDataID = new int[4];
|
||||
}
|
||||
|
||||
public sealed class CreatureDisplayInfoExtraRecord
|
||||
@@ -542,6 +549,8 @@ namespace Game.DataStorage
|
||||
public int XpQuestDifficulty;
|
||||
public int AwardConditionID;
|
||||
public int MaxQtyWorldStateID;
|
||||
public uint RechargingAmountPerCycle;
|
||||
public uint RechargingCycleDurationMS;
|
||||
public int[] Flags = new int[2];
|
||||
}
|
||||
|
||||
@@ -554,9 +563,9 @@ namespace Game.DataStorage
|
||||
|
||||
public sealed class CurvePointRecord
|
||||
{
|
||||
public uint Id;
|
||||
public Vector2 Pos;
|
||||
public Vector2 PreSLSquishPos;
|
||||
public uint Id;
|
||||
public ushort CurveID;
|
||||
public byte OrderIndex;
|
||||
}
|
||||
|
||||
@@ -73,7 +73,6 @@ namespace Game.DataStorage
|
||||
public int OrderIndex;
|
||||
public int CompleteWorldStateID;
|
||||
public sbyte Bit;
|
||||
public int CreatureDisplayID;
|
||||
public int Flags;
|
||||
public int SpellIconFileID;
|
||||
public int Faction;
|
||||
|
||||
@@ -29,8 +29,10 @@ namespace Game.DataStorage
|
||||
public ushort ParentFactionID;
|
||||
public byte Expansion;
|
||||
public uint FriendshipRepID;
|
||||
public byte Flags;
|
||||
public int Flags;
|
||||
public ushort ParagonFactionID;
|
||||
public int RenownFactionID;
|
||||
public int RenownCurrencyID;
|
||||
public short[] ReputationClassMask = new short[4];
|
||||
public ushort[] ReputationFlags = new ushort[4];
|
||||
public int[] ReputationBase = new int[4];
|
||||
@@ -47,14 +49,16 @@ namespace Game.DataStorage
|
||||
|
||||
public sealed class FactionTemplateRecord
|
||||
{
|
||||
static int MAX_FACTION_RELATIONS = 8;
|
||||
|
||||
public uint Id;
|
||||
public ushort Faction;
|
||||
public ushort Flags;
|
||||
public byte FactionGroup;
|
||||
public byte FriendGroup;
|
||||
public byte EnemyGroup;
|
||||
public ushort[] Enemies = new ushort[4];
|
||||
public ushort[] Friend = new ushort[4];
|
||||
public ushort[] Enemies = new ushort[MAX_FACTION_RELATIONS];
|
||||
public ushort[] Friend = new ushort[MAX_FACTION_RELATIONS];
|
||||
|
||||
// helpers
|
||||
public bool IsFriendlyTo(FactionTemplateRecord entry)
|
||||
@@ -64,10 +68,10 @@ namespace Game.DataStorage
|
||||
|
||||
if (entry.Faction != 0)
|
||||
{
|
||||
for (int i = 0; i < 4; ++i)
|
||||
for (int i = 0; i < MAX_FACTION_RELATIONS; ++i)
|
||||
if (Enemies[i] == entry.Faction)
|
||||
return false;
|
||||
for (int i = 0; i < 4; ++i)
|
||||
for (int i = 0; i < MAX_FACTION_RELATIONS; ++i)
|
||||
if (Friend[i] == entry.Faction)
|
||||
return true;
|
||||
}
|
||||
@@ -80,10 +84,10 @@ namespace Game.DataStorage
|
||||
|
||||
if (entry.Faction != 0)
|
||||
{
|
||||
for (int i = 0; i < 4; ++i)
|
||||
for (int i = 0; i < MAX_FACTION_RELATIONS; ++i)
|
||||
if (Enemies[i] == entry.Faction)
|
||||
return true;
|
||||
for (int i = 0; i < 4; ++i)
|
||||
for (int i = 0; i < MAX_FACTION_RELATIONS; ++i)
|
||||
if (Friend[i] == entry.Faction)
|
||||
return false;
|
||||
}
|
||||
@@ -92,7 +96,7 @@ namespace Game.DataStorage
|
||||
public bool IsHostileToPlayers() { return (EnemyGroup & (byte)FactionMasks.Player) != 0; }
|
||||
public bool IsNeutralToAll()
|
||||
{
|
||||
for (int i = 0; i < 4; ++i)
|
||||
for (int i = 0; i < MAX_FACTION_RELATIONS; ++i)
|
||||
if (Enemies[i] != 0)
|
||||
return false;
|
||||
return EnemyGroup == 0 && FriendGroup == 0;
|
||||
|
||||
@@ -270,7 +270,7 @@ namespace Game.DataStorage
|
||||
public ushort UiTextureKitID;
|
||||
public int GarrTalentTreeType;
|
||||
public int PlayerConditionID;
|
||||
public sbyte FeatureTypeIndex;
|
||||
public byte FeatureTypeIndex;
|
||||
public sbyte FeatureSubtypeIndex;
|
||||
public int CurrencyID;
|
||||
}
|
||||
@@ -312,6 +312,26 @@ namespace Game.DataStorage
|
||||
public uint GlyphPropertiesID;
|
||||
}
|
||||
|
||||
public sealed class GossipNPCOptionRecord
|
||||
{
|
||||
public uint Id;
|
||||
public int GossipNpcOption;
|
||||
public int LFGDungeonsID;
|
||||
public int TrainerID;
|
||||
public int GarrFollowerTypeID;
|
||||
public int CharShipmentID;
|
||||
public int GarrTalentTreeID;
|
||||
public int UiMapID;
|
||||
public int UiItemInteractionID;
|
||||
public int Unknown_1000_8;
|
||||
public int Unknown_1000_9;
|
||||
public int CovenantID;
|
||||
public int GossipOptionID;
|
||||
public int TraitTreeID;
|
||||
public int ProfessionID;
|
||||
public int Unknown_1002_14;
|
||||
}
|
||||
|
||||
public sealed class GuildColorBackgroundRecord
|
||||
{
|
||||
public uint Id;
|
||||
|
||||
@@ -47,6 +47,8 @@ namespace Game.DataStorage
|
||||
public float DeathKnight;
|
||||
public float Monk;
|
||||
public float DemonHunter;
|
||||
public float Evoker;
|
||||
public float Adventurer;
|
||||
}
|
||||
|
||||
public sealed class GtBattlePetXPRecord
|
||||
@@ -128,6 +130,8 @@ namespace Game.DataStorage
|
||||
public float DeathKnight;
|
||||
public float Monk;
|
||||
public float DemonHunter;
|
||||
public float Evoker;
|
||||
public float Adventurer;
|
||||
public float Item;
|
||||
public float Consumable;
|
||||
public float Gem1;
|
||||
@@ -136,6 +140,7 @@ namespace Game.DataStorage
|
||||
public float Health;
|
||||
public float DamageReplaceStat;
|
||||
public float DamageSecondary;
|
||||
public float ManaConsumable;
|
||||
}
|
||||
|
||||
public sealed class GtXpRecord
|
||||
|
||||
@@ -59,6 +59,7 @@ namespace Game.DataStorage
|
||||
public byte ItemGroupSoundsID;
|
||||
public int ContentTuningID;
|
||||
public int ModifiedCraftingReagentItemID;
|
||||
public int CraftingQualityID;
|
||||
}
|
||||
|
||||
public sealed class ItemAppearanceRecord
|
||||
@@ -215,7 +216,7 @@ namespace Game.DataStorage
|
||||
public byte ArenaBracket; // arena slot restrictions (min slot value)
|
||||
public byte Flags;
|
||||
public byte MinFactionID;
|
||||
public byte MinReputation;
|
||||
public int MinReputation;
|
||||
public byte RequiredAchievement; // required personal arena rating
|
||||
public uint[] ItemID = new uint[ItemConst.MaxItemExtCostItems]; // required item id
|
||||
public ushort[] ItemCount = new ushort[ItemConst.MaxItemExtCostItems]; // required count of 1st item
|
||||
@@ -305,7 +306,7 @@ namespace Game.DataStorage
|
||||
public byte OverallQualityID;
|
||||
public int ExpansionID;
|
||||
public ushort MinFactionID;
|
||||
public byte MinReputation;
|
||||
public int MinReputation;
|
||||
public int AllowableClass;
|
||||
public sbyte RequiredLevel;
|
||||
public ushort RequiredSkill;
|
||||
@@ -356,6 +357,7 @@ namespace Game.DataStorage
|
||||
public int[] StatPercentEditor = new int[ItemConst.MaxStats];
|
||||
public uint Stackable;
|
||||
public uint MaxCount;
|
||||
public uint MinReputation;
|
||||
public uint RequiredAbility;
|
||||
public uint SellPrice;
|
||||
public uint BuyPrice;
|
||||
@@ -395,7 +397,6 @@ namespace Game.DataStorage
|
||||
public byte DamageType;
|
||||
public sbyte[] StatModifierBonusStat = new sbyte[ItemConst.MaxStats];
|
||||
public byte ContainerSlots;
|
||||
public byte MinReputation;
|
||||
public byte RequiredPVPMedal;
|
||||
public byte RequiredPVPRank;
|
||||
public sbyte RequiredLevel;
|
||||
|
||||
@@ -65,7 +65,6 @@ namespace Game.DataStorage
|
||||
public int ButtonFileDataID;
|
||||
public int ButtonSmallFileDataID;
|
||||
public int LoreFileDataID;
|
||||
public byte OrderIndex;
|
||||
public int Flags;
|
||||
public ushort AreaID;
|
||||
}
|
||||
|
||||
@@ -51,6 +51,7 @@ namespace Game.DataStorage
|
||||
public short WindSettingsID;
|
||||
public int ZmpFileDataID;
|
||||
public int WdtFileDataID;
|
||||
public int NavigationMaxDistance;
|
||||
public uint[] Flags = new uint[3];
|
||||
|
||||
// Helpers
|
||||
@@ -98,6 +99,7 @@ namespace Game.DataStorage
|
||||
case 1642:
|
||||
case 1643:
|
||||
case 2222:
|
||||
case 2444:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
@@ -107,7 +109,7 @@ namespace Game.DataStorage
|
||||
public bool IsDynamicDifficultyMap() { return GetFlags().HasFlag(MapFlags.DynamicDifficulty); }
|
||||
public bool IsFlexLocking() { return GetFlags().HasFlag(MapFlags.FlexibleRaidLocking); }
|
||||
public bool IsGarrison() { return GetFlags().HasFlag(MapFlags.Garrison); }
|
||||
public bool IsSplitByFaction() { return Id == 609 || Id == 2175; }
|
||||
public bool IsSplitByFaction() { return Id == 609 || Id == 2175 || Id == 2570; }
|
||||
|
||||
public MapFlags GetFlags() { return (MapFlags)Flags[0]; }
|
||||
public MapFlags2 GetFlags2() { return (MapFlags2)Flags[1]; }
|
||||
@@ -213,6 +215,7 @@ namespace Game.DataStorage
|
||||
public uint ModSpellAuraID;
|
||||
public short ReqMapID;
|
||||
public int PlayerConditionID;
|
||||
public int FlightCapabilityID;
|
||||
}
|
||||
|
||||
public sealed class MountTypeXCapabilityRecord
|
||||
|
||||
@@ -99,6 +99,7 @@ namespace Game.DataStorage
|
||||
public byte MaxPVPRank;
|
||||
public uint ContentTuningID;
|
||||
public int CovenantID;
|
||||
public uint TraitNodeEntryLogic;
|
||||
public ushort[] SkillID = new ushort[4];
|
||||
public ushort[] MinSkill = new ushort[4];
|
||||
public ushort[] MaxSkill = new ushort[4];
|
||||
@@ -123,6 +124,9 @@ namespace Game.DataStorage
|
||||
public uint[] CurrencyCount = new uint[4];
|
||||
public uint[] QuestKillMonster = new uint[6];
|
||||
public int[] MovementFlags = new int[2];
|
||||
public int[]TraitNodeEntryID = new int[4];
|
||||
public ushort[]TraitNodeEntryMinRank = new ushort[4];
|
||||
public ushort[]TraitNodeEntryMaxRank = new ushort[4];
|
||||
}
|
||||
|
||||
public sealed class PowerDisplayRecord
|
||||
@@ -141,12 +145,12 @@ namespace Game.DataStorage
|
||||
public string CostGlobalStringTag;
|
||||
public uint Id;
|
||||
public PowerType PowerTypeEnum;
|
||||
public sbyte MinPower;
|
||||
public short MaxBasePower;
|
||||
public sbyte CenterPower;
|
||||
public sbyte DefaultPower;
|
||||
public sbyte DisplayModifier;
|
||||
public short RegenInterruptTimeMS;
|
||||
public int MinPower;
|
||||
public int MaxBasePower;
|
||||
public int CenterPower;
|
||||
public int DefaultPower;
|
||||
public int DisplayModifier;
|
||||
public int RegenInterruptTimeMS;
|
||||
public float RegenPeace;
|
||||
public float RegenCombat;
|
||||
public short Flags;
|
||||
@@ -197,6 +201,7 @@ namespace Game.DataStorage
|
||||
public int ActionBarSpellID;
|
||||
public int PvpTalentCategoryID;
|
||||
public int LevelRequired;
|
||||
public int PlayerConditionID;
|
||||
}
|
||||
|
||||
public sealed class PvpTalentCategoryRecord
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace Game.DataStorage
|
||||
public LocalizedString InfoName;
|
||||
public sbyte Type;
|
||||
public int Modifiers;
|
||||
public ushort Profession;
|
||||
public int Profession;
|
||||
}
|
||||
|
||||
public sealed class QuestLineXQuestRecord
|
||||
@@ -69,6 +69,7 @@ namespace Game.DataStorage
|
||||
{
|
||||
public uint Id;
|
||||
public ushort UniqueBitFlag;
|
||||
public int UiQuestDetailsTheme;
|
||||
}
|
||||
|
||||
public sealed class QuestXPRecord
|
||||
|
||||
@@ -97,6 +97,8 @@ namespace Game.DataStorage
|
||||
public int ParentTierIndex;
|
||||
public ushort Flags;
|
||||
public int SpellBookSpellID;
|
||||
public int ExpansionNameSharedStringID;
|
||||
public int HordeExpansionNameSharedStringID;
|
||||
|
||||
public SkillLineFlags GetFlags() => (SkillLineFlags)Flags;
|
||||
}
|
||||
@@ -104,6 +106,8 @@ namespace Game.DataStorage
|
||||
public sealed class SkillLineAbilityRecord
|
||||
{
|
||||
public long RaceMask;
|
||||
public string AbilityVerb;
|
||||
public string AbilityAllVerb;
|
||||
public uint Id;
|
||||
public ushort SkillLine;
|
||||
public uint Spell;
|
||||
@@ -146,7 +150,7 @@ namespace Game.DataStorage
|
||||
public uint Id;
|
||||
public uint SoundType;
|
||||
public float VolumeFloat;
|
||||
public ushort Flags;
|
||||
public int Flags;
|
||||
public float MinDistance;
|
||||
public float DistanceCutoff;
|
||||
public byte EAXDef;
|
||||
@@ -159,6 +163,7 @@ namespace Game.DataStorage
|
||||
public float PitchAdjust;
|
||||
public ushort BusOverwriteID;
|
||||
public byte MaxInstances;
|
||||
public uint SoundMixGroupID;
|
||||
}
|
||||
|
||||
public sealed class SpecializationSpellsRecord
|
||||
@@ -194,15 +199,19 @@ namespace Game.DataStorage
|
||||
public sealed class SpellAuraRestrictionsRecord
|
||||
{
|
||||
public uint Id;
|
||||
public byte DifficultyID;
|
||||
public byte CasterAuraState;
|
||||
public byte TargetAuraState;
|
||||
public byte ExcludeCasterAuraState;
|
||||
public byte ExcludeTargetAuraState;
|
||||
public uint DifficultyID;
|
||||
public int CasterAuraState;
|
||||
public int TargetAuraState;
|
||||
public int ExcludeCasterAuraState;
|
||||
public int ExcludeTargetAuraState;
|
||||
public uint CasterAuraSpell;
|
||||
public uint TargetAuraSpell;
|
||||
public uint ExcludeCasterAuraSpell;
|
||||
public uint ExcludeTargetAuraSpell;
|
||||
public int CasterAuraType;
|
||||
public int TargetAuraType;
|
||||
public int ExcludeCasterAuraType;
|
||||
public int ExcludeTargetAuraType;
|
||||
public uint SpellID;
|
||||
}
|
||||
|
||||
@@ -219,7 +228,7 @@ namespace Game.DataStorage
|
||||
public uint SpellID;
|
||||
public byte FacingCasterFlags;
|
||||
public ushort MinFactionID;
|
||||
public sbyte MinReputation;
|
||||
public int MinReputation;
|
||||
public ushort RequiredAreasID;
|
||||
public byte RequiredAuraVision;
|
||||
public ushort RequiresSpellFocus;
|
||||
@@ -266,6 +275,7 @@ namespace Game.DataStorage
|
||||
public uint CategoryRecoveryTime;
|
||||
public uint RecoveryTime;
|
||||
public uint StartRecoveryTime;
|
||||
public uint AuraSpellID;
|
||||
public uint SpellID;
|
||||
}
|
||||
|
||||
@@ -340,6 +350,7 @@ namespace Game.DataStorage
|
||||
public uint Id;
|
||||
public string Name;
|
||||
public string HordeName;
|
||||
public int Duration;
|
||||
public uint[] EffectArg = new uint[ItemConst.MaxItemEnchantmentEffects];
|
||||
public float[] EffectScalingPoints = new float[ItemConst.MaxItemEnchantmentEffects];
|
||||
public uint IconFileDataID;
|
||||
@@ -439,6 +450,7 @@ namespace Game.DataStorage
|
||||
public int AltPowerBarID;
|
||||
public float PowerCostPct;
|
||||
public float PowerCostMaxPct;
|
||||
public float OptionalCostPct;
|
||||
public float PowerPctPerSecond;
|
||||
public PowerType PowerType;
|
||||
public uint RequiredAuraSpellID;
|
||||
@@ -495,6 +507,8 @@ namespace Game.DataStorage
|
||||
public uint SpellID;
|
||||
public int[] Reagent = new int[SpellConst.MaxReagents];
|
||||
public ushort[] ReagentCount = new ushort[SpellConst.MaxReagents];
|
||||
public short[] ReagentRecraftCount = new short[SpellConst.MaxReagents];
|
||||
public byte[] ReagentSource = new byte[SpellConst.MaxReagents];
|
||||
}
|
||||
|
||||
public sealed class SpellReagentsCurrencyRecord
|
||||
@@ -638,6 +652,7 @@ namespace Game.DataStorage
|
||||
public byte DifficultyID;
|
||||
public uint SpellVisualID;
|
||||
public float Probability;
|
||||
public int Flags;
|
||||
public int Priority;
|
||||
public int SpellIconFileID;
|
||||
public int ActiveIconFileID;
|
||||
|
||||
@@ -61,6 +61,7 @@ namespace Game.DataStorage
|
||||
public int ParentUiMapID;
|
||||
public int OrderIndex;
|
||||
public int ChildUiMapID;
|
||||
public int PlayerConditionID;
|
||||
public int OverrideHighlightFileDataID;
|
||||
public int OverrideHighlightAtlasID;
|
||||
public int Flags;
|
||||
|
||||
Reference in New Issue
Block a user