Robotul nu spune numaratoarea inversas la timp

Discutii legate de instalarea, configurarea si modificarea unui server de Counter-Strike.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
User avatar
vitasantena
Membru, skill 0
Membru, skill 0
Posts: 63
Joined: 14 Jul 2011, 13:15
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: 89.28.42.226:27019
SteamID: adryjuststrike
Has thanked: 20 times
Contact:

16 Mar 2013, 15:08

Deci dupa cum este scris si in titlu "Cum as putea face ca robotul sa spuna numaratoarea inversa la timp?" adica cand cineva pune BmB numaratoarea incepe mai devreme si cand ajunge la 10 sec nu spune nimic!
[*] mp_c4timer "35"
Bomb_events | Afiseaza codul
/* AMX Mod script. 
* 
* (c) Copyright 2003, OLO 
* This file is provided as is (no warranties). 
* 
* Plugin to enable by menu from Stats Settings Plugin. 
*/ 

#define STS_CHNL     6 

#define STS_FLAG10 10 //Bomb exploded 
#define STS_FLAG11 11 //Bomb planting 
#define STS_FLAG12 12 //Bomb defusing 
#define STS_FLAG13 13 //Bomb planted 
#define STS_FLAG14 14 //Bomb defused 
#define STS_FLAG15 15 //Bomb failed to defuse 
#define STS_FLAG16 16 //Bomb pickup 
#define STS_FLAG17 17 //Bomb droped 
#define STS_FLAG18 18 //Bomb countdown (voice) 
#define STS_FLAG19 19 //Bomb countdown (defuser) 
#define STS_FLAG20 20 //Bombsite reached 

#include <amxmod> 

new planter 
new defuser 
new c4timer 
new defusing 
new Float:last_omg 
new Float:last_plan 

public plugin_init(){ 
    register_plugin("Bomb Events","0.9.4","default") 

    server_cmd("amx_addoption ^"Bomb exploded^" %d %d",STS_CHNL,STS_FLAG10)     
    server_cmd("amx_addoption ^"Bomb planting^" %d %d",STS_CHNL,STS_FLAG11) 
    server_cmd("amx_addoption ^"Bomb defusing^" %d %d",STS_CHNL,STS_FLAG12) 
    server_cmd("amx_addoption ^"Bomb planted^" %d %d",STS_CHNL,STS_FLAG13)             
    server_cmd("amx_addoption ^"Bomb defused^" %d %d",STS_CHNL,STS_FLAG14)     
    server_cmd("amx_addoption ^"Bomb failed to defuse^" %d %d",STS_CHNL,STS_FLAG15) 
    server_cmd("amx_addoption ^"Bomb pickup^" %d %d",STS_CHNL,STS_FLAG16) 
    server_cmd("amx_addoption ^"Bomb droped^" %d %d",STS_CHNL,STS_FLAG17)         
    server_cmd("amx_addoption ^"Bomb countdown (voice)^" %d %d",STS_CHNL,STS_FLAG18)     
    server_cmd("amx_addoption ^"Bomb countdown (defuser)^" %d %d",STS_CHNL,STS_FLAG19) 
    server_cmd("amx_addoption ^"Bombsite reached^" %d %d",STS_CHNL,STS_FLAG20) 

    new mapname[4] 
    get_mapname(mapname,3) 
    if (!equali(mapname,"de_",3))    { 
        pause("a") /* pause on not de_ maps */ 
        return PLUGIN_CONTINUE 
    } 
         
    register_event("StatusIcon", "got_bomb", "be", "1=1", "1=2", "2=c4") 
    register_event("SendAudio", "bomb_planted", "a", "2&%!MRAD_BOMBPL") 
    register_event("SendAudio", "bomb_defused", "a", "2&%!MRAD_BOMBDEF") 
    register_event("TextMsg", "bomb_failure", "a", "2&#Target_B") 
    register_event("BarTime", "bdef_g", "be", "1=10", "1=5","1=3") 
    register_event("BarTime", "bdef_l", "be", "1=0") 
    register_event("TextMsg", "bomb_pickup", "bc", "2&#Got_bomb") 
    register_event("TextMsg", "bomb_drop", "bc", "2&#Game_bomb_d") 
    register_event("SendAudio", "disable_c4", "a", "2&%!MRAD_terwin","2&%!MRAD_ctwin","2&%!MRAD_rounddraw") 
    register_event("TextMsg","disable_c4","a","2&#Game_C","2&#Game_w") 
         
    return PLUGIN_CONTINUE 
} 


public got_bomb(id){ 
    planter = id 
    defuser = defusing = 0 
    if ( (get_user_flags(0,STS_CHNL)&(1<<STS_FLAG20)) && read_data(1)==2 && last_omg<get_gametime()){ 
        last_omg = get_gametime() + 15.0 
        new name[32] 
        get_user_name(planter, name , 31) 
        set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
        show_hudmessage(0,"Omg! %s reached the target!",name) 
    } 
} 

public bdef_g(id){ 
    if (read_data(1) == 3){ 
        if ( (get_user_flags(0,STS_CHNL)&(1<<STS_FLAG11)) && last_plan<get_gametime() ){ 
            last_plan = get_gametime() + 15.0 
            new name[32] 
            set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
            get_user_name(planter, name , 31) 
            show_hudmessage(0,"%s is planting the bomb!",name) 
        } 
    } 
    else { 
        defuser = defusing = id 
        if ( (get_user_flags(0,STS_CHNL)&(1<<STS_FLAG12)) && last_plan<get_gametime()){ 
            last_plan = get_gametime() + 15.0 
            new name[32] 
            set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
            get_user_name(defusing, name , 31) 
            show_hudmessage(0,"%s is defusing the bomb...",name) 
        } 
    } 
} 

public bdef_l(id) 
    defusing = 0 

public disable_c4(){ 
    c4timer = 0 
    last_plan = 0.0 
    last_omg = 0.0 
    remove_task(8038) 
} 

public bomb_planted(){ 
    if (!(get_user_flags(0,STS_CHNL)&(1<<STS_FLAG13))) return 
    new name[32] 
    get_user_name(planter, name , 31) 
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
    show_hudmessage(0,"%s set us up the bomb!!!",name) 
    c4timer = get_cvar_num("mp_c4timer") - 2 
    set_task(1.0,"bomb_c",8038,"",0,"b") 
    last_plan = 0.0 
} 

public bomb_c(){ 
    if (--c4timer > 0){ 
        new mode = get_user_flags(0,STS_CHNL) 
        if (mode & (1<<STS_FLAG18)) { 
            if (c4timer == 30 || c4timer == 20){ 
                new temp[48] 
                num_to_word(c4timer,temp,47) 
                client_cmd(0,"spk ^"vox/%s seconds until explosion^"",temp) 
            } 
            else if (c4timer < 11){ 
                new temp[48] 
                num_to_word(c4timer,temp,47) 
                client_cmd(0,"spk ^"vox/%s^"",temp) 
            } 
        } 
        if ((mode & (1<<STS_FLAG19)) && defusing) client_print(defusing,print_center,"%d",c4timer) 
    } 
    else{ 
        remove_task(8038) 
    } 
} 
public bomb_defused(){ 
    if (!(get_user_flags(0,STS_CHNL)&(1<<STS_FLAG14))) return        
    new name[32] 
    get_user_name(defuser, name , 31) 
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
    show_hudmessage(0,"%s defused the bomb!",name) 
    disable_c4() 
} 
public bomb_failure(){ 
    if (!(get_user_flags(0,STS_CHNL)&(1<<STS_FLAG15)) || !defuser ) return 
    new name[32] 
    get_user_name(defuser, name , 31) 
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
    show_hudmessage(0,"%s  failed to defuse the bomb...",name) 
} 
public bomb_pickup(id){ 
    if (!(get_user_flags(0,STS_CHNL)&(1<<STS_FLAG16))) return 
    new name[32] 
    get_user_name(id, name , 31) 
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
    show_hudmessage(0,"%s pick up the bomb...",name) 
} 
public bomb_drop(){ 
    if (!(get_user_flags(0,STS_CHNL)&(1<<STS_FLAG17))) return 
    new name[32] 
    get_user_name(planter, name , 31) 
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1) 
    show_hudmessage(0,"%s dropped the bomb!!!",name) 
}
RoyalServer
User avatar
vitasantena
Membru, skill 0
Membru, skill 0
Posts: 63
Joined: 14 Jul 2011, 13:15
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: 89.28.42.226:27019
SteamID: adryjuststrike
Has thanked: 20 times
Contact:

16 Mar 2013, 16:40

Up! Cineva?
User avatar
vitasantena
Membru, skill 0
Membru, skill 0
Posts: 63
Joined: 14 Jul 2011, 13:15
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: 89.28.42.226:27019
SteamID: adryjuststrike
Has thanked: 20 times
Contact:

17 Mar 2013, 14:42

