[svn] * Fixed startup error flood if creature model id is 0
* Fixed totems using proper model ids broken after recent change * Set pet grid activity state to that of caster upon summoning * Fix a possible crash in ObjectAccessor note to self: don't commit anything without 3 days testing. ever. after this one ofc. --HG-- branch : trunk
This commit is contained in:
+16
-4
@@ -59,13 +59,25 @@ void Totem::Summon(Unit* owner)
|
||||
CreatureInfo const *cinfo = GetCreatureInfo();
|
||||
if (owner->GetTypeId()==TYPEID_PLAYER && cinfo)
|
||||
{
|
||||
if (uint32 modelid = cinfo->GetRandomValidModelId())
|
||||
SetDisplayId(modelid);
|
||||
uint32 modelid = 0;
|
||||
if(((Player*)owner)->GetTeam() == HORDE)
|
||||
{
|
||||
if(cinfo->Modelid3)
|
||||
modelid = cinfo->Modelid3;
|
||||
else if(cinfo->Modelid4)
|
||||
modelid = cinfo->Modelid4;
|
||||
}
|
||||
else
|
||||
{
|
||||
sLog.outErrorDb("No displayid found for the totem with the entry %u! Can't summon it!", GetEntry());
|
||||
return;
|
||||
if(cinfo->Modelid1)
|
||||
modelid = cinfo->Modelid1;
|
||||
else if(cinfo->Modelid2)
|
||||
modelid = cinfo->Modelid2;
|
||||
}
|
||||
if (modelid)
|
||||
SetDisplayId(modelid);
|
||||
else
|
||||
sLog.outErrorDb("Totem::Summon: Missing modelid information for entry %u, team %u, totem will use default values.",GetEntry(),((Player*)owner)->GetTeam());
|
||||
}
|
||||
|
||||
// Only add if a display exists.
|
||||
|
||||
Reference in New Issue
Block a user