Counter-Strike 1.6
CS1.BG | DUST2 NOSHTA GARMI [RANKED PLAY] #1
45.144.155.113:27015
de_dust2
Играчи: 30/32
de_dust2
Counter-Strike 1.6
Cs-PlovdiV.com - Aim Attack 93.123.16.4:27022 aim_aztec Играчи: 0/16

Остраняване на грешките в кода..Desativar_Armas

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1319
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 247 пъти
Получена благодарност: 43 пъти

Остраняване на грешките в кода..Desativar_Armas

Мнение от cgozzie » 04 Май 2023, 20:25

Здравейте ще може ли грешките да се отстранят и да се компелира правилно...

Код за потвърждение: Избери целия код

//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// Desativar_Armas.sma
//
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(60) : e
rror 035: argument type mismatch (argument 2)
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(61) : e
rror 035: argument type mismatch (argument 2)
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(67) : e
rror 035: argument type mismatch (argument 2)
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(68) : e
rror 035: argument type mismatch (argument 2)
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(103) :
warning 233: symbol "strbreak" is marked as deprecated: Use argbreak() instead
//
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(107) :
warning 233: symbol "strbreak" is marked as deprecated: Use argbreak() instead
//
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(316) :
error 021: symbol already defined: "client_print_color"
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(316) :
error 001: expected token: "=", but found ","
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(316) :
error 008: must be a constant expression; assumed zero
// E:\amxmodx-1.9.0 Windows\addons\amxmodx\scripting\Desativar_Armas.sma(316) :
fatal error 107: too many error messages on one line
//
// Compilation aborted.
// 8 Errors.
// Could not locate output file E:\amxmodx-1.9.0 Windows\addons\amxmodx\scriptin
g\compiled\Desativar_Armas.amx (compile failed).
//
// Compilation Time: 0.19 sec
// ----------------------------------------

Press enter to exit ...
Desativar_Armas.sma

Код за потвърждение: Избери целия код

#define VERSION	"1.3"
#define wmPrefix "[EQUIPE]"

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define MAX_SOUNDS	50
#define MAX_p_MODELS	50
#define MAX_v_MODELS	50
#define MAX_w_MODELS	50

#define MAP_CONFIGS	1

new new_sounds[MAX_SOUNDS][48]
new old_sounds[MAX_SOUNDS][48]
new sounds_team[MAX_SOUNDS]
new soundsnum

new new_p_models[MAX_p_MODELS][48]
new old_p_models[MAX_p_MODELS][48]
new p_models_team[MAX_p_MODELS]
new p_modelsnum

new new_v_models[MAX_v_MODELS][48]
new old_v_models[MAX_v_MODELS][48]
new v_models_team[MAX_p_MODELS]
new v_modelsnum

new new_w_models[MAX_w_MODELS][48]
new old_w_models[MAX_w_MODELS][48]
new w_models_team[MAX_p_MODELS]
new w_modelsnum

new maxplayers
new bool:g_weapons[33]

public plugin_init()
{
	register_plugin("Weapon Model + Sound Replacement",VERSION,"1.0")
	register_forward(FM_EmitSound,"Sound_Hook")
	register_forward(FM_SetModel,"W_Model_Hook",1)
	register_logevent("newround",2,"1=Round_Start")
	register_event("CurWeapon","Changeweapon_Hook","be","1=1")
	maxplayers = get_maxplayers()
	
	register_clcmd("say /armas", "desativar_armas")
	register_clcmd("say_team /armas", "desativar_armas")
}

public desativar_armas(id)
{
	new szName[33];
	get_user_name(id, szName, charsmax(szName));
               
	if(g_weapons[id] == true)
	{
		g_weapons[id] = false;
 
		client_print_color(id, "!g[%s] !yDisabled weapon models.",wmPrefix);
		client_print_color(0, "!g[%s] !tPlayer: !y%s !tdisabled weapon skins.",wmPrefix, szName);
	}
	else if(g_weapons[id] == false)
	{
		g_weapons[id] = true;
                       
		client_print_color(id, "!g[%s] !yActivated weapon models.",wmPrefix);
		client_print_color(0, "!g[%s] !tPlayer: !y%s !tactivated the weapon skins.",wmPrefix, szName);
	}
}

public client_connect(id) g_weapons[id] = true;

public plugin_precache()
{
	new configfile[200]
	new configsdir[200]
	new map[32]
	get_configsdir(configsdir,199)
	get_mapname(map,31)
	format(configfile,199,"%s/novas_armas_%s.ini",configsdir,map)
	if(file_exists(configfile))
	{
		load_models(configfile)
	}
	else
	{
		format(configfile,199,"%s/novas_armas.ini",configsdir)
		load_models(configfile)
	}
}

public load_models(configfile[])
{
	if(file_exists(configfile))
	{
		new read[96], left[48], right[48], right2[32], trash, team
		for(new i=0;i<file_size(configfile,1);i++)
		{
			read_file(configfile,i,read,95,trash)
			if(containi(read,";")!=0 && containi(read," ")!=-1)
			{
				strbreak(read,left,47,right,47)
				team=0
				if(containi(right," ")!=-1)
				{
					strbreak(right,right,47,right2,31)
					replace_all(right2,31,"^"","")
					if(
					equali(right2,"T") ||
					equali(right2,"Terrorist") ||
					equali(right2,"Terrorists") ||
					equali(right2,"Blue") ||
					equali(right2,"B") ||
					equali(right2,"Allies") ||
					equali(right2,"1")
					) team=1
					else if(
					equali(right2,"CT") ||
					equali(right2,"Counter") ||
					equali(right2,"Counter-Terrorist") ||
					equali(right2,"Counter-Terrorists") ||
					equali(right2,"CounterTerrorists") ||
					equali(right2,"CounterTerrorist") ||
					equali(right2,"Red") ||
					equali(right2,"R") ||
					equali(right2,"Axis") ||
					equali(right2,"2")
					) team=2
					else if(
					equali(right2,"Yellow") ||
					equali(right2,"Y") ||
					equali(right2,"3")
					) team=3
					else if(
					equali(right2,"Green") ||
					equali(right2,"G") ||
					equali(right2,"4")
					) team=4
				}
				replace_all(right,47,"^"","")
				if(file_exists(right))
				{
					if(containi(right,".mdl")==strlen(right)-4)
					{
						if(!precache_model(right))
						{
							log_amx("Error attempting to precache model: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
						}
						else if(containi(left,"models/p_")==0)
						{
							format(new_p_models[p_modelsnum],47,right)
							format(old_p_models[p_modelsnum],47,left)
							p_models_team[p_modelsnum]=team
							p_modelsnum++
						}
						else if(containi(left,"models/v_")==0)
						{
							format(new_v_models[v_modelsnum],47,right)
							format(old_v_models[v_modelsnum],47,left)
							v_models_team[v_modelsnum]=team
							v_modelsnum++
						}
						else if(containi(left,"models/w_")==0)
						{
							format(new_w_models[w_modelsnum],47,right)
							format(old_w_models[w_modelsnum],47,left)
							w_models_team[w_modelsnum]=team
							w_modelsnum++
						}
						else
						{
							log_amx("Model type(p_ / v_ / w_) unknown for model: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
						}
					}
					else if(containi(right,".wav")==strlen(right)-4 || containi(right,".mp3")==strlen(right)-4)
					{
						replace(right,47,"sound/","")
						replace(left,47,"sound/","")
						if(!precache_sound(right))
						{
							log_amx("Error attempting to precache sound: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
						}
						else
						{
							format(new_sounds[soundsnum],47,right)
							format(old_sounds[soundsnum],47,left)
							sounds_team[soundsnum]=team
							soundsnum++
						}
					}
					else
					{
						log_amx("Invalid File: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
					}
				}
				else
				{
					log_amx("File Inexistent: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
				}
				
			}
		}
	}
}

public Changeweapon_Hook(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_CONTINUE
	}
	static model[32], i, team

	team = get_user_team(id)
	
	if(g_weapons[id] == true)
	{
		
		pev(id,pev_viewmodel2,model,31)
		for(i=0;i<v_modelsnum;i++)
		{
			if(equali(model,old_v_models[i]))
			{
				if(v_models_team[i]==team || !v_models_team[i])
				{
					set_pev(id,pev_viewmodel2,new_v_models[i])
					break;
				}
			}
		}

		pev(id,pev_weaponmodel2,model,31)
		for(i=0;i<p_modelsnum;i++)
		{
			if(equali(model,old_p_models[i]))
			{
				if(p_models_team[i]==team || !p_models_team[i])
				{
					set_pev(id,pev_weaponmodel2,new_p_models[i])
					break;
				}
			}
		}
	}
	else return PLUGIN_HANDLED
	
	return PLUGIN_CONTINUE
}

public Sound_Hook(id,channel,sample[])
{
	if(!is_user_alive(id))
	{
		return FMRES_IGNORED
	}
	if(channel!=CHAN_WEAPON && channel!=CHAN_ITEM)
	{
		return FMRES_IGNORED
	}

	static i, team

	team = get_user_team(id)

	for(i=0;i<soundsnum;i++)
	{
		if(equali(sample,old_sounds[i]))
		{
			if(sounds_team[i]==team || !sounds_team[i])
			{
				engfunc(EngFunc_EmitSound,id,CHAN_WEAPON,new_sounds[i],1.0,ATTN_NORM,0,PITCH_NORM)
				return FMRES_SUPERCEDE
			}
		}
	}
	return FMRES_IGNORED
}

public W_Model_Hook(ent,model[])
{
	if(!pev_valid(ent))
	{
		return FMRES_IGNORED
	}
	static i
	for(i=0;i<w_modelsnum;i++)
	{
		if(equali(model,old_w_models[i]))
		{
			engfunc(EngFunc_SetModel,ent,new_w_models[i])
			return FMRES_SUPERCEDE
		}
	}
	return FMRES_IGNORED
}

public newround()
{
	static ent, classname[8], model[32]
	ent = engfunc(EngFunc_FindEntityInSphere,maxplayers,Float:{0.0,0.0,0.0},4800.0)
	while(ent)
	{
		if(pev_valid(ent))
		{
			pev(ent,pev_classname,classname,7)
			if(containi(classname,"armoury")!=-1)
			{
				pev(ent,pev_model,model,31)
				W_Model_Hook(ent,model)
			}
		}
		ent = engfunc(EngFunc_FindEntityInSphere,ent,Float:{0.0,0.0,0.0},4800.0)
	}
}
stock client_print_color(const id, const input[], any:...)
{
	new count = 1, players[32]
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, "!g", "^4")
	replace_all(msg, 190, "!y", "^1")
	replace_all(msg, 190, "!t", "^3")
	replace_all(msg, 190, "!t2", "^0")
	
	if (id) players[0] = id; else get_players(players, count, "ch")

	for (new i = 0; i < count; i++)
	{
		
		if (is_user_connected(players[i])) 
		{
			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
			write_byte(players[i])
			write_string(msg)
			message_end()
		}
	}
}
Изображение

Аватар
impossible
Извън линия
Потребител
Потребител
Мнения: 488
Регистриран на: 15 Юни 2019, 12:41
Се отблагодари: 23 пъти
Получена благодарност: 47 пъти

Re: Остраняване на грешките в кода..Desativar_Armas

Мнение от impossible » 04 Май 2023, 21:03

Код за потвърждение: Избери целия код

#define VERSION	"1.3"
#define wmPrefix "[EQUIPE]"

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define MAX_SOUNDS	50
#define MAX_p_MODELS	50
#define MAX_v_MODELS	50
#define MAX_w_MODELS	50

#define MAP_CONFIGS	1

new new_sounds[MAX_SOUNDS][48]
new old_sounds[MAX_SOUNDS][48]
new sounds_team[MAX_SOUNDS]
new soundsnum

new new_p_models[MAX_p_MODELS][48]
new old_p_models[MAX_p_MODELS][48]
new p_models_team[MAX_p_MODELS]
new p_modelsnum

new new_v_models[MAX_v_MODELS][48]
new old_v_models[MAX_v_MODELS][48]
new v_models_team[MAX_p_MODELS]
new v_modelsnum

new new_w_models[MAX_w_MODELS][48]
new old_w_models[MAX_w_MODELS][48]
new w_models_team[MAX_p_MODELS]
new w_modelsnum

new maxplayers
new bool:g_weapons[33]

public plugin_init()
{
	register_plugin("Weapon Model + Sound Replacement",VERSION,"1.0")
	register_forward(FM_EmitSound,"Sound_Hook")
	register_forward(FM_SetModel,"W_Model_Hook",1)
	register_logevent("newround",2,"1=Round_Start")
	register_event("CurWeapon","Changeweapon_Hook","be","1=1")
	maxplayers = get_maxplayers()
	
	register_clcmd("say /armas", "desativar_armas")
	register_clcmd("say_team /armas", "desativar_armas")
}

public desativar_armas(id)
{
	new szName[33];
	get_user_name(id, szName, charsmax(szName));
               
	if(g_weapons[id] == true)
	{
		g_weapons[id] = false;
 
		chat_color(id, "!g[%s] !yDisabled weapon models.",wmPrefix);
		chat_color(id, "!g[%s] !tPlayer: !y%s !tdisabled weapon skins.",wmPrefix, szName);
	}
	else if(g_weapons[id] == false)
	{
		g_weapons[id] = true;
                       
		chat_color(id, "!g[%s] !yActivated weapon models.",wmPrefix);
		chat_color(id, "!g[%s] !tPlayer: !y%s !tactivated the weapon skins.",wmPrefix, szName);
	}
}

public client_connect(id) g_weapons[id] = true;

public plugin_precache()
{
	new configfile[200]
	new configsdir[200]
	new map[32]
	get_configsdir(configsdir,199)
	get_mapname(map,31)
	format(configfile,199,"%s/novas_armas_%s.ini",configsdir,map)
	if(file_exists(configfile))
	{
		load_models(configfile)
	}
	else
	{
		format(configfile,199,"%s/novas_armas.ini",configsdir)
		load_models(configfile)
	}
}

public load_models(configfile[])
{
	if(file_exists(configfile))
	{
		new read[96], left[48], right[48], right2[32], trash, team
		for(new i=0;i<file_size(configfile,1);i++)
		{
			read_file(configfile,i,read,95,trash)
			if(containi(read,";")!=0 && containi(read," ")!=-1)
			{
				argbreak(read,left,47,right,47)
				team=0
				if(containi(right," ")!=-1)
				{
					argbreak(right,right,47,right2,31)
					replace_all(right2,31,"^"","")
					if(
					equali(right2,"T") ||
					equali(right2,"Terrorist") ||
					equali(right2,"Terrorists") ||
					equali(right2,"Blue") ||
					equali(right2,"B") ||
					equali(right2,"Allies") ||
					equali(right2,"1")
					) team=1
					else if(
					equali(right2,"CT") ||
					equali(right2,"Counter") ||
					equali(right2,"Counter-Terrorist") ||
					equali(right2,"Counter-Terrorists") ||
					equali(right2,"CounterTerrorists") ||
					equali(right2,"CounterTerrorist") ||
					equali(right2,"Red") ||
					equali(right2,"R") ||
					equali(right2,"Axis") ||
					equali(right2,"2")
					) team=2
					else if(
					equali(right2,"Yellow") ||
					equali(right2,"Y") ||
					equali(right2,"3")
					) team=3
					else if(
					equali(right2,"Green") ||
					equali(right2,"G") ||
					equali(right2,"4")
					) team=4
				}
				replace_all(right,47,"^"","")
				if(file_exists(right))
				{
					if(containi(right,".mdl")==strlen(right)-4)
					{
						if(!precache_model(right))
						{
							log_amx("Error attempting to precache model: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
						}
						else if(containi(left,"models/p_")==0)
						{
							format(new_p_models[p_modelsnum],47,right)
							format(old_p_models[p_modelsnum],47,left)
							p_models_team[p_modelsnum]=team
							p_modelsnum++
						}
						else if(containi(left,"models/v_")==0)
						{
							format(new_v_models[v_modelsnum],47,right)
							format(old_v_models[v_modelsnum],47,left)
							v_models_team[v_modelsnum]=team
							v_modelsnum++
						}
						else if(containi(left,"models/w_")==0)
						{
							format(new_w_models[w_modelsnum],47,right)
							format(old_w_models[w_modelsnum],47,left)
							w_models_team[w_modelsnum]=team
							w_modelsnum++
						}
						else
						{
							log_amx("Model type(p_ / v_ / w_) unknown for model: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
						}
					}
					else if(containi(right,".wav")==strlen(right)-4 || containi(right,".mp3")==strlen(right)-4)
					{
						replace(right,47,"sound/","")
						replace(left,47,"sound/","")
						if(!precache_sound(right))
						{
							log_amx("Error attempting to precache sound: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
						}
						else
						{
							format(new_sounds[soundsnum],47,right)
							format(old_sounds[soundsnum],47,left)
							sounds_team[soundsnum]=team
							soundsnum++
						}
					}
					else
					{
						log_amx("Invalid File: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
					}
				}
				else
				{
					log_amx("File Inexistent: ^"%s^" (Line %d of novas_armas.ini)",right,i+1)
				}
				
			}
		}
	}
}

public Changeweapon_Hook(id)
{
	if(!is_user_alive(id))
	{
		return PLUGIN_CONTINUE
	}
	static model[32], i, team

	team = get_user_team(id)
	
	if(g_weapons[id] == true)
	{
		
		pev(id,pev_viewmodel2,model,31)
		for(i=0;i<v_modelsnum;i++)
		{
			if(equali(model,old_v_models[i]))
			{
				if(v_models_team[i]==team || !v_models_team[i])
				{
					set_pev(id,pev_viewmodel2,new_v_models[i])
					break;
				}
			}
		}

		pev(id,pev_weaponmodel2,model,31)
		for(i=0;i<p_modelsnum;i++)
		{
			if(equali(model,old_p_models[i]))
			{
				if(p_models_team[i]==team || !p_models_team[i])
				{
					set_pev(id,pev_weaponmodel2,new_p_models[i])
					break;
				}
			}
		}
	}
	else return PLUGIN_HANDLED
	
	return PLUGIN_CONTINUE
}

public Sound_Hook(id,channel,sample[])
{
	if(!is_user_alive(id))
	{
		return FMRES_IGNORED
	}
	if(channel!=CHAN_WEAPON && channel!=CHAN_ITEM)
	{
		return FMRES_IGNORED
	}

	static i, team

	team = get_user_team(id)

	for(i=0;i<soundsnum;i++)
	{
		if(equali(sample,old_sounds[i]))
		{
			if(sounds_team[i]==team || !sounds_team[i])
			{
				engfunc(EngFunc_EmitSound,id,CHAN_WEAPON,new_sounds[i],1.0,ATTN_NORM,0,PITCH_NORM)
				return FMRES_SUPERCEDE
			}
		}
	}
	return FMRES_IGNORED
}

public W_Model_Hook(ent,model[])
{
	if(!pev_valid(ent))
	{
		return FMRES_IGNORED
	}
	static i
	for(i=0;i<w_modelsnum;i++)
	{
		if(equali(model,old_w_models[i]))
		{
			engfunc(EngFunc_SetModel,ent,new_w_models[i])
			return FMRES_SUPERCEDE
		}
	}
	return FMRES_IGNORED
}

public newround()
{
	static ent, classname[8], model[32]
	ent = engfunc(EngFunc_FindEntityInSphere,maxplayers,Float:{0.0,0.0,0.0},4800.0)
	while(ent)
	{
		if(pev_valid(ent))
		{
			pev(ent,pev_classname,classname,7)
			if(containi(classname,"armoury")!=-1)
			{
				pev(ent,pev_model,model,31)
				W_Model_Hook(ent,model)
			}
		}
		ent = engfunc(EngFunc_FindEntityInSphere,ent,Float:{0.0,0.0,0.0},4800.0)
	}
}
stock chat_color(const id, const input[], any:...)
{
	new count = 1, players[32]
	static msg[191]
	vformat(msg, 190, input, 3)

	replace_all(msg, 190, "!g", "^4")
	replace_all(msg, 190, "!y", "^1")
	replace_all(msg, 190, "!t", "^3")

	if (id) players[0] = id; else get_players(players, count, "ch");
	{
		for (new i = 0; i < count; i++)
		{
			if (is_user_connected(players[i]))
			{
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
				write_byte(players[i])
				write_string(msg)
				message_end()
			}
		}
	}
}

Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1319
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 247 пъти
Получена благодарност: 43 пъти

Re: Остраняване на грешките в кода..Desativar_Armas

Мнение от cgozzie » 05 Май 2023, 12:38

До тук е добре,ще може ли да се оправи това с оръжията за "CT" и "T' кой скин за кой отбор да изважда.

В novas_armas.ini задавам така но винаги ми вади който е първи и за двата отбора в случая е "models/p_ak47.mdl" "models/custom_xamas/p_ak47_T.mdl" "T"
Ако го изместя под "models/p_ak47.mdl" "models/custom_xamas/p_ak47_CT.mdl" "CT" тогава изкарва за цт и за двата отбора 1 и същ.
Или нещо в кода не е наред щот не изкарва секи за отбора си може ли да се оправи.

Код за потвърждение: Избери целия код

"models/p_ak47.mdl" "models/custom_xamas/p_ak47_T.mdl" "T"
"models/v_ak47.mdl" "models/custom_xamas/v_ak47_T.mdl" "T"
"models/w_ak47.mdl" "models/custom_xamas/w_ak47_T.mdl" "T"

"models/p_ak47.mdl" "models/custom_xamas/p_ak47_CT.mdl" "CT"
"models/v_ak47.mdl" "models/custom_xamas/v_ak47_CT.mdl" "CT"
"models/w_ak47.mdl" "models/custom_xamas/w_ak47_CT.mdl" "CT"
Изображение

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 11 госта