From 9bce1e205549214a9b52aa750b602f7a03babe89 Mon Sep 17 00:00:00 2001 From: Sinner <64489962+SinnerTF2@users.noreply.github.com> Date: Mon, 23 Aug 2021 19:24:33 +0200 Subject: [PATCH] Add more bullet tracers (#1537) * Add more bullet tracers * Add Merasmus tracers * Add Merasmus tracers --- data/menu/nullifiedcat/visuals/tracers.xml | 9 +++++ src/hacks/BulletTracers.cpp | 42 +++++++++++++++++++--- 2 files changed, 47 insertions(+), 4 deletions(-) diff --git a/data/menu/nullifiedcat/visuals/tracers.xml b/data/menu/nullifiedcat/visuals/tracers.xml index 96af5162..6d2f6a67 100755 --- a/data/menu/nullifiedcat/visuals/tracers.xml +++ b/data/menu/nullifiedcat/visuals/tracers.xml @@ -2,6 +2,15 @@ + + + diff --git a/src/hacks/BulletTracers.cpp b/src/hacks/BulletTracers.cpp index a1985b4a..5f43badf 100644 --- a/src/hacks/BulletTracers.cpp +++ b/src/hacks/BulletTracers.cpp @@ -15,6 +15,7 @@ static settings::Boolean draw_local{ "visual.bullet-tracers.draw-local", "true" static settings::Int team_mode{ "visual.bullet-tracers.teammode", "0" }; static settings::Boolean one_trace_only{ "visual.bullet-tracers.one-trace-only", "false" }; static settings::Boolean sentry_tracers{ "visual.bullet-tracers.sentry", "true" }; +static settings::Int tracer_type{ "visual.bullet-tracers.type", "0" }; class CEffectData { @@ -44,10 +45,43 @@ CalcZoomedMuzzleLocation_t CalcZoomedMuzzleLocation_fn; const char *AppropiateBeam(int team) { - if (team == TEAM_RED) - return "dxhr_sniper_rail_red"; - else - return "dxhr_sniper_rail_blue"; + switch (*tracer_type) + { + case 0: + //Machina + if (team == TEAM_RED) + return "dxhr_sniper_rail_red"; + else + return "dxhr_sniper_rail_blue"; + case 1: + //C.A.P.P.E.R + if (re::CTFPlayerShared::IsCritBoosted(re::CTFPlayerShared::GetPlayerShared(RAW_ENT(LOCAL_E)))) + { + if (team == TEAM_RED) + return "bullet_tracer_raygun_red_crit"; + else + return "bullet_tracer_raygun_blue_crit"; + } + else + { + if (team == TEAM_RED) + return "bullet_tracer_raygun_red"; + else + return "bullet_tracer_raygun_blue"; + } + case 2: + //Short Circuit Zap + if (team == TEAM_RED) + return "dxhr_lightningball_hit_zap_red"; + else + return "dxhr_lightningball_hit_zap_blue"; + case 3: + //Merasmus Vortex + return "merasmus_zap_beam02"; + case 4: + //Merasmus Zap + return "merasmus_zap"; + } } const char *GetParticleSystemNameFromIndex__detour(CEffectData &data)