Другое SAMPFUNCS | API C++

Woofing Giraffe

Активный
402
49
Не могу скомпилировать, где ошибся/не дописал?
Код:
#include <windows.h>
#include <string>
#include <assert.h>
#include <process.h>

#include "SAMPFUNCS_API.h"

SAMPFUNCS *SF = new SAMPFUNCS();

void TW_CALL nops(void *clientData)
{
    SF->getCLEO()->callOpcode("0B2E: 1@ = read_samp_memory offset 0x4251 size 2\"");
    SF->getCLEO()->callOpcode("0B2D: write_samp_memory offset 0x4251 value 1@ size 2\"");
}

void TW_CALL nop=(void *clientData)
{
    if (!SF->getSAMP()->IsInitialized())
        return;



BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved)
{
        switch (dwReasonForCall)
        {
                case DLL_PROCESS_ATTACH:
                        SF->initPlugin(mainloop, hModule);
                        break;
                case DLL_THREAD_ATTACH:
                case DLL_THREAD_DETACH:
                case DLL_PROCESS_DETACH:
                        break;
        }
        return TRUE;
}
Ну во первых ты void не закрыл, а вообще память лучше читать и записывать не так.[/QUOTE]
 
Последнее редактирование:

CarLCas

Известный
161
118
Вот кусок плагина. При нажатии на P должно открыться меню, но оно не открывается.
C++:
void CALLBACK mainloop()
{
    static bool init = false;
    if (!init)
    {
        if (GAME == nullptr)
            return;
        if (GAME->GetSystemState() != eSystemState::GS_PLAYING_GAME)
            return;
        if (!SF->getSAMP()->IsInitialized())
            return;
        SF->getSAMP()->registerChatCommand("uinfo", cmd_show_info_player);
        SF->getSAMP()->registerChatCommand("utp", utp);
        SF->getSAMP()->getChat()->AddChatMessage(0xFF3300FF, "запущен!");
        SF->LogConsole(" Loaded!");
        twBar_Main = TwNewBar("SF");
        TwDefine("'SF Ultimate' color='0 224 160' size='250 400' text=white position='5 400' position='200 200'");
        TwAddButton(twBar_Main, "Player", player, NULL, "");
        TwAddButton(twBar_Main, "Vehicles", veh, NULL, "");
        TwAddButton(twBar_Main, "Nops", nops, NULL, "");
        TwAddButton(twBar_Main, "Other", other, NULL, "");
        TwAddButton(twBar_Main, "Help", uhelp, NULL, "");
        bar = TwNewBar("S");
        TwAddButton(bar, "Info 1.1", NULL, NULL, " label='/uinfo <id> - player info' ");
        TwAddButton(bar, "Info 1.2", NULL, NULL, " label='/' ");
        TwAddButton(bar, "Info 1.3", NULL, NULL, " label='SF' ");
        init = true;
    }
    if (SF->getGame()->isKeyPressed('P'))
        {
            Active ^= true;
        }
}
 

CarLCas

Известный
161
118
хз, мож не то
"Зарегай ракнет хук с типом RAKNET_HOOK_TYPE_INCOMING_RPC и в нём лови которые нужно, return false и пакет не пропустит"
(с) Сэр Опкодер
То, только не обязательно RAKNET_HOOK_TYPE_INCOMING_RPC, всё будет зависеть от того какой пакет/RPC тебе надо проигнорировать.
 

Tray228

Новичок
218
27
Как сделать перезаход на сервер при этом поменя имя через команду например "sname [nick]"