Hero Forge robes are now visible at character select. Items using a robe HF ID need use the actual ID in the DB i.e. 11607-12107. WearChange command modified to allow both shorthand HF IDs and explicit IDs.

This commit is contained in:
Drajor 2016-12-21 13:03:19 +10:00
parent 18693998b9
commit a13e32498a
2 changed files with 14 additions and 23 deletions

View File

@ -539,16 +539,16 @@ EQEmu::ItemInstance* EQEmu::ItemInstance::GetOrnamentationAug(int32 ornamentatio
} }
uint32 EQEmu::ItemInstance::GetOrnamentHeroModel(int32 material_slot) const { uint32 EQEmu::ItemInstance::GetOrnamentHeroModel(int32 material_slot) const {
uint32 HeroModel = 0; // Not a Hero Forge item.
if (m_ornament_hero_model > 0) if (m_ornament_hero_model == 0)
{ return 0;
HeroModel = m_ornament_hero_model;
if (material_slot >= 0) // Item is using an explicit Hero Forge ID
{ if (m_ornament_hero_model >= 1000)
HeroModel = (m_ornament_hero_model * 100) + material_slot; return m_ornament_hero_model;
}
} // Item is using a shorthand ID
return HeroModel; return (m_ornament_hero_model * 100) + material_slot;
} }
bool EQEmu::ItemInstance::UpdateOrnamentationInfo() { bool EQEmu::ItemInstance::UpdateOrnamentationInfo() {

View File

@ -745,25 +745,16 @@ void command_wc(Client *c, const Seperator *sep)
uint32 hero_forge_model = 0; uint32 hero_forge_model = 0;
uint32 wearslot = atoi(sep->arg[1]); uint32 wearslot = atoi(sep->arg[1]);
// Hero Forge
if (sep->argnum > 2) if (sep->argnum > 2)
{ {
hero_forge_model = atoi(sep->arg[3]); hero_forge_model = atoi(sep->arg[3]);
if (hero_forge_model > 0)
{
// Conversion to simplify the command arguments
// Hero's Forge model is actually model * 1000 + texture * 100 + wearslot
hero_forge_model *= 1000;
hero_forge_model += (atoi(sep->arg[2]) * 100);
hero_forge_model += wearslot;
// For Hero's Forge, slot 7 is actually for Robes, but it still needs to use slot 1 in the packet if (hero_forge_model != 0 && hero_forge_model < 1000) {
if (wearslot == 7) // Shorthand Hero Forge ID. Otherwise use the value the user entered.
{ hero_forge_model = (hero_forge_model * 100) + wearslot;
wearslot = 1;
} }
} }
}
/* /*
// Leaving here to add color option to the #wc command eventually // Leaving here to add color option to the #wc command eventually
uint32 Color; uint32 Color;