#include #include #include #include #include #pragma semicolon 1 new bool:gPlayerFirstSpawn[33]; new bool:g_is_warmup; new g_warmup_time; new time_left; new g_cvar_respawn; /* Plugin was originally developed by x-raycat(I've changed almost everything and added so many features) Cvary/cvars amx_warmup_time gdzie x to czas w sekundach amx_warmup_time where x is time in seconds amx_warmup_respawn(0- ożywianie wyłączone, 1- ożywianie włączone) amx_warmup_respawn(0- auto-respawn off, 1- auto-respawn ON) amx_warmup_weapon: Każdy numer odpowiada broni. amx_warmup_weapon: Each number is a weapon for this plugin. List: 1 weapon_p228 //p228 2 weapon_scout //scout 3 weapon_hegrenade //granat HE 4 weapon_xm1014 //auto-pompa 5 weapon_mac10 //uzi tt 6 weapon_aug //aug 7 weapon_elites //elites 8 weapon_fiveseven //fiveseven 9 weapon_ump45 //b(3(2)) 10 weapon_sg550 //autokampa cT 11 weapon_galil //galil 12 weapon_famas //famas 13 weapon_usp //usp 14 weapon_glock18 //glock 15 weapon_awp //awp 16 weapon_mp5navy //MP5 17 weapon_m249 //krowa 18 weapon_m3 //pompa 19 weapon_m4a1 //M4 20 weapon_tmp //tmp 21 weapon_g3sg1 //autokampa TT 22 weapon_deagle //dgl 23 weapon_sg552 //sg552(tt) 24 weapon_ak47 //ak47 25 weapon_p90 //P90 26 weapon_knife //nóż 27 is random weapons from above Ustawienie każdej innej wartości cvaru amx_warmup_weapon powoduje ustawienie domyślnej broni- nóż. By setting any different number as a cvar value causes to use default weapon- knife. Change-Log v.1.7 - added random wepons, - added example on disabling plugins during the warmup, - code cleanup, - new languages, - blocking weapon pickup during the warmup, - blocking weapon dropping during the warmup. v.1.6 - replaced game commencing event instead of task, - changed way of using amx_warmup_time cvar, now it's defined in seconds, - removed some useless code, - added possiblity to disable plugins during warm-up. v.1.5c -added serbian translation. v.1.5b - changed way of giving ammo, - changed a little in weapon switch, - added Turkish and Bulgarian translations v.1.4 - code cleanup: fixed identation, used pcvars. v.1.3 - added multilingual support, - added commented examples of using mp3 format. v.1.2 - little code cleanup. v.1.1 - added most of available things: weapons, respawns, countdown, sound. v.1.0 - first written, testing, testing and once more testing. To do list: - random weapons. */ new const gszPausePlugins[ ][ ] = { "lokalizator.amxx", "vip.amxx" }; public plugin_init() { register_plugin("Ultimate Warm-Up", "1.7.1", "naven"); g_warmup_time = register_cvar("amx_warmup_time", "65"); g_cvar_respawn = register_cvar("amx_warmup_respawn", "1"); register_cvar("amx_warmup_weapon", "1"); register_event("ResetHUD", "Event_ResetHud", "be"); register_event("DeathMsg", "DeathMsg", "a"); register_dictionary("ultimate_warmup.txt"); register_event("TextMsg","restart_time","a","2&#Game_C"); //thx Pavulon register_clcmd("amx_start_warmup", "restart_time", ADMIN_KICK); RegisterHam( Ham_Touch, "weaponbox", "HamTouchPre", 0 ); RegisterHam( Ham_Touch, "armoury_entity", "HamTouchPre", 0 ); register_clcmd("drop", "handle_drop"); } public muza_on() { //let's play the music client_cmd(0,"stopsound"); //silence .wav sounds client_cmd(0,"mp3 stop"); //silence .mp3 sounds client_cmd(0,"mp3 play sound/sound_name.mp3"); } public restart_time() { //pausing plugins for( new i = 0; i < sizeof gszPausePlugins; i++ ) { pause( "ac", gszPausePlugins[ i ] ); } g_is_warmup = true; init_warmup_time(); muza_on(); return PLUGIN_HANDLED; } public restartround(id) { gPlayerFirstSpawn[id] = true; return PLUGIN_HANDLED; } public countdown() { time_left--; if(time_left < 0) { restart(); } return PLUGIN_CONTINUE; } public init_warmup_time() { new time[256], temp[2][6]; get_pcvar_string(g_warmup_time, time, 255); parse(time, temp[0], 5, temp[1], 5); time_left = str_to_num(temp[0]) /** 60*/ + str_to_num(temp[1]); set_task(1.0, "countdown", 4567,_,_,"b"); set_task(1.0, "show_time", 2345,_,_,"b"); } public show_time() { set_hudmessage(random_num(0,255), random_num(0,255), random_num(0,255), -1.0, random_float(0.15, 0.40), /*0.31,*/ 0, 6.0, 2.0); show_hudmessage(0, "%L", LANG_PLAYER, "WARMUP_COUNTDOWN", time_left / 60, time_left % 60); //countdown } public restart() { //unpausing plugins for( new i = 0; i < sizeof gszPausePlugins; i++ ) { unpause( "ac", gszPausePlugins[ i ] ); } g_is_warmup = false; remove_task(4567); remove_task(2345); server_cmd("sv_restart 1"); new Players[32], playerCount; get_players(Players, playerCount); for (new i=0; i