C++ Исходник Gradient watermark for legendware v3

Начинающий
Статус
Оффлайн
Регистрация
8 Дек 2020
Сообщения
102
Реакции[?]
24
Поинты[?]
4K
Этот код заменить в файле misc.cpp
C++:
void misc::watermark()
{
    if (!g_cfg.menu.watermark)
        return;

    auto width = 0, height = 0;
    m_engine()->GetScreenSize(width, height);

    auto watermark = crypt_str("onetap v5 [Alpha] | ") + g_ctx.username + g_ctx.globals.time;

    if (m_engine()->IsInGame())
    {
        auto nci = m_engine()->GetNetChannelInfo();

        if (nci)
        {
            auto server = nci->GetAddress();

            if (!strcmp(server, crypt_str("loopback")))
                server = crypt_str("local server");
            else if (m_gamerules()->m_bIsValveDS())
                server = crypt_str("valve server");

            auto tickrate = std::to_string((int)(1.0f / m_globals()->m_intervalpertick));
            watermark = crypt_str("onetap v5 | ") + g_ctx.username + server + crypt_str(" | ") + std::to_string(g_ctx.globals.ping) + crypt_str(" ms | ") + tickrate + crypt_str(" tick | ") + g_ctx.globals.time;
        }
    }

    auto box_width = render::get().text_width(fonts[NAME], watermark.c_str()) + 10;

    render::get().gradient(width - 10 - box_width, 10, box_width, 2, Color(g_cfg.misc.watermark_color1), Color(g_cfg.misc.watermark_color2), GRADIENT_HORIZONTAL);
    render::get().rect_filled(width - 10 - box_width, 11, box_width, 18, Color(0, 0, 0, 100));

    render::get().text(fonts[NAME], width - 10 - box_width + 5, 20, Color(255, 255, 255, 255), HFONT_CENTERED_Y, watermark.c_str());
}

}
Что-бы изменять цвет в меню вам нужно добавить в Configs.h в struct Misc_t данные строки
C++:
Color watermark_color1;
Color watermark_color2;
Для сохранения цвета в конфиге нужно в файле Configs.cpp добавить эти строки
C++:
    setup_item(&g_cfg.misc.watermark_color1, Color(255, 255, 255), crypt_str("Esp.watermark_color1"));
    setup_item(&g_cfg.misc.watermark_color2, Color(255, 255, 255), crypt_str("Esp.watermark_color2"));
Так же вам нужно в самом меню добавить чекбоксы оно может находится как в файле main.cpp так и же в файле menu.cpp зависимо от вашего сурса
C++:
                        ImGui::Text(crypt_str("Watermark Color First"));

                        ImGui::SameLine();

                        ImGui::ColorEdit("##watermark_color1", &g_cfg.misc.watermark_color1, ALPHA);

                        ImGui::Text(crypt_str("Watermark Color Second"));

                        ImGui::SameLine();

                        ImGui::ColorEdit("##watermark_color2", &g_cfg.misc.watermark_color2, ALPHA);
Если хотите изменить название чита в ватермарке то нужно поменять везде с "onetap v5" на то что вы хотите

изображение_2021-08-26_202834.png
 
Последнее редактирование:
pidjan
Пользователь
Статус
Оффлайн
Регистрация
10 Ноя 2020
Сообщения
526
Реакции[?]
148
Поинты[?]
1K
как сложно это делать афигеть, и кто из пастеров в 2к21 в конце лета использует легендвар в3 умерший
 
EAC Demolisher
Пользователь
Статус
Оффлайн
Регистрация
17 Апр 2020
Сообщения
62
Реакции[?]
52
Поинты[?]
0
Этот код заменить в файле misc.cpp
C++:
void misc::watermark()
{
    if (!g_cfg.menu.watermark)
        return;

    auto width = 0, height = 0;
    m_engine()->GetScreenSize(width, height);

    auto watermark = crypt_str("onetap v5 [Alpha] | ") + g_ctx.username + g_ctx.globals.time;

    if (m_engine()->IsInGame())
    {
        auto nci = m_engine()->GetNetChannelInfo();

        if (nci)
        {
            auto server = nci->GetAddress();

            if (!strcmp(server, crypt_str("loopback")))
                server = crypt_str("local server");
            else if (m_gamerules()->m_bIsValveDS())
                server = crypt_str("valve server");

            auto tickrate = std::to_string((int)(1.0f / m_globals()->m_intervalpertick));
            watermark = crypt_str("onetap v5 | ") + g_ctx.username + server + crypt_str(" | ") + std::to_string(g_ctx.globals.ping) + crypt_str(" ms | ") + tickrate + crypt_str(" tick | ") + g_ctx.globals.time;
        }
    }

    auto box_width = render::get().text_width(fonts[NAME], watermark.c_str()) + 10;

    render::get().gradient(width - 10 - box_width, 10, box_width, 2, Color(g_cfg.misc.watermark_color1), Color(g_cfg.misc.watermark_color2), GRADIENT_HORIZONTAL);
    render::get().rect_filled(width - 10 - box_width, 11, box_width, 18, Color(0, 0, 0, 100));

    render::get().text(fonts[NAME], width - 10 - box_width + 5, 20, Color(255, 255, 255, 255), HFONT_CENTERED_Y, watermark.c_str());
}

}
Что-бы изменять цвет в меню вам нужно добавить в Configs.h данные строки
C++:
Color watermark_color1;
Color watermark_color2;
Для сохранения цвета в конфиге нужно в файле Configs.cpp добавить эти строки
C++:
    setup_item(&g_cfg.misc.watermark_color1, Color(255, 255, 255), crypt_str("Esp.watermark_color1"));
    setup_item(&g_cfg.misc.watermark_color2, Color(255, 255, 255), crypt_str("Esp.watermark_color2"));
