Înlătură notificare
Bun venit pe all4games.ro, Vizitator.
Distribuie şi tu această comunitate pentru a devenii mai cunoscută. Dacă ai tutoriale şi/sau resurse, nu ezita să le postezi şi aici. Mulţumim!
Înregistrare sau logare.

C++ Blocare conectare cu 2 conturi la evenimentul OX

Discuție în 'C++ / DIFF / Surse' creată de Gigiz, 19 Apr 2018.

  1. Gigiz

    Gigiz
    Administrator
    Membru personal

    Înscris:
    15 Mar 2016
    Mesaje:
    305
    Aprecieri primite:
    124
    Aprecieri oferite:
    6
    Intră în Srcs/Server/game/src/OXEvent.h şi caută:
    COD:
    Select All
    GetAttenderCount()
    Sub adaugă:
    COD:
    Select All
       // Ox-event IP-Checker
       
    public:
         
    bool CheckIpAddress(LPCHARACTER ch);
         
    void RemoveFromAttenderList(DWORD dwPID);
    Intră în Srcs/Server/game/src/OXEvent.cpp şi caută:
    COD:
    Select All
    COxEventManager::LogWinner()
    Sub adaugă:
    COD:
    Select All
    bool COXEventManager::CheckIpAddress(LPCHARACTER ch)
    {
       for (
    itertype(m_map_attenderit m_map_attender.begin(); it != m_map_attender.end(); ++it)
       {
         
    LPCHARACTER tch CHARACTER_MANAGER::Instance().FindByPID(it->second);
         if (!
    tch || !tch->GetDesc())
           continue;

         if (!
    strcmp(ch->GetDesc()->GetHostName(), tch->GetDesc()->GetHostName()) && ch->GetMapIndex() == tch->GetMapIndex())
         {
           
    LogManager::Instance().HackLog("MULTI_IP_OX"ch);
           
    ch->GoHome();
           return 
    false;
         }
       }

       return 
    true;
    }


    void COXEventManager::RemoveFromAttenderList(DWORD dwPID)
    {
       
    m_map_attender.erase(dwPID);
    }

    bool COXEventManager::EnterAttender(LPCHARACTER pkChar)
    {
       
    DWORD pid pkChar->GetPlayerID();
       
       if (
    CheckIpAddress(pkChar))
       {
         
    m_map_char.insert(std::make_pair(pidpid));
         
    m_map_attender.insert(std::make_pair(pidpid));
         return 
    true;
       }

       return 
    false;
    }
    Intră în Srcs/Server/game/src/Char.cpp şi caută:
    COD:
    Select All
    MessengerManager::instance().Logout(GetName());
    Sub adaugă:
    COD:
    Select All
       if (GetMapIndex() == OXEVENT_MAP_INDEX)
         
    COXEventManager::Instance().RemoveFromAttenderList(GetPlayerID());
    Sursa: J4M, Trebuie să te loghezi pentru a vedea link-ul
     

Distribuie pagina asta