Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Технические вопросы по PtokaX _ Против проблемы - Ваш ник занят

Автор: Sezam 1.3.2018, 8:04

Наконец то нашел эту функцию от PPK, alex82, которой нету в релизах на сайте PtokaX
Эта функция удаления не регистрированных юзеров с одинаковым IP и НИК
Если юзер повторно подключается с одним ником и IP тоже одинаковый, то предыдущая копия удаляется из хаба.

DcCommands.cpp ValidateDenideArrival - Добавил код ниже
LuaScriptManager.h VALIDATE_DENIDE_ARRIVAL - Добавил
LuaScriptManager.cpp "ValidateDenideArrival" - Добавил


VALIDATE_DENIDE_ARRIVAL

Код
                if(Reg == NULL) {
             // alex82 ... добавили ValidateDenideArrival
            clsScriptManager::mPtr->Arrival(curUser, Nick, szNickLen, clsScriptManager::VALIDATE_DENIDE_ARRIVAL);
                       int imsgLen = sprintf(msg, "$ValidateDenide %s|", Nick);
                       if(CheckSprintf(imsgLen, 1024, "clsDcCommands::ValidateUserNick14") == true) {
                        curUser->SendChar(msg, imsgLen);
                    }

                    if(strcmp(OtherUser->sIP, curUser->sIP) != 0 || strcmp(OtherUser->sNick, curUser->sNick) != 0) {
                        imsgLen = sprintf(msg, "[SYS] Nick taken [%s (%s)] %s (%s) - user closed.", OtherUser->sNick, OtherUser->sIP, curUser->sNick, curUser->sIP);
                        if(CheckSprintf(imsgLen, 1024, "clsDcCommands::ValidateUserNick15") == true) {
                            clsUdpDebug::mPtr->Broadcast(msg, imsgLen);
                        }
                    }

                    curUser->Close();
                    return false;
                } else {
                    // PPK ... addition for registered users, kill your own ghost >:-]
                    curUser->ui8State = User::STATE_VERSION_OR_MYPASS;
                    curUser->ui32BoolBits |= User::BIT_WAITING_FOR_PASS;
                    curUser->AddPrcsdCmd(PrcsdUsrCmd::GETPASS, NULL, 0, NULL);
                    return true;
                }
            }
        }
    }
        
    if(Reg == NULL) {


 PtokaX_0.5.0.1_LEDE__DCBEELINEKZ_.rar ( 236.92 килобайт ) : 8