Erori server (partea 2)

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
User avatar
mixatu
Membru, skill +2
Membru, skill +2
Posts: 680
Joined: 26 Apr 2012, 15:47
Detinator Steam: Da
SteamID: kzu1337
Reputatie: Membru Club eXtreamCS (1 luna)
Location: cstrike
Has thanked: 59 times
Been thanked: 29 times
Contact:

03 Sep 2012, 16:43

Noi erori.. Vreo rezolvare?

Code: Select all

L 09/03/2012 - 15:56:50: Start of error session.
L 09/03/2012 - 15:56:50: Info (map "hns_floppytown_pro") (file "addons/amxmodx/logs/error_20120903.log")
L 09/03/2012 - 15:56:50: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 15:56:50: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 15:56:50: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 15:57:00: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 15:57:00: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 15:57:00: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 15:57:20: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 15:57:20: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 15:57:20: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 15:57:39: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 15:57:39: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 15:57:39: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 15:57:44: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 15:57:44: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 15:57:44: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 15:59:06: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 15:59:06: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 15:59:06: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 16:16:56: Start of error session.
L 09/03/2012 - 16:16:56: Info (map "c21_rainrun") (file "addons/amxmodx/logs/error_20120903.log")
L 09/03/2012 - 16:16:56: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 16:16:56: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 16:16:56: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 09/03/2012 - 16:17:00: [CSTRIKE] Player out of range (0)
L 09/03/2012 - 16:17:00: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
L 09/03/2012 - 16:17:00: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
RoyalServer 2
User avatar
shut.theart
Membru, skill +3
Membru, skill +3
Posts: 1230
Joined: 10 Aug 2012, 13:04
Detinator Steam: Da
Has thanked: 52 times
Been thanked: 20 times
Contact:

03 Sep 2012, 17:34

Code: Select all

L 09/03/2012 - 15:56:50: [AMXX] Run time error 10 (plugin "hnsdm.amxx") (native "cs_set_user_team") - debug not enabled!
e de la hnsdm.amxx
sursa ?

User avatar
mixatu
Membru, skill +2
Membru, skill +2
Posts: 680
Joined: 26 Apr 2012, 15:47
Detinator Steam: Da
SteamID: kzu1337
Reputatie: Membru Club eXtreamCS (1 luna)
Location: cstrike
Has thanked: 59 times
Been thanked: 29 times
Contact:

03 Sep 2012, 20:00

hnsdm.sma
| Afiseaza codul
#include <amxmodx>
#include <fakemeta>
#include <cstrike>
#include <hamsandwich>

new const g_Plugin[] = "HNS Deathmatch";
new const g_Version[] = "2.1";
new const g_Author[] = "Jon";

new g_CvarEnable;
new g_CvarGameName;
new g_CvarStabOnly;
new g_CvarRespawnDelay;
new g_CvarProtectionTime;
new g_CvarNoFlash;
new g_CvarHidersFlashbangs;
new g_CvarHidersSmokegrenade;
new g_CvarHidersHegrenade;
new g_CvarSeekersFlashbangs;
new g_CvarSeekersSmokegrenade;
new g_CvarSeekersHegrenade;
new g_MsgScreenFade;

new const g_BuyCommands[][] =
{
	"usp", "glock", "deagle", "p228", "elites",
	"fn57", "m3", "xm1014", "mp5", "tmp", "p90",
	"mac10", "ump45", "ak47", "galil", "famas",
	"sg552", "m4a1", "aug", "scout", "awp", "g3sg1",
	"sg550", "m249", "vest", "vesthelm", "flash",
	"hegren", "sgren", "defuser", "nvgs", "shield",
	"primammo", "secammo", "km45", "9x19mm", "nighthawk",
	"228compact", "fiveseven", "12gauge", "autoshotgun",
	"mp", "c90", "cv47", "defender", "clarion", "krieg552",
	"bullpup", "magnum", "d3au1", "krieg550"
}

new const g_EntityClassNames[][] = 
{
	"func_breakable", 
	"func_door_rotating", 
	"func_door", 
	"func_vip_safetyzone", 
	"func_escapezone", 
	"hostage_entity", 
	"monster_scientist", 
	"func_bomb_target", 
	"info_bomb_target"
}

