Вопрос Создание materials

Новичок
Статус
Оффлайн
Регистрация
18 Авг 2023
Сообщения
1
Реакции[?]
0
Поинты[?]
0
Пытался сделать кастомные чамсы, использую CSGOSimple, часть кода спастил с сурса легендвара.
Код:
IMaterial* CreateMaterial(bool lit, const std::string& material_data)
{
    static auto created = 0;
    std::string type = lit ? "VertexLitGeneric" : "UnlitGeneric";

    auto matname = ("mat_") + std::to_string(created);
    ++created;

    auto keyValues = new KeyValues(matname.c_str());
    static auto key_values_address = Utils::PatternScan(GetModuleHandleA("client.dll"), "55 8B EC 56 8B F1 33 C0 8B 4D 0C 81 26 ? ? ? ? 89 46 10 8A 45 10 C6 46 03 00 89 4E 14 88 46 18 C7 46 ? ? ? ? ? C7 46");

    using KeyValuesFn = void(__thiscall*)(void*, const char*, void*, void*);
    reinterpret_cast <KeyValuesFn> (key_values_address)(keyValues, type.c_str(), 0, 0);


    static auto load_from_buffer_address = Utils::PatternScan(GetModuleHandleA("client.dll"), "55 8B EC 83 E4 F8 83 EC 34 53 8B 5D 0C 89");
    using LoadFromBufferFn = void(__thiscall*)(void*, const char*, const char*, void*, const char*, void*);
   

    reinterpret_cast <LoadFromBufferFn> (load_from_buffer_address)(keyValues, matname.c_str(), material_data.c_str(), nullptr, nullptr, nullptr);

    auto material = g_MatSystem->CreateMaterial(matname.c_str(), keyValues);
    material->IncrementReferenceCount();

    return material;
}


Выдаёт ошибку, может кто-то подсказать как это исправить?
Сама ошибка:

Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)
 
ЧВК EB_LAN
Забаненный
Статус
Оффлайн
Регистрация
12 Янв 2019
Сообщения
838
Реакции[?]
298
Поинты[?]
17K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Пытался сделать кастомные чамсы, использую CSGOSimple, часть кода спастил с сурса легендвара.
Код:
IMaterial* CreateMaterial(bool lit, const std::string& material_data)
{
    static auto created = 0;
    std::string type = lit ? "VertexLitGeneric" : "UnlitGeneric";

    auto matname = ("mat_") + std::to_string(created);
    ++created;

    auto keyValues = new KeyValues(matname.c_str());
    static auto key_values_address = Utils::PatternScan(GetModuleHandleA("client.dll"), "55 8B EC 56 8B F1 33 C0 8B 4D 0C 81 26 ? ? ? ? 89 46 10 8A 45 10 C6 46 03 00 89 4E 14 88 46 18 C7 46 ? ? ? ? ? C7 46");

    using KeyValuesFn = void(__thiscall*)(void*, const char*, void*, void*);
    reinterpret_cast <KeyValuesFn> (key_values_address)(keyValues, type.c_str(), 0, 0);


    static auto load_from_buffer_address = Utils::PatternScan(GetModuleHandleA("client.dll"), "55 8B EC 83 E4 F8 83 EC 34 53 8B 5D 0C 89");
    using LoadFromBufferFn = void(__thiscall*)(void*, const char*, const char*, void*, const char*, void*);
  

    reinterpret_cast <LoadFromBufferFn> (load_from_buffer_address)(keyValues, matname.c_str(), material_data.c_str(), nullptr, nullptr, nullptr);

    auto material = g_MatSystem->CreateMaterial(matname.c_str(), keyValues);
    material->IncrementReferenceCount();

    return material;
}


Выдаёт ошибку, может кто-то подсказать как это исправить?
Сама ошибка:

Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)
У тебя сигна для буффера невалид
55 8B EC 83 E4 F8 83 EC 34 53 8B 5D 0C 89 4C 24 04
 
Сверху Снизу