Up!!!
M3taph0riK
Membru eXtream
Membru eXtream
Posts: 2127
Joined: 16 Jan 2013, 12:55
Detinator Steam: Da
CS Status: Utilizator Serios
SteamID: Utilizator Serios
Reputatie: Restrictie moderator
Nume anterior: RzV24
Utilizator neserios (tepar)
Has thanked: 60 times
Been thanked: 250 times

18 Mar 2013, 17:20

Pluginul tau nu iti da optiunea aia. Foloseste-l pe asta :
| Afiseaza codul
#include <amxmodx>
#include <csx>

#define VERSION "1.4b"
#define TASK_C4 803891
#define MAX_PLAYERS 32

new const color_R[]=
{
	0,
	0,
	0,
	255,
	255
}

new const color_G[]=
{
	0,
	255,
	255,
	170,
	0
}

new const color_B[]=
{
	255,
	255,
	0,
	0,
	0
}

//by connor
new const Float:g_flCoords[][] = 
{
	{0.50, 0.40},
	{0.56, 0.44},
	{0.60, 0.50},
	{0.56, 0.56},
	{0.50, 0.60},
	{0.44, 0.56},
	{0.40, 0.50},
	{0.44, 0.44}
}

new g_pcvar[5], g_textmsg,
g_C4Timer, mpc4timer,
count, start, color = sizeof color_R,
g_iPlayerPos[MAX_PLAYERS+1], g_MaxPlayers

