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

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
595
807
C++:
bool functeion_crash = false;

ImGui::Checkbox("Крашить игроков", &functeion_crash);

reg->SetRegister("crashit", REG_DWORD, &functeion_crash);

Вместо 1 и 0, в реестр сохраняется 17601 и 17602, как это исправить ?
 

astap_

Известный
Всефорумный модератор
626
597
With SFPlugin C++:

How to get the vehicle of the vehicle I enter in?

How to send it through T> {enter}?
u can hook RPC_EnterVehicle:
Код:
bool CALLBACK outRPC(stRakNetHookParams *params) 
{
    if (params->packetId == RPCEnumeration::RPC_EnterVehicle) 
    {
        int16 vehID;
        bool asPassenger;
        char buf[255];

        params->bitStream->ResetReadPointer(); 
        params->bitStream->Read(vehID);
        params->bitStream->Read(asPassenger);
        params->bitStream->ResetReadPointer();

        sprintf(buf, "I enter the car ID: %i", vehID);
        SF->getSAMP()->getPlayers()->pLocalPlayer->Say(buf);
    };
    return true; 
};

SF->getRakNet()->registerRakNetCallback(RakNetScriptHookType::RAKHOOK_TYPE_OUTCOMING_RPC, outRPC); // in mainloop()
 

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
595
807
Измени тип переменной на DWORD

C++:
DWORD functeion_crash = false;

ImGui::Checkbox("Крашить игроков", &functeion_crash); << Ошибка

reg->SetRegister("crashit", REG_DWORD, &functeion_crash);

Код:
error C2664: "bool ImGui::Checkbox(const char *,bool *)": невозможно преобразовать аргумент 2 из "DWORD *" в "bool *"
 

Rjx13

Известный
Проверенный
224
160
Как чисто по адресам памяти (сигнлплеер) заморозить игрока (отключить ему все анимации, например бега, прыжка и т.п.)? Я хочу сделать айрбрейк, всё работает, но анимации сильно (очень сильно) мешают, меняя направление движения.
C++:
#define FUNC_MakePlayerSafe 0x56e870
#define ACTOR_POINTER_SELF        0x00B7CD98
void GTAfunc_TogglePlayerControllable(bool bToggle)
{
    DWORD func = FUNC_MakePlayerSafe;
    float fTen = 10.0f;
    _asm
    {
        mov ecx, ACTOR_POINTER_SELF
            push        fTen
            push        bToggle
            call        func
    }
}

static bool state = false;
state ^= true;
GTAfunc_TogglePlayerControllable(state ? 1 : 0);
 
Последнее редактирование:

Vesca

Новичок
20
0
How can I edit a text before sending it to server?
If I type [/command someText] i want to edit it into: [/command Some text!].
I mean I want to parse and edit the text before sending it to server.
 

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
595
807
C++:
DWORD functeion_crash = false;

ImGui::Checkbox("Крашить игроков", &functeion_crash); << Ошибка

reg->SetRegister("crashit", REG_DWORD, &functeion_crash);

Код:
error C2664: "bool ImGui::Checkbox(const char *,bool *)": невозможно преобразовать аргумент 2 из "DWORD *" в "bool *"

>> Проблема не решена. <<
 

SR_team

like pancake
BH Team
4,720
6,372
Что я делаю не так? Очень странно всё работает (может я дебил, не исключено). Жмёшь стрелку вверх - едет вниз, жмёшь стрелку вниз - едет вниз, WASD вообще почти ничего не делают (только если в прыжке включить пролетит немного и остановится в воздухе).

C++:
void Airbreak() {
    DWORD CPed = *(DWORD*)0xB6F5F0;
    GTAfunc_TogglePlayerControllable(1);
    byte mod = 20;
    while (1) {
        if (aAirbreak == 0) {
            break;
            GTAfunc_TogglePlayerControllable(0);
        }

        DWORD x = (CPed + 0x14) + 0x30;
        DWORD y = (CPed + 0x14) + 0x34;
        DWORD z = (CPed + 0x14) + 0x38;

        if (GetAsyncKeyState(0x57)) { // W
            x += mod;
            *(DWORD*)x = x;
        }
        if (GetAsyncKeyState(0x53)) { // S
            x -= mod;
            *(DWORD*)x = x;
        }
        if (GetAsyncKeyState(0x41)) { // A
            y += mod;
            *(DWORD*)y = y;
        }
        if (GetAsyncKeyState(0x44)) { // D
            y -= mod;
            *(DWORD*)y = y;
        }
        if (GetAsyncKeyState(VK_UP)) { // Arrow up
            z += mod;
            *(DWORD*)z = z;
        }
        if (GetAsyncKeyState(VK_DOWN)) { // Arrow down
            z -= mod;
            *(DWORD*)z = z;
        }
       
        // это чтоб не падал и не двигался сам по себе никуда
        *(DWORD*)x = x;
        *(DWORD*)y = y;
        *(DWORD*)z = z;
    }
    return;
}
https://git.prime-hack.net/SR_team/AirBreak_exe/src/branch/master/airbreak.cpp#L314
 

_Vine_

Активный
154
57
>> Проблема не решена. <<
C++:
ImGui::Checkbox("Крашить игроков", (bool*)&functeion_crash);

How can I edit a text before sending it to server?
If I type [/command someText] i want to edit it into: [/command Some text!].
I mean I want to parse and edit the text before sending it to server.
You should hook the outcomimg RPC_ServerCommamd
 
Последнее редактирование:
  • Нравится
Реакции: Receiver

-raymond-

Известный
110
9
как в имгуи преобразовать цвет из rgba в ImVec2? Есть ли генератор такого цвета?
 

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
595
807
C++:
bool CALLBACK incomingRPC(stRakNetHookParams * params)
{
    if (params->packetId == ScriptRPCEnumeration::RPC_ScrClientMessage)
    {
        DWORD strlen;
        char string[2048];
        params->bitStream->ResetReadPointer();
        params->bitStream->Read(strlen);
        params->bitStream->Read(string, strlen);

        SF->getSAMP()->getChat()->AddChatMessage(-1, "дебаг");
        if (!strcmp(string, "Server closed the connection."))
        {
            SF->getSAMP()->getChat()->AddChatMessage(-1, "Сервер закрыл соединение");
        }
    }
    return true;
}

В чат выводит "дебаг", но "Сервер закрыл соединение" - нет. Почему так ?
 

-raymond-

Известный
110
9
C++:
bool CALLBACK incomingRPC(stRakNetHookParams * params)
{
    if (params->packetId == ScriptRPCEnumeration::RPC_ScrClientMessage)
    {
        DWORD strlen;
        char string[2048];
        params->bitStream->ResetReadPointer();
        params->bitStream->Read(strlen);
        params->bitStream->Read(string, strlen);

        SF->getSAMP()->getChat()->AddChatMessage(-1, "дебаг");
        if (!strcmp(string, "Server closed the connection."))
        {
            SF->getSAMP()->getChat()->AddChatMessage(-1, "Сервер закрыл соединение");
        }
    }
    return true;
}

В чат выводит "дебаг", но "Сервер закрыл соединение" - нет. Почему так ?
вроде нельзя этот текст хукнуть через raknet

мб в ImVec4? в полезных функциях вроде был сниппет.
да в imvec4