new bool:g_Joined[33];

public plugin_init() 
{
	register_plugin(g_Plugin, g_Version, g_Author);
	register_cvar("hns_deathmatch_version", g_Version, FCVAR_SERVER);
	
	g_CvarEnable = register_cvar("hnsdm_enable", "1");
	
	if(!get_pcvar_num(g_CvarEnable))
		return;
	
	new gamename[32];
	formatex(gamename, 31, "%s %s", g_Plugin, g_Version);
	
	g_CvarGameName = register_cvar("hnsdm_gamename", gamename);
	g_CvarStabOnly = register_cvar("hnsdm_stabonly", "1");
	g_CvarRespawnDelay = register_cvar("hnsdm_respawndelay", "1.5");
	g_CvarProtectionTime = register_cvar("hnsdm_protectiontime", "5.0");
	g_CvarNoFlash = register_cvar("hnsdm_noflash", "1");
	g_CvarHidersFlashbangs = register_cvar("hnsdm_hiders_flashbangs", "1")
	g_CvarHidersSmokegrenade = register_cvar("hnsdm_hiders_smokegrenade", "1")
	g_CvarHidersHegrenade = register_cvar("hnsdm_hiders_hegrenade", "0")
	g_CvarSeekersFlashbangs = register_cvar("hnsdm_seekers_flashbangs", "0")
	g_CvarSeekersSmokegrenade = register_cvar("hnsdm_seekers_smokegrenade", "0")
	g_CvarSeekersHegrenade = register_cvar("hnsdm_seekers_hegrenade", "0")
	g_MsgScreenFade = get_user_msgid("ScreenFade");
	
	register_event("DeathMsg", "eventDeathMsg", "a");
	register_message(g_MsgScreenFade, "msgScreenFade");
	
	register_forward(FM_CmdStart, "fwdCmdStart");
	register_forward(FM_ClientKill, "fwdClientKill");
	register_forward(FM_GetGameDescription,"fwdGetGameDescription");
	register_forward(FM_PlayerPostThink, "fwdPlayerPostThink");
	
	RegisterHam(Ham_Spawn, "player", "eventPlayerSpawn", 1);

	register_clcmd("buy", "HandleBlock");
	register_clcmd("buyammo1", "HandleBlock");
	register_clcmd("buyammo2", "HandleBlock");
	register_clcmd("buyequip", "HandleBlock");
	register_clcmd("cl_autobuy", "HandleBlock");
	register_clcmd("cl_rebuy", "HandleBlock");
	register_clcmd("cl_setautobuy", "HandleBlock");
	register_clcmd("cl_setrebuy", "HandleBlock");
	register_clcmd("chooseteam", "HandleBlock");
	register_clcmd("say /respawn", "RespawnPlayer");
}

public plugin_precache() register_forward(FM_Spawn, "fwdSpawn");
	
public eventDeathMsg()
{
	new killer = read_data(1)
	new victim = read_data(2)
	
	if(killer == 0 && get_user_team(victim) == 1) 
	{
		new lucky = GetRandomCT();
		
		cs_set_user_team(lucky, 1)
		client_print(lucky, print_chat, "[HNS] An idiot jumped off and you were lucky and got transfered to Terrorist.")
		
		cs_set_user_team(victim, 2);
		
		GiveItems(lucky)
		SetStealth(lucky)
	}
	
	else if(killer == victim)
	{
		set_task(get_pcvar_float(g_CvarRespawnDelay), "RespawnPlayer", victim)
		
		return PLUGIN_HANDLED;
	}
	
	else if(get_user_team(killer) == 2) 	
	{ 
		cs_set_user_team(killer, 1); 
		cs_set_user_team(victim, 2); 
		
		GiveItems(killer)
		SetStealth(killer)
	}
			
	set_task(get_pcvar_float(g_CvarRespawnDelay), "RespawnPlayer", victim)
	
	return PLUGIN_CONTINUE;
}

public eventPlayerSpawn(id) 
{
	if(is_user_alive(id)) GiveItems(id);
}

