Администратор ryancoolround Опубликовано 24 августа, 2020 Администратор Поделиться Опубликовано 24 августа, 2020 Очень простой плагин, стреляющий искрами из под ваших ног! Использовать его смогут только админы. Он прекрасно работает в L4D2, и это только визуальный эффект. Он никак не влияет на геймплей. Полезный бинд: bind mwheelup sm_explode Различные демо: Демонстрация на примере Counter-Strike: Source Сами частицы искр. explode.sp explode.smx «Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Чат Бот Опубликовано 24 сентября, 2020 Поделиться Опубликовано 24 сентября, 2020 мне жаль, чувак, но такие плагины просто жалкие... Ссылка на комментарий Поделиться на другие сайты Поделиться
Администратор ryancoolround Опубликовано 24 сентября, 2020 Автор Администратор Поделиться Опубликовано 24 сентября, 2020 Привет, @Чат Бот, Ты же знаешь, что крутые ребята, которые пишут невероятные плагины, когда учились тоже писали именно такую чушь? И скорее всего, они сами понимали что это чушь, и публиковали ее, потом читали критику, такую как твоя, и учились на ней. Все мы так поступаем! Написание плагинов, как и шитье или вязание - это ремесло. И тебе нужно работать над ремеслом, чтобы хорошо им овладеть. И твой первый плагин "Чушь", это не причина, чтобы отказываться от продолжения обучения! «Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон Ссылка на комментарий Поделиться на другие сайты Поделиться
Администратор ryancoolround Опубликовано 29 апреля, 2021 Автор Администратор Поделиться Опубликовано 29 апреля, 2021 Если понадобится этот плагин, он включен в следующую сборку: «Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон Ссылка на комментарий Поделиться на другие сайты Поделиться
Администратор ryancoolround Опубликовано 11 июля, 2022 Автор Администратор Поделиться Опубликовано 11 июля, 2022 Плагин обновлен, скомпилирован на версии Sourcemod 1.11, я постарался устранить предупреждения связанные с: for( new i = 1; i <= MaxClients; i++) warning 234: symbol "FCVAR_PLUGIN" is marked as deprecated: No logic using this flag ever existed in a released game. It only ever appeared in the first hl2sdk. Полностью код теперь выглядит следующим образом: #include <sourcemod> #include <sdktools> #pragma semicolon 1 #define EXPLODE_PLUGIN_VERSION "0.1" #define SOUND_BOOM "ambient/explosions/explode_8.wav" public Plugin:myinfo = { name = "Explode", author = "chundo", description = "Explode a player", version = "0.1", url = "http://www.mefightclub.com/" }; new g_fire; new g_HaloSprite; new g_ExplosionSprite; new Handle:g_cvarExplodeMode = INVALID_HANDLE; new Handle:g_cvarExplodeRadius = INVALID_HANDLE; public OnPluginStart() { LoadTranslations("explode.phrases"); CreateConVar("sm_explode_version", EXPLODE_PLUGIN_VERSION, "Explode version.", FCVAR_NONE | FCVAR_NOTIFY); g_cvarExplodeMode = CreateConVar("sm_explode_mode", "0", "Sets who explosions will hurt. 0 = target only, 1 = team only, 2 = everyone", FCVAR_NONE); g_cvarExplodeRadius = CreateConVar("sm_explode_radius", "600", "Sets who explosions will hurt. 0 = target only, 1 = team only, 2 = everyone", FCVAR_NONE); RegAdminCmd("sm_explode", Command_Explode, ADMFLAG_SLAY, "Explode a player"); AutoExecConfig(false); } public OnMapStart() { g_fire = PrecacheModel("materials/sprites/fire2.vmt"); g_HaloSprite = PrecacheModel("materials/sprites/halo01.vmt"); g_ExplosionSprite = PrecacheModel("sprites/sprite_fire01.vmt"); PrecacheSound(SOUND_BOOM, true); } public Action:Command_Explode(client, args) { if (args < 1) { ReplyToCommand(client, "[SM] Usage: sm_explode <#userid|name>"); return Plugin_Handled; } decl String:arg[65]; GetCmdArg(1, arg, sizeof(arg)); decl String:target_name[MAX_TARGET_LENGTH]; decl target_list[MAXPLAYERS], target_count, bool:tn_is_ml; if ((target_count = ProcessTargetString( arg, client, target_list, MAXPLAYERS, COMMAND_FILTER_ALIVE, target_name, sizeof(target_name), tn_is_ml)) <= 0) { ReplyToTargetError(client, target_count); return Plugin_Handled; } for (new i = 0; i < target_count; i++) { PerformExplode(client, target_list[i]); } ShowActivity2(client, "[SM] ", "%t %s", "Exploded", target_name); return Plugin_Handled; } public PerformExplode(client, target) { new mode = GetConVarInt(g_cvarExplodeMode); new radius = GetConVarInt(g_cvarExplodeRadius); LogAction(client, target, "\"%L\" slayed \"%L\"", client, target); decl Float:location[3]; GetClientAbsOrigin(target, location); new color[4] = { 188, 220, 255, 200 }; EmitAmbientSound(SOUND_BOOM, location, client, SNDLEVEL_RAIDSIREN); TE_SetupExplosion(location, g_ExplosionSprite, 10.0, 1, 0, radius, 5000); TE_SendToAll(); TE_SetupBeamRingPoint(location, 10.0, float(radius), g_fire, g_HaloSprite, 0, 10, 0.6, 10.0, 0.5, color, 10, 0); TE_SendToAll(); location[2] += 10; EmitAmbientSound(SOUND_BOOM, location, client, SNDLEVEL_RAIDSIREN); TE_SetupExplosion(location, g_ExplosionSprite, 10.0, 1, 0, radius, 5000); TE_SendToAll(); ForcePlayerSuicide(target); if (mode > 0) HurtOtherPlayers(target, radius, (mode == 1)); } public HurtOtherPlayers(target, radius, bool:teamonly) { new Float:vec[3]; GetClientAbsOrigin(target, vec); for( new i = 1; i <= MaxClients; i++) { if (!IsClientInGame(i) || !IsPlayerAlive(i) || target == i || (teamonly && GetClientTeam(i) != GetClientTeam(target))) continue; new Float:pos[3]; GetClientEyePosition(i, pos); new Float:distance = GetVectorDistance(vec, pos); if (distance > radius) continue; new damage = 220; damage = RoundToFloor(damage * (radius - distance) / radius); SlapPlayer(i, damage, false); TE_SetupExplosion(pos, g_ExplosionSprite, 0.05, 1, 0, 1, 1); TE_SendToAll(); } } Counter-strike Source 2022.07.11 - 13.07.31.14.DVR.mp4 explode.zip «Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон Ссылка на комментарий Поделиться на другие сайты Поделиться
Администратор ryancoolround Опубликовано 15 сентября, 2022 Автор Администратор Поделиться Опубликовано 15 сентября, 2022 Я обнаружил ошибку. Суть в том, если команду прописать на игрока, которого нет на сервере, или мы ошибемся в его нике, то в логи мы получим следующий текст: L 09/15/2022 - 20:12:22: [SM] Blaming: explode.smx L 09/15/2022 - 20:12:22: [SM] Call stack trace: L 09/15/2022 - 20:12:22: [SM] [0] ReplyToCommand L 09/15/2022 - 20:12:22: [SM] [1] Line 106, commandfilters::ReplyToTargetError L 09/15/2022 - 20:12:22: [SM] [2] Line 61, D:\sm111\addons\sourcemod\scripting\explode.sp::Command_Explode L 09/15/2022 - 20:12:38: [SM] Exception reported: Language phrase "No matching client" not found (arg 4) «Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон Ссылка на комментарий Поделиться на другие сайты Поделиться
Администратор ryancoolround Опубликовано 15 сентября, 2022 Автор Администратор Поделиться Опубликовано 15 сентября, 2022 40 минут назад, Райан сказал: L 09/15/2022 - 20:12:22: [SM] Blaming: explode.smx L 09/15/2022 - 20:12:22: [SM] Call stack trace: L 09/15/2022 - 20:12:22: [SM] [0] ReplyToCommand L 09/15/2022 - 20:12:22: [SM] [1] Line 106, commandfilters::ReplyToTargetError L 09/15/2022 - 20:12:22: [SM] [2] Line 61, D:\sm111\addons\sourcemod\scripting\explode.sp::Command_Explode L 09/15/2022 - 20:12:38: [SM] Exception reported: Language phrase "No matching client" not found (arg 4) Исправлено, добавлены отсутствующие строки перевода. explode.zip «Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти