переделаю) буду благодарен если поделитесь
эта штука делает молнию над игроком, но в качестве примера, думаю, подходит
void ShowLightning(float pos1[3])
{
int randomx = GetRandomInt(-500, 500); // Получаем случайные позиции Х и У, чтобы молния не была однобокой
int randomy = GetRandomInt(-500, 500);
//Получаем верхнюю точку молнии. Она будет рандомная по Х и У и выше нижней позиции на 800, чтобы молния била сверху вниз
float startpos[3];
startpos[0] = pos1[0] + randomx;
startpos[1] = pos1[1] + randomy;
startpos[2] = pos1[2] + 700;
//Делаем цвет молнии (у нас синий)
//qwe
// int color[4] = {75, 75, 255, 255};
//Делаем направление искр (к началу координат карты)
float dir[3] = {0.0, 0.0, 0.0};
//qwe
// TE_SetupBeamPoints(startpos, pos1, g_BeamSprite, 0, 0, 0, 0.2, 20.0, 10.0, 0, 2.0, color, 3); //Делаем лазер с амплитудой в 2 единицы
// TE_SendToAll(); // Применяем
TE_SetupBeamPoints(startpos, pos1, g_BeamSprite, 0, 0, 0, 0.2, 10.0, 5.0, 0, 1.0, {255, 255, 255, 255}, 3); //Делаем второй лазер (белый) с амплитудой в 1 единицу
TE_SendToAll(); // Применяем //И в 2 раза уже, чтобы молния смотрелась органично
TE_SetupSparks(pos1, dir, 5000, 1000); //Делаем искры
TE_SendToAll(); // Применяем
//qweqwe
// TE_SetupEnergySplash(pos1, dir, false); //Делаем всплеск энергии
// TE_SendToAll(); // Применяем
//qweqweqwe unsupported texture
// TE_SetupSmoke(pos1, g_SteamSprite, 5.0, 10); //Делаем дым
// TE_SendToAll(); // Применяем
//Можно добавить маяк, если хотите. TE_SetupBeamRingPoint(pos1, 10.0, 70.0, g_BeamSprite, g_HaloSprite, 0, 15, 15.0, 2.0, 0.0, {255, 255, 0, 255}, 10, 0);
// TE_SendToAll();
}