public RespawnPlayer(id) 
{
	if(!is_user_alive(id)) ExecuteHam(Ham_CS_RoundRespawn, id);	
}

public fwdCmdStart(id, handle, seed)
{
	if(!get_pcvar_num(g_CvarStabOnly) || !is_user_alive(id) || get_user_team(id) != 2) return FMRES_IGNORED;
		
	static clip, ammo;
	
	if(get_user_weapon(id, clip, ammo) != CSW_KNIFE) return FMRES_IGNORED;
		
	static button;
	button = get_uc(handle, UC_Buttons);
					
	if(button & IN_ATTACK) button = (button & ~IN_ATTACK) | IN_ATTACK2;
		
	set_uc(handle, UC_Buttons, button);
		
	return FMRES_SUPERCEDE;
}

public fwdPlayerPostThink(id)
{
	if(!g_Joined[id])
	{
		if(0 < get_user_team(id) < 3 && !is_user_alive(id))
		{
			set_task(1.0, "RespawnPlayer", id)
			
			g_Joined[id] = true;
		}
	}
}

public fwdClientKill(id) return FMRES_SUPERCEDE;

public fwdSpawn(ent)
{
	if(!pev_valid(ent)) return FMRES_IGNORED;
	
	new class[32];
	pev(ent, pev_classname, class, 31);
	
	for(new i = 0; i < sizeof(g_EntityClassNames); i++)
	{
		if(equal(class, g_EntityClassNames))
		{
			engfunc(EngFunc_RemoveEntity, ent);
			
			return FMRES_SUPERCEDE;
		}
	}
	
	return FMRES_IGNORED;
}

public fwdGetGameDescription()
{
	new gamename[32];
	get_pcvar_string(g_CvarGameName, gamename, 31)
	
	forward_return(FMV_STRING, gamename)
	
	return FMRES_SUPERCEDE;
}

public msgScreenFade(msgid, dest, id)
{
	if(is_user_alive(id) && get_pcvar_num(g_CvarNoFlash) == get_user_team(id))
	{
		static data[4];
		data[0] = get_msg_arg_int(4); 
		data[1] = get_msg_arg_int(5)
		data[2] = get_msg_arg_int(6); 
		data[3] = get_msg_arg_int(7)
			
		if(data[0] == 255 && data[1] == 255 && data[2] == 255 && data[3] > 199) return PLUGIN_HANDLED;
	}
	
	return PLUGIN_CONTINUE;
}

public client_command(id)
{
	new sArg[13];
	
	if(read_argv(0, sArg, 12) > 11) return PLUGIN_CONTINUE;
	
	for(new i = 0; i < sizeof(g_BuyCommands); i++)
	{
		if(equali(g_BuyCommands, sArg, 0)) return PLUGIN_HANDLED;
	}
	
	return PLUGIN_CONTINUE;
}

public HandleBlock(id) return PLUGIN_HANDLED;
	
public UnsetStealth(id) fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 255);

SetStealth(id)
{
	if(get_user_health(id) != 100)
		fm_set_user_health(id, 100)
		
	fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 0);
	set_task(get_pcvar_float(g_CvarProtectionTime), "UnsetStealth", id)
}

GiveItems(id)
{	
	cs_reset_user_model(id)
	fm_strip_user_weapons(id)
	
	switch(get_user_team(id))
	{
		case 1:
		{	
			if(get_pcvar_num(g_CvarHidersFlashbangs))
			{
				fm_give_item(id, "weapon_flashbang")
				cs_set_user_bpammo(id, CSW_FLASHBANG, get_pcvar_num(g_CvarHidersFlashbangs))
			}
			
			if(get_pcvar_num(g_CvarHidersSmokegrenade))
				fm_give_item(id, "weapon_smokegrenade")
				
			if(get_pcvar_num(g_CvarHidersHegrenade))
				fm_give_item(id, "weapon_hegrenade")
		}
		
		case 2:
		{
			fm_give_item(id, "weapon_knife")
				
			if(get_pcvar_num(g_CvarSeekersFlashbangs))
			{
				fm_give_item(id, "weapon_flashbang")
				cs_set_user_bpammo(id, CSW_FLASHBANG, get_pcvar_num(g_CvarSeekersFlashbangs))
			}
			
			if(get_pcvar_num(g_CvarSeekersSmokegrenade))
				fm_give_item(id, "weapon_smokegrenade")
				
			if(get_pcvar_num(g_CvarSeekersHegrenade))
				fm_give_item(id, "weapon_hegrenade")
		}
	}
}

