本文整理汇总了C++中AddDoor函数的典型用法代码示例。如果您正苦于以下问题:C++ AddDoor函数的具体用法?C++ AddDoor怎么用?C++ AddDoor使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了AddDoor函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_FORCE_FIELD:
case GO_BOSS_COLLISION_1:
case GO_BOSS_COLLISION_2:
case GO_FIRE_BARRIER:
case GO_MURUS_GATE_1:
case GO_MURUS_GATE_2:
AddDoor(go, true);
break;
default:
break;
}
}
开发者ID:Rastrian,项目名称:DeathCore_3.3.5,代码行数:16,代码来源:instance_sunwell_plateau.cpp
示例2: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go)
{
switch (go->GetEntry())
{
// Generic doors
case GOB_ANTECHAMBER_DOOR_ENTRANCE:
case GOB_ANTECHAMBER_DOOR_EXIT:
case GOB_ATRIUM_DOOR_ENTRANCE:
case GOB_ATRIUM_DOOR_EXIT:
AddDoor(go, true);
break;
// Specific doors
case GOB_ORATIUM_DOOR_ENTRANCE:
AddDoor(go, true);
zorlokEntranceDoorGuid = go->GetGUID();
break;
case GOB_QUARTERS_DOOR_ENTRANCE:
AddDoor(go, true);
tayakEntranceDoorGuid = go->GetGUID();
break;
case GOB_QUARTERS_DOOR_EXIT:
AddDoor(go, true);
tayakExitDoorGuid = go->GetGUID();
break;
case GOB_STAIRWAYS_DOOR_EXIT:
AddDoor(go, true);
garalonEntranceDoorGuid = go->GetGUID();
break;
case GOB_BALCONY_DOOR_EXIT:
AddDoor(go, true);
meljarakExitDoorGuid = go->GetGUID();
break;
case GOB_SANCTUM_DOOR_ENTRANCE:
AddDoor(go, true);
unsokEntranceDoorGuid = go->GetGUID();
break;
case GOB_HEARTOFFEAR_DOOR_ENTRANCE:
AddDoor(go, true);
shekzeerEntranceDoorGuid = go->GetGUID();
break;
default:
break;
}
}
开发者ID:Mystiko,项目名称:MoPCore5.4.8,代码行数:44,代码来源:instance_heart_of_fear.cpp
示例3: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go)
{
switch (go->GetEntry())
{
case GO_STRANGE_GONG:
StrangeGongGUID = go->GetGUID();
break;
case GO_MASSIVE_GATE:
MasiveGateGUID = go->GetGUID();
AddDoor(go, true);
if (ZulAmanState != NOT_STARTED)
go->SetGoState(GO_STATE_ACTIVE);
break;
default:
break;
}
}
开发者ID:Drasgon,项目名称:WoD,代码行数:17,代码来源:instance_zulaman.cpp
示例4: OnGameObjectRemove
void OnGameObjectRemove(GameObject* gameObject)
{
switch (gameObject->GetEntry())
{
case GO_LEVIATHAN_DOOR:
case GO_XT_002_DOOR:
case GO_DOODAD_UL_SIGILDOOR_03:
case GO_DOODAD_UL_UNIVERSEFLOOR_01:
case GO_DOODAD_UL_UNIVERSEFLOOR_02:
case GO_DOODAD_UL_UNIVERSEGLOBE01:
case GO_DOODAD_UL_ULDUAR_TRAPDOOR_03:
AddDoor(gameObject, false);
break;
default:
break;
}
}
开发者ID:FirstCore,项目名称:GaryMoveOut_4.3.4,代码行数:17,代码来源:instance_ulduar.cpp
示例5: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_PRISON_DOOR_04:
PrisonDoor4GUID = go->GetGUID();
// no break
case GO_PRISON_DOOR_01:
case GO_PRISON_DOOR_02:
case GO_PRISON_DOOR_03:
case GO_PRISON_DOOR_05:
case GO_SUMMON_DOOR:
AddDoor(go, true);
break;
case GO_BROGGOK_LEVER:
BroggokLeverGUID = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_1:
PrisonCellGUIDs[DATA_PRISON_CELL1 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_2:
PrisonCellGUIDs[DATA_PRISON_CELL2 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_3:
PrisonCellGUIDs[DATA_PRISON_CELL3 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_4:
PrisonCellGUIDs[DATA_PRISON_CELL4 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_5:
PrisonCellGUIDs[DATA_PRISON_CELL5 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_6:
PrisonCellGUIDs[DATA_PRISON_CELL6 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_7:
PrisonCellGUIDs[DATA_PRISON_CELL7 - DATA_PRISON_CELL1] = go->GetGUID();
break;
case GO_PRISON_CELL_DOOR_8:
PrisonCellGUIDs[DATA_PRISON_CELL8 - DATA_PRISON_CELL1] = go->GetGUID();
break;
default:
break;
}
}
开发者ID:beyourself,项目名称:LordPsyanBots,代码行数:45,代码来源:instance_blood_furnace.cpp
示例6: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go)
{
switch (go->GetEntry())
{
case GO_LADY_VASHJ_BRIDGE_CONSOLE:
case GO_COILFANG_BRIDGE1:
case GO_COILFANG_BRIDGE2:
case GO_COILFANG_BRIDGE3:
AddDoor(go, true);
break;
case GO_SHIELD_GENERATOR1:
case GO_SHIELD_GENERATOR2:
case GO_SHIELD_GENERATOR3:
case GO_SHIELD_GENERATOR4:
ShieldGeneratorGUID[go->GetEntry()-GO_SHIELD_GENERATOR1] = go->GetGUID();
break;
}
}
开发者ID:DSlayerMan,项目名称:Sunwell,代码行数:18,代码来源:instance_serpent_shrine.cpp
示例7: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_FORCEFIELD:
AddDoor(go, true);
break;
case GO_GONG_OF_BETHEKK:
_goGongOfBethekkGUID = go->GetGUID();
if (GetBossState(DATA_ARLOKK) == DONE)
go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
else
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
break;
default:
break;
}
}
开发者ID:mysql1,项目名称:TournamentCore,代码行数:18,代码来源:instance_zulgurub.cpp
示例8: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go)
{
if (go->GetGOInfo()->displayId == 6785 || go->GetGOInfo()->displayId == 1287)
{
uint32 section = GetEruptionSection(go->GetPositionX(), go->GetPositionY());
heiganEruptionGUID[section].insert(go->GetGUID());
return;
}
switch (go->GetEntry())
{
case GO_GOTHIK_GATE:
gothikGateGUID = go->GetGUID();
go->SetGoState(gothikDoorState);
break;
case GO_HORSEMEN_CHEST:
horsemenChestGUID = go->GetGUID();
break;
case GO_HORSEMEN_CHEST_HERO:
horsemenChestGUID = go->GetGUID();
break;
case GO_KELTHUZAD_PORTAL01:
portalsGUID[0] = go->GetGUID();
break;
case GO_KELTHUZAD_PORTAL02:
portalsGUID[1] = go->GetGUID();
break;
case GO_KELTHUZAD_PORTAL03:
portalsGUID[2] = go->GetGUID();
break;
case GO_KELTHUZAD_PORTAL04:
portalsGUID[3] = go->GetGUID();
break;
case GO_KELTHUZAD_TRIGGER:
kelthuzadTriggerGUID = go->GetGUID();
break;
default:
break;
}
AddDoor(go, true);
}
开发者ID:S-proyect,项目名称:Emu-S,代码行数:43,代码来源:instance_naxxramas.cpp
示例9: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go)
{
switch (go->GetEntry())
{
case GO_FACTORY_DOOR:
m_ListOfGUID[DATA_FACTORY_DOOR] = go->GetGUID();
AddDoor(go, true);
break;
case GO_FACTORY_DOOR_LEVER:
m_ListOfGUID[DATA_FACTORY_DOOR_LEVER] = go->GetGUID();
break;
case GO_HEAVY_DOOR2:
AddDoor(go, true);
m_ListOfGUID[DATA_HEAVY_DOOR2] = go->GetGUID();
break;
case GO_MASTROOM_DOOR:
AddDoor(go, true);
m_ListOfGUID[DATA_MASTROOM_DOOR] = go->GetGUID();
break;
case GO_MASTROOM_DOOR_LEVER:
m_ListOfGUID[DATA_MASTROOM_DOOR_LEVER] = go->GetGUID();
break;
case GO_HEAVY_DOOR4:
AddDoor(go, true);
m_ListOfGUID[DATA_HEAVY_DOOR4] = go->GetGUID();
break;
case GO_FOUNDRY_DOOR:
m_ListOfGUID[DATA_FOUNDRY_DOOR] = go->GetGUID();
AddDoor(go, true);
break;
case GO_FOUNDRY_DOOR_LEVER:
m_ListOfGUID[DATA_FOUNDRY_DOOR_LEVER] = go->GetGUID();
break;
case GO_IRONCLAD_DOOR:
m_ListOfGUID[DATA_IRONCLAD_DOOR] = go->GetGUID();
AddDoor(go, true);
break;
case GO_IRONCLAD_DOOR_LEVER:
m_ListOfGUID[DATA_IRONCLAD_DOOR_LEVER] = go->GetGUID();
break;
case GO_DEFIAS_CANNON:
m_ListOfGUID[DATA_DEFIAS_CANNON] = go->GetGUID();
break;
case GO_MR_SMITE_CHEST:
m_ListOfGUID[DATA_MR_SMITE_CHEST] = go->GetGUID();
break;
}
if (!m_SpecialNpcSpawned)
m_LoadingInstanceTimer = 3000;
}
开发者ID:redlaine,项目名称:InfinityCore-Ark,代码行数:50,代码来源:instance_deadmines.cpp
示例10: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_FIRE_FIELD:
AddDoor(go, true);
break;
case GO_FLAME_WALLS:
FlameWallsGUID = go->GetGUID();
if (GetBossState(DATA_SAVIANA_RAGEFIRE) == DONE && GetBossState(DATA_BALTHARUS_THE_WARBORN) == DONE)
HandleGameObject(FlameWallsGUID, true, go);
break;
case GO_FLAME_RING:
FlameRingGUID = go->GetGUID();
break;
case GO_TWILIGHT_FLAME_RING:
TwilightFlameRingGUID = go->GetGUID();
break;
case GO_BURNING_TREE_1:
BurningTreeGUID[0] = go->GetGUID();
if (GetBossState(DATA_GENERAL_ZARITHRIAN) == DONE)
HandleGameObject(BurningTreeGUID[0], true);
break;
case GO_BURNING_TREE_2:
BurningTreeGUID[1] = go->GetGUID();
if (GetBossState(DATA_GENERAL_ZARITHRIAN) == DONE)
HandleGameObject(BurningTreeGUID[1], true);
break;
case GO_BURNING_TREE_3:
BurningTreeGUID[2] = go->GetGUID();
if (GetBossState(DATA_GENERAL_ZARITHRIAN) == DONE)
HandleGameObject(BurningTreeGUID[2], true);
break;
case GO_BURNING_TREE_4:
BurningTreeGUID[3] = go->GetGUID();
if (GetBossState(DATA_GENERAL_ZARITHRIAN) == DONE)
HandleGameObject(BurningTreeGUID[3], true);
break;
default:
break;
}
}
开发者ID:Rastrian,项目名称:DeathCore_6.x-1,代码行数:42,代码来源:instance_ruby_sanctum.cpp
示例11: OnGameObjectRemove
void OnGameObjectRemove(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_NAJENTUS_GATE:
case GO_SUPREMUS_GATE:
case GO_SHADE_OF_AKAMA_DOOR:
case GO_TERON_DOOR_1:
case GO_TERON_DOOR_2:
case GO_GURTOGG_DOOR:
case GO_TEMPLE_DOOR:
case GO_MOTHER_SHAHRAZ_DOOR:
case GO_COUNCIL_DOOR_1:
case GO_COUNCIL_DOOR_2:
AddDoor(go, false);
break;
default:
break;
}
}
开发者ID:AllThing,项目名称:TrinityCore,代码行数:20,代码来源:instance_black_temple.cpp
示例12: OnGameObjectRemove
void OnGameObjectRemove(GameObject* go)
{
switch (go->GetEntry())
{
case GO_MAGTHERIDON_DOORS:
AddDoor(go, false);
break;
case GO_MANTICRON_CUBE:
_cubesSet.erase(go->GetGUID());
break;
case GO_MAGTHERIDON_HALL:
case GO_MAGTHERIDON_COLUMN0:
case GO_MAGTHERIDON_COLUMN1:
case GO_MAGTHERIDON_COLUMN2:
case GO_MAGTHERIDON_COLUMN3:
case GO_MAGTHERIDON_COLUMN4:
case GO_MAGTHERIDON_COLUMN5:
_columnSet.erase(go->GetGUID());
break;
}
}
开发者ID:AzerothShard-Dev,项目名称:azerothcore,代码行数:21,代码来源:instance_magtheridons_lair.cpp
示例13: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_UTGARDE_MIRROR:
UtgardeMirrorGUID = go->GetGUID();
break;
case GO_GORTOK_PALEHOOF_SPHERE:
GortokPalehoofSphereGUID = go->GetGUID();
if (GetBossState(DATA_GORTOK_PALEHOOF) == DONE)
{
HandleGameObject(ObjectGuid::Empty, true, go);
go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
}
break;
case GO_SKADI_THE_RUTHLESS_DOOR:
case GO_KING_YMIRON_DOOR:
AddDoor(go, true);
break;
default:
break;
}
}
开发者ID:Rastrian,项目名称:DeathCore_3.3.5,代码行数:23,代码来源:instance_utgarde_pinnacle.cpp
示例14: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
switch (go->GetEntry())
{
case GO_VEXALLUS_DOOR:
case GO_SELIN_DOOR:
case GO_SELIN_ENCOUNTER_DOOR:
case GO_DELRISSA_DOOR:
case GO_KAEL_DOOR:
AddDoor(go, true);
break;
case GO_KAEL_STATUE_1:
KaelStatue[0] = go->GetGUID();
break;
case GO_KAEL_STATUE_2:
KaelStatue[1] = go->GetGUID();
break;
case GO_ESCAPE_ORB:
EscapeOrbGUID = go->GetGUID();
break;
default:
break;
}
}
开发者ID:Abrek,项目名称:My-WoDCore-6.x.x,代码行数:24,代码来源:instance_magisters_terrace.cpp
示例15: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go) override
{
if (go->GetEntry() == GO_IKISS_DOOR)
AddDoor(go, true);
}
开发者ID:Rastrian,项目名称:DeathCore_3.3.5,代码行数:5,代码来源:instance_sethekk_halls.cpp
示例16: OnGameObjectCreate
void OnGameObjectCreate(GameObject* go)
{
switch (go->GetEntry())
{
case GOB_STONE_GUARD_DOOR_ENTRANCE:
case GOB_FENG_DOOR_FENCE:
case GOB_FENG_DOOR_EXIT:
case GOB_GARAJAL_FENCE:
case GOB_GARAJAL_EXIT:
case GOB_SPIRIT_KINGS_WIND_WALL:
case GOB_SPIRIT_KINGS_EXIT:
case GOB_CELESTIAL_DOOR:
AddDoor(go, true);
break;
// Feng
case GOB_SPEAR_STATUE:
case GOB_FIST_STATUE:
case GOB_STAFF_STATUE:
fengStatuesGUIDs.push_back(go->GetGUID());
break;
case GOB_SHIELD_STATUE:
{
if (!instance->IsHeroic())
go->SetObjectScale(0.001f);
else
fengStatuesGUIDs.push_back(go->GetGUID());
break;
}
case GOB_STONE_GUARD_DOOR_EXIT:
AddDoor(go, true);
stoneGuardExit = go->GetGUID();
break;
case GOB_INVERSION:
inversionGobGuid = go->GetGUID();
break;
case GOB_CANCEL:
cancelGobGuid = go->GetGUID();
break;
case GOB_ENERGY_PLATFORM:
energyPlatformGuid = go->GetGUID();
go->SetGoState(GO_STATE_ACTIVE);
break;
case GOB_ELEGON_DOOR_ENTRANCE:
ancientMoguDoorGuid = go->GetGUID();
break;
case GOB_WILL_OF_EMPEROR_ENTRANCE:
emperorsDoorGuid = go->GetGUID();
break;
case GOB_ENERGY_TITAN_DISK:
titanDiskGuid = go->GetGUID();
break;
case GOB_ENERGY_TITAN_CIRCLE_1:
case GOB_ENERGY_TITAN_CIRCLE_2:
case GOB_ENERGY_TITAN_CIRCLE_3:
go->SetGoState(GO_STATE_ACTIVE);
titanCirclesGuids.push_back(go->GetGUID());
break;
case GOB_CELESTIAL_COMMAND:
celestialCommandGuid = go->GetGUID();
break;
}
}
开发者ID:Mystiko,项目名称:MoPCore5.4.8,代码行数:62,代码来源:instance_mogu_shan_vault.cpp
示例17: AddObject
void InstanceScript::OnGameObjectCreate(GameObject* go)
{
AddObject(go, true);
AddDoor(go, true);
}
开发者ID:Refuge89,项目名称:TrinityCore,代码行数:5,代码来源:InstanceScript.cpp
示例18: in
//------------------------- LoadMap ------------------------------------
//
// sets up the game environment from map file
//-----------------------------------------------------------------------------
bool Raven_Map::LoadMap(const std::string& filename)
{
std::ifstream in(filename.c_str());
if (!in)
{
ErrorBox("Bad Map Filename");
return false;
}
Clear();
BaseGameEntity::ResetNextValidID();
//first of all read and create the navgraph. This must be done before
//the entities are read from the map file because many of the entities
//will be linked to a graph node (the graph node will own a pointer
//to an instance of the entity)
m_pNavGraph = new NavGraph(false);
m_pNavGraph->Load(in);
#ifdef LOG_CREATIONAL_STUFF
debug_con << "NavGraph for " << filename << " loaded okay" << "";
#endif
//determine the average distance between graph nodes so that we can
//partition them efficiently
m_dCellSpaceNeighborhoodRange = CalculateAverageGraphEdgeLength(*m_pNavGraph) + 1;
#ifdef LOG_CREATIONAL_STUFF
debug_con << "Average edge length is " << CalculateAverageGraphEdgeLength(*m_pNavGraph) << "";
#endif
#ifdef LOG_CREATIONAL_STUFF
debug_con << "Neighborhood range set to " << m_dCellSpaceNeighborhoodRange << "";
#endif
//load in the map size and adjust the client window accordingly
in >> m_iSizeX >> m_iSizeY;
#ifdef LOG_CREATIONAL_STUFF
debug_con << "Partitioning navgraph nodes..." << "";
#endif
//partition the graph nodes
PartitionNavGraph();
//get the handle to the game window and resize the client area to accommodate
//the map
extern char* g_szApplicationName;
extern char* g_szWindowClassName;
HWND hwnd = FindWindow(g_szWindowClassName, g_szApplicationName);
const int ExtraHeightRqdToDisplayInfo = 50;
ResizeWindow(hwnd, m_iSizeX, m_iSizeY+ExtraHeightRqdToDisplayInfo);
#ifdef LOG_CREATIONAL_STUFF
debug_con << "Loading map..." << "";
#endif
//now create the environment entities
while (!in.eof())
{
//get type of next map object
int EntityType;
in >> EntityType;
#ifdef LOG_CREATIONAL_STUFF
debug_con << "Creating a " << GetNameOfType(EntityType) << "";
#endif
//create the object
switch(EntityType)
{
case type_wall:
AddWall(in); break;
case type_sliding_door:
AddDoor(in); break;
case type_door_trigger:
AddDoorTrigger(in); break;
case type_spawn_point:
AddSpawnPoint(in); break;
case type_health:
AddHealth_Giver(in); break;
//.........这里部分代码省略.........
开发者ID:BarcampRD,项目名称:Basic_Game_AI_Barcamp2014,代码行数:101,代码来源:Raven_Map.cpp
示例19: OnGameObjectRemove
void OnGameObjectRemove(GameObject* go)
{
if (go->GetGOInfo()->displayId == 6785 || go->GetGOInfo()->displayId == 1287)
{
uint32 section = GetEruptionSection(go->GetPositionX(), go->GetPositionY());
HeiganEruptionGUID[section].erase(go->GetGUID());
return;
}
switch (go->GetEntry())
{
case GO_BIRTH:
if (SapphironGUID)
{
if (Creature* pSapphiron = instance->GetCreature(SapphironGUID))
pSapphiron->AI()->DoAction(DATA_SAPPHIRON_BIRTH);
return;
}
case GO_ROOM_ANUBREKHAN:
uiNaxxDoors[DOOR_ROOM_ANUBREKHAN] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_ANUBREKHAN] != IN_PROGRESS ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_ANUBREKHAN:
uiNaxxDoors[DOOR_PASSAGE_ANUBREKHAN] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_ANUBREKHAN] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_FAERLINA:
uiNaxxDoors[DOOR_PASSAGE_FAERLINA] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_FAERLINA] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_MAEXXNA:
uiNaxxDoors[DOOR_ROOM_MAEXXNA] = go->GetGUID();
go->SetGoState((m_auiEncounter[BOSS_FAERLINA] == DONE && m_auiEncounter[BOSS_MAEXXNA] != IN_PROGRESS) ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_NOTH:
uiNaxxDoors[DOOR_ROOM_NOTH] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_FAERLINA] != IN_PROGRESS ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_NOTH:
uiNaxxDoors[DOOR_PASSAGE_NOTH] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_NOTH] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_HEIGAN:
uiNaxxDoors[DOOR_ROOM_HEIGAN] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_HEIGAN] != IN_PROGRESS ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_HEIGAN:
uiNaxxDoors[DOOR_PASSAGE_HEIGAN] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_HEIGAN] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_LOATHEB:
uiNaxxDoors[DOOR_ROOM_LOATHEB] = go->GetGUID();
go->SetGoState((m_auiEncounter[BOSS_HEIGAN] == DONE && m_auiEncounter[BOSS_LOATHEB] != IN_PROGRESS) ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_GROBBULUS:
uiNaxxDoors[DOOR_ROOM_GROBBULUS] = go->GetGUID();
go->SetGoState((m_auiEncounter[BOSS_PATCHWERK] == DONE && m_auiEncounter[BOSS_GROBBULUS] != IN_PROGRESS) ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_GLUTH:
uiNaxxDoors[DOOR_PASSAGE_GLUTH] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_GLUTH] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_THADDIUS:
uiNaxxDoors[DOOR_ROOM_THADDIUS] = go->GetGUID();
go->SetGoState((m_auiEncounter[BOSS_GLUTH] == DONE && m_auiEncounter[BOSS_THADDIUS] != IN_PROGRESS) ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_GOTHIK:
uiNaxxDoors[DOOR_ROOM_GOTHIK] = go->GetGUID();
go->SetGoState((m_auiEncounter[BOSS_RAZUVIOUS] == DONE && m_auiEncounter[BOSS_GOTHIK] != IN_PROGRESS) ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_GOTHIK:
uiNaxxDoors[DOOR_PASSAGE_GOTHIK] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_GOTHIK] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_HORSEMEN:
uiNaxxDoors[DOOR_ROOM_HORSEMEN] = go->GetGUID();
go->SetGoState((m_auiEncounter[BOSS_GOTHIK] == DONE && m_auiEncounter[BOSS_HORSEMEN] != IN_PROGRESS) ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_PASSAGE_SAPPHIRON:
uiNaxxDoors[DOOR_PASSAGE_SAPPHIRON] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_SAPPHIRON] == DONE ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
case GO_ROOM_KELTHUZAD:
uiNaxxDoors[DOOR_ROOM_KELTHUZAD] = go->GetGUID();
go->SetGoState(m_auiEncounter[BOSS_KELTHUZAD] != IN_PROGRESS ? GO_STATE_ACTIVE : GO_STATE_READY);
break;
}
AddDoor(go, false);
}
开发者ID:Archives,项目名称:TrinityCore,代码行数:91,代码来源:instance_naxxramas.cpp
示例20: OnGameObjectCreate
void OnGameObjectCreate(GameObject* gameObject)
{
switch (gameObject->GetEntry())
{
case GO_KOLOGARN_CHEST_HERO:
case GO_KOLOGARN_CHEST:
KologarnChestGUID = gameObject->GetGUID();
break;
case GO_KOLOGARN_BRIDGE:
KologarnBridgeGUID = gameObject->GetGUID();
if (GetBossState(BOSS_KOLOGARN) == DONE)
HandleGameObject(0, false, gameObject);
break;
case GO_KOLOGARN_DOOR:
KologarnDoorGUID = gameObject->GetGUID();
break;
case GO_THORIM_CHEST_HERO:
case GO_THORIM_CHEST:
ThorimChestGUID = gameObject->GetGUID();
break;
case GO_HODIR_RARE_CACHE_OF_WINTER_HERO:
case GO_HODIR_RARE_CACHE_OF_WINTER:
HodirRareCacheGUID = gameObject->GetGUID();
break;
case GO_HODIR_CHEST_HERO:
case GO_HODIR_CHEST:
HodirChestGUID = gameObject->GetGUID();
break;
case GO_LEVIATHAN_DOOR:
AddDoor(gameObject, true);
break;
case GO_LEVIATHAN_GATE:
LeviathanGateGUID = gameObject->GetGUID();
if (GetBossState(BOSS_LEVIATHAN) == DONE)
gameObject->SetGoState(GO_STATE_ACTIVE_ALTERNATIVE);
break;
case GO_XT_002_DOOR:
AddDoor(gameObject, true);
break;
case GO_VEZAX_DOOR:
VezaxDoorGUID = gameObject->GetGUID();
HandleGameObject(0, false, gameObject);
break;
case GO_RAZOR_HARPOON_1:
RazorHarpoonGUIDs[0] = gameObject->GetGUID();
break;
case GO_RAZOR_HARPOON_2:
RazorHarpoonGUIDs[1] = gameObject->GetGUID();
break;
case GO_RAZOR_HARPOON_3:
RazorHarpoonGUIDs[2] = gameObject->GetGUID();
break;
case GO_RAZOR_HARPOON_4:
RazorHarpoonGUIDs[3] = gameObject->GetGUID();
break;
case GO_MOLE_MACHINE:
if (GetBossState(BOSS_RAZORSCALE) == IN_PROGRESS)
gameObject->SetGoState(GO_STATE_ACTIVE);
case GO_HODIR_DOOR:
HodirDoorGUID = gameObject->GetGUID();
break;
case GO_HODIR_ICE_DOOR:
HodirIceDoorGUID = gameObject->GetGUID();
break;
case GO_ARCHIVUM_DOOR:
ArchivumDoorGUID = gameObject->GetGUID();
if (GetBossState(BOSS_ASSEMBLY_OF_IRON) != DONE)
HandleGameObject(ArchivumDoorGUID, false);
break;
case GO_CELESTIAL_PLANETARIUM_ACCESS_10:
case GO_CELESTIAL_PLANETARIUM_ACCESS_25:
if (_algalonSummoned)
gameObject->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE);
break;
case GO_DOODAD_UL_SIGILDOOR_01:
AlgalonSigilDoorGUID[0] = gameObject->GetGUID();
if (_algalonSummoned)
gameObject->SetGoState(GO_STATE_ACTIVE);
break;
case GO_DOODAD_UL_SIGILDOOR_02:
AlgalonSigilDoorGUID[1] = gameObject->GetGUID();
if (_algalonSummoned)
gameObject->SetGoState(GO_STATE_ACTIVE);
break;
case GO_DOODAD_UL_SIGILDOOR_03:
AlgalonSigilDoorGUID[2] = gameObject->GetGUID();
AddDoor(gameObject, true);
break;
case GO_DOODAD_UL_UNIVERSEFLOOR_01:
AlgalonFloorGUID[0] = gameObject->GetGUID();
AddDoor(gameObject, true);
break;
case GO_DOODAD_UL_UNIVERSEFLOOR_02:
AlgalonFloorGUID[1] = gameObject->GetGUID();
AddDoor(gameObject, true);
break;
case GO_DOODAD_UL_UNIVERSEGLOBE01:
AlgalonUniverseGUID = gameObject->GetGUID();
AddDoor(gameObject, true);
break;
//.........这里部分代码省略.........
开发者ID:FirstCore,项目名称:GaryMoveOut_4.3.4,代码行数:101,代码来源:instance_ulduar.cpp
注:本文中的AddDoor函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论