Lovely Fox
-
Автор темы
- #1
C++:
void AddTrails()
{
if (g_LocalPlayer && g_LocalPlayer->IsAlive() && g_EngineClient->IsInGame() && g_EngineClient->IsConnected())
{
static float rainbow;
rainbow += 0.001f;
if (rainbow > 1.f)
rainbow = 0.f;
auto rainbow_col = Color::FromHSB(rainbow, 1, 1);
auto local_pos = g_LocalPlayer->m_vecOrigin();
DrawBeamPaw(local_pos, Vector(local_pos.x, local_pos.y + 10, local_pos.z), rainbow_col);
}
}
void DrawBeamPaw(Vector src, Vector end, Color color)
{
BeamInfo_t beamInfo;
beamInfo.m_nType = 0; //TE_BEAMPOINTS
beamInfo.m_vecStart = src;
beamInfo.m_vecEnd = end;
beamInfo.m_pszModelName = "sprites/glow01.vmt";
beamInfo.m_pszHaloName = "sprites/glow01.vmt";
beamInfo.m_flHaloScale = 3.0;
beamInfo.m_flWidth = 4.5f;
beamInfo.m_flEndWidth = 4.5f;
beamInfo.m_flFadeLength = 0.5f;
beamInfo.m_flAmplitude = 0;
beamInfo.m_flBrightness = 255.f;
beamInfo.m_flSpeed = 0.0f;
beamInfo.m_nStartFrame = 0.0;
beamInfo.m_flFrameRate = 0.0;
beamInfo.m_flRed = color.r();
beamInfo.m_flGreen = color.g();
beamInfo.m_flBlue = color.b();
beamInfo.m_nSegments = 1;
beamInfo.m_bRenderable = true;
beamInfo.m_flLife = 1;
beamInfo.m_nFlags = 256 | 512 | 32768; //FBEAM_ONLYNOISEONCE | FBEAM_NOTILE | FBEAM_HALOBEAM
Beam_t* myBeam = g_pViewRenderBeams->CreateBeamPoints(beamInfo);
if (myBeam)
g_pViewRenderBeams->DrawBeam(myBeam);
}
Пожалуйста, авторизуйтесь для просмотра ссылки.
class IViewRenderBeams ->
Пожалуйста, авторизуйтесь для просмотра ссылки.
g_pViewRenderBeams = *(IViewRenderBeams**) (IdaScan(client, "B9 ? ? ? ? A1 ? ? ? ? FF 10 A1 ? ? ? ? B9") + 1);
P.S Длина меняется в m_flLife (в секундах).