From 502a6e9b42f0e9915a6086612bb1729ca682183e Mon Sep 17 00:00:00 2001 From: gsd Date: Sun, 30 Mar 2025 21:39:56 +0300 Subject: [PATCH] giga shit's collection --- .gitignore | 2 + Facti13_vote/FV.sp | 64 ++++++ Facti13_vote/modules/extra.sp | 91 ++++++++ Facti13_vote/modules/kick.sp | 104 +++++++++ Facti13_vote/modules/mute.sp | 124 +++++++++++ Facti13_vote/modules/vipblock.sp | 208 ++++++++++++++++++ HexTags/hextags.sp | 4 +- PissMod/materials/sprites/halo01.vmt | 6 + PissMod/materials/sprites/halo01.vtf | Bin 0 -> 2936 bytes PissMod/materials/sprites/xbeam2.vmt | 6 + PissMod/materials/sprites/xbeam2.vtf | Bin 0 -> 808 bytes PissMod/piss_mod.sp | 307 +++++++++++++++++++++++++++ Rate_of_Fire/tf2_rof.sp | 251 ++++++++++++++++++++++ RtdUltimate/rtd_ultimate.sp | 5 +- plugins/hextags.smx | Bin 21343 -> 21263 bytes plugins/rtd_ultimate.smx | Bin 13651 -> 14743 bytes 16 files changed, 1168 insertions(+), 4 deletions(-) create mode 100644 .gitignore create mode 100644 Facti13_vote/FV.sp create mode 100644 Facti13_vote/modules/extra.sp create mode 100644 Facti13_vote/modules/kick.sp create mode 100644 Facti13_vote/modules/mute.sp create mode 100644 Facti13_vote/modules/vipblock.sp create mode 100644 PissMod/materials/sprites/halo01.vmt create mode 100644 PissMod/materials/sprites/halo01.vtf create mode 100644 PissMod/materials/sprites/xbeam2.vmt create mode 100644 PissMod/materials/sprites/xbeam2.vtf create mode 100644 PissMod/piss_mod.sp create mode 100644 Rate_of_Fire/tf2_rof.sp diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ce2765a --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.smx +plugins/*.smx \ No newline at end of file diff --git a/Facti13_vote/FV.sp b/Facti13_vote/FV.sp new file mode 100644 index 0000000..ccf6306 --- /dev/null +++ b/Facti13_vote/FV.sp @@ -0,0 +1,64 @@ +#include +#include "modules/extra.sp" + +#define _root_debug + +#define _mute +#if defined _mute +#include "modules/mute.sp" +#endif + +#define _kick +#if defined _kick +#include "modules/kick.sp" +#endif + + +#if defined _vipblock +#include "modules/vipblock.sp" +#endif + +public void OnPluginStart(){ + #if defined _mute + MuteVoteOn(); + #endif + #if defined _kick + KickVoteOn() + #endif + #if defined _vipblock + VIPBlockVoteOn(); + #endif +} + +public void OnPluginEnd(){ + #if defined _mute + MuteVoteOff(); + #endif + #if defined _kick + KickVoteOff() + #endif + #if defined _vipblock + VIPBlockVoteOff(); + #endif +} + +public void OnClientPostAdminCheck(int client){ + #if defined _mute + MuteCheckState(client); + #endif + #if defined _vipblock + VIPBlockCheckCookie(client); + #endif +} + +public void OnClientDisconnect(int client){ + #if defined _mute + MuteClearPlayerVotes(client); + #endif + #if defined _kick + KickClearPlayerVotes(client); + #endif + #if defined _vipblock + VIPBlockClearPlayerVotes(client, false); + #endif +} \ No newline at end of file diff --git a/Facti13_vote/modules/extra.sp b/Facti13_vote/modules/extra.sp new file mode 100644 index 0000000..0639bd7 --- /dev/null +++ b/Facti13_vote/modules/extra.sp @@ -0,0 +1,91 @@ +#include +#define TF2_MAXPLAYERS 101 +#define _one_person + +#define VOTE_NO "###no###" +#define VOTE_YES "###yes###" + +g_CurrentVoteTarget = 0; + +/*stock DisplayVote(int client, int target, &Callback, const char[] phrare, const char[] menu_phrare, bool random = true){ + g_CurrentVoteTarget = GetClientUserId(target); + + PrintToChatAll(phrare, client, target); + PrintCenterTextAll(phrare, client, target); + + Handle VoteMenuProcessing = new Menu(Callback, MENU_ACTIONS_ALL); + SetMenuTitle(VoteMenuProcessing, menu_phrare); + if(random){ + int range_a = 6, range_b = 10; + int yes = GetRandomInt(range_a, range_b); + for(int i = range_a; i < range_b; i++){ + if(i == yes) AddMenuItem(VoteMenuProcessing, VOTE_YES, "ДА"); + else AddMenuItem(VoteMenuProcessing, VOTE_NO, "НЕТ НЕ НАДО"); + } + } else { + AddMenuItem(VoteMenuProcessing, VOTE_YES, "ДА"); + AddMenuItem(VoteMenuProcessing, VOTE_NO, "НЕТ НЕ НАДО"); + } + + SetMenuExitButton(VoteMenuProcessing, false); + VoteMenuToAll(VoteMenuProcessing, 20); +} +*/ + +bool TestVoteDelay(int client){ + int delay = CheckVoteDelay(); + + if (delay > 0) + { + if (delay > 60) + { + ReplyToCommand(client, "Чтоб начать новое голосование нужно подождать %i минут!", (delay / 60)); + } + else + { + ReplyToCommand(client, "Чтоб начать новое голосование нужно подождать %i секунд!", delay); + } + + return false; + } + + return true; +} + +stock ClearPlayerVotes(int client, int[][] votes){ + for(int sub_client = 0; sub_client < TF2_MAXPLAYERS; sub_client++){ + votes[client][sub_client] = 0; + votes[sub_client][client] = 0; + } +} + +stock int ReturnVoteCount(int client, int[][] votes){ + int count = 0; + for(int i = 1; i <= TF2_MAXPLAYERS; i++){ + if(votes[client][i]) count++; + } + return count; +} + +stock int CalcNeedCount(float count){ + float current_player_count = float(GetClientCount()); + return RoundToCeil(current_player_count * count); +} + +stock bool IsValidClient(int client){ + + if(client > 4096){ + client = EntRefToEntIndex(client); + } + + if(client < 1 || client > MaxClients) return false; + + if(!IsClientInGame(client)) return false; + + if(IsFakeClient(client)) return false; + + if(GetEntProp(client, Prop_Send, "m_bIsCoaching")) return false; + + return true; + +} \ No newline at end of file diff --git a/Facti13_vote/modules/kick.sp b/Facti13_vote/modules/kick.sp new file mode 100644 index 0000000..d285f2c --- /dev/null +++ b/Facti13_vote/modules/kick.sp @@ -0,0 +1,104 @@ +#include + +float g_kick_need_count = 0.3; + +int g_kick_player_votes[TF2_MAXPLAYERS][TF2_MAXPLAYERS]; +Handle g_kick_timer = INVALID_HANDLE; +char g_kick_votecmd[32] = "sm_votekick"; + +#define KICK_VOTE_COMPLETE "Игрок %N был кикнут по итогу подсчетов голосов!" +#define KICK_VOTE_VOTED "Игрок %N проголосовал за кик игрока %N. Проголосовать за: !votekick в чат или через меню." + +stock bool KickCheckVotes(int client){ + if(ReturnVoteCount(client, g_kick_player_votes) >= CalcNeedCount(g_kick_need_count)){ + KickPlayer(client); + return true; + } else { + return false; + } +} + +stock KickClearPlayerVotes(int client){ + ClearPlayerVotes(client, g_kick_player_votes); +} + +stock KickPlayer(int client){ + PrintCenterTextAll(KICK_VOTE_COMPLETE, client); + PrintToChatAll(KICK_VOTE_COMPLETE, client); + KickClient(client, "votekick"); +} + +stock KickVoteOn(){ + if(g_kick_timer != INVALID_HANDLE) KillTimer(g_kick_timer); + else g_kick_timer = CreateTimer(5.0, CallbackKickTimer, _, TIMER_REPEAT); + RegConsoleCmd(g_kick_votecmd, CommandKickVote, "Vote for kick player on server"); + PrintToServer("[FV] [VoteKick] support enable"); +} + +stock KickVoteOff(){ + if(g_kick_timer != INVALID_HANDLE) KillTimer(g_kick_timer); +} + +stock DisplayKickMenu(int client){ + Handle KickMenu = CreateMenu(CallbackKickBuildMenu); + SetMenuTitle(KickMenu, "Кикнуть игрока:"); + char menu_line[64]; + char player_uid[32]; + for(int player = 1; player <= MaxClients; player++){ + if(IsValidClient(player)){ + //if(player == client) continue; + if(CheckCommandAccess(player, "", ADMFLAG_BAN)) continue; + Format(player_uid, sizeof(player_uid), "%i", GetClientUserId(player)); + + if(g_kick_player_votes[player][client] == 0) { + Format(menu_line, sizeof(menu_line), "%N [%i/%i]", player, ReturnVoteCount(player, g_kick_player_votes), CalcNeedCount(g_kick_need_count)); + AddMenuItem(KickMenu, player_uid, menu_line); + } else { + Format(menu_line, sizeof(menu_line), "%N [Ты проголосовал]", player); + AddMenuItem(KickMenu, player_uid, menu_line, ITEMDRAW_DISABLED); + } + } + } + if(GetMenuItemCount(KickMenu) == 0){ + PrintCenterText(client, "Незакого голосовать, ты один на сервере"); + return; + } + DisplayMenu(KickMenu, client, 0); + return; +} + +stock CallbackKickBuildMenu(Handle KickMenu, MenuAction action, int client, int pos){ + switch(action){ + case MenuAction_Select:{ + char player_uid[32]; + GetMenuItem(KickMenu, pos, player_uid, sizeof(player_uid)); + int player = GetClientOfUserId(StringToInt(player_uid)); + if(player == 0){ + PrintCenterText(client, "Увы игрок вышел!"); + return; + } + + g_kick_player_votes[player][client] = 1; + if(!KickCheckVotes(player)) PrintCenterTextAll(KICK_VOTE_VOTED, client, player); + + } + case MenuAction_End: delete KickMenu; + } + return; +} + +stock Action CallbackKickTimer(Handle timer){ + for(int client = 1; client <= MaxClients; client++){ + if(IsValidClient(client)) KickCheckVotes(client); + } +} + +public Action CommandKickVote(int client, int args){ + if (client == 0) + { + ReplyToCommand(client, "Cannot use command from RCON."); + return Plugin_Handled; + } + DisplayKickMenu(client); + return Plugin_Handled; +} \ No newline at end of file diff --git a/Facti13_vote/modules/mute.sp b/Facti13_vote/modules/mute.sp new file mode 100644 index 0000000..b62393d --- /dev/null +++ b/Facti13_vote/modules/mute.sp @@ -0,0 +1,124 @@ +#include +#include + +//#include "extra.sp" + +int g_mute_player_votes[TF2_MAXPLAYERS][TF2_MAXPLAYERS]; +bool g_mute_player_voted[TF2_MAXPLAYERS]; +float g_mute_need_count = 0.3; +Handle g_mute_timer = INVALID_HANDLE; +char g_mute_votecmd[32] = "sm_votemute"; + +#define MUTE_VOTE_COMPLETE "Игрок %N был выключен микрофон по итогу подсчетов голосов!" +#define MUTE_VOTE_VOTED "Игрок %N проголосовал за выключение микрофона игрока %N. Проголосовать за: !votemute в чат или через меню." + +stock MuteCheckState(int client){ + if(GetClientListeningFlags(client) == VOICE_MUTED) g_mute_player_voted[client] = true; +} + +stock bool MuteCheckVotes(int client){ + if(ReturnVoteCount(client, g_mute_player_votes) >= CalcNeedCount(g_mute_need_count)){ + MutePlayer(client); + return true; + } else { + return false; + } +} + +stock MuteClearPlayerVotes(int client){ + g_mute_player_voted[client] = false; + ClearPlayerVotes(client, g_mute_player_votes); +} + +stock MutePlayer(int client){ + PrintCenterTextAll(MUTE_VOTE_COMPLETE, client); + PrintToChatAll(MUTE_VOTE_COMPLETE, client); + MuteClearPlayerVotes(client); + g_mute_player_voted[client] = true; + if(CommandExists("sm_fsb_mute")){ + ServerCommand("sm_fsb_mute #%i 900 vote", GetClientUserId(client)); + } else { + SetClientListeningFlags(client, VOICE_MUTED); + } +} + +stock MuteVoteOn(){ + if(g_mute_timer != INVALID_HANDLE) KillTimer(g_mute_timer); + else g_mute_timer = CreateTimer(5.0, CallbackMuteTimer, _, TIMER_REPEAT); + RegConsoleCmd(g_mute_votecmd, CommandMuteVote, "Vote for mute player on server"); + PrintToServer("[FV] [VoteMute] support enable"); + for(int client = 1; client <= MaxClients; client++){ + if(IsValidClient(client)) MuteCheckState(client); + } +} + +stock MuteVoteOff(){ + if(g_mute_timer != INVALID_HANDLE) KillTimer(g_mute_timer); +} + +stock DisplayMuteMenu(int client){ + Handle MuteMenu = CreateMenu(CallbackMuteBuildMenu); + SetMenuTitle(MuteMenu, "Выключить микрофон у:"); + char menu_line[64]; + char player_uid[32]; + for(int player = 1; player <= MaxClients; player++){ + if(IsValidClient(player)){ + //if(player == client) continue; + if(CheckCommandAccess(player, "", ADMFLAG_BAN)) continue; + Format(player_uid, sizeof(player_uid), "%i", GetClientUserId(player)); + if(g_mute_player_voted[player]){ + Format(menu_line, sizeof(menu_line), "%N [Выключен микрофон]", player); + AddMenuItem(MuteMenu, player_uid, menu_line, ITEMDRAW_DISABLED); + } + else if(g_mute_player_votes[player][client] == 0) { + Format(menu_line, sizeof(menu_line), "%N [%i/%i]", player, ReturnVoteCount(player, g_mute_player_votes), CalcNeedCount(g_mute_need_count)); + AddMenuItem(MuteMenu, player_uid, menu_line); + } else { + Format(menu_line, sizeof(menu_line), "%N [Ты проголосовал]", player); + AddMenuItem(MuteMenu, player_uid, menu_line, ITEMDRAW_DISABLED); + } + } + } + if(GetMenuItemCount(MuteMenu) == 0){ + PrintCenterText(client, "Незакого голосовать, ты один на сервере"); + return; + } + DisplayMenu(MuteMenu, client, 0); + return; +} + +stock CallbackMuteBuildMenu(Handle MuteMenu, MenuAction action, int client, int pos){ + switch(action){ + case MenuAction_Select:{ + char player_uid[32]; + GetMenuItem(MuteMenu, pos, player_uid, sizeof(player_uid)); + int player = GetClientOfUserId(StringToInt(player_uid)); + if(player == 0){ + PrintCenterText(client, "Увы игрок вышел!"); + return; + } + + g_mute_player_votes[player][client] = 1; + if(!MuteCheckVotes(player)) PrintCenterTextAll(MUTE_VOTE_VOTED, client, player); + + } + case MenuAction_End: delete MuteMenu; + } + return; +} + +stock Action CallbackMuteTimer(Handle timer){ + for(int client = 1; client <= MaxClients; client++){ + if(IsValidClient(client)) MuteCheckVotes(client); + } +} + +public Action CommandMuteVote(int client, int args){ + if (client == 0) + { + ReplyToCommand(client, "Cannot use command from RCON."); + return Plugin_Handled; + } + DisplayMuteMenu(client); + return Plugin_Handled; +} \ No newline at end of file diff --git a/Facti13_vote/modules/vipblock.sp b/Facti13_vote/modules/vipblock.sp new file mode 100644 index 0000000..4b56060 --- /dev/null +++ b/Facti13_vote/modules/vipblock.sp @@ -0,0 +1,208 @@ +#include +#include +#include "extra.sp" + +#define VIP_COMMANDS_COUNT 4 +char g_vipblock_commands[VIP_COMMANDS_COUNT][32] = {"sm_rof", "sm_aia", "sm_sethealth", "sm_speedme"}; +char g_vipblock_commands_disable[VIP_COMMANDS_COUNT][32] = {"sm_rof #%i 1", "sm_aia #%i 0", "sm_sethealth %i 0", "sm_speed %i 360"}; + +int g_vipblock_player_votes[TF2_MAXPLAYERS][TF2_MAXPLAYERS]; +float g_vipblock_need_count = 0.3; +int g_vipblock_player_settime[TF2_MAXPLAYERS]; +int g_vipblock_blocktime = 900; +Handle g_vipblock_timer = INVALID_HANDLE; +char g_vipblock_votecmd[32] = "sm_votevip"; +Handle g_vipblock_cookie = INVALID_HANDLE; + +#define VIPBLOCK_VOTE_COMPLETE "У игрок %N был ограничен по итогу подсчетов голосов!" +#define VIPBLOCK_VOTE_VOTED "Игрок %N проголосовал за блокировку VIP у игрока %N. Проголосовать за: !voteblock в чат или через меню." +#define VIPBLOCK_TIMEOUT "Блокировка ВИП команд снята!" + + +stock bool VIPBlockCheckTime(int client){ + if(g_vipblock_player_settime[client] && GetTime() - g_vipblock_player_settime[client] > g_vipblock_blocktime){ + VIPBlockClearPlayerVotes(client); + PrintCenterText(client, VIPBLOCK_TIMEOUT); + return true; + } else return false; +} + +stock bool VIPBlockCheckVotes(int client){ + if(ReturnVoteCount(client, g_vipblock_player_votes) >= CalcNeedCount(g_vipblock_need_count)){ + VIPBlockPlayer(client); + return true; + } else { + return false; + } +} + +stock VIPBlockClearPlayerVotes(int client, bool save_cookie = true){ + g_vipblock_player_settime[client] = 0; + ClearPlayerVotes(client, g_vipblock_player_votes); + if(save_cookie) VIPBlockSaveCookie(client); +} + +stock VIPBlockCmdsDisable(int client){ + int uid = GetClientUserId(client); + if(uid){ + for(int i = 0; i < VIP_COMMANDS_COUNT;i++){ + ServerCommand(g_vipblock_commands_disable[i], uid); + } + } +} + +stock VIPBlockPlayer(int client){ + PrintCenterTextAll(VIPBLOCK_VOTE_COMPLETE, client); + PrintToChatAll(VIPBLOCK_VOTE_COMPLETE, client); + VIPBlockClearPlayerVotes(client); + g_vipblock_player_settime[client] = GetTime(); + VIPBlockSaveCookie(client); + VIPBlockCmdsDisable(client); +} + +stock VIPBlockVoteOn(){ + if(g_vipblock_timer != INVALID_HANDLE) KillTimer(g_vipblock_timer); + else g_vipblock_timer = CreateTimer(5.0, CallbackVIPBlockTimer, _, TIMER_REPEAT); + RegConsoleCmd(g_vipblock_votecmd, CommandVIPBlockVote, "Vote for votevipblock player on server"); + RegConsoleCmd("sm_voteblock", CommandVIPBlockVote, "Vote for votevipblock player on server"); + RegAdminCmd("sm_voteblock_enable", CommandVIPBlockEnable, ADMFLAG_ROOT); + g_vipblock_cookie = RegClientCookie("fv_vipblock_settime", "", CookieAccess_Private); + VIPBlockListener(true); + PrintToServer("[FV] [VIPBlock] support enable"); + for(int client = 1; client <= MaxClients; client++){ + if(IsValidClient(client) && AreClientCookiesCached(client)) VIPBlockCheckCookie(client); + } +} + +stock VIPBlockListener(bool add = true){ + for(int i = 0; i < VIP_COMMANDS_COUNT; i++){ + if(add) AddCommandListener(VIPBlockCommandListener, g_vipblock_commands[i]); + else RemoveCommandListener(VIPBlockCommandListener, g_vipblock_commands[i]); + } +} + +public Action VIPBlockCommandListener(int client, const char[] command, int args){ + if(g_vipblock_player_settime[client] == 0) return Plugin_Handled; + if(VIPBlockCheckTime(client)){ + PrintCenterText(client, "С тебя сняли ограничение на использование VIP команд!"); + return Plugin_Handled; + } else { + PrintCenterText(client, "Тебе ограничен доступ к VIP командам по результатам голосования! Ограничение пропадет через %i секунд.", g_vipblock_blocktime - (GetTime() - g_vipblock_player_settime[client])); + return Plugin_Stop; + } +} + +stock VIPBlockCheckCookie(int client){ + VIPBlockClearPlayerVotes(client, false); + char cookie[256]; + GetClientCookie(client, g_vipblock_cookie, cookie, sizeof(cookie)); + if(strlen(cookie) > 0){ + int settime = StringToInt(cookie); + g_vipblock_player_settime[client] = settime; + PrintToServer("[FV] [VIPBlock] %N set %i", client, g_vipblock_player_settime[client]); + } +} + +stock VIPBlockSaveCookie(int client){ + char cookie[256]; + if(g_vipblock_player_settime[client]) Format(cookie, sizeof(cookie), "%i", g_vipblock_player_settime[client]); + else Format(cookie, sizeof(cookie), "0"); + SetClientCookie(client, g_vipblock_cookie, cookie); + if(g_vipblock_player_settime[client]) PrintToServer("[FV] [VIPBlock] %N set %i", client, g_vipblock_player_settime[client]); +} + +stock VIPBlockVoteOff(){ + VIPBlockListener(false); + if(g_vipblock_timer != INVALID_HANDLE) KillTimer(g_vipblock_timer); +} + +stock DisplayVIPBlockMenu(int client){ + Handle VIPBlockMenu = CreateMenu(CallbackVIPBlockBuildMenu); + SetMenuTitle(VIPBlockMenu, "Выключить VIP у:"); + char menu_line[64]; + char player_uid[32]; + for(int player = 1; player <= MaxClients; player++){ + if(IsValidClient(player)){ + //if(player == client) continue; + if(CheckCommandAccess(player, "", ADMFLAG_BAN)) continue; + + if(!CheckCommandAccess(player, "", ADMFLAG_RESERVATION)) continue; + + Format(player_uid, sizeof(player_uid), "%i", GetClientUserId(player)); + if(g_vipblock_player_settime[player]){ + Format(menu_line, sizeof(menu_line), "%N [Выключен VIP]", player); + AddMenuItem(VIPBlockMenu, player_uid, menu_line, ITEMDRAW_DISABLED); + } + else if(g_vipblock_player_votes[player][client] == 0) { + Format(menu_line, sizeof(menu_line), "%N [%i/%i]", player, ReturnVoteCount(player, g_vipblock_player_votes), CalcNeedCount(g_vipblock_need_count)); + AddMenuItem(VIPBlockMenu, player_uid, menu_line); + } else { + Format(menu_line, sizeof(menu_line), "%N [Ты проголосовал]", player); + AddMenuItem(VIPBlockMenu, player_uid, menu_line, ITEMDRAW_DISABLED); + } + } + } + if(GetMenuItemCount(VIPBlockMenu) == 0){ + PrintCenterText(client, "Незакого голосовать, нет випов на сервере."); + return; + } + DisplayMenu(VIPBlockMenu, client, 0); + return; +} + +stock CallbackVIPBlockBuildMenu(Handle VIPBlockMenu, MenuAction action, int client, int pos){ + switch(action){ + case MenuAction_Select:{ + char player_uid[32]; + GetMenuItem(VIPBlockMenu, pos, player_uid, sizeof(player_uid)); + int player = GetClientOfUserId(StringToInt(player_uid)); + if(player == 0){ + PrintCenterText(client, "Увы игрок вышел!"); + return; + } + + g_vipblock_player_votes[player][client] = 1; + + if(!VIPBlockCheckVotes(player)) PrintCenterTextAll(VIPBLOCK_VOTE_VOTED, client, player); + + } + case MenuAction_End: delete VIPBlockMenu; + } + return; +} + +stock Action CallbackVIPBlockTimer(Handle timer){ + for(int client = 1; client <= MaxClients; client++){ + if(IsValidClient(client)){ + VIPBlockCheckVotes(client); + VIPBlockCheckTime(client); + } + } +} + +public Action CommandVIPBlockVote(int client, int args){ + if (client == 0) + { + ReplyToCommand(client, "Cannot use command from RCON."); + return Plugin_Handled; + } + DisplayVIPBlockMenu(client); + return Plugin_Handled; +} + +public Action CommandVIPBlockEnable(int client, int args){ + char text[256], arg[64]; + GetCmdArgString(text, sizeof(text)); + BreakString(text, arg, sizeof(arg)); + + int target = FindTarget(client, arg, _, false); + if(target == -1) return Plugin_Handled; + + if(g_vipblock_player_settime[target]){ + ReplyToCommand(client, "Already setted!"); + } else { + VIPBlockPlayer(target); + ReplyToCommand(client, "Setted!"); + } + return Plugin_Handled; +} \ No newline at end of file diff --git a/HexTags/hextags.sp b/HexTags/hextags.sp index a308acd..890a7d8 100644 --- a/HexTags/hextags.sp +++ b/HexTags/hextags.sp @@ -136,8 +136,8 @@ public void OnPluginStart() //Reg Cmds RegAdminCmd("sm_reloadtags", Cmd_ReloadTags, ADMFLAG_GENERIC, "Reload HexTags plugin config"); RegAdminCmd("sm_toggletags", Cmd_ToggleTags, ADMFLAG_GENERIC, "Toggle the visibility of your tags"); - RegConsoleCmd("sm_tagslist", Cmd_TagsList, "Select your tag!"); - RegConsoleCmd("sm_getteam", Cmd_GetTeam, "Get current team name"); + //RegConsoleCmd("sm_tagslist", Cmd_TagsList, "Select your tag!"); + //RegConsoleCmd("sm_getteam", Cmd_GetTeam, "Get current team name"); //Event hooks if (!HookEventEx("round_end", Event_RoundEnd)) diff --git a/PissMod/materials/sprites/halo01.vmt b/PissMod/materials/sprites/halo01.vmt new file mode 100644 index 0000000..5f31ea5 --- /dev/null +++ b/PissMod/materials/sprites/halo01.vmt @@ -0,0 +1,6 @@ +"Sprite" +{ + "$spriteorientation" "vp_parallel" + "$spriteorigin" "[ 0.50 0.50 ]" + "$basetexture" "sprites/halo01" +} diff --git a/PissMod/materials/sprites/halo01.vtf b/PissMod/materials/sprites/halo01.vtf new file mode 100644 index 0000000000000000000000000000000000000000..d5332422c96e7ec04f5ce39c9dc106b76225596e GIT binary patch literal 2936 zcmc&$L1^1n7=G0XRjm}Xn~yeYpsFi89}M%MWDaCdLtzbj(FmTj#N?2L!e|-OoK_Yg zgpqc)W~Uy^3R$u73&9qCq@^z%qqlYy3v zIJHL9kDue3{`@-6aXJq&^c?xRQCO2bHz$bG4>CMzv7o${=26dvZ-&)xuE~sj@agC` z#xgiY0enMuDvx!Js!9*%HwvMfm+q}DSNO0kd~^9+g&PBZxiX^|mg%3&mPK7RP3X|| z`YLof#bObBDqUDd`=~!Wy>Oj}>WN?7iz~FwoT%-W2+WPbqD){So`z*vh;Oo3+=5P8 z=7LXEoe=A!?vUTV`EcIvTgIcs-I8fq`jQf_*RkHR8U}F69fomUzacG7pM2q*atqDrmjJMT~E;QIEOFl_g6#2m+FQbI$0~?;In%Tj&*+Bi1Y2qRYM#5 ze}EZglcCtRN9&=h9Yrw?q6UxWEsY;Me+2&1^Th|fbbu5z1aQ- zdaxsl^N#XTfX~#bDM@}WDah{@!~I6D$sS}DL}L`hdEOWVcH)z8{J;5= zcoW`y?kMf&Ih`E%oNi9oEzKxYS1ECNqk#BNO>Y;#8;_&gY`-+AGzPcrjly2q7z9n| zF|2`)`XCIFb2_No!+LPvbBZeBrSg-&>#E>eQc#b}mEBTEIv&nbJ%-)XqeZGu;*ZCT zp1nD{Uuuj3`xNN|-$vnRRD48UUW}sHy^AF-Ck2HI#d+6Sa`={>{6Wq2oJ;`b*RnKIzEooEjT+P+RgR zYReTu^IT=SP&fO1_<+8%lU@)BJ_i4sUagMfMt<0IK_Af(f6~Wrz8J%2AmRmr*CmXi zr|$6DYu7%z`|SZ5TXCUG~ zL5TPX9K=W9AYRoCJ@5+cA>X1g`r4c8=ZW9aaZW_1pG)|4#Qz-s74TK7)n|2ytf%%z z{V&6g6A{i|l5#5YS<2-*$SWzIcX7T_z7s-+kaIo6i~a~+^w*0k?Rh__8$ZvB(?P$k z&36ykir51+x0`*tvhd7FeY%2zV}zwD&5BK(Mb*Z)udFN+^i*FxVw+|W<&K@UEr z+O7vZc&{No@M8?beY-U<@Vp(2VqW;MKylIQ?uFkw&^vxF=7=BXclu7qQAg}_#F5Y7 zjj57yB#I-Bf9^x`@gDne*vw# BK6n5C literal 0 HcmV?d00001 diff --git a/PissMod/materials/sprites/xbeam2.vmt b/PissMod/materials/sprites/xbeam2.vmt new file mode 100644 index 0000000..1c48500 --- /dev/null +++ b/PissMod/materials/sprites/xbeam2.vmt @@ -0,0 +1,6 @@ +"Sprite" +{ + "$spriteorientation" "vp_parallel" + "$spriteorigin" "[ 0.50 0.50 ]" + "$basetexture" "sprites/xbeam2" +} diff --git a/PissMod/materials/sprites/xbeam2.vtf b/PissMod/materials/sprites/xbeam2.vtf new file mode 100644 index 0000000000000000000000000000000000000000..6e9e290ad0a7f875bf185c1401b5b4479afe8169 GIT binary patch literal 808 zcmah`QAkr!82%N-yKHnHCS0fo2a2w7A;GbPth<51Mm;#@HsrRuTEQ%WX$WUI=NKc< zRu8e;Lzu;68O41O?j8nHabQrep0)=ESHXvgAfrTXHrzUA)^i{H=RfCseBb&1|G1nt zp#uO~aBw(iypl}L1i!fZ*Z;-YP4tEqZ#u}*MnhQvu-R_g050z6bjjq^Eda}l#}m3V z&X!5bmH23)-e@$+N}HbK9{p>%ep;`G3L}Qv$;&mi_Qo6YZ*)Mdtl zF)ab?tegAFN{sd(-*^qz(TAa^drZ*dL1$;SZ%x%xK8%vw)C=1s3l&7%qp2i-u+p(| zkIu;F+S^;-lv1?ZYZ8~4Y^hbFX;pK1rpweTh6*X#QPP=NKT$vlH;Lrs}X`291hFQ43{ zTs%URA%J30G%;IWhFI3vxrY5;Z3}aQ=@d=;`>g;bjM*w3mozN9rXDRGM3GOIwosV% z8tiBMwF(_)S*>QaDoQ>sz*T1~6p#IFfB8Gr>Wl{K8;xu!uo;VGX`I#KO7!NH1&w|huedrMbf`q zEGy^z?=P~3;<)Y%znr99IqSkd~NpA+Sknm2mTKa&wn28#_!AWwDid_ zKYw@_Dp1zVgE`^bIGL||Y~Rw|>_1ev1fZOGC5`U9PEQSit28>22 zr{;R}ySq=Hj^KNz%kBO!fafckOc{B?K0GWv&&YWu9F9bq{{k&7geQ76*Kh6AN>aA8 P;1K2xqNHB8;N|}S1_U`o literal 0 HcmV?d00001 diff --git a/PissMod/piss_mod.sp b/PissMod/piss_mod.sp new file mode 100644 index 0000000..0bef7db --- /dev/null +++ b/PissMod/piss_mod.sp @@ -0,0 +1,307 @@ +#include +#include +#include + +bool piss_on_only_client = true; +bool piss_disable_move = false; +int piss_tick_counter = 1; //default 4 +float piss_time = 9.0; +float piss_distance = 100.0; + +int piss_check_count = 4; +int piss_check_need_count = 2; + + +int g_TickCounter = 0; +bool g_bPiss[MAXPLAYERS + 1] = { false, ... }; +bool g_bCanPiss[MAXPLAYERS + 1] = { true, ... }; + +int g_PissTarget[MAXPLAYERS + 1] = {0, ...}; +int g_PissCount[MAXPLAYERS + 1] = {0, ...}; +int g_PissStart[MAXPLAYERS + 1] = {0, ...}; + +int BeamSprite; +int HaloSprite; + +Handle g_PEnabled = INVALID_HANDLE; +//int gVelocityOffset; + +public Plugin:myinfo = +{ + name = "Piss Mod", + author = "gsd", + description = "Original code https://forums.alliedmods.net/showthread.php?t=295055", + version = "1.1", + url = "" +} + +public OnPluginStart(){ + RegConsoleCmd("piss", Piss_In); + g_PEnabled = CreateConVar("sm_piss_enabled", "1"); + AddFileToDownloadsTable("materials/sprites/xbeam2.vmt"); + AddFileToDownloadsTable("materials/sprites/halo01.vmt"); + HookEvent("player_death", Event_PlayerDeath); + //gVelocityOffset = FindSendPropInfo("CBasePlayer", "m_vecVelocity[0]"); +} + +public OnPluginEnd(){ + for(int client = 1; client <= MaxClients; client++){ + Piss_Out_Handler(client, true); + } +} + +public OnMapStart(){ + BeamSprite = PrecacheModel("materials/sprites/xbeam2.vmt"); + HaloSprite = PrecacheModel("materials/sprites/halo01.vmt"); +} + +public OnClientConnected(int client){ + g_bCanPiss[client] = true; + g_bPiss[client] = false; + g_PissTarget[client] = 0; + g_PissCount[client] = 0; + g_PissStart[client] = 0; +} + +public OnClientDisconnect(int client){ + Piss_Out_Handler(client, true); +} + +public OnGameFrame() +{ + if(g_TickCounter == piss_tick_counter) + { + for(int client = 1; client <=MaxClients; ++client) + { + if(IsClientInGame(client) && IsPlayerAlive(client)) + { + if(g_bPiss[client]) + { + PissBeam(client); + } + } + } + g_TickCounter=0; + } + else + { + g_TickCounter++; + } +} + +public Action Event_PlayerDeath(Event event, const char[] name, bool dontBroadcast){ + int client = GetClientOfUserId(GetEventInt(event, "userid")); + if(g_bPiss[client]) Piss_Out_Handler(client, true); +} + +stock bool CheckPissDistance(int client, int target){ + new Float:rposition[3]; + new Float:cposition[3]; + GetEntPropVector(target, Prop_Send, "m_vecOrigin", rposition); + + GetClientAbsOrigin(client, cposition); + decl Float:DistanceG; + DistanceG = GetVectorDistance(rposition,cposition); + + if(DistanceG <= piss_distance) return true; + else return false; +} + +public Action:Piss_In(client, args) +{ + //PrintToServer("%N:%i", client, g_bCanPiss[client]); + if(!GetConVarBool(g_PEnabled)){ + PrintCenterText(client, "У тебя простатит..."); + return Plugin_Continue; + } + + if(!g_bCanPiss[client]){ + return Plugin_Continue; + } + /* + if ((g_AdmFlag > 0) && !CheckCommandAccess(client, "sm_piss", g_AdmFlag, true)) + { + PrintToChat(client, "\x04You do not have access"); + return Plugin_Handled; + } +*/ +/* + if(veces[client] > GetConVarInt(g_veces)) + { + PrintToChat(client, "\x04Times for round excedded"); + return Plugin_Handled; + } +*/ + //for(new i=1;i<=MaxClients;++i) + if(true) + { + //if(g_PKiller[i] == client) + if(true) + { + int ent = GetClientAimTarget(client, piss_on_only_client); + //PrintToServer("%N|%i|%i", client, ent, IsValidEdict(ent)); + if(IsValidEdict(ent)) + { + g_PissTarget[client] = ent; + /*if ((g_AdmFlag2 > 0) && !CheckCommandAccess(client, "sm_piss2", g_AdmFlag2, true)) + { + PrintToChat(client, "\x04You do not have access"); + return Plugin_Handled; + }*/ + + //if(DistanceG <= piss_distance) + if(CheckPissDistance(client, GetClientAimTarget(client, piss_on_only_client))) + { +/* if(rposition[0] > cposition[0]-50 && rposition[0] < cposition[0]+50) + { + if(rposition[1] > cposition[1]-50 && rposition[1] < cposition[1]+50) + { + if(rposition[2] > cposition[2]-5 && rposition[2] < cposition[2]+5) + { */ + PissBeam(client); + + g_bPiss[client] = true; + g_PissStart[client] = GetTime(); + if(piss_disable_move) SetEntityMoveType(client, MOVETYPE_NONE); + /* DISABLE SOUND + new String:sound[64]; + GetConVarString(g_PeeSound, sound, sizeof(sound)); + EmitAmbientSound(sound, pos); + */ + //CreateTimer(0.8, EmitSoundPee, client, TIMER_REPEAT); + + float append = piss_time / piss_check_count; + + for(float start = 0.0; start < piss_time; start++){ + start--; + start = start + append; + + CreateTimer(start, Piss_Effect, client); + //PrintToServer("Create Timer: %i", start); + } + + if(ent >= 1 && ent <= MaxClients) PrintCenterText(client, "Ты начал ссать на %N...", ent); + CreateTimer(piss_time, Piss_Out, client); + //veces[client]++; + g_bCanPiss[client] = false; + //Quitararmas(client); + //break; +/* } + } */ + } + } else { + PrintCenterText(client, "Нет цели для окатывания мочёй!\nЗабиндь кнопку через консоль чтоб удобнее ловить цели!\nbind R piss") + } + } + } + + return Plugin_Handled; +} + +stock PissBeam(int client, int entity = -1, bool logging = false, bool magnet_piss = false){ + float pos[3], end[3], ang[3], ppos[3], aang[3]; + + GetClientEyePosition(client, pos); + GetClientEyeAngles(client, ang); + pos[2] -= 23.0; + ang[0] = 40.0; + TR_TraceRayFilter(pos, ang, MASK_PLAYERSOLID, RayType_Infinite, DontHitSelf, client); + + if(magnet_piss){ + float tpos[3]; + GetEntPropVector(g_PissTarget[client], Prop_Send, "m_vecOrigin", tpos); + GetClientAbsOrigin(client, ppos); + if(GetVectorDistance(ppos, tpos) <= piss_distance) end = tpos; + else TR_GetEndPosition(end); + } else { + TR_GetEndPosition(end); + } + //if(entity == -1) TR_GetEndPosition(end); + //else GetEntPropVector(entity, Prop_Send, "m_vecOrigin", end); + + TE_SetupBeamRingPoint(end, 5.0, 10.0, BeamSprite, HaloSprite, 0, 15, 0.5, 5.0, 1.0, {255, 255, 0, 255}, 10, 0); + TE_SendToAll(); + + GetClientEyePosition(client, ppos); + + //ppos[0]+=10.0; + ppos[2]-=30.0; + + GetClientAbsAngles(client, aang); + + if(aang[1] > 0) + { + ppos[0]+=FloatSub(10.0, FloatMul(FloatDiv(10.0, 90.0), aang[1])); + ppos[1]+=FloatSub(10.0, FloatMul(FloatDiv(10.0, 90.0), FloatAbs(FloatSub(aang[1], 90.0)))); + } + else + { + ppos[0]+=FloatSub(10.0, FloatMul(FloatDiv(10.0, 90.0), FloatAbs(aang[1]))); + ppos[1]-=FloatSub(10.0, FloatMul(FloatDiv(10.0, 90.0), FloatAbs(FloatSub(FloatAbs(aang[1]), 90.0)))); + } + + aang[0]=0.0; + aang[1]+=180.0; + aang[2]=0.0; + + TE_SetupBeamPoints(end, ppos, BeamSprite, HaloSprite, 0, 30, 0.1, 1.0, 1.0, 0, 10.0, {255, 255, 0, 255}, 10); + TE_SendToAll(); + if(logging) PrintCenterText(client, "%f %f %f | %f %f %f\n%f %f %f | %f %f %f", + pos[0], pos[1], pos[2], end[0], end[1], end[2], + ppos[0], ppos[1], ppos[2], aang[0], aang[1], aang[2]); +} + +public Action:Piss_Effect(Handle:timer, any:client){ + if(g_PissTarget[client] >= 1 && g_PissTarget[client] <= MaxClients){ + if(g_PissTarget[client] == GetClientAimTarget(client, piss_on_only_client)){ + if(CheckPissDistance(client, g_PissTarget[client])){ + g_PissCount[client]++; + PrintCenterText(client, "%N хлебнул твоей урины...", g_PissTarget[client]); + PrintCenterText(g_PissTarget[client], "Ты хлебнул урины от %N...", client); + } + } + } + //PrintToServer("%N count: %i", client, g_PissCount[client]); +} + +stock Piss_Out_Handler(int client, bool force = false){ + if (!force) if(!IsClientInGame(client) || !IsPlayerAlive(client)) return; + + g_bPiss[client] = false; + g_bCanPiss[client] = false; + + //PrintToServer("%N %i>=%i", client, g_PissCount[client], piss_check_need_count); + if(!force && g_PissCount[client] > piss_check_need_count){ + g_PissCount[client] = 0; + if(g_PissTarget[client] >= 1 && g_PissTarget[client] <= MaxClients){ + if(IsClientInGame(g_PissTarget[client]) && IsPlayerAlive(g_PissTarget[client])){ + TF2_AddCondition(g_PissTarget[client], TFCond_Jarated, 5.0); + PrintCenterText(g_PissTarget[client], "Тебя обоссал %N", client); + } + } + g_PissTarget[client] = -1; + } + + if(!force) if(piss_disable_move) SetEntityMoveType(client, MOVETYPE_ISOMETRIC); + CreateTimer(1.0, CanPiss, client); +} + +public Action:Piss_Out(Handle:timer, any:client) +{ + Piss_Out_Handler(client); + return; +} + +public bool:DontHitSelf(entity, mask, any:data) +{ + if(entity == data) + return false; + return true; +} + +public Action:CanPiss(Handle:timer, any:client) +{ + g_bCanPiss[client] = true; + + return Plugin_Continue; +} \ No newline at end of file diff --git a/Rate_of_Fire/tf2_rof.sp b/Rate_of_Fire/tf2_rof.sp new file mode 100644 index 0000000..d9bdbd4 --- /dev/null +++ b/Rate_of_Fire/tf2_rof.sp @@ -0,0 +1,251 @@ +#pragma semicolon 1 +#include +#include + +#define PLUGIN_VERSION "1.2" + +new OffAW = -1; +new Float:LastCharge[MAXPLAYERS+1]; +new Float:Multi[MAXPLAYERS+1]; +new bool:SpeedEnabled[MAXPLAYERS+1]; +new bool:InAttack[MAXPLAYERS+1]; +new Handle:g_hcvarSniperScope = INVALID_HANDLE; +new Handle:g_hcvarHuntsman = INVALID_HANDLE; + + +public Plugin:myinfo = +{ + name = "[TF2] Rate of Fire", + author = "EHG", + description = "Modify weapon rate of fire", + version = PLUGIN_VERSION, + url = "" +} + + +public OnPluginStart() +{ + //LoadTranslations("common.phrases"); + OffAW = FindSendPropInfo("CBasePlayer", "m_hActiveWeapon"); + + CreateConVar("sm_tf2_rof_version", PLUGIN_VERSION, "TF2 Rate of Fire version", FCVAR_PLUGIN|FCVAR_DONTRECORD|FCVAR_REPLICATED|FCVAR_NOTIFY); + g_hcvarSniperScope = CreateConVar("sm_tf2_rof_scope", "0", "Set if rof should effect sniper scope", 0, true, 0.0, true, 1.0); + g_hcvarHuntsman = CreateConVar("sm_tf2_rof_huntsman", "1", "Set if rof should effect huntsman", 0, true, 0.0, true, 1.0); + + RegAdminCmd("sm_rofl", Command_Rof, 0, "Set Rate of Fire"); + RegAdminCmd("rof", Command_Rof, 0, "Set Rate of Fire"); + + + for (new i = 0; i <= MaxClients; i++) OnClientPostAdminCheck(i); +} + + +public OnClientPostAdminCheck(client) +{ + Multi[client] = 1.0; + SpeedEnabled[client] = false; + InAttack[client] = false; + LastCharge[client] = 0.0; +} + + +public Action:Command_Rof(client, args) +{ + decl String:arg[65]; + decl String:arg2[20]; + new Float:amount; + new bool:HasTarget = false; + + if (CheckCommandAccess(client, "sm_rof_access_target", ADMFLAG_ROOT)) + { + if (args < 2) + { + ReplyToCommand(client, "[SM] Usage: sm_rof <#userid|name> <1.0 - 10.0>"); + return Plugin_Handled; + } + + GetCmdArg(1, arg, sizeof(arg)); + GetCmdArg(2, arg2, sizeof(arg2)); + + amount = StringToFloat(arg2); + + HasTarget = true; + } + else if (CheckCommandAccess(client, "sm_rof_access", ADMFLAG_GENERIC)) + { + if(Multi[client] == 1.0) amount = 2.0; + else amount = 1.0; + } + else + { + ReplyToCommand(client, "[SM] You do not have access to this command."); + return Plugin_Handled; + } + + + if (amount < 1 || amount > 10) + { + ReplyToCommand(client, "[SM] Invalid Amount"); + return Plugin_Handled; + } + + + decl String:target_name[MAX_TARGET_LENGTH]; + + if (HasTarget) + { + decl target_list[MAXPLAYERS], target_count, bool:tn_is_ml; + + if ((target_count = ProcessTargetString( + arg, + client, + target_list, + MAXPLAYERS, + COMMAND_FILTER_CONNECTED, + target_name, + sizeof(target_name), + tn_is_ml)) <= 0) + { + ReplyToTargetError(client, target_count); + return Plugin_Handled; + } + + + for (new i = 0; i < target_count; i++) + { + if (amount == 1) + { + SpeedEnabled[target_list[i]] = false; + Multi[target_list[i]] = amount; + } + else + { + SpeedEnabled[target_list[i]] = true; + Multi[target_list[i]] = amount; + } + } + + if (amount == 1) + { + ReplyToCommand(client, "[SM] ROF disabled for %s", target_name); + } + else + { + ReplyToCommand(client, "[SM] ROF set to: %s for %s", arg2, target_name); + } + } + else + { + if (amount == 1) + { + SpeedEnabled[client] = false; + Multi[client] = amount; + ReplyToCommand(client, "[SM] ROF disabled"); + } + else + { + SpeedEnabled[client] = true; + Multi[client] = amount; + ReplyToCommand(client, "[SM] ROF set to: %s", arg); + } + } + + + return Plugin_Handled; +} + +public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon) +{ + if (SpeedEnabled[client] && Multi[client] != 1.0) + { + if (buttons & IN_ATTACK2) + { + new ent = GetEntDataEnt2(client, OffAW); + if(ent != -1) + { + new String:weap[50]; + GetEdictClassname(ent, weap, sizeof(weap)); + if(strcmp(weap, "tf_weapon_sniperrifle") == 0 && GetConVarInt(g_hcvarSniperScope) == 0) + { + InAttack[client] = false; + return Plugin_Continue; + } + + if (strcmp(weap, "tf_weapon_particle_cannon") == 0) + { + new Float:charge = GetEntPropFloat(ent, Prop_Send, "m_flChargeBeginTime"); + new Float:chargemod = charge-4.0; + if (charge != 0 && LastCharge[client] != chargemod) + { + LastCharge[client] = chargemod; + SetEntPropFloat(ent, Prop_Send, "m_flChargeBeginTime", chargemod); + } + } + } + } + + if (buttons & IN_ATTACK || buttons & IN_ATTACK2) + { + new ent = GetEntDataEnt2(client, OffAW); + if(ent != -1) + { + new String:weap[50]; + GetEdictClassname(ent, weap, sizeof(weap)); + if(strcmp(weap, "tf_weapon_compound_bow") == 0 && GetConVarInt(g_hcvarHuntsman) == 0) + { + InAttack[client] = false; + return Plugin_Continue; + } + } + InAttack[client] = true; + } + else + { + InAttack[client] = false; + } + } + return Plugin_Continue; +} + +public OnGameFrame() +{ + for(new i=1; i<=MaxClients; i++) + { + if (SpeedEnabled[i] && InAttack[i]) + { + if(IsClientInGame(i) && IsPlayerAlive(i)) + { + ModRateOfFire(i, Multi[i]); + } + } + } +} + +stock ModRateOfFire(client, Float:Amount) +{ + new ent = GetEntDataEnt2(client, OffAW); + if (ent != -1) + { + new Float:m_flNextPrimaryAttack = GetEntPropFloat(ent, Prop_Send, "m_flNextPrimaryAttack"); + new Float:m_flNextSecondaryAttack = GetEntPropFloat(ent, Prop_Send, "m_flNextSecondaryAttack"); + if (Amount > 12) + { + SetEntPropFloat(ent, Prop_Send, "m_flPlaybackRate", 12.0); + } + else + { + SetEntPropFloat(ent, Prop_Send, "m_flPlaybackRate", Amount); + } + + new Float:GameTime = GetGameTime(); + + new Float:PeTime = (m_flNextPrimaryAttack - GameTime) - ((Amount - 1.0) / 50); + new Float:SeTime = (m_flNextSecondaryAttack - GameTime) - ((Amount - 1.0) / 50); + new Float:FinalP = PeTime+GameTime; + new Float:FinalS = SeTime+GameTime; + + + SetEntPropFloat(ent, Prop_Send, "m_flNextPrimaryAttack", FinalP); + SetEntPropFloat(ent, Prop_Send, "m_flNextSecondaryAttack", FinalS); + } +} diff --git a/RtdUltimate/rtd_ultimate.sp b/RtdUltimate/rtd_ultimate.sp index 976bbae..110b44d 100644 --- a/RtdUltimate/rtd_ultimate.sp +++ b/RtdUltimate/rtd_ultimate.sp @@ -56,7 +56,8 @@ public OnPluginStart(){ g_cmd_timeout = CreateConVar("sm_rtd_timeout", "120", "Amount of time in seconds a player roll the ULTIMATE DICE FACTI 13", FCVAR_NOTIFY, true, 0.0); g_cmd_timeout_vip = CreateConVar("sm_rtd_timeout_vip", "180", "Amount of time in seconds a vip player roll the ULTIMATE DICE FACTI 13", FCVAR_NOTIFY, true, 0.0); - RegAdminCmd("sm_rtd", User_roll, ADMFLAG_RESERVATION, "Roll the ULTIMATE DICE"); + RegConsoleCmd("rtd", User_roll); + //RegAdminCmd("sm_rrtd", User_roll, ADMFLAG_RESERVATION, "Roll the ULTIMATE DICE"); RegAdminCmd("sm_rtd_use", Admin_roll, ADMFLAG_ROOT, "Roll the ULTIMATE DICE to user"); RegAdminCmd("sm_rtd_addcond", Command_AddCondition, ADMFLAG_GENERIC, "Add a condition to the target(s), Usage: sm_rtd_addcond \"target\" \"condition number\" \"duration\""); @@ -422,7 +423,7 @@ public Action:User_roll(client, args){ return Plugin_Handled; } - PrintToChat(client, "{black}Крутим колесо фартуны......"); + PrintToChat(client, "Крутим колесо фартуны......"); SQL_TQuery(g_Database, SQL_SetEffect, g_SQL_RANDOM, UID(client)); return Plugin_Handled; } diff --git a/plugins/hextags.smx b/plugins/hextags.smx index 6b0237e44bc7fd9182bf72910320ce9fc21768b1..a7bbc1e9088e51cef7cfb878eb48c73274c21f27 100644 GIT binary patch literal 21263 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 z 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 literal 21343 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 QF(P8Tevdns_jLUK05q99-T(jq