GetRandomCT()
{
	static iPlayers[32], iCT_num;
	get_players(iPlayers, iCT_num, "ae", "CT");
        
	if(!iCT_num)
		return 0;
        
	return iCT_num > 1 ? iPlayers[random(iCT_num)] : iPlayers[iCT_num - 1];
}

stock fm_set_user_godmode(index, godmode = 0) 
{
	set_pev(index, pev_takedamage, godmode == 1 ? DAMAGE_NO : DAMAGE_AIM)

	return 1
}

stock fm_set_user_rendering(index, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) 
{
	return fm_set_rendering(index, fx, r, g, b, render, amount)
}

stock fm_strip_user_weapons(index) 
{
	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "player_weaponstrip"))
	if (!pev_valid(ent))
		return 0

	dllfunc(DLLFunc_Spawn, ent)
	dllfunc(DLLFunc_Use, ent, index)
	engfunc(EngFunc_RemoveEntity, ent)

	return 1
}

stock fm_give_item(index, const item[]) 
{
	if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
		return 0

	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
	if (!pev_valid(ent))
		return 0

	new Float:origin[3]
	pev(index, pev_origin, origin)
	set_pev(ent, pev_origin, origin)
	set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
	dllfunc(DLLFunc_Spawn, ent)

	new save = pev(ent, pev_solid)
	dllfunc(DLLFunc_Touch, ent, index)
	if (pev(ent, pev_solid) != save)
		return ent

	engfunc(EngFunc_RemoveEntity, ent)

	return -1
}

stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) 
{
	new Float:RenderColor[3]
	RenderColor[0] = float(r)
	RenderColor[1] = float(g)
	RenderColor[2] = float(b)

	set_pev(entity, pev_renderfx, fx)
	set_pev(entity, pev_rendercolor, RenderColor)
	set_pev(entity, pev_rendermode, render)
	set_pev(entity, pev_renderamt, float(amount))

	return 1
}

stock fm_set_user_health(index, health) 
{
	health > 0 ? set_pev(index, pev_health, float(health)) : dllfunc(DLLFunc_ClientKill, index)

	return 1
}
User avatar
shut.theart
Membru, skill +3
Membru, skill +3
Posts: 1230
Joined: 10 Aug 2012, 13:04
Detinator Steam: Da
Has thanked: 52 times
Been thanked: 20 times
Contact:

03 Sep 2012, 20:10

mda incearca sa-l recompilezi apoi baga in plugins.ini hnsdm.amxx debug

User avatar
mixatu
Membru, skill +2
Membru, skill +2
Posts: 680
Joined: 26 Apr 2012, 15:47
Detinator Steam: Da
SteamID: kzu1337
Reputatie: Membru Club eXtreamCS (1 luna)
Location: cstrike
Has thanked: 59 times
Been thanked: 29 times
Contact:

03 Sep 2012, 20:13

Am adaugat. hnsdm.amxx debug si la fel face. Alta solutie?
compaq
Fost moderator
Fost moderator
Posts: 2598
Joined: 01 Dec 2008, 15:32
Detinator Steam: Da
Reputatie: Fost eXtream Mod
Fost contribuitor
Fost manager
Fost Scripter eXtreamCS
Has thanked: 15 times
Been thanked: 152 times

03 Sep 2012, 21:52

Incearca:

Code: Select all

#include <amxmodx>
#include <fakemeta>
#include <cstrike>
#include <hamsandwich>

#define IsPlayer(%1) (1 <= %1 <= g_MaxPlayers)

new const g_Plugin[] = "HNS Deathmatch";
new const g_Version[] = "2.1";
new const g_Author[] = "Jon";

new g_CvarEnable;
new g_CvarGameName;
new g_CvarStabOnly;
new g_CvarRespawnDelay;
new g_CvarProtectionTime;
new g_CvarNoFlash;
new g_CvarHidersFlashbangs;
new g_CvarHidersSmokegrenade;
new g_CvarHidersHegrenade;
new g_CvarSeekersFlashbangs;
new g_CvarSeekersSmokegrenade;
new g_CvarSeekersHegrenade;
new g_MsgScreenFade;
new g_MaxPlayers;

new const g_BuyCommands[][] =
{
	"usp", "glock", "deagle", "p228", "elites",
	"fn57", "m3", "xm1014", "mp5", "tmp", "p90",
	"mac10", "ump45", "ak47", "galil", "famas",
	"sg552", "m4a1", "aug", "scout", "awp", "g3sg1",
	"sg550", "m249", "vest", "vesthelm", "flash",
	"hegren", "sgren", "defuser", "nvgs", "shield",
	"primammo", "secammo", "km45", "9x19mm", "nighthawk",
	"228compact", "fiveseven", "12gauge", "autoshotgun",
	"mp", "c90", "cv47", "defender", "clarion", "krieg552",
	"bullpup", "magnum", "d3au1", "krieg550"
}

new const g_EntityClassNames[][] = 
{
	"func_breakable", 
	"func_door_rotating", 
	"func_door", 
	"func_vip_safetyzone", 
	"func_escapezone", 
	"hostage_entity", 
	"monster_scientist", 
	"func_bomb_target", 
	"info_bomb_target"
}

new bool:g_Joined[33];

public plugin_init() 
{
	register_plugin(g_Plugin, g_Version, g_Author);
	register_cvar("hns_deathmatch_version", g_Version, FCVAR_SERVER);
	
	g_CvarEnable = register_cvar("hnsdm_enable", "1");
	
	if(!get_pcvar_num(g_CvarEnable))
		return;
	
	new gamename[32];
	formatex(gamename, 31, "%s %s", g_Plugin, g_Version);
	
	g_CvarGameName = register_cvar("hnsdm_gamename", gamename);
	g_CvarStabOnly = register_cvar("hnsdm_stabonly", "1");
	g_CvarRespawnDelay = register_cvar("hnsdm_respawndelay", "1.5");
	g_CvarProtectionTime = register_cvar("hnsdm_protectiontime", "5.0");
	g_CvarNoFlash = register_cvar("hnsdm_noflash", "1");
	g_CvarHidersFlashbangs = register_cvar("hnsdm_hiders_flashbangs", "1")
	g_CvarHidersSmokegrenade = register_cvar("hnsdm_hiders_smokegrenade", "1")
	g_CvarHidersHegrenade = register_cvar("hnsdm_hiders_hegrenade", "0")
	g_CvarSeekersFlashbangs = register_cvar("hnsdm_seekers_flashbangs", "0")
	g_CvarSeekersSmokegrenade = register_cvar("hnsdm_seekers_smokegrenade", "0")
	g_CvarSeekersHegrenade = register_cvar("hnsdm_seekers_hegrenade", "0")
	g_MsgScreenFade = get_user_msgid("ScreenFade");
	g_MaxPlayers = get_maxplayers();
	
	register_event("DeathMsg", "eventDeathMsg", "a");
	register_message(g_MsgScreenFade, "msgScreenFade");
	
	register_forward(FM_CmdStart, "fwdCmdStart");
	register_forward(FM_ClientKill, "fwdClientKill");
	register_forward(FM_GetGameDescription,"fwdGetGameDescription");
	register_forward(FM_PlayerPostThink, "fwdPlayerPostThink");
	
	RegisterHam(Ham_Spawn, "player", "eventPlayerSpawn", 1);

	register_clcmd("buy", "HandleBlock");
	register_clcmd("buyammo1", "HandleBlock");
	register_clcmd("buyammo2", "HandleBlock");
	register_clcmd("buyequip", "HandleBlock");
	register_clcmd("cl_autobuy", "HandleBlock");
	register_clcmd("cl_rebuy", "HandleBlock");
	register_clcmd("cl_setautobuy", "HandleBlock");
	register_clcmd("cl_setrebuy", "HandleBlock");
	register_clcmd("chooseteam", "HandleBlock");
	register_clcmd("say /respawn", "RespawnPlayer");
}

