Make a function(ToTempSummon()) which can convert Creature to TempSummon with a C++ cast(reinterpret_cast) and with a type check(isSummon()).

This function is like ToPlayer(), ToTotem(), etc.

This commit is like ede831bdd6f0cff481acc33f269fa7f8c78befd4 / r7496:
http://code.google.com/p/trinitycore/source/detail?r=ede831bdd6f0cff481acc33f269fa7f8c78befd4
As a result, this commit has the advantages and the "disadvantages" too, like r7496.

Please try to be polite if this commit causes some crashes.

--HG--
branch : trunk
This commit is contained in:
Anubisss
2010-03-27 16:08:14 +01:00
parent 769f54eedf
commit ce8cc85dfa
9 changed files with 16 additions and 14 deletions

View File

@@ -174,7 +174,7 @@ struct boss_svalaAI : public ScriptedAI
{
m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE);
m_creature->SetDisplayId(DATA_SVALA_DISPLAY_ID);
((TempSummon*)pArthas)->UnSummon(); // TODO: should need a ToTempSummon()
pArthas->ToTempSummon()->UnSummon();
ArthasGUID = 0;
Phase = FINISHED;
}