Другое С/С++ Вопрос - Ответ

atizoff

приобретаю кашель за деньги
Проверенный
1,296
1,179
C++:
bool CALLBACK incomingRPC(stRakNetHookParams * params)
{
    if (params->packetId == ScriptRPCEnumeration::RPC_ScrClientMessage)
    {
            DWORD color;
            DWORD strlen;
            char string[2048];
            params->bitStream->ResetReadPointer();
            params->bitStream->Read(color);
            params->bitStream->Read(strlen);
            params->bitStream->Read(string, strlen);
            string[strlen] = '\0';
          
            if (strlen > 10) { //Если символов в строке больше 10, значит не показывать строку
                return false;
            }
          
            if (strstr(string, "Vasya_Pupok") != 0) { //Если найдена произвольная строка, тогда не показывать ее
                return false;
            }
    }
  
    return true;
}

SF->getRakNet()->registerRakNetCallback(RakNetScriptHookType::RAKHOOK_TYPE_INCOMING_RPC, incomingRPC);


https://blast.hk/threads/23412/
Спасибо конечно, но мне не для сампа, а в общем
 

CatKnight

Известный
148
55
Где лучше всего вызывать функцию SetCursor? Пробовал разово вставлять в колбеке команды, но так курсор не проявляется, а если запихать в презент, то всё нормально работает. Как правильно делать? Хочу юзать совместно с имгуи.
 

Неадекватная сова

Известный
Проверенный
214
158
Где лучше всего вызывать функцию SetCursor? Пробовал разово вставлять в колбеке команды, но так курсор не проявляется, а если запихать в презент, то всё нормально работает. Как правильно делать? Хочу юзать совместно с имгуи.
Если ты про SF->getSAMP()->getMisc()->ToggleCursor(), то его нужно постоянно вызывать до тех пор, пока он тебе нужен
 
  • Нравится
Реакции: CatKnight

_Vine_

Активный
154
57
Как реализовать собственную функцию DecodeString из SF API?
C++:
void SFRakNet::DecodeString(char *output, int maxCharsToWrite, BitStream *input);
 

loganhackerdff

Известный
868
519
при огткрытии файла .cpp через visual studio 2017 вместо нормальной отладки, кнопка "присоединение" , до переустановки винды было всё нормально
 

Вложения

  • Безымянный.png
    Безымянный.png
    21.6 KB · Просмотры: 163

#Rin

Известный
Всефорумный модератор
1,214
1,043
Как реализовать собственную функцию DecodeString из SF API?
C++:
void SFRakNet::DecodeString(char *output, int maxCharsToWrite, BitStream *input);
http://www.jenkinssoftware.com/raknet/manual/Doxygen/classRakNet_1_1StringCompressor.html
при огткрытии файла .cpp через visual studio 2017 вместо нормальной отладки, кнопка "присоединение" , до переустановки винды было всё нормально
.sln открывать надо, простой чистый .cpp файл не скомпилировать.
 
  • Нравится
Реакции: loganhackerdff и _Vine_

CatKnight

Известный
148
55
У меня вопрос насчёт выгрузки имгуи. Я посмотрел, в этой теме имгуи выгружается в GameDestructorCallback. Но там же пишется, что деструктор не вызывается при выходе из игры, и советуется выгружать его в DLL_PROCESS_DETACH. Собственно, в чём вопрос: нужно ли использовать оба способа одновременно? У меня в таком случае при выходе идёт краш игры. Если же оставить один DLL_PROCESS_DETACH, то в целом всё нормально. Как тут быть?
 

#Rin

Известный
Всефорумный модератор
1,214
1,043
У меня вопрос насчёт выгрузки имгуи. Я посмотрел, в этой теме имгуи выгружается в GameDestructorCallback. Но там же пишется, что деструктор не вызывается при выходе из игры, и советуется выгружать его в DLL_PROCESS_DETACH. Собственно, в чём вопрос: нужно ли использовать оба способа одновременно? У меня в таком случае при выходе идёт краш игры. Если же оставить один DLL_PROCESS_DETACH, то в целом всё нормально. Как тут быть?
Сделать мьютекс с проверкой, если уже вызван деструктор, то ничего не делать.
 
  • Нравится
Реакции: Cake_ и CatKnight

Natami

Участник
377
26
Нажимаю ctrl + f5 (чтобы скомпилировать), вылазит (см.скрин). Не особо разобрался.
 

Вложения

  • Снимок.JPG
    Снимок.JPG
    23.9 KB · Просмотры: 186

checkdasound

Известный
Проверенный
963
410
Есть адрес (0xB700F0), по которому находится ид модели машины, в которой ты находишься, но он не работает на велосипеды и мотоциклы. Есть ли аналоги и как узнать ид модели, если ты сидишь на двухколесном транспорте?

upd. уже нашел
C++:
unsigned int CurrentVehiclePointer = *(unsigned int*)0xBA18FC;
unsigned short model = *(unsigned short*)(CurrentVehiclePointer + 34);
 
Последнее редактирование: