Open YNXModz opened 4 years ago
Dude, the "flags esp" is almost painful to see.
Use std::vector
(or use it with std::pair
if you want to include colors)
few examples:
std::vector<std::pair<std::string, color>> de_flags;
//enemy has money (if enemy has no money ( $0 ), it wont appear)
if ( cl_ent->money() )
de_flags.push_back( std::pair<std::string, color>(std::string( "$" ).append( std::to_string( cl_ent->money() ) ), color( 120, 180, 10 ) ) );
//enemy is scoped
if ( cl_ent->is_scoped() )
de_flags.push_back( std::pair<std::string, color>( std::string( "ZOOM" ), color( 80, 160, 200 ) ) );
//enemy is a bot
if ( info.fakeplayer )
de_flags.push_back( std::pair<std::string, color>( std::string( "BOT" ), color( 80, 160, 200 ) ) );
//yeah ;(
auto position = 0;
for (auto text : de_flags)
{
// x, y, font, text, align ( left, right, center ), color
g_renderer::text( box.x + box.w + 3, box.y + position, g_renderer::font_flag, text.first, 0, text.second );
// 🤔 should be using text_height there hehe
position += 10;
}
Dude, the "flags esp" is almost painful to see. Use
std::vector
(or use it withstd::pair
if you want to include colors) few examples:std::vector<std::pair<std::string, color>> de_flags; //enemy has money (if enemy has no money ( $0 ), it wont appear) if ( cl_ent->money() ) de_flags.push_back( std::pair<std::string, color>(std::string( "$" ).append( std::to_string( cl_ent->money() ) ), color( 120, 180, 10 ) ) ); //enemy is scoped if ( cl_ent->is_scoped() ) de_flags.push_back( std::pair<std::string, color>( std::string( "ZOOM" ), color( 80, 160, 200 ) ) ); //enemy is a bot if ( info.fakeplayer ) de_flags.push_back( std::pair<std::string, color>( std::string( "BOT" ), color( 80, 160, 200 ) ) ); //yeah ;( auto position = 0; for (auto text : de_flags) { // x, y, font, text, align ( left, right, center ), color g_renderer::text( box.x + box.w + 3, box.y + position, g_renderer::font_flag, text.first, 0, text.second ); // 🤔 should be using text_height there hehe position += 10; }
alright will do, the flags esp was rushed tbh and doesnt even work correctly so i will rework it with vector and pair as you said, thanks
if (!interfaces::debug_overlay->world_to_screen(points[3], flb) || !interfaces::debug_overlay->world_to_screen(points[5], brt) || !interfaces::debug_overlay->world_to_screen(points[0], blb) || !interfaces::debug_overlay->world_to_screen(points[4], frt) || !interfaces::debug_overlay->world_to_screen(points[2], frb) || !interfaces::debug_overlay->world_to_screen(points[1], brb) || !interfaces::debug_overlay->world_to_screen(points[6], blt) || !interfaces::debug_overlay->world_to_screen(points[7], flt)) return false;
u can loop through these in a for loop to not make it ugly...
can you send "box"?
so uh i worked on esp for a while and it works with this base so ima give it to you guys
its box esp with a dynamic health and armor bar including text and flags
its not the best and the flags esp does need to be updated but i thought id help a lot of you out with this
ESP.cpp
`bool get_playerbox(player_t* ent, box& in) { vec3_t origin, min, max, flb, brt, blb, frt, frb, brb, blt, flt; float left, top, right, bottom;
} void ESP::player_rendering(player_t* entity){ if ((entity->dormant())) return;
} void ESP::run() { auto local_player = reinterpret_cast<player_t*>(interfaces::entity_list->get_client_entity(interfaces::engine->get_local_player()));
}`
features.hpp
namespace ESP { void run(); void player_rendering(player_t* entity); void skeleton(player_t* entity); void healthesp(); void armoresp(); void thirdperson(); }
then in the "MatSystemTopPanel" case
ESP::run();
make sure its above menu render or your esp will render on top of your menu lmao