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

F0RQU1N and

Известный
1,304
497
  • Влюблен
Реакции: whyega52

whyega52

Eblang головного мозга
Модератор
2,837
2,775
#pragma once мб поможет
или просто добавь перед классом нетворк
class Plugin;
или
struct Plugin;
(хз что это там у тебя но наверное это и не имеет особо значения)
теперь линкер решил немного дать пиздов
1711700854718.png
 

F0RQU1N and

Известный
1,304
497
  • Вау
Реакции: whyega52

ARMOR

Мне кажется, я всё проебал
Модератор
5,017
7,094
как хукать MODELS\FONTS.TXD для подгрузки своих шрифтов
CFont::Initialise 0x5BA690 Тут подгружается fonts.txd через CTxdStore, можешь просто переписать функцию и инджектнуть её, либо просто хукнуть CSprite2d::SetTexture внутри неё. для font2 - 0x5BA6CC, для font1 - 0x5BA6E0.
Ещё можешь просто после подгрузки игровых шрифтов подгрузить свои вместо них в массив CSprite2d CFont::Sprite[2] - 0xC71AD0
 
  • Клоун
Реакции: #Northn

vmprotect

Известный
378
240
каким образом происходит подгрузка своих шрифтов для чата типа ttf
 

ARMOR

Мне кажется, я всё проебал
Модератор
5,017
7,094
каким образом происходит подгрузка своих шрифтов для чата типа ttf
Для чата подгрузка происходит через CFonts::Reset(), для диалогов и т.д используется CDXUTDialog::InitFont(). Сами методы просто используют D3DXCreateFontA
 

yorenov

Участник
43
35
C++:
void loooooooool::rakhookSetup() {
rakhook::on_receive_rpc += [&] (unsigned char &id, RakNet::BitStream *bitStream) {
        if (!enabled)
            return true;
        if (id != 215)
            return true;

        bitStream->ResetReadPointer();

        char test[5]{0};
        bitStream->Read(test, 5);

        uint16_t test2;
        bitStream->Read(test2);

       
        sendResponse(test, test2, 0, 0);
        // тут надо подождать 20 секунд
        sendResponse(test, test2, 0, 0);

        return true;
    };
}
У нас есть лямбда, функция loooooooool::rakhookSetup() вызывается 1 раз после инициализации. Вопрос вот в чем, как мне вызвать функцию sendResponse два раза с интервалом в 20 секунд? Переменные test и test2 не хочу выносить за пределы лямбды, выносить битстрим - бяка, создавать поток не хочу, использовать ktcoro - научите). Суть просто в том, что мне надо вызвать функцию sendResponse несколько раз, передав в аргументы те самые test и test2, так же, вызывать с интервалом. Подскажите нормальные способы

C++:
void loooooooool::rakhookSetup() {
rakhook::on_receive_rpc += [&] (unsigned char &id, RakNet::BitStream *bitStream) {
        if (!enabled)
            return true;
        if (id != 215)
            return true;

        bitStream->ResetReadPointer();

        char test[5]{0};
        bitStream->Read(test, 5);

        uint16_t test2;
        bitStream->Read(test2);

      
        sendResponse(test, test2, 0, 0);
        // тут надо подождать 20 секунд
        sendResponse(test, test2, 0, 0);

        return true;
    };
}
У нас есть лямбда, функция loooooooool::rakhookSetup() вызывается 1 раз после инициализации. Вопрос вот в чем, как мне вызвать функцию sendResponse два раза с интервалом в 20 секунд? Переменные test и test2 не хочу выносить за пределы лямбды, выносить битстрим - бяка, создавать поток не хочу, использовать ktcoro - научите). Суть просто в том, что мне надо вызвать функцию sendResponse несколько раз, передав в аргументы те самые test и test2, так же, вызывать с интервалом. Подскажите нормальные способы
upd: Нашел решение

С++:
tasklist.add_task([](int _test, int _test2) -> ktwait {
            looooooool::sendResponse(_test, _test2, "1", false);
            co_await 16000;
            looooooool::sendResponse(_test, _test2, "2", true);
        }, test, test2);
 
Последнее редактирование:

vmprotect

Известный
378
240
как можно реализовать привязку сервера, например если подключаешься на IP 127.0.0.1:7777, то будет выводиться определенная функция, а если на другой IP то ничего не будет
 

ARMOR

Мне кажется, я всё проебал
Модератор
5,017
7,094
как можно реализовать привязку сервера, например если подключаешься на IP 127.0.0.1:7777, то будет выводиться определенная функция, а если на другой IP то ничего не будет
Получать адрес и порт из CNetGame и проверять их
 
  • Нравится
Реакции: whyega52 и vmprotect