mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-21 17:54:48 +01:00
*Provide another way to implement dynamic spawns. Now a creature will call its zonescript before spawn to determine the spawned entry. This can be used to implement zones such as wintergrasp with less data requirement (only need to know the entry of counterpart creatures, not require spawn points)
*Use zonescript as basic class of opvp script and dugeon script (can also be used for bg) *Store zonescript in worldobject. *Add door for sapphiron. --HG-- branch : trunk
This commit is contained in:
@@ -894,13 +894,7 @@ uint32 ObjectMgr::ChooseDisplayId(uint32 team, const CreatureInfo *cinfo, const
|
||||
display_id = cinfo->GetRandomValidModelId();
|
||||
}
|
||||
else
|
||||
{
|
||||
display_id = data->displayid; // overwritten from creature data
|
||||
// I do not know why but in db most display id are not zero
|
||||
if(display_id == cinfo->Modelid_A1 || display_id == cinfo->Modelid_A2
|
||||
|| display_id == cinfo->Modelid_H1 || display_id == cinfo->Modelid_H2)
|
||||
display_id = cinfo->GetRandomValidModelId();
|
||||
}
|
||||
|
||||
return display_id;
|
||||
}
|
||||
@@ -1068,7 +1062,7 @@ void ObjectMgr::LoadCreatures()
|
||||
heroicCreatures.insert(cInfo->HeroicEntry);
|
||||
|
||||
//TODO: remove this
|
||||
gameeventmgr.mGameEventCreatureGuids.resize(52*2-1);
|
||||
//gameeventmgr.mGameEventCreatureGuids.resize(52*2-1);
|
||||
|
||||
barGoLink bar(result->GetRowCount());
|
||||
|
||||
@@ -1115,6 +1109,11 @@ void ObjectMgr::LoadCreatures()
|
||||
continue;
|
||||
}
|
||||
|
||||
// I do not know why but in db most display id are not zero
|
||||
if(data.displayid == cInfo->Modelid_A1 || data.displayid == cInfo->Modelid_A2
|
||||
|| data.displayid == cInfo->Modelid_H1 || data.displayid == cInfo->Modelid_H2)
|
||||
data.displayid = 0;
|
||||
|
||||
if(data.equipmentId > 0) // -1 no equipment, 0 use default
|
||||
{
|
||||
if(!GetEquipmentInfo(data.equipmentId))
|
||||
@@ -1172,7 +1171,7 @@ void ObjectMgr::LoadCreatures()
|
||||
}
|
||||
|
||||
//if(entry == 32307 || entry == 32308)
|
||||
if(entry == 30739 || entry == 30740)
|
||||
/*if(entry == 30739 || entry == 30740)
|
||||
{
|
||||
gameEvent = 51;
|
||||
uint32 guid2 = objmgr.GenerateLowGuid(HIGHGUID_UNIT);
|
||||
@@ -1183,7 +1182,7 @@ void ObjectMgr::LoadCreatures()
|
||||
data2.displayid = 0;
|
||||
gameeventmgr.mGameEventCreatureGuids[51+51].push_back(guid);
|
||||
gameeventmgr.mGameEventCreatureGuids[51+50].push_back(guid2);
|
||||
}
|
||||
}*/
|
||||
|
||||
if (gameEvent==0 && PoolId==0) // if not this is to be managed by GameEvent System or Pool system
|
||||
AddCreatureToGrid(guid, &data);
|
||||
|
||||
Reference in New Issue
Block a user