[7634] Fixed: select non-despawnable gameobjects base at appropriate for gameobject type dataN fields. Author: VladimirMangos

Many in world gameobject that unexpected daspawned before must now work in more expected way.

    In tests i not found any damage to bg gameobject work, and at least this restore expected work for non-bg dorrs//buttons broken
    after half-year ago patch (that has been reverted partly in this commit)

--HG--
branch : trunk
This commit is contained in:
megamage
2009-04-08 16:35:13 -05:00
parent 371a584047
commit fa0492ccce
2 changed files with 36 additions and 25 deletions
+14
View File
@@ -482,6 +482,20 @@ class TRINITY_DLL_SPEC GameObject : public WorldObject
}
}
bool GetDespawnPossibility() const
{
switch(GetGoType())
{
case GAMEOBJECT_TYPE_DOOR: return GetGOInfo()->door.noDamageImmune;
case GAMEOBJECT_TYPE_BUTTON: return GetGOInfo()->button.noDamageImmune;
case GAMEOBJECT_TYPE_QUESTGIVER: return GetGOInfo()->questgiver.noDamageImmune;
case GAMEOBJECT_TYPE_GOOBER: return GetGOInfo()->goober.noDamageImmune;
case GAMEOBJECT_TYPE_FLAGSTAND: return GetGOInfo()->flagstand.noDamageImmune;
case GAMEOBJECT_TYPE_FLAGDROP: return GetGOInfo()->flagdrop.noDamageImmune;
default: return true;
}
}
time_t GetRespawnTime() const { return m_respawnTime; }
time_t GetRespawnTimeEx() const
{