Исходник Easy Sticker Changer

Премиум
Статус
Оффлайн
Регистрация
21 Фев 2017
Сообщения
279
Реакции[?]
133
Поинты[?]
1K
"Easy Sticker Changer" позволяет добавлять наклейки на любое оружие. Можете пастить куда угодно, даже в Индиго.
(Хайда нет, сурсы взяты с UC)

Код:
enum class EStickerAttributeType
{
    Index,
    Wear,
    Scale,
    Rotation
};
 
static uint16_t s_iwoff = 0;
 
static void* o_float_fn;
 
static float __fastcall hooked_float_fn(void* thisptr, void*, int slot, EStickerAttributeType attribute, float fl)
{
    auto item = reinterpret_cast<C_BaseAttributableItem*>(uintptr_t(thisptr) - s_iwoff);
 
    switch(attribute)
    {
    case EStickerAttributeType::Wear:
        return FLT_MIN;
    case EStickerAttributeType::Scale:
        return 1.f;
    case EStickerAttributeType::Rotation:
        return 0.f;
    }
 
    return reinterpret_cast<decltype(hooked_float_fn)*>(o_float_fn)(thisptr, nullptr, slot, attribute, fl);
}
 
static void* o_uint_fn;
 
static unsigned int __fastcall hooked_uint_fn(void* thisptr, void*, int slot, EStickerAttributeType attribute, unsigned fl)
{
    auto item = reinterpret_cast<C_BaseAttributableItem*>(uintptr_t(thisptr) - s_iwoff);
 
    switch(attribute)
    {
    case EStickerAttributeType::Index:
        return 442;
    }
 
    return reinterpret_cast<decltype(hooked_uint_fn)*>(o_uint_fn)(thisptr, nullptr, slot, attribute, fl);
}
 
void ApplyStickerHooks(C_BaseAttributableItem* item)
{
    if(!s_iwoff)
        s_iwoff = NetVarManager::Get().GetOffset(FnvHash("CEconEntity->m_Item")) + 0xC;
 
    void**& iw_vt = *reinterpret_cast<void***>(uintptr_t(item) + s_iwoff);
 
    static void** iw_hook_vt = nullptr;
 
    if(!iw_hook_vt)
    {
        size_t len = 0;
        for(; platform::IsCodePtr(iw_vt[len]); ++len);
        iw_hook_vt = new void*[len];
        memcpy(iw_hook_vt, iw_vt, len * sizeof(void*));
        o_float_fn = iw_hook_vt[4];
        iw_hook_vt[4] = &hooked_float_fn;
        o_uint_fn = iw_hook_vt[5];
        iw_hook_vt[5] = &hooked_uint_fn;
    }
 
    iw_vt = iw_hook_vt;
}
 
GDPR_Anonymous
Пользователь
Статус
Оффлайн
Регистрация
17 Фев 2017
Сообщения
362
Реакции[?]
133
Поинты[?]
0
alive forever
Забаненный
Статус
Оффлайн
Регистрация
21 Июн 2017
Сообщения
666
Реакции[?]
400
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Премиум
Статус
Оффлайн
Регистрация
20 Авг 2016
Сообщения
1,006
Реакции[?]
538
Поинты[?]
0
толку от тех стикеров никакого , реально задрачивания уже для просто нереальных задротов скинченджера
лучше в чите будет нормальный аим , чем красивые скины с наклейками
 
push me to the edge
Олдфаг
Статус
Оффлайн
Регистрация
22 Мар 2017
Сообщения
2,260
Реакции[?]
1,206
Поинты[?]
1K
толку от тех стикеров никакого , реально задрачивания уже для просто нереальных задротов скинченджера
лучше в чите будет нормальный аим , чем красивые скины с наклейками
Ты што??? скинчунгер лучшее что придумали для читов!!!
 
              ru p2cs > all                      
Разработчик
Статус
Оффлайн
Регистрация
19 Авг 2016
Сообщения
1,563
Реакции[?]
1,936
Поинты[?]
106K
Забаненный
Статус
Оффлайн
Регистрация
13 Июл 2017
Сообщения
90
Реакции[?]
6
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
а какой файл создавать stikers.cpp или stikers.h
 
