mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-31 04:56:20 +00:00
Implemented EQEmu::TintProfile
This commit is contained in:
@@ -2103,7 +2103,7 @@ namespace RoF
|
||||
|
||||
for (int r = 0; r < 7; r++)
|
||||
{
|
||||
outapp->WriteUInt32(emu->item_tint[r].Color);
|
||||
outapp->WriteUInt32(emu->item_tint.Slot[r].Color);
|
||||
}
|
||||
// Write zeroes for extra two tint values
|
||||
outapp->WriteUInt32(0);
|
||||
@@ -2113,7 +2113,7 @@ namespace RoF
|
||||
|
||||
for (int r = 0; r < 7; r++)
|
||||
{
|
||||
outapp->WriteUInt32(emu->item_tint[r].Color);
|
||||
outapp->WriteUInt32(emu->item_tint.Slot[r].Color);
|
||||
}
|
||||
// Write zeroes for extra two tint values
|
||||
outapp->WriteUInt32(0);
|
||||
@@ -4086,7 +4086,7 @@ namespace RoF
|
||||
for (k = 0; k < 9; ++k)
|
||||
{
|
||||
{
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->colors[k].Color);
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->equipment_tint.Slot[k].Color);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2187,7 +2187,7 @@ namespace RoF2
|
||||
|
||||
for (int r = 0; r < 7; r++)
|
||||
{
|
||||
outapp->WriteUInt32(emu->item_tint[r].Color);
|
||||
outapp->WriteUInt32(emu->item_tint.Slot[r].Color);
|
||||
}
|
||||
// Write zeroes for extra two tint values
|
||||
outapp->WriteUInt32(0);
|
||||
@@ -2197,7 +2197,7 @@ namespace RoF2
|
||||
|
||||
for (int r = 0; r < 7; r++)
|
||||
{
|
||||
outapp->WriteUInt32(emu->item_tint[r].Color);
|
||||
outapp->WriteUInt32(emu->item_tint.Slot[r].Color);
|
||||
}
|
||||
// Write zeroes for extra two tint values
|
||||
outapp->WriteUInt32(0);
|
||||
@@ -4309,7 +4309,7 @@ namespace RoF2
|
||||
for (k = 0; k < 9; ++k)
|
||||
{
|
||||
{
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->colors[k].Color);
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->equipment_tint.Slot[k].Color);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@ struct AdventureInfo {
|
||||
** Merth: Gave struct a name so gcc 2.96 would compile
|
||||
**
|
||||
*/
|
||||
struct Color_Struct
|
||||
struct Tint_Struct
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
@@ -171,11 +171,28 @@ struct Color_Struct
|
||||
uint8 Green;
|
||||
uint8 Red;
|
||||
uint8 UseTint; // if there's a tint this is FF
|
||||
} RGB;
|
||||
};
|
||||
uint32 Color;
|
||||
};
|
||||
};
|
||||
|
||||
struct TintProfile {
|
||||
union {
|
||||
struct {
|
||||
Tint_Struct Head;
|
||||
Tint_Struct Chest;
|
||||
Tint_Struct Arms;
|
||||
Tint_Struct Wrist;
|
||||
Tint_Struct Hands;
|
||||
Tint_Struct Legs;
|
||||
Tint_Struct Feet;
|
||||
Tint_Struct Primary;
|
||||
Tint_Struct Secondary;
|
||||
};
|
||||
Tint_Struct Slot[EQEmu::textures::TextureCount];
|
||||
};
|
||||
};
|
||||
|
||||
struct CharSelectEquip
|
||||
{
|
||||
uint32 Material;
|
||||
@@ -183,7 +200,7 @@ struct CharSelectEquip
|
||||
uint32 EliteMaterial;
|
||||
uint32 HeroForgeModel;
|
||||
uint32 Material2;
|
||||
Color_Struct Color;
|
||||
Tint_Struct Color;
|
||||
};
|
||||
|
||||
struct CharacterSelectEntry_Struct
|
||||
@@ -447,22 +464,7 @@ struct Spawn_Struct
|
||||
/*0000*/ uint32 unknown18;
|
||||
/*0000*/ uint32 unknown19;
|
||||
Spawn_Struct_Position Position;
|
||||
/*0000*/ union
|
||||
{
|
||||
struct
|
||||
{
|
||||
/*0000*/ Color_Struct color_helmet; // Color of helmet item
|
||||
/*0000*/ Color_Struct color_chest; // Color of chest item
|
||||
/*0000*/ Color_Struct color_arms; // Color of arms item
|
||||
/*0000*/ Color_Struct color_bracers; // Color of bracers item
|
||||
/*0000*/ Color_Struct color_hands; // Color of hands item
|
||||
/*0000*/ Color_Struct color_legs; // Color of legs item
|
||||
/*0000*/ Color_Struct color_feet; // Color of feet item
|
||||
/*0000*/ Color_Struct color_primary; // Color of primary item
|
||||
/*0000*/ Color_Struct color_secondary; // Color of secondary item
|
||||
} equipment_colors;
|
||||
/*0000*/ Color_Struct colors[9]; // Array elements correspond to struct equipment_colors above
|
||||
};
|
||||
/*0000*/ TintProfile equipment_tint;
|
||||
|
||||
// skip these bytes if not a valid player race
|
||||
/*0000*/ union
|
||||
@@ -1107,9 +1109,9 @@ union
|
||||
/*00624*/ uint32 equip2_count; // Seen 9
|
||||
/*00628*/ EquipStruct equipment2[EQEmu::textures::TextureCount]; // Appears to be Visible slots, but all 0s
|
||||
/*00808*/ uint32 tint_count; // Seen 9
|
||||
/*00812*/ Color_Struct item_tint[EQEmu::textures::TextureCount]; // RR GG BB 00
|
||||
/*00812*/ TintProfile item_tint; // RR GG BB 00
|
||||
/*00848*/ uint32 tint_count2; // Seen 9
|
||||
/*00852*/ Color_Struct item_tint2[EQEmu::textures::TextureCount]; // RR GG BB 00
|
||||
/*00852*/ TintProfile item_tint2; // RR GG BB 00
|
||||
/*00888*/ uint8 haircolor; // Player hair color
|
||||
/*00889*/ uint8 beardcolor; // Player beard color
|
||||
/*00890*/ uint32 unknown_rof5; //
|
||||
@@ -1385,7 +1387,7 @@ struct WearChange_Struct{
|
||||
/*010*/ uint32 elite_material; // 1 for Drakkin Elite Material
|
||||
/*014*/ uint32 hero_forge_model; // New to VoA
|
||||
/*018*/ uint32 unknown18; // New to RoF2
|
||||
/*022*/ Color_Struct color;
|
||||
/*022*/ Tint_Struct color;
|
||||
/*026*/ uint8 wear_slot_id;
|
||||
/*027*/
|
||||
};
|
||||
@@ -3634,27 +3636,6 @@ struct PetitionBug_Struct{
|
||||
char text[1028];
|
||||
};
|
||||
|
||||
struct DyeStruct
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Color_Struct head;
|
||||
struct Color_Struct chest;
|
||||
struct Color_Struct arms;
|
||||
struct Color_Struct wrists;
|
||||
struct Color_Struct hands;
|
||||
struct Color_Struct legs;
|
||||
struct Color_Struct feet;
|
||||
struct Color_Struct primary; // you can't actually dye this
|
||||
struct Color_Struct secondary; // or this
|
||||
}
|
||||
dyes;
|
||||
struct Color_Struct dye[9];
|
||||
};
|
||||
};
|
||||
|
||||
struct ApproveZone_Struct {
|
||||
char name[64];
|
||||
uint32 zoneid;
|
||||
|
||||
@@ -163,7 +163,7 @@ struct AdventureInfo {
|
||||
** Merth: Gave struct a name so gcc 2.96 would compile
|
||||
**
|
||||
*/
|
||||
struct Color_Struct
|
||||
struct Tint_Struct
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
@@ -171,11 +171,28 @@ struct Color_Struct
|
||||
uint8 Green;
|
||||
uint8 Red;
|
||||
uint8 UseTint; // if there's a tint this is FF
|
||||
} RGB;
|
||||
};
|
||||
uint32 Color;
|
||||
};
|
||||
};
|
||||
|
||||
struct TintProfile {
|
||||
union {
|
||||
struct {
|
||||
Tint_Struct Head;
|
||||
Tint_Struct Chest;
|
||||
Tint_Struct Arms;
|
||||
Tint_Struct Wrist;
|
||||
Tint_Struct Hands;
|
||||
Tint_Struct Legs;
|
||||
Tint_Struct Feet;
|
||||
Tint_Struct Primary;
|
||||
Tint_Struct Secondary;
|
||||
};
|
||||
Tint_Struct Slot[EQEmu::textures::TextureCount];
|
||||
};
|
||||
};
|
||||
|
||||
struct CharSelectEquip
|
||||
{
|
||||
uint32 Material;
|
||||
@@ -183,7 +200,7 @@ struct CharSelectEquip
|
||||
uint32 EliteMaterial;
|
||||
uint32 HeroForgeModel;
|
||||
uint32 Material2;
|
||||
Color_Struct Color;
|
||||
Tint_Struct Color;
|
||||
};
|
||||
|
||||
struct CharacterSelectEntry_Struct
|
||||
@@ -441,22 +458,7 @@ struct Spawn_Struct
|
||||
/*0000*/ uint32 unknown18;
|
||||
/*0000*/ uint32 unknown19;
|
||||
Spawn_Struct_Position Position;
|
||||
/*0000*/ union
|
||||
{
|
||||
struct
|
||||
{
|
||||
/*0000*/ Color_Struct color_helmet; // Color of helmet item
|
||||
/*0000*/ Color_Struct color_chest; // Color of chest item
|
||||
/*0000*/ Color_Struct color_arms; // Color of arms item
|
||||
/*0000*/ Color_Struct color_bracers; // Color of bracers item
|
||||
/*0000*/ Color_Struct color_hands; // Color of hands item
|
||||
/*0000*/ Color_Struct color_legs; // Color of legs item
|
||||
/*0000*/ Color_Struct color_feet; // Color of feet item
|
||||
/*0000*/ Color_Struct color_primary; // Color of primary item
|
||||
/*0000*/ Color_Struct color_secondary; // Color of secondary item
|
||||
} equipment_colors;
|
||||
/*0000*/ Color_Struct colors[9]; // Array elements correspond to struct equipment_colors above
|
||||
};
|
||||
/*0000*/ TintProfile equipment_tint;
|
||||
|
||||
// skip these bytes if not a valid player race
|
||||
/*0000*/ union
|
||||
@@ -1090,9 +1092,9 @@ union
|
||||
/*00624*/ uint32 equip2_count; // Seen 9
|
||||
/*00628*/ EquipStruct equipment2[9]; // Appears to be Visible slots, but all 0s
|
||||
/*00808*/ uint32 tint_count; // Seen 9
|
||||
/*00812*/ Color_Struct item_tint[9]; // RR GG BB 00
|
||||
/*00812*/ TintProfile item_tint; // RR GG BB 00
|
||||
/*00848*/ uint32 tint_count2; // Seen 9
|
||||
/*00852*/ Color_Struct item_tint2[9]; // RR GG BB 00
|
||||
/*00852*/ TintProfile item_tint2; // RR GG BB 00
|
||||
/*00888*/ uint8 haircolor; // Player hair color
|
||||
/*00889*/ uint8 beardcolor; // Player beard color
|
||||
/*00890*/ uint32 unknown_rof5; //
|
||||
@@ -1415,7 +1417,7 @@ struct WearChange_Struct{
|
||||
/*010*/ uint32 elite_material; // 1 for Drakkin Elite Material
|
||||
/*014*/ uint32 hero_forge_model; // New to VoA
|
||||
/*018*/ uint32 unknown18; // New to RoF
|
||||
/*022*/ Color_Struct color;
|
||||
/*022*/ Tint_Struct color;
|
||||
/*026*/ uint8 wear_slot_id;
|
||||
/*027*/
|
||||
};
|
||||
@@ -3634,27 +3636,6 @@ struct PetitionBug_Struct{
|
||||
char text[1028];
|
||||
};
|
||||
|
||||
struct DyeStruct
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Color_Struct head;
|
||||
struct Color_Struct chest;
|
||||
struct Color_Struct arms;
|
||||
struct Color_Struct wrists;
|
||||
struct Color_Struct hands;
|
||||
struct Color_Struct legs;
|
||||
struct Color_Struct feet;
|
||||
struct Color_Struct primary; // you can't actually dye this
|
||||
struct Color_Struct secondary; // or this
|
||||
}
|
||||
dyes;
|
||||
struct Color_Struct dye[9];
|
||||
};
|
||||
};
|
||||
|
||||
struct ApproveZone_Struct {
|
||||
char name[64];
|
||||
uint32 zoneid;
|
||||
|
||||
@@ -1560,7 +1560,7 @@ namespace SoD
|
||||
//eq->colors[r].color = emu->colors[r].color;
|
||||
}
|
||||
for (r = 0; r < 7; r++) {
|
||||
OUT(item_tint[r].Color);
|
||||
OUT(item_tint.Slot[r].Color);
|
||||
}
|
||||
// OUT(unknown00224[48]);
|
||||
//NOTE: new client supports 300 AAs, our internal rep/PP
|
||||
@@ -2763,7 +2763,7 @@ namespace SoD
|
||||
for (k = 0; k < 9; ++k)
|
||||
{
|
||||
{
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->colors[k].Color);
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->equipment_tint.Slot[k].Color);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,7 +122,7 @@ struct AdventureInfo {
|
||||
** Merth: Gave struct a name so gcc 2.96 would compile
|
||||
**
|
||||
*/
|
||||
struct Color_Struct
|
||||
struct Tint_Struct
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
@@ -130,17 +130,34 @@ struct Color_Struct
|
||||
uint8 Green;
|
||||
uint8 Red;
|
||||
uint8 UseTint; // if there's a tint this is FF
|
||||
} RGB;
|
||||
};
|
||||
uint32 Color;
|
||||
};
|
||||
};
|
||||
|
||||
struct TintProfile {
|
||||
union {
|
||||
struct {
|
||||
Tint_Struct Head;
|
||||
Tint_Struct Chest;
|
||||
Tint_Struct Arms;
|
||||
Tint_Struct Wrist;
|
||||
Tint_Struct Hands;
|
||||
Tint_Struct Legs;
|
||||
Tint_Struct Feet;
|
||||
Tint_Struct Primary;
|
||||
Tint_Struct Secondary;
|
||||
};
|
||||
Tint_Struct Slot[EQEmu::textures::TextureCount];
|
||||
};
|
||||
};
|
||||
|
||||
struct CharSelectEquip
|
||||
{
|
||||
uint32 Material;
|
||||
uint32 Unknown1;
|
||||
uint32 EliteMaterial;
|
||||
Color_Struct Color;
|
||||
Tint_Struct Color;
|
||||
};
|
||||
|
||||
struct CharacterSelectEntry_Struct
|
||||
@@ -314,22 +331,7 @@ struct Spawn_Struct
|
||||
/*0000*/ uint32 unknown18;
|
||||
/*0000*/ uint32 unknown19;
|
||||
Spawn_Struct_Position Position;
|
||||
/*0000*/ union
|
||||
{
|
||||
struct
|
||||
{
|
||||
/*0000*/ Color_Struct color_helmet; // Color of helmet item
|
||||
/*0000*/ Color_Struct color_chest; // Color of chest item
|
||||
/*0000*/ Color_Struct color_arms; // Color of arms item
|
||||
/*0000*/ Color_Struct color_bracers; // Color of bracers item
|
||||
/*0000*/ Color_Struct color_hands; // Color of hands item
|
||||
/*0000*/ Color_Struct color_legs; // Color of legs item
|
||||
/*0000*/ Color_Struct color_feet; // Color of feet item
|
||||
/*0000*/ Color_Struct color_primary; // Color of primary item
|
||||
/*0000*/ Color_Struct color_secondary; // Color of secondary item
|
||||
} equipment_colors;
|
||||
/*0000*/ Color_Struct colors[9]; // Array elements correspond to struct equipment_colors above
|
||||
};
|
||||
/*0000*/ TintProfile equipment_tint;
|
||||
|
||||
// skip these bytes if not a valid player race
|
||||
/*0000*/ union
|
||||
@@ -920,7 +922,7 @@ struct PlayerProfile_Struct
|
||||
/*00228*/ EquipStruct equipment[9]; //Live Shows [108] for this part
|
||||
};
|
||||
/*00340*/ uint8 unknown00224[156]; // Live Shows [160]
|
||||
/*00496*/ Color_Struct item_tint[9]; // RR GG BB 00
|
||||
/*00496*/ TintProfile item_tint; // RR GG BB 00
|
||||
/*00532*/ AA_Array aa_array[MAX_PP_AA_ARRAY]; // [3600] AAs 12 bytes each
|
||||
/*04132*/ uint32 points; // Unspent Practice points - RELOCATED???
|
||||
/*04136*/ uint32 mana; // Current mana
|
||||
@@ -1177,7 +1179,7 @@ struct WearChange_Struct{
|
||||
/*002*/ uint32 material;
|
||||
/*006*/ uint32 unknown06;
|
||||
/*010*/ uint32 elite_material; // 1 for Drakkin Elite Material
|
||||
/*014*/ Color_Struct color;
|
||||
/*014*/ Tint_Struct color;
|
||||
/*018*/ uint8 wear_slot_id;
|
||||
/*019*/
|
||||
};
|
||||
@@ -3091,27 +3093,6 @@ struct PetitionBug_Struct{
|
||||
char text[1028];
|
||||
};
|
||||
|
||||
struct DyeStruct
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Color_Struct head;
|
||||
struct Color_Struct chest;
|
||||
struct Color_Struct arms;
|
||||
struct Color_Struct wrists;
|
||||
struct Color_Struct hands;
|
||||
struct Color_Struct legs;
|
||||
struct Color_Struct feet;
|
||||
struct Color_Struct primary; // you can't actually dye this
|
||||
struct Color_Struct secondary; // or this
|
||||
}
|
||||
dyes;
|
||||
struct Color_Struct dye[9];
|
||||
};
|
||||
};
|
||||
|
||||
struct ApproveZone_Struct {
|
||||
char name[64];
|
||||
uint32 zoneid;
|
||||
|
||||
@@ -1216,7 +1216,7 @@ namespace SoF
|
||||
//eq->colors[r].color = emu->colors[r].color;
|
||||
}
|
||||
for (r = 0; r < 7; r++) {
|
||||
OUT(item_tint[r].Color);
|
||||
OUT(item_tint.Slot[r].Color);
|
||||
}
|
||||
// OUT(unknown00224[48]);
|
||||
//NOTE: new client supports 300 AAs, our internal rep/PP
|
||||
@@ -2084,7 +2084,7 @@ namespace SoF
|
||||
eq->equipment[k].Material = emu->equipment[k].Material;
|
||||
eq->equipment[k].Unknown1 = emu->equipment[k].Unknown1;
|
||||
eq->equipment[k].EliteMaterial = emu->equipment[k].EliteMaterial;
|
||||
eq->colors[k].Color = emu->colors[k].Color;
|
||||
eq->equipment_tint.Slot[k].Color = emu->equipment_tint.Slot[k].Color;
|
||||
}
|
||||
eq->StandState = emu->StandState;
|
||||
eq->guildID = emu->guildID;
|
||||
@@ -2147,7 +2147,7 @@ namespace SoF
|
||||
eq->petOwnerId = emu->petOwnerId;
|
||||
eq->pvp = 0; // 0 = non-pvp colored name, 1 = red pvp name
|
||||
for (k = 0; k < 9; k++) {
|
||||
eq->colors[k].Color = emu->colors[k].Color;
|
||||
eq->equipment_tint.Slot[k].Color = emu->equipment_tint.Slot[k].Color;
|
||||
}
|
||||
eq->anon = emu->anon;
|
||||
eq->face = emu->face;
|
||||
|
||||
@@ -122,7 +122,7 @@ struct AdventureInfo {
|
||||
** Merth: Gave struct a name so gcc 2.96 would compile
|
||||
**
|
||||
*/
|
||||
struct Color_Struct
|
||||
struct Tint_Struct
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
@@ -130,17 +130,34 @@ struct Color_Struct
|
||||
uint8 Green;
|
||||
uint8 Red;
|
||||
uint8 UseTint; // if there's a tint this is FF
|
||||
} RGB;
|
||||
};
|
||||
uint32 Color;
|
||||
};
|
||||
};
|
||||
|
||||
struct TintProfile {
|
||||
union {
|
||||
struct {
|
||||
Tint_Struct Head;
|
||||
Tint_Struct Chest;
|
||||
Tint_Struct Arms;
|
||||
Tint_Struct Wrist;
|
||||
Tint_Struct Hands;
|
||||
Tint_Struct Legs;
|
||||
Tint_Struct Feet;
|
||||
Tint_Struct Primary;
|
||||
Tint_Struct Secondary;
|
||||
};
|
||||
Tint_Struct Slot[EQEmu::textures::TextureCount];
|
||||
};
|
||||
};
|
||||
|
||||
struct CharSelectEquip
|
||||
{
|
||||
uint32 Material;
|
||||
uint32 Unknown1;
|
||||
uint32 EliteMaterial;
|
||||
Color_Struct Color;
|
||||
Tint_Struct Color;
|
||||
};
|
||||
|
||||
struct CharacterSelectEntry_Struct
|
||||
@@ -314,22 +331,7 @@ union
|
||||
/*0775*/ char name[64]; // Player's Name
|
||||
/*0839*/ uint32 petOwnerId; // If this is a pet, the spawn id of owner
|
||||
/*0843*/ uint8 pvp; // 0 = normal name color, 2 = PVP name color
|
||||
/*0844*/ union
|
||||
{
|
||||
struct
|
||||
{
|
||||
/*0844*/ Color_Struct color_helmet; // Color of helmet item
|
||||
/*0848*/ Color_Struct color_chest; // Color of chest item
|
||||
/*0852*/ Color_Struct color_arms; // Color of arms item
|
||||
/*0856*/ Color_Struct color_bracers; // Color of bracers item
|
||||
/*0860*/ Color_Struct color_hands; // Color of hands item
|
||||
/*0864*/ Color_Struct color_legs; // Color of legs item
|
||||
/*0868*/ Color_Struct color_feet; // Color of feet item
|
||||
/*0872*/ Color_Struct color_primary; // Color of primary item
|
||||
/*0876*/ Color_Struct color_secondary; // Color of secondary item
|
||||
} equipment_colors;
|
||||
/*0844*/ Color_Struct colors[9]; // Array elements correspond to struct equipment_colors above
|
||||
};
|
||||
/*0844*/ TintProfile equipment_tint;
|
||||
/*0880*/ uint8 anon; // 0=normal, 1=anon, 2=roleplay
|
||||
/*0881*/ uint8 face;
|
||||
/*0882*/ uint8 drakkin_details; // Face Details (Spikes) on Drakkin 0 - 7
|
||||
@@ -899,7 +901,7 @@ struct PlayerProfile_Struct //23576 Octets
|
||||
/*00228*/ EquipStruct equipment[9]; //Live Shows [108] for this part
|
||||
};
|
||||
/*00336*/ uint8 unknown00224[156]; // Live Shows [160]
|
||||
/*00496*/ Color_Struct item_tint[9]; // RR GG BB 00
|
||||
/*00496*/ TintProfile item_tint; // RR GG BB 00
|
||||
/*00544*/ AA_Array aa_array[MAX_PP_AA_ARRAY]; // [3600] AAs 12 bytes each
|
||||
/*04132*/ uint32 points; // Unspent Practice points - RELOCATED???
|
||||
/*04136*/ uint32 mana; // Current mana
|
||||
@@ -1155,7 +1157,7 @@ struct WearChange_Struct{
|
||||
/*002*/ uint32 material;
|
||||
/*006*/ uint32 unknown06;
|
||||
/*010*/ uint32 elite_material; // 1 for Drakkin Elite Material
|
||||
/*014*/ Color_Struct color;
|
||||
/*014*/ Tint_Struct color;
|
||||
/*018*/ uint8 wear_slot_id;
|
||||
/*019*/
|
||||
};
|
||||
@@ -2954,27 +2956,6 @@ struct PetitionBug_Struct{
|
||||
char text[1028];
|
||||
};
|
||||
|
||||
struct DyeStruct
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Color_Struct head;
|
||||
struct Color_Struct chest;
|
||||
struct Color_Struct arms;
|
||||
struct Color_Struct wrists;
|
||||
struct Color_Struct hands;
|
||||
struct Color_Struct legs;
|
||||
struct Color_Struct feet;
|
||||
struct Color_Struct primary; // you can't actually dye this
|
||||
struct Color_Struct secondary; // or this
|
||||
}
|
||||
dyes;
|
||||
struct Color_Struct dye[9];
|
||||
};
|
||||
};
|
||||
|
||||
struct ApproveZone_Struct {
|
||||
char name[64];
|
||||
uint32 zoneid;
|
||||
|
||||
@@ -905,7 +905,7 @@ namespace Titanium
|
||||
// OUT(unknown00178[10]);
|
||||
for (r = 0; r < 9; r++) {
|
||||
OUT(item_material[r]);
|
||||
OUT(item_tint[r].Color);
|
||||
OUT(item_tint.Slot[r].Color);
|
||||
}
|
||||
// OUT(unknown00224[48]);
|
||||
for (r = 0; r < structs::MAX_PP_AA_ARRAY; r++) {
|
||||
@@ -1224,7 +1224,7 @@ namespace Titanium
|
||||
eq->Race[char_index] = 1;
|
||||
|
||||
for (int index = 0; index < EQEmu::textures::TextureCount; ++index) {
|
||||
eq->CS_Colors[char_index][index].Color = emu_cse->Equip[index].Color.Color;
|
||||
eq->CS_Colors[char_index].Slot[index].Color = emu_cse->Equip[index].Color.Color;
|
||||
}
|
||||
|
||||
eq->BeardColor[char_index] = emu_cse->BeardColor;
|
||||
@@ -1261,7 +1261,7 @@ namespace Titanium
|
||||
eq->Race[char_index] = 0;
|
||||
|
||||
for (int index = 0; index < EQEmu::textures::TextureCount; ++index) {
|
||||
eq->CS_Colors[char_index][index].Color = 0;
|
||||
eq->CS_Colors[char_index].Slot[index].Color = 0;
|
||||
}
|
||||
|
||||
eq->BeardColor[char_index] = 0;
|
||||
@@ -1601,7 +1601,7 @@ namespace Titanium
|
||||
// eq->unknown0194[3] = emu->unknown0194[3];
|
||||
for (k = 0; k < 9; k++) {
|
||||
eq->equipment[k] = emu->equipment[k].Material;
|
||||
eq->colors[k].Color = emu->colors[k].Color;
|
||||
eq->equipment_tint.Slot[k].Color = emu->equipment_tint.Slot[k].Color;
|
||||
}
|
||||
for (k = 0; k < 8; k++) {
|
||||
eq->set_to_0xFF[k] = 0xFF;
|
||||
|
||||
@@ -118,7 +118,7 @@ struct AdventureInfo {
|
||||
** Merth: Gave struct a name so gcc 2.96 would compile
|
||||
**
|
||||
*/
|
||||
struct Color_Struct
|
||||
struct Tint_Struct
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
@@ -126,11 +126,28 @@ struct Color_Struct
|
||||
uint8 Green;
|
||||
uint8 Red;
|
||||
uint8 UseTint; // if there's a tint this is FF
|
||||
} RGB;
|
||||
};
|
||||
uint32 Color;
|
||||
};
|
||||
};
|
||||
|
||||
struct TintProfile {
|
||||
union {
|
||||
struct {
|
||||
Tint_Struct Head;
|
||||
Tint_Struct Chest;
|
||||
Tint_Struct Arms;
|
||||
Tint_Struct Wrist;
|
||||
Tint_Struct Hands;
|
||||
Tint_Struct Legs;
|
||||
Tint_Struct Feet;
|
||||
Tint_Struct Primary;
|
||||
Tint_Struct Secondary;
|
||||
};
|
||||
Tint_Struct Slot[EQEmu::textures::TextureCount];
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
** Character Selection Struct
|
||||
** Length: 1704 Bytes
|
||||
@@ -139,7 +156,7 @@ struct Color_Struct
|
||||
struct CharacterSelect_Struct
|
||||
{
|
||||
/*0000*/ uint32 Race[10]; // Characters Race
|
||||
/*0040*/ Color_Struct CS_Colors[10][9]; // Characters Equipment Colors
|
||||
/*0040*/ TintProfile CS_Colors[10]; // Characters Equipment Colors - packet requires length for 10 characters..but, client is limited to 8
|
||||
/*0400*/ uint8 BeardColor[10]; // Characters beard Color
|
||||
/*0410*/ uint8 HairStyle[10]; // Characters hair style
|
||||
/*0420*/ uint32 Equip[10][9]; // 0=helm, 1=chest, 2=arm, 3=bracer, 4=hand, 5=leg, 6=boot, 7=melee1, 8=melee2 (Might not be)
|
||||
@@ -284,22 +301,7 @@ union
|
||||
};
|
||||
/*0340*/ uint32 spawnId; // Spawn Id
|
||||
/*0344*/ uint8 unknown0344[4];
|
||||
/*0348*/ union
|
||||
{
|
||||
struct
|
||||
{
|
||||
/*0348*/ Color_Struct color_helmet; // Color of helmet item
|
||||
/*0352*/ Color_Struct color_chest; // Color of chest item
|
||||
/*0356*/ Color_Struct color_arms; // Color of arms item
|
||||
/*0360*/ Color_Struct color_bracers; // Color of bracers item
|
||||
/*0364*/ Color_Struct color_hands; // Color of hands item
|
||||
/*0368*/ Color_Struct color_legs; // Color of legs item
|
||||
/*0372*/ Color_Struct color_feet; // Color of feet item
|
||||
/*0376*/ Color_Struct color_primary; // Color of primary item
|
||||
/*0380*/ Color_Struct color_secondary; // Color of secondary item
|
||||
} equipment_colors;
|
||||
/*0348*/ Color_Struct colors[9]; // Array elements correspond to struct equipment_colors above
|
||||
};
|
||||
/*0348*/ TintProfile equipment_tint;
|
||||
/*0384*/ uint8 lfg; // 0=off, 1=lfg on
|
||||
/*0385*/
|
||||
|
||||
@@ -812,7 +814,7 @@ struct PlayerProfile_Struct
|
||||
/*00178*/ uint8 unknown00178[10];
|
||||
/*00188*/ uint32 item_material[9]; // Item texture/material of worn items
|
||||
/*00224*/ uint8 unknown00224[44];
|
||||
/*00268*/ Color_Struct item_tint[9]; // RR GG BB 00
|
||||
/*00268*/ TintProfile item_tint; // RR GG BB 00
|
||||
/*00304*/ AA_Array aa_array[MAX_PP_AA_ARRAY]; // AAs
|
||||
/*02224*/ uint32 points; // Unspent Practice points
|
||||
/*02228*/ uint32 mana; // Current mana
|
||||
@@ -1035,7 +1037,7 @@ struct SpecialMesg_Struct
|
||||
struct WearChange_Struct{
|
||||
/*000*/ uint16 spawn_id;
|
||||
/*002*/ uint16 material;
|
||||
/*004*/ Color_Struct color;
|
||||
/*004*/ Tint_Struct color;
|
||||
/*009*/ uint8 wear_slot_id;
|
||||
};
|
||||
|
||||
@@ -2591,27 +2593,6 @@ struct PetitionBug_Struct{
|
||||
char text[1028];
|
||||
};
|
||||
|
||||
struct DyeStruct
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Color_Struct head;
|
||||
struct Color_Struct chest;
|
||||
struct Color_Struct arms;
|
||||
struct Color_Struct wrists;
|
||||
struct Color_Struct hands;
|
||||
struct Color_Struct legs;
|
||||
struct Color_Struct feet;
|
||||
struct Color_Struct primary; // you can't actually dye this
|
||||
struct Color_Struct secondary; // or this
|
||||
}
|
||||
dyes;
|
||||
struct Color_Struct dye[9];
|
||||
};
|
||||
};
|
||||
|
||||
struct ApproveZone_Struct {
|
||||
char name[64];
|
||||
uint32 zoneid;
|
||||
|
||||
@@ -1813,7 +1813,7 @@ namespace UF
|
||||
//eq->colors[r].color = emu->colors[r].color;
|
||||
}
|
||||
for (r = 0; r < 7; r++) {
|
||||
OUT(item_tint[r].Color);
|
||||
OUT(item_tint.Slot[r].Color);
|
||||
}
|
||||
// OUT(unknown00224[48]);
|
||||
//NOTE: new client supports 300 AAs, our internal rep/PP
|
||||
@@ -3060,7 +3060,7 @@ namespace UF
|
||||
for (k = 0; k < 9; ++k)
|
||||
{
|
||||
{
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->colors[k].Color);
|
||||
VARSTRUCT_ENCODE_TYPE(uint32, Buffer, emu->equipment_tint.Slot[k].Color);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+24
-43
@@ -122,25 +122,42 @@ struct AdventureInfo {
|
||||
** Merth: Gave struct a name so gcc 2.96 would compile
|
||||
**
|
||||
*/
|
||||
struct Color_Struct
|
||||
struct Tint_Struct
|
||||
{
|
||||
union {
|
||||
struct {
|
||||
uint8 blue;
|
||||
uint8 Blue;
|
||||
uint8 Green;
|
||||
uint8 Red;
|
||||
uint8 UseTint; // if there's a tint this is FF
|
||||
} RGB;
|
||||
};
|
||||
uint32 Color;
|
||||
};
|
||||
};
|
||||
|
||||
struct TintProfile {
|
||||
union {
|
||||
struct {
|
||||
Tint_Struct Head;
|
||||
Tint_Struct Chest;
|
||||
Tint_Struct Arms;
|
||||
Tint_Struct Wrist;
|
||||
Tint_Struct Hands;
|
||||
Tint_Struct Legs;
|
||||
Tint_Struct Feet;
|
||||
Tint_Struct Primary;
|
||||
Tint_Struct Secondary;
|
||||
};
|
||||
Tint_Struct Slot[EQEmu::textures::TextureCount];
|
||||
};
|
||||
};
|
||||
|
||||
struct CharSelectEquip
|
||||
{
|
||||
uint32 Material;
|
||||
uint32 Unknown1;
|
||||
uint32 EliteMaterial;
|
||||
Color_Struct Color;
|
||||
Tint_Struct Color;
|
||||
};
|
||||
|
||||
struct CharacterSelectEntry_Struct
|
||||
@@ -314,22 +331,7 @@ struct Spawn_Struct
|
||||
/*0000*/ uint32 unknown18;
|
||||
/*0000*/ uint32 unknown19;
|
||||
Spawn_Struct_Position Position;
|
||||
/*0000*/ union
|
||||
{
|
||||
struct
|
||||
{
|
||||
/*0000*/ Color_Struct color_helmet; // Color of helmet item
|
||||
/*0000*/ Color_Struct color_chest; // Color of chest item
|
||||
/*0000*/ Color_Struct color_arms; // Color of arms item
|
||||
/*0000*/ Color_Struct color_bracers; // Color of bracers item
|
||||
/*0000*/ Color_Struct color_hands; // Color of hands item
|
||||
/*0000*/ Color_Struct color_legs; // Color of legs item
|
||||
/*0000*/ Color_Struct color_feet; // Color of feet item
|
||||
/*0000*/ Color_Struct color_primary; // Color of primary item
|
||||
/*0000*/ Color_Struct color_secondary; // Color of secondary item
|
||||
} equipment_colors;
|
||||
/*0000*/ Color_Struct colors[9]; // Array elements correspond to struct equipment_colors above
|
||||
};
|
||||
/*0000*/ TintProfile equipment_tint;
|
||||
|
||||
// skip these bytes if not a valid player race
|
||||
/*0000*/ union
|
||||
@@ -969,7 +971,7 @@ struct PlayerProfile_Struct
|
||||
/*00236*/ EquipStruct equipment[9]; //Underfoot Shows [108] for this part
|
||||
};
|
||||
/*00344*/ uint8 unknown00344[168]; // Underfoot Shows [160]
|
||||
/*00512*/ Color_Struct item_tint[9]; // RR GG BB 00
|
||||
/*00512*/ TintProfile item_tint; // RR GG BB 00
|
||||
/*00548*/ AA_Array aa_array[MAX_PP_AA_ARRAY]; // [3600] AAs 12 bytes each
|
||||
/*04148*/ uint32 points; // Unspent Practice points - RELOCATED???
|
||||
/*04152*/ uint32 mana; // Current mana
|
||||
@@ -1232,7 +1234,7 @@ struct WearChange_Struct{
|
||||
/*002*/ uint32 material;
|
||||
/*006*/ uint32 unknown06;
|
||||
/*010*/ uint32 elite_material; // 1 for Drakkin Elite Material
|
||||
/*014*/ Color_Struct color;
|
||||
/*014*/ Tint_Struct color;
|
||||
/*018*/ uint8 wear_slot_id;
|
||||
/*019*/
|
||||
};
|
||||
@@ -3162,27 +3164,6 @@ struct PetitionBug_Struct{
|
||||
char text[1028];
|
||||
};
|
||||
|
||||
struct DyeStruct
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Color_Struct head;
|
||||
struct Color_Struct chest;
|
||||
struct Color_Struct arms;
|
||||
struct Color_Struct wrists;
|
||||
struct Color_Struct hands;
|
||||
struct Color_Struct legs;
|
||||
struct Color_Struct feet;
|
||||
struct Color_Struct primary; // you can't actually dye this
|
||||
struct Color_Struct secondary; // or this
|
||||
}
|
||||
dyes;
|
||||
struct Color_Struct dye[9];
|
||||
};
|
||||
};
|
||||
|
||||
struct ApproveZone_Struct {
|
||||
char name[64];
|
||||
uint32 zoneid;
|
||||
|
||||
Reference in New Issue
Block a user