Исходник Кастом текст бомбы

Забаненный
Статус
Оффлайн
Регистрация
2 Июн 2023
Сообщения
6
Реакции[?]
2
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
метод так себе ( нужно добавить проверку начала установки бомбы, или даже можно сделать анимированный текст, просто удерживая бомбу и т. д.)
C++:
// "client.dll", "55 8B EC 8B 45 08 85 C0 53"
void __fastcall set_text(
    const std::uintptr* ecx, const std::uintptr_t edx, const char* name
    ) {
    if ( !valve::g_local_player || !valve::g_local_player->weapon( ) || !g_ctx->cmd( ) )
        return o_set_text( ecx, edx, name );
        
    static auto timer = 0.f;
    
    /* haha wtfff */
    if ( valve::g_local_player->weapon( )->item_index( ) == valve::item_index::c4 && g_ctx->cmd( )->m_buttons & valve::e_buttons::in_attack ) {
         if ( !timer )
              timer = valve::g_global_vars->m_cur_time + 0.5f;
              
        auto timer_diff =  valve::g_global_vars->m_cur_time - timer;
        
        /* transition time can be made to scale with text length but idc */
        std::string text{};
        for ( size_t i = 0; i < sizeof( g_menu->main( ).m_misc.m_bomb_buffer ); i++ )
            if ( timer_diff >= (i * 0.18f ) )
                text += g_menu->main( ).m_misc.m_bomb_buffer[ i ];
            else
                break;
                
        o_set_text( ecx, edx, name );
    }
    else
        timer = 0.f;
        
    o_set_text( ecx, edx, name );
}
 
Легенда форума
Статус
Оффлайн
Регистрация
10 Дек 2018
Сообщения
4,374
Реакции[?]
2,280
Поинты[?]
184K
метод так себе ( нужно добавить проверку начала установки бомбы, или даже можно сделать анимированный текст, просто удерживая бомбу и т. д.)
C++:
// "client.dll", "55 8B EC 8B 45 08 85 C0 53"
void __fastcall set_text(
    const std::uintptr* ecx, const std::uintptr_t edx, const char* name
    ) {
    if ( !valve::g_local_player || !valve::g_local_player->weapon( ) || !g_ctx->cmd( ) )
        return o_set_text( ecx, edx, name );
       
    static auto timer = 0.f;
   
    /* haha wtfff */
    if ( valve::g_local_player->weapon( )->item_index( ) == valve::item_index::c4 && g_ctx->cmd( )->m_buttons & valve::e_buttons::in_attack ) {
         if ( !timer )
              timer = valve::g_global_vars->m_cur_time + 0.5f;
             
        auto timer_diff =  valve::g_global_vars->m_cur_time - timer;
       
        /* transition time can be made to scale with text length but idc */
        std::string text{};
        for ( size_t i = 0; i < sizeof( g_menu->main( ).m_misc.m_bomb_buffer ); i++ )
            if ( timer_diff >= (i * 0.18f ) )
                text += g_menu->main( ).m_misc.m_bomb_buffer[ i ];
            else
                break;
               
        o_set_text( ecx, edx, name );
    }
    else
        timer = 0.f;
       
    o_set_text( ecx, edx, name );
}
Отлично, а какой конкретно текст Вы, Дмитрий, заменяете? Могли бы Вы показать скриншот с заменой?
 
Хех.......)#манипулятор #кукловод #манипуляция
Участник
Статус
Оффлайн
Регистрация
28 Дек 2019
Сообщения
560
Реакции[?]
224
Поинты[?]
3K
Участник
Статус
Оффлайн
Регистрация
13 Ноя 2020
Сообщения
1,230
Реакции[?]
180
Поинты[?]
70K
кто тут у кого спиздил ?
Я у тебя спиздил, и оставил говнокод.
что ты совсем затупок
аххаха
у меня код отличается так конкретно тот что в той теме и то что у меня
Ну у тебя он как-то покороче, но что-то мне он зашел меньше, чем тот, что кинули выше.
 
