예제 #1
0
        void SetData (uint32 type, uint32 data)
        {
            switch(type)
            {
                case DATA_ALTAR_DOORS:
                    m_auiEncounter[0] = data;
                    if(data == DONE)
                        SetDoor(uiAltarOfTheKeeperTempleDoor, true);
                    break;
                case DATA_ANCIENT_DOOR:
                    m_auiEncounter[1] = data;
                    if(data == DONE) //archeadas defeat
                    {
                        SetDoor(uiArchaedasTempleDoor, true); //re open enter door
                        SetDoor(uiAncientVaultDoor, true);
                    }
                    break;
                case DATA_IRONAYA_DOOR:
                    m_auiEncounter[2] = data;
                    break;
                case DATA_STONE_KEEPERS:
                    ActivateStoneKeepers();
                    break;
                case DATA_MINIONS:
                    switch(data)
                    {
                        case NOT_STARTED:
                            if(m_auiEncounter[0] == DONE) //if players opened the doors
                                SetDoor(uiArchaedasTempleDoor, true);
                            RespawnMinions();
                            break;
                        case IN_PROGRESS:
                            ActivateWallMinions();
                            break;
                        case SPECIAL:
                            DeActivateMinions();
                            break;
                    }
                    break;
                case DATA_IRONAYA_SEAL:
                    bKeystoneCheck = true;
                    break;
            }

            if(data == DONE)
            {
                OUT_SAVE_INST_DATA;

                std::ostringstream saveStream;
                saveStream << m_auiEncounter[0] << " " << m_auiEncounter[1] << " " << m_auiEncounter[2];

                str_data = saveStream.str();

                SaveToDB();
                OUT_SAVE_INST_DATA_COMPLETE;
            }
        }
예제 #2
0
 void SetData (uint32 /*type*/, uint32 data)
 {
     //sLog.outError ("SetData: data = %d", data);
     if (data == 0) OpenDoor (altarOfTheKeeperTempleDoor);
     if (data == 0) OpenDoor (archaedasTempleDoor);
     if (data == 3) OpenDoor (ancientVaultDoor);
     if (data == 1) ActivateStoneKeepers();
     if (data == 2) ActivateWallMinions();
     if (data == 4) DeActivateMinions();
     if (data == 5) RespawnMinions();
 }