Показать сообщение отдельно

  #2  
Старый 15.05.2019, 16:13
Cake_
Участник форума
Регистрация: 04.04.2017
Сообщений: 263
С нами: 4793630

Репутация: 133
По умолчанию

Цитата:
Сообщение от HanPrincess  

Как узнать текст диалога? При таком коде выводится только текст "Авторизация/Принять", то есть титла/кнопки, а дальше какие-то иероглифы, а мне надо прочитать текст, который находится в самом диалоге

Код:





Код:
bool CALLBACK incomingRPC(stRakNetHookParams* params)
{
    if (params->packetId == ScriptRPCEnumeration::RPC_ScrShowDialog)
    {
        short int DialogID;
        char pText[64];

        params->bitStream->ResetReadPointer();
        params->bitStream->Read(DialogID);
        params->bitStream->Read(pText);
        params->bitStream->ResetReadPointer();

        SF->getSAMP()->getChat()->AddChatMessage(-1, "DIALOG ID [%d]]",    DialogID);
        SF->getSAMP()->getChat()->AddChatMessage(-1, "Text: [%s]", pText);
    };

    return true;
};

Читаешь длину текста, читаешь сам текст, декодишь, убираешь мусор.

Цитата:
Сообщение от cakebou  

Читаешь длину текста, читаешь сам текст, декодишь, убираешь мусор.
  • ShowDialog - ID: 61
Parameters: UINT16 wDialogID, UINT8 bDialogStyle, UINT8 bTitleLength, char[] szTitle, UINT8 bButton1Len, char[] szButton1, UINT8 bButton2Len, char[] szButton2, CSTRING szInfo
 
Ответить с цитированием