Так же вам нужно в самом меню добавить чекбоксы оно может находится как в файле main.cpp так и же в файле menu.cpp зависимо от вашего сурса
C++:
                        ImGui::Text(crypt_str("Watermark Color First"));

                        ImGui::SameLine();

                        ImGui::ColorEdit("##watermark_color1", &g_cfg.misc.watermark_color1, ALPHA);

                        ImGui::Text(crypt_str("Watermark Color Second"));

                        ImGui::SameLine();

                        ImGui::ColorEdit("##watermark_color2", &g_cfg.misc.watermark_color2, ALPHA);
Если хотите изменить название чита в ватермарке то нужно поменять везде с "onetap v5" на то что вы хотите

Посмотреть вложение 168550

C++:
ImGui::SetNextWindowSize(ImVec2(270, 10));
        ImGui::Begin("##WM", NULL, ImGuiWindowFlags_::ImGuiWindowFlags_NoScrollWithMouse | ImGuiWindowFlags_::ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_::ImGuiWindowFlags_NoBackground);
        {
            std::string uname, build, build_at;
            uname = "bcware"; build = "[beta]"; build_at = __DATE__; build_at += " "; build_at += __TIME__;
            auto s = ImVec2{}, p = ImVec2{}, GuiSize = ImVec2{ 270, 10 };
            static float ss = 0.f;
            ImVec2 pad = ImGui::GetStyle().WindowPadding;

            s = ImVec2(ImGui::GetWindowSize().x - pad.x * 2, ImGui::GetWindowSize().y - pad.y); p = ImVec2(ImGui::GetWindowPos().x + pad.x, ImGui::GetWindowPos().y + pad.y); auto draw = ImGui::GetForegroundDrawList();
            draw->AddRectFilled(p, ImVec2(p.x + s.x, p.y + s.y), ImColor(33, 33, 33, 210));
            ImVec4 col = ImLerp(ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, 1.f);
            ImVec4 col2 = ImLerp(ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, 1.f);
            draw->AddRectFilledMultiColor(p, ImVec2(p.x + s.x / 2, p.y + 2), ImColor(col), ImColor(col2), ImColor(col2), ImColor(col));
            draw->AddRectFilledMultiColor(ImVec2(p.x + s.x / 2, p.y), ImVec2(p.x + s.x, p.y + 2), ImColor(col2), ImColor(col), ImColor(col), ImColor(col2));
        
            draw->AddText(ImVec2(p.x + 5, p.y + s.y - 25 + (10 - ImGui::CalcTextSize(std::string("bcware " + build + " | build at: " + build_at).c_str()).y / 2)), ImColor(220, 220, 220), std::string("bcware " + build + " | build at: " + build_at).c_str());
        
        }
 
Эксперт
Статус
Оффлайн
Регистрация
14 Июл 2019
Сообщения
1,107
Реакции[?]
497
Поинты[?]
33K
Начинающий
Статус
Оффлайн
Регистрация
11 Ноя 2021
Сообщения
16
Реакции[?]
2
Поинты[?]
0
Забаненный
Статус
Оффлайн
Регистрация
19 Дек 2021
Сообщения
21
Реакции[?]
3
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
C++:
ImGui::SetNextWindowSize(ImVec2(270, 10));
        ImGui::Begin("##WM", NULL, ImGuiWindowFlags_::ImGuiWindowFlags_NoScrollWithMouse | ImGuiWindowFlags_::ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_::ImGuiWindowFlags_NoBackground);
        {
            std::string uname, build, build_at;
            uname = "bcware"; build = "[beta]"; build_at = __DATE__; build_at += " "; build_at += __TIME__;
            auto s = ImVec2{}, p = ImVec2{}, GuiSize = ImVec2{ 270, 10 };
            static float ss = 0.f;
            ImVec2 pad = ImGui::GetStyle().WindowPadding;

            s = ImVec2(ImGui::GetWindowSize().x - pad.x * 2, ImGui::GetWindowSize().y - pad.y); p = ImVec2(ImGui::GetWindowPos().x + pad.x, ImGui::GetWindowPos().y + pad.y); auto draw = ImGui::GetForegroundDrawList();
            draw->AddRectFilled(p, ImVec2(p.x + s.x, p.y + s.y), ImColor(33, 33, 33, 210));
            ImVec4 col = ImLerp(ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, 1.f);
            ImVec4 col2 = ImLerp(ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, ImVec4{ 100 / 255.f, 184 / 255.f, 222 / 255.f, 1 }, 1.f);
            draw->AddRectFilledMultiColor(p, ImVec2(p.x + s.x / 2, p.y + 2), ImColor(col), ImColor(col2), ImColor(col2), ImColor(col));
            draw->AddRectFilledMultiColor(ImVec2(p.x + s.x / 2, p.y), ImVec2(p.x + s.x, p.y + 2), ImColor(col2), ImColor(col), ImColor(col), ImColor(col2));
      
            draw->AddText(ImVec2(p.x + 5, p.y + s.y - 25 + (10 - ImGui::CalcTextSize(std::string("bcware " + build + " | build at: " + build_at).c_str()).y / 2)), ImColor(220, 220, 220), std::string("bcware " + build + " | build at: " + build_at).c_str());
      
        }
говнокода куча, я бы почистил бы, но мне лень
(ПРОШУ НЕ ПОДСКАЗЫВАТЬ) :roflanEbalo:
Давай я тебя озадачу: glow сделай епт... А то выглядит как дефолт...
Посмотреть вложение 168570
Мультиколор с прозрачностью и всё. Есть глоу ещё получше и тем более он по кругу элемента
 
Сверху Снизу