public plugin_precache() register_forward(FM_Spawn, "fwdSpawn");
	
public eventDeathMsg()
{
	new killer = read_data(1)
	new victim = read_data(2)
	
	if(killer == 0 && get_user_team(victim) == 1) 
	{
		new lucky = GetRandomCT();
		
		if (!IsPlayer(lucky) || !is_user_connected(lucky))
			return PLUGIN_CONTINUE;

		cs_set_user_team(lucky, 1)
		client_print(lucky, print_chat, "[HNS] An idiot jumped off and you were lucky and got transfered to Terrorist.")
		
		if (!IsPlayer(victim) || !is_user_connected(victim))
			return PLUGIN_CONTINUE;

		cs_set_user_team(victim, 2);
		
		GiveItems(lucky)
		SetStealth(lucky)
	}
	
	else if(killer == victim)
	{
		set_task(get_pcvar_float(g_CvarRespawnDelay), "RespawnPlayer", victim)
		
		return PLUGIN_HANDLED;
	}
	
	else if(get_user_team(killer) == 2) 	
	{ 
		if (!IsPlayer(killer) || !is_user_connected(victim) || !IsPlayer(victim) || !is_user_connected(killer))
			return PLUGIN_HANDLED;

		cs_set_user_team(killer, 1); 
		cs_set_user_team(victim, 2); 
		
		GiveItems(killer)
		SetStealth(killer)
	}
			
	set_task(get_pcvar_float(g_CvarRespawnDelay), "RespawnPlayer", victim)
	
	return PLUGIN_CONTINUE;
}

public eventPlayerSpawn(id) 
{
	if(is_user_alive(id)) GiveItems(id);
}

public RespawnPlayer(id) 
{
	if(!is_user_alive(id)) ExecuteHam(Ham_CS_RoundRespawn, id);	
}

public fwdCmdStart(id, handle, seed)
{
	if(!get_pcvar_num(g_CvarStabOnly) || !is_user_alive(id) || get_user_team(id) != 2) return FMRES_IGNORED;
		
	static clip, ammo;
	
	if(get_user_weapon(id, clip, ammo) != CSW_KNIFE) return FMRES_IGNORED;
		
	static button;
	button = get_uc(handle, UC_Buttons);
					
	if(button & IN_ATTACK) button = (button & ~IN_ATTACK) | IN_ATTACK2;
		
	set_uc(handle, UC_Buttons, button);
		
	return FMRES_SUPERCEDE;
}

public fwdPlayerPostThink(id)
{
	if(!g_Joined[id])
	{
		if(0 < get_user_team(id) < 3 && !is_user_alive(id))
		{
			set_task(1.0, "RespawnPlayer", id)
			
			g_Joined[id] = true;
		}
	}
}

public fwdClientKill(id) return FMRES_SUPERCEDE;

public fwdSpawn(ent)
{
	if(!pev_valid(ent)) return FMRES_IGNORED;
	
	new class[32];
	pev(ent, pev_classname, class, 31);
	
	for(new i = 0; i < sizeof(g_EntityClassNames); i++)
	{
		if(equal(class, g_EntityClassNames[i]))
		{
			engfunc(EngFunc_RemoveEntity, ent);
			
			return FMRES_SUPERCEDE;
		}
	}
	
	return FMRES_IGNORED;
}

public fwdGetGameDescription()
{
	new gamename[32];
	get_pcvar_string(g_CvarGameName, gamename, 31)
	
	forward_return(FMV_STRING, gamename)
	
	return FMRES_SUPERCEDE;
}

public msgScreenFade(msgid, dest, id)
{
	if(is_user_alive(id) && get_pcvar_num(g_CvarNoFlash) == get_user_team(id))
	{
		static data[4];
		data[0] = get_msg_arg_int(4); 
		data[1] = get_msg_arg_int(5)
		data[2] = get_msg_arg_int(6); 
		data[3] = get_msg_arg_int(7)
			
		if(data[0] == 255 && data[1] == 255 && data[2] == 255 && data[3] > 199) return PLUGIN_HANDLED;
	}
	
	return PLUGIN_CONTINUE;
}

