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

Wall

Потрачен
13
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
помогите вот такая проблема возникает при компиляции плагина 2 раксампа отлично скомпилировались без единой ошибки а сф плагин ошибку выдает

сдк установленно подклучино пути прописаны все равно пишет
eb5c24a6b6fb.jpg

bd2a831af3d2.jpg

b759292ca250.jpg
 
Последнее редактирование:

Wall

Потрачен
13
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
все компилит спс
 

Tray228

Новичок
218
27
Как правильно записать sCurrentAnimID и sAnimFlags
А то чет не получается.
 

Tray228

Новичок
218
27
покажи как ты делал
Код:
#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS
#include <windows.h>
#include <string>
#include <assert.h>
#include <process.h>
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"

bool STATUS;
SAMPFUNCS *SF = new SAMPFUNCS();
stOnFootData sync;

void CALLBACK cmd(std::string param)
{
    STATUS ^= true;
    memset(&sync, 0, sizeof(stOnFootData) && STATUS == true );
    sync = SF->getSAMP()->getPlayers()->pLocalPlayer->onFootData;
  
    BitStream sCurrentAnimID;
    BitStream sAnimFlags;
  
  
    sCurrentAnimID.Write((BYTE)ID_PLAYER_SYNC);
    sCurrentAnimID.Write((PCHAR)&sync, sizeof(stOnFootData));
  
    sAnimFlags.Write((BYTE)ID_PLAYER_SYNC);
    sAnimFlags.Write((PCHAR)&sync, sizeof(stOnFootData));
  
    SF->getRakNet()->SendPacket(&sCurrentAnimID);
    SF->getRakNet()->SendPacket(&sAnimFlags);
};


void CALLBACK mainloop()
{
    static bool init = false;
    if (!init)
    {
        if (GAME == nullptr)
            return;
        if (GAME->GetSystemState() != eSystemState::GS_PLAYING_GAME)
            return;
        GAME->GetAudio()->PlayBeatTrack(2);

        if (!SF->getSAMP()->IsInitialized())
            return;
        SF->getSAMP()->registerChatCommand("sbiv", cmd);
        SF->LogConsole("{FF0000}[SFPlugin] {FFFFFF}загужен by Tray228");
      

        init = true;
    }
}

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;
}
 
Последнее редактирование модератором:

0pc0d3R

Потрачен
550
269
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код:
void CALLBACK cmd(std::string param)
{
    stOnFootData sync; BitStream bs;
    memcpy(&SF->getSAMP()->getPlayers()->pLocalPlayer->onFootData, &sync);
    sync.sCurrentAnimID = 1134; // допустим перезапишем на такой ид анимки
    sync.sAnimFlags = 1130; // и флаг анимки для пример
    // флаг и ид анимки узнаешь если выведешь sCurrentAnimID и sAnimFlags из текущей онфут даты на екран или в чат.
    bs.Write((BYTE)ID_PLAYER_SYNC);
    bs.Write((PCHAR)&sync, sizeof(stOnFootData));
    SF->getRakNet()->SendPacket(&bs);
};
Мда чет ты натворил ерунды что хоть падай и плачь.
 
  • Нравится
Реакции: Tray228

Tray228

Новичок
218
27
Код:
void CALLBACK cmd(std::string param)
{
    stOnFootData sync; BitStream bs;
    memcpy(&SF->getSAMP()->getPlayers()->pLocalPlayer->onFootData, &sync);
    sync.sCurrentAnimID = 1134; // допустим перезапишем на такой ид анимки
    sync.sAnimFlags = 1130; // и флаг анимки для пример
    // флаг и ид анимки узнаешь если выведешь sCurrentAnimID и sAnimFlags из текущей онфут даты на екран или в чат.
    bs.Write((BYTE)ID_PLAYER_SYNC);
    bs.Write((PCHAR)&sync, sizeof(stOnFootData));
    SF->getRakNet()->SendPacket(&bs);
};
Мда чет ты натворил ерунды что хоть падай и плачь.
Воу, спасибо ;3
 

Tray228

Новичок
218
27
Код:
void CALLBACK cmd(std::string param)
{
    stOnFootData sync; BitStream bs;
    memcpy(&SF->getSAMP()->getPlayers()->pLocalPlayer->onFootData, &sync);
    sync.sCurrentAnimID = 1134; // допустим перезапишем на такой ид анимки
    sync.sAnimFlags = 1130; // и флаг анимки для пример
    // флаг и ид анимки узнаешь если выведешь sCurrentAnimID и sAnimFlags из текущей онфут даты на екран или в чат.
    bs.Write((BYTE)ID_PLAYER_SYNC);
    bs.Write((PCHAR)&sync, sizeof(stOnFootData));
    SF->getRakNet()->SendPacket(&bs);
};
Мда чет ты натворил ерунды что хоть падай и плачь.
а в чем отличия от memcpy и memset
 

0pc0d3R

Потрачен
550
269
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
а в чем отличия от memcpy и memset
memset может обнулять память, чаще всего для этого её и юзают, чтобы почистить структуры/классы и тд. А memcpy наоборот копирует их откуда-то куда-то.
 
  • Нравится
Реакции: Tray228