From a988afb947e653b96f2b188d455865cd6fc80ea0 Mon Sep 17 00:00:00 2001 From: navewindre Date: Sun, 2 Sep 2018 16:55:27 +0200 Subject: yea --- internal_rewrite/visual_player.cpp | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) (limited to 'internal_rewrite/visual_player.cpp') diff --git a/internal_rewrite/visual_player.cpp b/internal_rewrite/visual_player.cpp index eee2065..a1089e7 100644 --- a/internal_rewrite/visual_player.cpp +++ b/internal_rewrite/visual_player.cpp @@ -47,15 +47,12 @@ namespace features if( !g_settings.visuals.hitmarkers || !g_ctx.run_frame( ) ) return; - static const clr_t col_start = clr_t( 231, 75, 75, 255 ); - static const clr_t col_end = clr_t( 0xf4, 0x7c, 0xa8, 255 ); - float delta = ( g_csgo.m_globals->m_curtime - m_last_hit ) * 1.5f; if( std::abs( delta ) > 1.0f ) return; - clr_t blend = clr_t::blend( col_start, col_end, delta ); + clr_t col = clr_t( 221, 221, 221, 255 ); if( delta > 0.75f ) { - blend.a( ) = 255 * ( 1.0f - delta ) * 4.f; + col.a( ) = 255 * ( 1.0f - delta ) * 4.f; } auto get_rotated_point = [ ]( vec2_t point, float rotation, float distance ) { @@ -72,14 +69,26 @@ namespace features float rotation = 135.f + i * 90.f; vec2_t center = { screen_w * 0.5f, screen_h * 0.5f }; - vec2_t start = get_rotated_point( center, rotation, 8.f ); - vec2_t end = get_rotated_point( center, rotation, 17.f ); + + for( size_t dist = 7; dist < 14; ++dist ) { + vec2_t start = get_rotated_point( center, rotation, dist ); + vec2_t end = get_rotated_point( center, rotation, dist + 1 ); + + vec2_t rot_start = get_rotated_point( center, rotation - 180.f, dist ); + vec2_t rot_end = get_rotated_point( center, rotation - 180.f, dist + 1 ); + + int point = dist - 6; + float percentage = point / 7; - vec2_t rot_start = get_rotated_point( center, rotation - 180.f, 8.f ); - vec2_t rot_end = get_rotated_point( center, rotation - 180.f, 17.f ); + percentage = 1.f - percentage; + percentage *= std::clamp( delta + 0.75f, 0.f, 1.f ); - draw_line( start, end, blend ); - draw_line( rot_start, rot_end, blend ); + clr_t draw = col; + draw.a( ) *= percentage; + + draw_line( start, end, draw ); + draw_line( rot_start, rot_end, draw ); + } } } -- cgit v1.2.3