Забаненный
Статус
Оффлайн
Регистрация
2 Июн 2023
Сообщения
6
Реакции[?]
2
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Я у тебя спиздил, и оставил говнокод.

Ну у тебя он как-то покороче, но что-то мне он зашел меньше, чем тот, что кинули выше.
я сразу меняю текст в ин гейм функции set_text и мне не придется хукать 8248414 функций чтобы изменить какой то текст в бомбе......
 
Начинающий
Статус
Оффлайн
Регистрация
22 Окт 2022
Сообщения
98
Реакции[?]
24
Поинты[?]
0
я сразу меняю текст в ин гейм функции set_text и мне не придется хукать 8248414 функций чтобы изменить какой то текст в бомбе......
ахуеть придумали еще кароче:NotLikeThis:
Код:
void __fastcall h::hkSetText(void* ecx, void* edx, const char* tokenName) {
 
    static auto original = detour::setText.GetOriginal<decltype(&h::hkSetText)>();
 
    if (!g::pLocal || !g::pLocal->GetWeapon() || !g::pCmd)
        return original(ecx, edx, tokenName);
 
    CBaseCombatWeapon* pWeapon = g::pLocal->GetWeapon();
 
    static float timerLmao = 0.f;
    if (g::pLocal->GetWeapon()->GetItemDefinitionIndex() == WEAPON_C4 && g::pCmd->iButtons & IN_ATTACK) {
 
        if (timerLmao == 0.f)
            timerLmao = i::GlobalVars->flCurrentTime + 0.5f;
 
        float flTransition = i::GlobalVars->flCurrentTime - timerLmao;
 
        // transition time can be made to scale with text length but idc
        std::string thisText;
        for (size_t i = 0; i < sizeof(cfg::misc::bombBuffer); i++)
            if (flTransition >= (i * 0.18f))
                thisText += cfg::misc::bombBuffer[i];
            else
                break;
 
        return original(ecx, edx, thisText.c_str());
    }
    else
        timerLmao = 0.f;
 
    return original(ecx, edx, tokenName);
}
 
Участник
Статус
Оффлайн
Регистрация
13 Ноя 2020
Сообщения
1,230
Реакции[?]
180
Поинты[?]
70K
я сразу меняю текст в ин гейм функции set_text и мне не придется хукать 8248414 функций чтобы изменить какой то текст в бомбе......
Я про то, что мне как то по приятнее там смотреть код
 
Забаненный
Статус
Оффлайн
Регистрация
2 Июн 2023
Сообщения
6
Реакции[?]
2
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ахуеть придумали еще кароче:NotLikeThis:
Код:
void __fastcall h::hkSetText(void* ecx, void* edx, const char* tokenName) {

    static auto original = detour::setText.GetOriginal<decltype(&h::hkSetText)>();

    if (!g::pLocal || !g::pLocal->GetWeapon() || !g::pCmd)
        return original(ecx, edx, tokenName);

    CBaseCombatWeapon* pWeapon = g::pLocal->GetWeapon();

    static float timerLmao = 0.f;
    if (g::pLocal->GetWeapon()->GetItemDefinitionIndex() == WEAPON_C4 && g::pCmd->iButtons & IN_ATTACK) {

        if (timerLmao == 0.f)
            timerLmao = i::GlobalVars->flCurrentTime + 0.5f;

        float flTransition = i::GlobalVars->flCurrentTime - timerLmao;

        // transition time can be made to scale with text length but idc
        std::string thisText;
        for (size_t i = 0; i < sizeof(cfg::misc::bombBuffer); i++)
            if (flTransition >= (i * 0.18f))
                thisText += cfg::misc::bombBuffer[i];
            else
                break;

        return original(ecx, edx, thisText.c_str());
    }
    else
        timerLmao = 0.f;

    return original(ecx, edx, tokenName);
}
данный код никак не относится к моему
Я про то, что мне как то по приятнее там смотреть код
я не знаю почему ты так думаешь
 
