#pragma semicolon 1
#include <sourcemod>
#include <sdktools>
#pragma newdecls required
public Plugin myinfo =
{
name = "Electro Effects - Awp",
author = "R1KO & AlmazON",
version = "1.0.2NotVip",
url = "http://hlmod.ru"
};
public void OnPluginStart()
{
HookEvent("bullet_impact", Event_OnBulletImpact);
}
public void Event_OnBulletImpact(Event event, const char[] name, bool silent)
{
static char weapon[14];
GetClientWeapon(GetClientOfUserId(event.GetInt("userid")), weapon, sizeof(weapon));
if(strcmp(weapon, "weapon_awp") == 0)
{
static float fPos[3];
fPos[0] = event.GetFloat("x");
fPos[1] = event.GetFloat("y");
fPos[2] = event.GetFloat("z");
Func_EnergySplash(fPos);
}
}
void Func_EnergySplash(const float fPos[3])
{
TE_SetupSparks(fPos, view_as<float>({0.0, 0.0, 0.0}), 5000, 1000);
TE_SendToAll();
}
void Func_Sparks(const float fPos[3])
{
int iSparks = CreateEntityByName("env_spark");
DispatchKeyValue(iSparks, "beamcount_min", "20");
DispatchKeyValue(iSparks, "beamcount_max", "30");
DispatchKeyValue(iSparks, "lifetime_min", "1.0");
DispatchKeyValue(iSparks, "lifetime_max", "2.0");
DispatchKeyValue(iSparks, "m_flRadius", "500.0");
DispatchKeyValue(iSparks, "m_SoundName", "DoSpark");
DispatchKeyValue(iSparks, "texture", "particle/sparks/sparks.vmt");
DispatchKeyValue(iSparks, "m_Color", "255 0 0");
DispatchKeyValue(iSparks, "thick_min", "15.0");
DispatchKeyValue(iSparks, "thick_max", "25.0");
DispatchKeyValue(iSparks, "interval_min", "1.2");
DispatchKeyValue(iSparks, "interval_max", "2.4");
DispatchSpawn(iSparks);
TeleportEntity(iSparks, fPos, NULL_VECTOR, NULL_VECTOR);
AcceptEntityInput(iSparks, "TurnOn");
AcceptEntityInput(iSparks, "DoSpark");
}