public plugin_init() 
{
	register_plugin("C4 Timer Count Hud & Sound", VERSION, "P.Of.Pw")
	register_cvar("C4 Timer Count Hud & Sound", VERSION, FCVAR_SERVER)
	
	g_pcvar[0] = register_cvar("c4_count_hs_on", "1")
	g_pcvar[1] = register_cvar("c4_count_hs_mode", "1")
	g_pcvar[2] = register_cvar("c4_count_hs_sound", "1")
	g_pcvar[3] = register_cvar("c4_count_hs_bomb_dropped", "1")
	g_pcvar[4] = register_cvar("c4_count_hs_bomb_pickup", "1")
	
	mpc4timer = get_cvar_pointer("mp_c4timer")
	g_textmsg = get_user_msgid("TextMsg")
	g_MaxPlayers = get_maxplayers()
	
	register_event("ResetHUD", "reset_c4timer", "be")
	register_event("SendAudio", "round_end_by_win", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw") 
	
	register_logevent("logevent_newround", 2, "1=Round_Start")
	register_logevent("logevent_endround", 2, "1=Round_End")
	register_logevent("logevent_endround", 2, "1&Restart_Round_")
	
	register_message(g_textmsg, "message_bomb")
}

public bomb_planted() 
{
	new plugin_on = get_pcvar_num(g_pcvar[0])
	if (!plugin_on)
		return
		
	
	new bomb_sound = get_pcvar_num(g_pcvar[2])
	if (bomb_sound)
		client_cmd(0, "spk misc/bomba_2.wav")
	
	g_C4Timer = get_pcvar_num(mpc4timer) - 1
	
	new bomb_mode = get_pcvar_num(g_pcvar[1])
	switch (bomb_mode)
	{
		case 1: set_task(1.0, "effect_one", TASK_C4, "", 0, "b")
		case 2: set_task(1.0, "effect_two", TASK_C4, "", 0, "b")
		case 3: set_task(1.0, "effect_three", TASK_C4, "", 0, "b")
		default: set_task(1.0, "effect_one", TASK_C4, "", 0, "b") 
	}
}

public effect_one() 
{
	if (g_C4Timer > 0)
	{ 
		if (g_C4Timer > 20)
		{
			set_hudmessage(0, 255, 0, -1.0, 0.17, 0, 6.0, 12.0)
			show_hudmessage(0, "[C4] Timer: %d", g_C4Timer)	
		}
		
		if (g_C4Timer <= 20 && g_C4Timer > 0)
		{
			new bomb_sound = get_pcvar_num(g_pcvar[2])
			if (bomb_sound)
			{
				new temp[48]
				num_to_word(g_C4Timer, temp, 47)
				client_cmd(0, "spk ^"vox/%s^"", temp)
			}
			
			switch (g_C4Timer) 
			{
				case 20:
					set_hudmessage(235, 45, 0, 0.93, 0.09, 0, 0.0, 1.0, 0.2, 0.2, 4) 	
				case 19:
					set_hudmessage(235, 45, 0, 0.94, 0.13, 0, 0.0, 1.0, 0.2, 0.2, 4)  
				case 18:
					set_hudmessage(235, 45, 0, 0.93, 0.18, 0, 0.0, 1.0, 0.2, 0.2, 4)  	
				case 17:
					set_hudmessage(235, 45, 0, 0.93, 0.25, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 16:
					set_hudmessage(235, 45, 0, 0.93, 0.32, 0, 0.0, 1.0, 0.2, 0.2, 4) 	
				case 15:
					set_hudmessage(235, 45, 0, 0.94, 0.43, 0, 0.0, 1.0, 0.2, 0.2, 4) 
				case 14:
					set_hudmessage(235, 45, 0, 0.93, 0.62, 0, 0.0, 1.0, 0.2, 0.2, 4) 	
				case 13:
					set_hudmessage(235, 45, 0, 0.93, 0.64, 0, 0.0, 1.0, 0.2, 0.2, 4) 
				case 12:
					set_hudmessage(235, 45, 0, 0.93, 0.73, 0, 0.0, 1.0, 0.2, 0.2, 4)  
				case 11:
					set_hudmessage(235, 45, 0, 0.93, 0.81, 0, 0.0, 1.0, 0.2, 0.2, 4)  
				case 10:
					set_hudmessage(235, 45, 0, 0.05, 0.75, 0, 0.0, 1.0, 0.2, 0.2, 4) 
				case 9:
					set_hudmessage(235, 45, 0, 0.05, 0.70, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 8:
					set_hudmessage(235, 45, 0, 0.05, 0.65, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 7:
					set_hudmessage(235, 45, 0, 0.05, 0.60, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 6:
					set_hudmessage(235, 45, 0, 0.05, 0.55, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 5:
					set_hudmessage(235, 45, 0, 0.05, 0.50, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 4:
					set_hudmessage(235, 45, 0, 0.05, 0.45, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 3:
					set_hudmessage(235, 45, 0, 0.05, 0.40, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 2:
					set_hudmessage(235, 45, 0, 0.05, 0.35, 0, 0.0, 1.0, 0.2, 0.2, 4)
				case 1:
					set_hudmessage(235, 45, 0, 0.05, 0.30, 0, 0.0, 1.0, 0.2, 0.2, 4)
				default:
					set_hudmessage(235, 45, 0, 0.05, 0.75, 0, 0.0, 1.0, 0.2, 0.2, 4)
			}
			
			show_hudmessage(0, "%d", g_C4Timer) 
		}
		
		--g_C4Timer 
	}
	
	else 
		remove_task(TASK_C4)
}

public effect_two()
{
	if (g_C4Timer > 0)
	{
		set_hudmessage(color_R[count], color_G[count], color_B[count], -1.0, 0.83, 0, 1.0, 1.0, 0.01, 0.01, -1)
      
		count = start
		? count - 1 
		: count + 1

		if (!start && count >= color - 1)
		{
			count = color -1
			start = 1
		}

		else if (start && count <= color - 1)
		{
			count = 0
			start = 0
		}
      
		show_hudmessage(0, "Bomba explodeaza in: %d secunde!", g_C4Timer)
 
		--g_C4Timer
	}
	
	else 
		remove_task(TASK_C4)
}

public effect_three()
{
	if (g_C4Timer > 0)
	{ 
		if (g_C4Timer > 20)
		{
			set_hudmessage(0, 255, 0, -1.0, 0.17, 0, 5.0, 1.7)
			show_hudmessage(0, "[C4] Timer: %d", g_C4Timer)	
		}
		
		if (g_C4Timer <= 20 && g_C4Timer > 0)
		{
			new bomb_sound = get_pcvar_num(g_pcvar[2])
			if (bomb_sound)
			{
				new temp[48]
				num_to_word(g_C4Timer, temp, 47)
				client_cmd(0, "spk ^"vox/%s^"", temp)
			}
			
			for (new id = 1; id <= g_MaxPlayers; id++)
			{
				if (!is_user_connected(id))
					continue
				
				//by connor
				new iPos = ++g_iPlayerPos[id]
				if (iPos == sizeof(g_flCoords))
				{
					iPos = g_iPlayerPos[id] = 0
				}
				
				set_hudmessage(color_R[count], color_G[count], color_B[count], Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 0, 0.1, 2.5, 0.02, 0.02, -1)
      
				count = start
				? count - 1 
				: count + 1

				if (!start && count >= color - 1)
				{
					count = color -1
					start = 1
				}

				else if (start && count <= color - 1)
				{
					count = 0
					start = 0
				}
      
				show_hudmessage(0, "[C4]: %d", g_C4Timer)
			}
		}
		
		--g_C4Timer
	}
	
	else 
		remove_task(TASK_C4)
}

public bomb_defused() 
{
	new plugin_on = get_pcvar_num(g_pcvar[0])
	if (!plugin_on)
		return
	
	new bomb_sound = get_pcvar_num(g_pcvar[2])
	if (bomb_sound)
		client_cmd(0, "spk misc/defusebmb.wav")
	
	set_hudmessage(0, 0, 255, -1.0, 0.16, 0, 6.0, 5.0)
	show_hudmessage(0, "")
	
	remove_bomb_task()
}

public bomb_explode() 
{
	new plugin_on = get_pcvar_num(g_pcvar[0])
	if (!plugin_on)
		return
	
	new bomb_sound = get_pcvar_num(g_pcvar[2])
	if (bomb_sound)
		client_cmd(0, "spk misc/explodebmb.wav")
	
	set_hudmessage(255, 0, 0, -1.0, 0.16, 0, 6.0, 6.0)
	show_hudmessage(0, "")
	
	remove_bomb_task()
}

public message_bomb(msg_id, msg_dest, id)
{
	new plugin_on = get_pcvar_num(g_pcvar[0])
	if (!plugin_on)
		return PLUGIN_CONTINUE
    
	static msg[64]
	get_msg_arg_string(2, msg, sizeof msg - 1)
	
	new cbomb_dropped = get_pcvar_num(g_pcvar[3])
	if (cbomb_dropped && equal(msg, "#Game_bomb_drop"))
	{
		set_hudmessage(255, 0, 0, -1.0, 0.16, 0, 6.0, 5.0)
		show_hudmessage(0, "[PublicStars] Bomba a fost pierduta!")
		return PLUGIN_HANDLED
	}
	
	new cbomb_pickup = get_pcvar_num(g_pcvar[4])
	if (cbomb_pickup  && equal(msg, "#Game_bomb_pickup") || cbomb_pickup  && equal(msg, "#Got_bomb"))
	{
		set_hudmessage(255, 0, 0, -1.0, 0.16, 0, 6.0, 6.0)
		show_hudmessage(0, "[PublicStars] Bomba a fost recuperata!^n Go go go...")
		return PLUGIN_HANDLED
	}
	
	if (equal(msg, "#Bomb_Planted") || equal(msg, "#Target_Bombed") || equal(msg, "#Bomb_Defused"))
		return PLUGIN_HANDLED
		
	return PLUGIN_CONTINUE
}

public reset_c4timer()
{
	g_C4Timer = 0
}

public round_end_by_win()
{
	remove_bomb_task()
}

public logevent_newround()
{
	remove_bomb_task()
}

public logevent_endround()
{
	remove_bomb_task()
}

public plugin_end()
{
	remove_bomb_task()
}

public remove_bomb_task()
{
	new plugin_on = get_pcvar_num(g_pcvar[0])
	if (!plugin_on)
		return
		
	g_C4Timer = -1
	remove_task(TASK_C4)
}

public plugin_precache() 
{
	precache_sound("misc/bomba_2.wav")
	precache_sound("misc/explodebmb.wav")
	precache_sound("misc/defusebmb.wav")
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang3081\\ f0\\ fs16 \n\\ par }
*/


» Cvar-uri : se seteaza in amxx.cfg
c4_count_hs_on - 1 pluginul este ON | 0 - pluginul este OFF
c4_count_hs_mode - modul de afisare/efectul cum sa arate numaratoarea inversa cand este plantata bomba:
1 - efect cel precedent, dar ultimile 20 secunde le afiseaza in partile stanga/dreapta a ecranului
2 - arata mesajul HUD in partea de jos a ecranului, dar cu 5 culori diferite (idea de aici)
3 - arata mesajul HUD intr-un cerc cu 5 culori diferite (multumesc lui connor)
setat pe 1 (voi setati cum doriti)

c4_count_hs_sound 1 - se aud sunete specifice pluginului | 0 - NU se aud
c4_count_hs_bomb_dropped 1 - mesaj cand este aruncata bomba (diferit de versiunile precedente) | 0 - NU arata
c4_count_hs_bomb_pickup 1 - mesaj cand bomba este ridicata (diferit de versiunile precedente) | 0 - NU arata
User avatar
vitasantena
Membru, skill 0
Membru, skill 0
Posts: 63
Joined: 14 Jul 2011, 13:15
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: 89.28.42.226:27019
SteamID: adryjuststrike
Has thanked: 20 times
Contact:

18 Mar 2013, 19:11

rezolvat, multumesc mult RzV24!
Post Reply

Return to “Probleme la servere dedicate de Counter-Strike”

  • Information
  • Who is online

    Users browsing this forum: Dot [Bot], Semrush [Bot] and 95 guests