Забаненный
Статус
Оффлайн
Регистрация
10 Янв 2017
Сообщения
113
Реакции[?]
43
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
3 Авг 2016
Сообщения
704
Реакции[?]
156
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Начинающий
Статус
Оффлайн
Регистрация
8 Авг 2016
Сообщения
11
Реакции[?]
2
Поинты[?]
0
ля
"Easy Sticker Changer" позволяет добавлять наклейки на любое оружие. Можете пастить куда угодно, даже в Индиго.
(Хайда нет, сурсы взяты с UC)

Код:
enum class EStickerAttributeType
{
    Index,
    Wear,
    Scale,
    Rotation
};
 
static uint16_t s_iwoff = 0;
 
static void* o_float_fn;
 
static float __fastcall hooked_float_fn(void* thisptr, void*, int slot, EStickerAttributeType attribute, float fl)
{
    auto item = reinterpret_cast<C_BaseAttributableItem*>(uintptr_t(thisptr) - s_iwoff);
 
    switch(attribute)
    {
    case EStickerAttributeType::Wear:
        return FLT_MIN;
    case EStickerAttributeType::Scale:
        return 1.f;
    case EStickerAttributeType::Rotation:
        return 0.f;
    }
 
    return reinterpret_cast<decltype(hooked_float_fn)*>(o_float_fn)(thisptr, nullptr, slot, attribute, fl);
}
 
static void* o_uint_fn;
 
static unsigned int __fastcall hooked_uint_fn(void* thisptr, void*, int slot, EStickerAttributeType attribute, unsigned fl)
{
    auto item = reinterpret_cast<C_BaseAttributableItem*>(uintptr_t(thisptr) - s_iwoff);
 
    switch(attribute)
    {
    case EStickerAttributeType::Index:
        return 442;
    }
 
    return reinterpret_cast<decltype(hooked_uint_fn)*>(o_uint_fn)(thisptr, nullptr, slot, attribute, fl);
}
 
void ApplyStickerHooks(C_BaseAttributableItem* item)
{
    if(!s_iwoff)
        s_iwoff = NetVarManager::Get().GetOffset(FnvHash("CEconEntity->m_Item")) + 0xC;
 
    void**& iw_vt = *reinterpret_cast<void***>(uintptr_t(item) + s_iwoff);
 
    static void** iw_hook_vt = nullptr;
 
    if(!iw_hook_vt)
    {
        size_t len = 0;
        for(; platform::IsCodePtr(iw_vt[len]); ++len);
        iw_hook_vt = new void*[len];
        memcpy(iw_hook_vt, iw_vt, len * sizeof(void*));
        o_float_fn = iw_hook_vt[4];
        iw_hook_vt[4] = &hooked_float_fn;
        o_uint_fn = iw_hook_vt[5];
        iw_hook_vt[5] = &hooked_uint_fn;
    }
 
    iw_vt = iw_hook_vt;
}
ля пезда добавил в софт nameSpam and ChatSpam,а стикеры не могу:ccc
 
ɪɴ ᴀ ʏᴇᴀʀ ᴜ'ʟʟ ʀᴇɢʀᴇᴛ ᴛʜᴀᴛ ʏᴏᴜ ᴅɪᴅn'ᴛ sᴛᴀʀᴛ ᴛᴏᴅᴀʏ
Пользователь
Статус
Оффлайн
Регистрация
15 Мар 2017
Сообщения
528
Реакции[?]
126
Поинты[?]
0
ɪɴ ᴀ ʏᴇᴀʀ ᴜ'ʟʟ ʀᴇɢʀᴇᴛ ᴛʜᴀᴛ ʏᴏᴜ ᴅɪᴅn'ᴛ sᴛᴀʀᴛ ᴛᴏᴅᴀʏ
Пользователь
Статус
Оффлайн
Регистрация
15 Мар 2017
Сообщения
528
Реакции[?]
126
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
8 Авг 2016
Сообщения
11
Реакции[?]
2
Поинты[?]
0
Тут только парсер (вроде). Это лишь малая часть кода,остальное тебе придется делать (дописывать) самому,а код там получится не маленький.
Понятно:c
 
Похожие темы
Сверху Снизу