Esempio n. 1
0
void IsleOfConquest::OnStart()
{
    std::lock_guard<std::recursive_mutex> lock(m_mutex);

    if( m_started )
        return;

    m_started = true;
    
    for(uint32 i = 0; i < 2; ++i){
        for(std::set<Player*  >::iterator itr = m_players[i].begin(); itr != m_players[i].end(); ++itr){
            (*itr)->RemoveAura(BG_PREPARATION);
        }
    }

    OpenGates();
    PlaySoundToAll( SOUND_BATTLEGROUND_BEGIN );
    sEventMgr.AddEvent( this, &IsleOfConquest::UpdateResources, EVENT_IOC_RESOURCES_UPDATE, 10 * 1000, 0, 0 );
}
Esempio n. 2
0
void IsleOfConquest::OnStart()
{
    if( m_started )
        return;

    m_mainLock.Acquire();
    
    m_started = true;
    
    for(uint32 i = 0; i < 2; ++i){
        for(set<Player*  >::iterator itr = m_players[i].begin(); itr != m_players[i].end(); ++itr){
            (*itr)->RemoveAura(BG_PREPARATION);
        }
    }
    
    m_mainLock.Release();

    OpenGates();
    PlaySoundToAll( SOUND_BATTLEGROUND_BEGIN );
    sEventMgr.AddEvent( this, &IsleOfConquest::UpdateResources, EVENT_IOC_RESOURCES_UPDATE, 10 * 1000, 0, 0 );
}