#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#define PLUGIN "Team Freeze"
#define VERSION "1.0"
#define AUTHOR "M249-M4A1"
// alka is teh sexy man
new gTeamFreeze, gFreezeTime, gFreezeTeam
new gmsgScreenFade ;
new Delay[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("HLTV", "eRoundStart", "a", "1=0", "2=0")
// Change the CVAR "freeze_team" to "0" to disable this plugin
gTeamFreeze = register_cvar("freeze_team_enabled", "1")
// 10.0 is how many seconds to freeze the player
gFreezeTime = register_cvar("freeze_time", "10.0")
// team 1 = terrorist, team 2 = counter-terrorist
gFreezeTeam = register_cvar("freeze_team", "1")
gmsgScreenFade = get_user_msgid ( "ScreenFade" ) ;
}
public eRoundStart() {
// This set_task is necessary
if (get_pcvar_num(gTeamFreeze) > 0) {
set_task(get_cvar_num("mp_freezetime") + 0.1, "FreezeTeam")
}
}
public FreezeTeam() {
new players[32], totalplayers, player
get_players(players, totalplayers)
for (new i = 0; i < totalplayers; i++)
{
player = players[i]
if (get_user_team(player) == get_pcvar_num(gFreezeTeam)) {
client_print(player, print_chat, "[AMXX] Your team is currently frozen for %i seconds.", get_pcvar_num(gFreezeTime))
set_pev(player, pev_flags, pev(player, pev_flags) | FL_FROZEN)
message_begin ( MSG_ONE_UNRELIABLE , gmsgScreenFade , _ , player ) ;
write_short ( ( 1<<3 ) | ( 1<<8 ) | ( 1<<10 ) ) ;
write_short ( ( 1<<3 ) | ( 1<<8 ) | ( 1<<10 ) ) ;
write_short ( ( 1<<0 ) | ( 1<<2 ) ) ;
write_byte ( 0 ) ;
write_byte ( 0 ) ;
write_byte ( 0 ) ;
write_byte ( 255 ) ;
message_end ( ) ;
Delay[player] = get_pcvar_num(gFreezeTime)
Countdown(player)
}
}
set_task(float(get_pcvar_num(gFreezeTime)), "UnFreezeTeam", 6291)
}
public UnFreezeTeam() {
new players[32], totalplayers, player
get_players(players, totalplayers)
for (new i = 0; i < totalplayers; i++)
{
player = players[i]
if (get_user_team(player) == get_pcvar_num(gFreezeTeam)) {
client_print(player, print_chat, "[AMXX] Your team is no longer frozen.")
set_pev(player, pev_flags, pev(player, pev_flags) & ~FL_FROZEN)
message_begin ( MSG_ONE_UNRELIABLE , gmsgScreenFade , _ , player ) ;
write_short ( 1<<2 ) ;
write_short ( 0 ) ;
write_short ( 0 ) ;
write_byte ( 0 ) ;
write_byte ( 0 ) ;
write_byte ( 0 ) ;
write_byte ( 0 ) ;
message_end ( ) ;
}
}
}
public Countdown(player)
{
if(Delay[player] > 0)
{
set_hudmessage(000, 255, 000, -1.0, 0.30, 0, 0.0, 1.1, 0.0, 0.0, -1)
show_hudmessage(player, "Varj meg Anty-Furienek Elfoglaljak helyuket^n%d", Delay[player])
Delay[player]--
set_task(1.0, "Countdown",player)
}
}