Легенда форума
Статус
Оффлайн
Регистрация
10 Дек 2018
Сообщения
4,374
Реакции[?]
2,280
Поинты[?]
184K
ахуеть придумали еще кароче:NotLikeThis:
Код:
void __fastcall h::hkSetText(void* ecx, void* edx, const char* tokenName) {

    static auto original = detour::setText.GetOriginal<decltype(&h::hkSetText)>();

    if (!g::pLocal || !g::pLocal->GetWeapon() || !g::pCmd)
        return original(ecx, edx, tokenName);

    CBaseCombatWeapon* pWeapon = g::pLocal->GetWeapon();

    static float timerLmao = 0.f;
    if (g::pLocal->GetWeapon()->GetItemDefinitionIndex() == WEAPON_C4 && g::pCmd->iButtons & IN_ATTACK) {

        if (timerLmao == 0.f)
            timerLmao = i::GlobalVars->flCurrentTime + 0.5f;

        float flTransition = i::GlobalVars->flCurrentTime - timerLmao;

        // transition time can be made to scale with text length but idc
        std::string thisText;
        for (size_t i = 0; i < sizeof(cfg::misc::bombBuffer); i++)
            if (flTransition >= (i * 0.18f))
                thisText += cfg::misc::bombBuffer[i];
            else
                break;

        return original(ecx, edx, thisText.c_str());
    }
    else
        timerLmao = 0.f;

    return original(ecx, edx, tokenName);
}
1685998859410.png1685998868279.png

Короче на +1 строку кода
 
Хех.......)#манипулятор #кукловод #манипуляция
Участник
Статус
Оффлайн
Регистрация
28 Дек 2019
Сообщения
560
Реакции[?]
224
Поинты[?]
3K
ахуеть придумали еще кароче:NotLikeThis:
Код:
void __fastcall h::hkSetText(void* ecx, void* edx, const char* tokenName) {

    static auto original = detour::setText.GetOriginal<decltype(&h::hkSetText)>();

    if (!g::pLocal || !g::pLocal->GetWeapon() || !g::pCmd)
        return original(ecx, edx, tokenName);

    CBaseCombatWeapon* pWeapon = g::pLocal->GetWeapon();

    static float timerLmao = 0.f;
    if (g::pLocal->GetWeapon()->GetItemDefinitionIndex() == WEAPON_C4 && g::pCmd->iButtons & IN_ATTACK) {

        if (timerLmao == 0.f)
            timerLmao = i::GlobalVars->flCurrentTime + 0.5f;

        float flTransition = i::GlobalVars->flCurrentTime - timerLmao;

        // transition time can be made to scale with text length but idc
        std::string thisText;
        for (size_t i = 0; i < sizeof(cfg::misc::bombBuffer); i++)
            if (flTransition >= (i * 0.18f))
                thisText += cfg::misc::bombBuffer[i];
            else
                break;

        return original(ecx, edx, thisText.c_str());
    }
    else
        timerLmao = 0.f;

    return original(ecx, edx, tokenName);
}
Зачем вы скинули код fatal_salvatore, только с ужасным код стайлом?
 
              ru p2cs > all                      
Разработчик
Статус
Оффлайн
Регистрация
19 Авг 2016
Сообщения
1,578
Реакции[?]
1,961
Поинты[?]
131K
C++:
    static auto timer = 0.f;
 
    /* haha wtfff */
    if ( valve::g_local_player->weapon( )->item_index( ) == valve::item_index::c4 && g_ctx->cmd( )->m_buttons & valve::e_buttons::in_attack ) {
         if ( !timer )
              timer = valve::g_global_vars->m_cur_time + 0.5f;
советую начать пользоваться головой, какой к черту статик таймер, какой нахуй in_attack. позорники.

Пожалуйста, авторизуйтесь для просмотра ссылки.

Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Последнее редактирование:
Сверху Снизу