public client_command(id)
{
	new sArg[13];
	
	if(read_argv(0, sArg, 12) > 11) return PLUGIN_CONTINUE;
	
	for(new i = 0; i < sizeof(g_BuyCommands); i++)
	{
		if(equali(g_BuyCommands[i], sArg, 0)) return PLUGIN_HANDLED;
	}
	
	return PLUGIN_CONTINUE;
}

public HandleBlock(id) return PLUGIN_HANDLED;
	
public UnsetStealth(id) fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 255);

SetStealth(id)
{
	if(get_user_health(id) != 100)
		fm_set_user_health(id, 100)
		
	fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 0);
	set_task(get_pcvar_float(g_CvarProtectionTime), "UnsetStealth", id)
}

GiveItems(id)
{	
	cs_reset_user_model(id)
	fm_strip_user_weapons(id)
	
	switch(get_user_team(id))
	{
		case 1:
		{	
			if(get_pcvar_num(g_CvarHidersFlashbangs))
			{
				fm_give_item(id, "weapon_flashbang")
				cs_set_user_bpammo(id, CSW_FLASHBANG, get_pcvar_num(g_CvarHidersFlashbangs))
			}
			
			if(get_pcvar_num(g_CvarHidersSmokegrenade))
				fm_give_item(id, "weapon_smokegrenade")
				
			if(get_pcvar_num(g_CvarHidersHegrenade))
				fm_give_item(id, "weapon_hegrenade")
		}
		
		case 2:
		{
			fm_give_item(id, "weapon_knife")
				
			if(get_pcvar_num(g_CvarSeekersFlashbangs))
			{
				fm_give_item(id, "weapon_flashbang")
				cs_set_user_bpammo(id, CSW_FLASHBANG, get_pcvar_num(g_CvarSeekersFlashbangs))
			}
			
			if(get_pcvar_num(g_CvarSeekersSmokegrenade))
				fm_give_item(id, "weapon_smokegrenade")
				
			if(get_pcvar_num(g_CvarSeekersHegrenade))
				fm_give_item(id, "weapon_hegrenade")
		}
	}
}

GetRandomCT()
{
	static iPlayers[32], iCT_num;
	get_players(iPlayers, iCT_num, "ae", "CT");
        
	if(!iCT_num)
		return 0;
        
	return iCT_num > 1 ? iPlayers[random(iCT_num)] : iPlayers[iCT_num - 1];
}

stock fm_set_user_godmode(index, godmode = 0) 
{
	set_pev(index, pev_takedamage, godmode == 1 ? DAMAGE_NO : DAMAGE_AIM)

	return 1
}

stock fm_set_user_rendering(index, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) 
{
	return fm_set_rendering(index, fx, r, g, b, render, amount)
}

stock fm_strip_user_weapons(index) 
{
	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "player_weaponstrip"))
	if (!pev_valid(ent))
		return 0

	dllfunc(DLLFunc_Spawn, ent)
	dllfunc(DLLFunc_Use, ent, index)
	engfunc(EngFunc_RemoveEntity, ent)

	return 1
}

stock fm_give_item(index, const item[]) 
{
	if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
		return 0

	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
	if (!pev_valid(ent))
		return 0

	new Float:origin[3]
	pev(index, pev_origin, origin)
	set_pev(ent, pev_origin, origin)
	set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
	dllfunc(DLLFunc_Spawn, ent)

	new save = pev(ent, pev_solid)
	dllfunc(DLLFunc_Touch, ent, index)
	if (pev(ent, pev_solid) != save)
		return ent

	engfunc(EngFunc_RemoveEntity, ent)

	return -1
}

stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) 
{
	new Float:RenderColor[3]
	RenderColor[0] = float(r)
	RenderColor[1] = float(g)
	RenderColor[2] = float(b)

	set_pev(entity, pev_renderfx, fx)
	set_pev(entity, pev_rendercolor, RenderColor)
	set_pev(entity, pev_rendermode, render)
	set_pev(entity, pev_renderamt, float(amount))

	return 1
}

stock fm_set_user_health(index, health) 
{
	health > 0 ? set_pev(index, pev_health, float(health)) : dllfunc(DLLFunc_ClientKill, index)

	return 1
}
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 48 guests