Core/Maps
* Corrected liquid type extraction in maps - MCLQ chunk must be parsed together with MH2O (they stack) * Fixed liquid detection in WMO objects * Implemented LiquidType.dbc use, players will now get proper auras in special liquids * Turned off slime damage by default (Naxxramas uses periodic damage aura for this purpose) * Implemented liquid type overrides basing on area/zone * Renamed final temp_gameobject_models to GameObjectModels.dtree (the temporary one produced by vmap extractor remains unaffected) Note: Map and Vmap re-extraction is required
This commit is contained in:
@@ -527,6 +527,7 @@ struct AreaTableEntry
|
||||
char* area_name[16]; // 11-26
|
||||
// 27, string flags, unused
|
||||
uint32 team; // 28
|
||||
uint32 LiquidTypeOverride[4]; // 29-32 liquid override by type
|
||||
|
||||
// helpers
|
||||
bool IsSanctuary() const
|
||||
@@ -1214,30 +1215,29 @@ struct LFGDungeonEntry
|
||||
uint32 Entry() const { return ID + (type << 24); }
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
struct LiquidTypeEntry
|
||||
{
|
||||
uint32 ID; // 0
|
||||
char* name; // 1
|
||||
uint32 flags; // 2 Water: 1|2|4|8, Magma: 8|16|32|64, Slime: 2|64|256, WMO Ocean: 1|2|4|8|512
|
||||
uint32 type; // 3 0: Water, 1: Ocean, 2: Magma, 3: Slime
|
||||
uint32 soundid; // 4 Reference to SoundEntries.dbc
|
||||
uint32 spellID; // 5 Reference to Spell.dbc
|
||||
float maxDarkenDepth // 6 Only Slime (6) and Magma (7)
|
||||
float fogDarkenIntensity // 7 Only oceans got values here!
|
||||
float ambDarkenIntensity // 8 Only oceans got values here!
|
||||
float dirDarkenIntensity // 9 Only oceans got values here!
|
||||
uint32 lightID // 10 Only Slime (6) and Magma (7)
|
||||
float particleScale // 11 0: Slime, 1: Water/Ocean, 4: Magma
|
||||
uint32 particleMovement // 12
|
||||
uint32 particleTexSlots // 13
|
||||
uint32 LiquidMaterialID // 14 Reference to LiquidMaterial.dbc
|
||||
char* texture[6]; // 15-20
|
||||
uint32 color[2] // 21-22
|
||||
float floats[18]; // 23-40 Most likely these are attributes for the shaders. Water: (23, TextureTilesPerBlock),(24, Rotation) Magma: (23, AnimationX),(24, AnimationY)
|
||||
uint32 ints[4] // 41-44
|
||||
uint32 Id;
|
||||
//char* Name;
|
||||
//uint32 Flags;
|
||||
uint32 Type;
|
||||
//uint32 SoundId;
|
||||
uint32 SpellId;
|
||||
//float MaxDarkenDepth;
|
||||
//float FogDarkenIntensity;
|
||||
//float AmbDarkenIntensity;
|
||||
//float DirDarkenIntensity;
|
||||
//uint32 LightID;
|
||||
//float ParticleScale;
|
||||
//uint32 ParticleMovement;
|
||||
//uint32 ParticleTexSlots;
|
||||
//uint32 LiquidMaterialID;
|
||||
//char* Texture[6];
|
||||
//uint32 Color[2];
|
||||
//float Unk1[18];
|
||||
//uint32 Unk2[4];
|
||||
};
|
||||
*/
|
||||
|
||||
#define MAX_LOCK_CASE 8
|
||||
|
||||
|
||||
Reference in New Issue
Block a user