Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

human ability

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler

Kullanıcı avatarı

ShooTeR
Mesajlar: 4497
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

human ability

Mesaj gönderen ShooTeR »

ScoolBa yazdı: Cum Eyl 20, 2019 6:44 pm @Sho.oTeR Bakarmısın
Spordayım suanda...

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4497
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

human ability

Mesaj gönderen ShooTeR »

ScoolBa yazdı: Cum Eyl 20, 2019 6:44 pm @Sho.oTeR Bakarmısın
Yarın sabah 10 gibi uyanırsam bakarım olmadı akşama kalıyor yarın.

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
ScoolBa
Mesajlar: 103
Kayıt: Cmt Şub 16, 2019 9:45 pm

human ability

Mesaj gönderen ScoolBa »

@Sho.oTeR Bakarmısın

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4497
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

human ability

Mesaj gönderen ShooTeR »

ScoolBa yazdı: Cmt Eyl 21, 2019 7:04 pm @Sho.oTeR Bakarmısın
Yarim saate bakiyorum dostum.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4497
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

human ability

Mesaj gönderen ShooTeR »

ScoolBa yazdı: Prş Eyl 19, 2019 8:57 am Şu Eklentiyi ZP'ye Uyarlarmısınız ??
Bana ana modun .inc dosyasını veya toplu dosyayı gönderme şansın varmı ?

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
ScoolBa
Mesajlar: 103
Kayıt: Cmt Şub 16, 2019 9:45 pm

human ability

Mesaj gönderen ScoolBa »

@Sho.oTeR bu ikisi işte

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
ScoolBa
Mesajlar: 103
Kayıt: Cmt Şub 16, 2019 9:45 pm

human ability

Mesaj gönderen ScoolBa »

İnc dosyasını atıyorm 1 dk

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
ScoolBa
Mesajlar: 103
Kayıt: Cmt Şub 16, 2019 9:45 pm

human ability

Mesaj gönderen ScoolBa »

İnc dosyasını atıyorm 1 dk

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
ScoolBa
Mesajlar: 103
Kayıt: Cmt Şub 16, 2019 9:45 pm

human ability

Mesaj gönderen ScoolBa »

ShooTeR yazdı: Cmt Eyl 21, 2019 8:23 pm
ScoolBa yazdı: Prş Eyl 19, 2019 8:57 am Şu Eklentiyi ZP'ye Uyarlarmısınız ??
Bana ana modun .inc dosyasını veya toplu dosyayı gönderme şansın varmı ?
csd formu inc kabul etmiyor dosya tcden atiyorm

https://s2.dosya.tc/server10/lsu528/zom ... n.inc.html

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4497
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

human ability

Mesaj gönderen ShooTeR »

Kod: Tümünü seç

#include <amxmodx>
#include <fun>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <zombieplague>

#define PLUGIN "[ZEVO] Addon: Human Ability"
#define VERSION "1.0"
#define AUTHOR "Dias Pendragon Leon"

#define GAME_LANG LANG_SERVER
#define LANG_FILE "zombie_evolution.txt"

#define TASK_STUN 546464

new const SprintSprite[] = "sprites/zombie_evolution/head_speedup.spr"
new const DeadlyShotSprite[] = "sprites/zombie_evolution/deadlyshot.spr"
new const DeadlyShot2Sprite[] = "sprites/zombie_evolution/deadlyshot2.spr"
new const StunSprite[] = "sprites/zombie_evolution/head_stun.spr"
new const StunEffect[] = "sprites/zombie_evolution/stun_activate.spr"
new const ActivateSound[] = "zombie_evolution/action/activate.wav"
new const StunSound[] = "zombie_evolution/action/player_stun.wav"

new g_SprintPercent[33], g_Sprinting, g_CanDeadlyShot, g_DeadlyShoting, g_DeadlyShotTime[33], g_CanStun
new g_HumanHud, g_PlayerKey[33][2], Float:CheckTime[33], Float:CheckTime2[33], g_Stunning, Float:g_MySpeed[33]
new g_Cvar_SprintPercent, g_Cvar_DeadlyShotTime, g_Cvar_SprintSpeed, g_Cvar_StunRadius, g_Cvar_StunTime
new g_BuyZone, g_ShockWave_SprID, g_GameStart, g_Stun_EffectID

#define TIME_INTERVAL 0.15
#define TASK_CHECKTIME 3125365
#define TASK_AUTOSKILL 18710

// MACROS
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31)))
#define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31))
#define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))

// Safety
new g_HamBot
new g_IsConnected, g_IsAlive, g_PlayerWeapon[33]

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_dictionary(LANG_FILE)
	Register_SafetyFunc()
	
	register_impulse(201, "CMD_Spray")	
	g_HumanHud = CreateHudSyncObj(3)
	
	RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack")

	// Cvars
	g_Cvar_SprintPercent = register_cvar("zevo_sprint_percent", "100")
	g_Cvar_SprintSpeed = register_cvar("zevo_sprint_speed", "350.0")
	g_Cvar_DeadlyShotTime = register_cvar("zevo_deadlyshot_time", "5")
	g_Cvar_StunRadius = register_cvar("zevo_stun_radius", "240.0")
	g_Cvar_StunTime = register_cvar("zevo_stun_time", "5.0")
}

public plugin_precache()
{
	precache_model(SprintSprite)
	precache_model(DeadlyShotSprite)
	precache_model(DeadlyShot2Sprite)
	precache_model(StunSprite)
	
	precache_sound(ActivateSound)
	precache_sound(StunSound)
	
	g_Stun_EffectID = precache_model(StunEffect)
	g_ShockWave_SprID = precache_model("sprites/shockwave.spr")
	
	// Buyzone
	g_BuyZone = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_buyzone"))
	dllfunc(DLLFunc_Spawn, g_BuyZone)
	engfunc(EngFunc_SetSize, g_BuyZone, {-8192.0, -8192.0, -8192.0}, {-8191.0, -8191.0, -8191.0})
}

public client_putinserver(id)
{
	Safety_Connected(id)
	
	if(!g_HamBot && is_user_bot(id))
	{
		g_HamBot = 1
		set_task(0.1, "Register_HamBot", id)
	}
}

public Register_HamBot(id) 
{
	Register_SafetyFuncBot(id)
	RegisterHamFromEntity(Ham_TraceAttack, id, "fw_TraceAttack")
}

public client_disconnected(id)
{
	Safety_Disconnected(id)
}

public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damage_type)
{
	if(!is_connected(attacker))
		return HAM_IGNORED
	if(Get_BitVar(g_DeadlyShoting, attacker))
		set_tr2(tracehandle, TR_iHitgroup, HIT_HEAD)

	return HAM_IGNORED
}

public zevo_round_new() g_GameStart = 0
public zevo_game_start() g_GameStart = 1

public zevo_user_spawn(id, Zombie)
{
	if(Zombie) return
	
	remove_task(id+TASK_STUN)
	remove_task(id+TASK_AUTOSKILL)
	
	// Sprint
	UnSet_BitVar(g_Sprinting, id)
	g_SprintPercent[id] = get_pcvar_num(g_Cvar_SprintPercent)
	
	// Deadly Shot
	Set_BitVar(g_CanDeadlyShot, id)
	UnSet_BitVar(g_DeadlyShoting, id)
	g_DeadlyShotTime[id] = get_pcvar_num(g_Cvar_DeadlyShotTime)
	
	// Stun
	Set_BitVar(g_CanStun, id)
	
	if(is_user_bot(id))
	{
		remove_task(id+TASK_AUTOSKILL)
		if(is_user_bot(id)) set_task(random_float(30.0, 60.0), "Bot_AutoSkill", id+TASK_AUTOSKILL)
	}
}

public Bot_AutoSkill(id)
{
	id -= TASK_AUTOSKILL
	
	if(!is_alive(id))
		return
	if(!is_user_bot(id))
	{
		remove_task(id+TASK_AUTOSKILL)
		return
	}
	if(zp_get_user_zombie(id))
		return
		
	if(Get_BitVar(g_CanDeadlyShot, id)) CMD_Spray(id)
	else if(Get_BitVar(g_CanStun, id)) CMD_Buy(id)
	
	if(is_user_bot(id)) set_task(random_float(10.0, 20.0), "Bot_AutoSkill", id+TASK_AUTOSKILL)
}

public zevo_become_zombie(id)
{
	remove_task(id+TASK_STUN)
	remove_task(id+TASK_AUTOSKILL)
	
	UnSet_BitVar(g_Sprinting, id)
	UnSet_BitVar(g_CanDeadlyShot, id)
	UnSet_BitVar(g_DeadlyShoting, id)
	UnSet_BitVar(g_CanStun, id)
	UnSet_BitVar(g_Stunning, id)
	
	set_hudmessage(0, 255, 0, -1.0, 0.10, 0, 0.25, 0.25)
	ShowSyncHudMsg(id, g_HumanHud, "")
	
	// SetFov(id)
}

public zevo_runningtime2(id, Time)
{
	if(!is_alive(id))
		return
	if(zp_get_user_zombie(id))
		return
	if(Get_BitVar(g_DeadlyShoting, id))
	{
		if(g_DeadlyShotTime[id] > 0) g_DeadlyShotTime[id]--
		else {
			g_DeadlyShotTime[id] = 0
			UnSet_BitVar(g_DeadlyShoting, id)
			
			if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id))
			{
				// Effect
				static g_MsgScreenFade;
				if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
				
				// Reset
				message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
				write_short(0) // duration
				write_short(0) // hold time
				write_short(0x0000) // fade type
				write_byte(0) // r
				write_byte(0) // g
				write_byte(0) // b
				write_byte(0) // alpha
				message_end()
			}
		}
	}
		
	Load_Hud(id, 2.0)
}

public Load_Hud(id, Float:Time)
{
	// Hud
	static Skill1[64], Skill2[64], Skill3[64]
	
	// Skill 1
	if(g_SprintPercent[id] >= 100) formatex(Skill1, 63, "  [W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id])
	else formatex(Skill1, 63, "[W] + [W] : %L (%i%%)", GAME_LANG, "HUMAN_SKILL_SPRINT", g_SprintPercent[id])
	
	// Skill 2
	if(Get_BitVar(g_DeadlyShoting, id)) formatex(Skill2, 63, "           [T] : %L (%i)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT", g_DeadlyShotTime[id])
	else {
		if(Get_BitVar(g_CanDeadlyShot, id)) formatex(Skill2, 63, "      [T] : %L", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT")
		else formatex(Skill2, 63, "           [T] : %L (X)", GAME_LANG, "HUMAN_SKILL_DEADLYSHOT")
	}
	
	// Skill 3
	if(Get_BitVar(g_CanStun, id)) formatex(Skill3, 63, "               [B] : %L", GAME_LANG, "HUMAN_SKILL_STUN")
	else formatex(Skill3, 63, "                    [B] : %L (X)", GAME_LANG, "HUMAN_SKILL_STUN")
	
	set_hudmessage(0, 255, 0, -1.0, 0.10, 0, Time, Time)
	ShowSyncHudMsg(id, g_HumanHud, "[Human Ability]^n^n%s^n%s^n%s", Skill1, Skill2, Skill3)
}

public client_PreThink(id)
{
	if(!is_alive(id))
		return
	if(zp_get_user_zombie(id))
		return
		
	static CurButton; CurButton = pev(id, pev_button)
	static OldButton; OldButton = pev(id, pev_oldbuttons)
	
	if((CurButton & IN_FORWARD)) 
	{
		if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 0.1 > CheckTime[id]))
		{
			if(g_SprintPercent[id] <= 0)
			{
				Deactivate_Sprint(id)
				return
			}
		
			g_SprintPercent[id]--
			Load_Hud(id, 0.2)
			
			CheckTime[id] = get_gametime()
		}	
		
		if(Get_BitVar(g_Sprinting, id) && (get_gametime() - 1.0 > CheckTime2[id]))
		{
			if(g_SprintPercent[id] <= 0)
				return
				
			//zevo_playerattachment(id, SprintSprite, 1.25, 0.25, 0.0)
			CheckTime2[id] = get_gametime()
		}
		
		if(OldButton & IN_FORWARD)
			return
		
		if(!task_exists(id+TASK_CHECKTIME))
		{
			g_PlayerKey[id][0] = 'w'
			
			remove_task(id+TASK_CHECKTIME)
			set_task(TIME_INTERVAL, "Recheck_Key", id+TASK_CHECKTIME)
		} else {
			g_PlayerKey[id][1] = 'w'
		}
	} else {
		if(OldButton & IN_FORWARD)
		{
			Deactivate_Sprint(id)
		}
		
		return
	}
	
	if(equali(g_PlayerKey[id], "ww"))
	{
		Reset_Key(id)
		Activate_Sprint(id)
	}
	
	return
}

public client_PostThink(id)
{
	if(!is_alive(id))
		return
	if(zp_get_user_zombie(id))
	{
		if(Get_BitVar(g_Stunning, id) && pev(id, pev_maxspeed) != 0.01)
			set_user_maxspeed(id, 0.01)
			
		return
	}
		
	dllfunc(DLLFunc_Touch, g_BuyZone, id)
}

public Recheck_Key(id)
{
	id -= TASK_CHECKTIME
	
	if(!is_user_connected(id))
		return
		
	Reset_Key(id)
}

public Reset_Key(id)
{
	g_PlayerKey[id][0] = 0
	g_PlayerKey[id][1] = 0
}

public Activate_Sprint(id)
{
	if(g_SprintPercent[id] <= 0)
		return
	if(!g_GameStart)
	{
		client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART")
		return
	}
	
	Set_BitVar(g_Sprinting, id)
	
	if(!zp_get_user_nightvision(id))
	{
		// Effect
		static g_MsgScreenFade;
		if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
		
		message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
		write_short(0) // duration
		write_short(0) // hold time
		write_short(0x0004) // fade type
		write_byte(255) // r
		write_byte(255) // g
		write_byte(255) // b
		write_byte(40) // alpha
		message_end()
	}
	
	SetFov(id, 105)
	
	// Set
	set_user_maxspeed(id, get_pcvar_float(g_Cvar_SprintSpeed))
	PlaySound(id, ActivateSound)
}

public Deactivate_Sprint(id)
{
	UnSet_BitVar(g_Sprinting, id)
	
	if(!zp_get_user_nightvision(id) && !Get_BitVar(g_Sprinting, id))
	{
		// Effect
		static g_MsgScreenFade;
		if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
		
		// Reset
		message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
		write_short(0) // duration
		write_short(0) // hold time
		write_short(0x0000) // fade type
		write_byte(0) // r
		write_byte(0) // g
		write_byte(0) // b
		write_byte(0) // alpha
		message_end()
	}
	
	SetFov(id)
	
	set_user_maxspeed(id,250.0)
	Load_Hud(id, 1.0)
}

public CMD_Spray(id)
{
	if(!is_alive(id))
		return
	if(zp_get_user_zombie(id))
		return
	if(!g_GameStart)
	{
		client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART")
		return
	}
	if(!Get_BitVar(g_CanDeadlyShot, id))
		return
		
	UnSet_BitVar(g_CanDeadlyShot, id)
	Set_BitVar(g_DeadlyShoting, id)
	
	// Effect
	//zevo_playerattachment(id, DeadlyShotSprite, float(g_DeadlyShotTime[id]), 0.25, 0.0)
	//zevo_playerattachment(id, DeadlyShot2Sprite, float(g_DeadlyShotTime[id]), 0.75, 15.0)
	
	if(!zp_get_user_nightvision(id))
	{
		// Effect
		static g_MsgScreenFade;
		if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
		
		message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
		write_short(0) // duration
		write_short(0) // hold time
		write_short(0x0004) // fade type
		write_byte(255) // r
		write_byte(255) // g
		write_byte(255) // b
		write_byte(40) // alpha
		message_end()
	}
	
	// Sound
	emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}

public client_command(id)
{
	if(!is_alive(id))
		return PLUGIN_CONTINUE

	static cmd_list[][] = { "buyequip", "autobuy", "cl_autobuy", "cl_rebuy" }
	static command[16], i; read_argv(0, command, 15)
	
	for(i = 0; i < sizeof cmd_list; i++) if(equal(command, cmd_list[i]))
	return PLUGIN_HANDLED
	
	if(equal(command, "client_buy_open") || equal(command, "buy"))
	{
		static msg_buyclose; if(!msg_buyclose) msg_buyclose = get_user_msgid("BuyClose")
		message_begin(MSG_ONE_UNRELIABLE, msg_buyclose, _, id), message_end()
		
		CMD_Buy(id)
		return PLUGIN_HANDLED
	}
	
	return PLUGIN_CONTINUE
}

public CMD_Buy(id)
{
	if(!is_alive(id))
		return
	if(zp_get_user_zombie(id))
		return
	if(!g_GameStart)
	{
		client_print(id, print_center, "%L", GAME_LANG, "NOTICE_GAMENOTSTART")
		return
	}
	if(!Get_BitVar(g_CanStun, id))
		return
		
	UnSet_BitVar(g_CanStun, id)

	// Effect
	if(!zp_get_user_nightvision(id))
	{
		// Effect
		static g_MsgScreenFade;
		if(!g_MsgScreenFade) g_MsgScreenFade = get_user_msgid("ScreenFade")
		
		message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, _, id)
		write_short(FixedUnsigned16(0.5, 1<<12)) // duration
		write_short(FixedUnsigned16(0.5, 1<<12)) // hold time
		write_short(0x0000) // fade type
		write_byte(255) // r
		write_byte(255) // g
		write_byte(255) // b
		write_byte(40) // alpha
		message_end()
	}
	
	static Float:Origin[3]; pev(id, pev_origin, Origin)
	
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
	write_byte(TE_EXPLOSION)
	engfunc(EngFunc_WriteCoord, Origin[0])
	engfunc(EngFunc_WriteCoord, Origin[1])
	engfunc(EngFunc_WriteCoord, Origin[2])
	write_short(g_Stun_EffectID)
	write_byte(20)
	write_byte(30)
	write_byte(14)
	message_end()
		
	engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin)
	write_byte(TE_BEAMCYLINDER)
	engfunc(EngFunc_WriteCoord, Origin[0])
	engfunc(EngFunc_WriteCoord, Origin[1])
	engfunc(EngFunc_WriteCoord, Origin[2])
	engfunc(EngFunc_WriteCoord, Origin[0])
	engfunc(EngFunc_WriteCoord, Origin[1])
	engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius))
	write_short(g_ShockWave_SprID)
	write_byte(0) // Start Frame
	write_byte(20) // Framerate
	write_byte(4) // Live Time
	write_byte(25) // Width
	write_byte(10) // Noise
	write_byte(0) // R
	write_byte(255) // G
	write_byte(255) // B
	write_byte(255) // Bright
	write_byte(9) // Speed
	message_end()	
	
	engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, Origin)
	write_byte(TE_BEAMCYLINDER)
	engfunc(EngFunc_WriteCoord, Origin[0])
	engfunc(EngFunc_WriteCoord, Origin[1])
	engfunc(EngFunc_WriteCoord, Origin[2])
	engfunc(EngFunc_WriteCoord, Origin[0])
	engfunc(EngFunc_WriteCoord, Origin[1])
	engfunc(EngFunc_WriteCoord, Origin[2] + get_pcvar_num(g_Cvar_StunRadius))
	write_short(g_ShockWave_SprID)
	write_byte(0) // Start Frame
	write_byte(10) // Framerate
	write_byte(4) // Live Time
	write_byte(20) // Width
	write_byte(20) // Noise
	write_byte(0) // R
	write_byte(255) // G
	write_byte(0) // B
	write_byte(150) // Bright
	write_byte(9) // Speed
	message_end()		
	
	// Find
	static Victim; Victim = -1
	while((Victim = find_ent_in_sphere(Victim, Origin, get_pcvar_float(g_Cvar_StunRadius))) != 0)
	{
		if(Victim == id)
			continue
		if(!is_alive(Victim))
			continue
		if(!zp_get_user_zombie(Victim))
			continue
			
		pev(Victim, pev_maxspeed, g_MySpeed[Victim])
		
		Set_BitVar(g_Stunning, Victim)
		set_user_maxspeed(Victim, 0.01)
			
		emit_sound(Victim, CHAN_ITEM, StunSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
		//zevo_playerattachment(Victim, StunSprite, get_pcvar_float(g_Cvar_StunTime), 1.0, 10.0)
			
		remove_task(Victim+TASK_STUN)
		set_task(get_pcvar_float(g_Cvar_StunTime), "Remove_Stun", Victim+TASK_STUN)
	}
	
	// Sound
	emit_sound(id, CHAN_ITEM, ActivateSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}

public Remove_Stun(id)
{
	id -= TASK_STUN
	
	if(!is_alive(id))
		return
	if(!zp_get_user_zombie(id))
		return
	if(!Get_BitVar(g_Stunning, id))
		return

	UnSet_BitVar(g_Stunning, id)
	
	set_pev(id, pev_maxspeed, g_MySpeed[id])
	remove_task(id+TASK_STUN)
}

/* ===============================
------------- SAFETY -------------
=================================*/
public Register_SafetyFunc()
{
	register_event("CurWeapon", "Safety_CurWeapon", "be", "1=1")
	
	RegisterHam(Ham_Spawn, "player", "fw_Safety_Spawn_Post", 1)
	RegisterHam(Ham_Killed, "player", "fw_Safety_Killed_Post", 1)
}

public Register_SafetyFuncBot(id)
{
	RegisterHamFromEntity(Ham_Spawn, id, "fw_Safety_Spawn_Post", 1)
	RegisterHamFromEntity(Ham_Killed, id, "fw_Safety_Killed_Post", 1)
}

public Safety_Connected(id)
{
	Set_BitVar(g_IsConnected, id)
	UnSet_BitVar(g_IsAlive, id)
	
	g_PlayerWeapon[id] = 0
}

public Safety_Disconnected(id)
{
	UnSet_BitVar(g_IsConnected, id)
	UnSet_BitVar(g_IsAlive, id)
	
	g_PlayerWeapon[id] = 0
}

public Safety_CurWeapon(id)
{
	if(!is_alive(id))
		return
		
	static CSW; CSW = read_data(2)
	if(g_PlayerWeapon[id] != CSW) g_PlayerWeapon[id] = CSW
}

public fw_Safety_Spawn_Post(id)
{
	if(!is_user_alive(id))
		return
		
	Set_BitVar(g_IsAlive, id)
}

public fw_Safety_Killed_Post(id)
{
	UnSet_BitVar(g_IsAlive, id)
}

public is_connected(id)
{
	if(!(1 <= id <= 32))
		return 0
	if(!Get_BitVar(g_IsConnected, id))
		return 0

	return 1
}

public is_alive(id)
{
	if(!is_connected(id))
		return 0
	if(!Get_BitVar(g_IsAlive, id))
		return 0
		
	return 1
}

public get_player_weapon(id)
{
	if(!is_alive(id))
		return 0
	
	return g_PlayerWeapon[id]
}

stock PlaySound(id, const sound[])
{
	if(equal(sound[strlen(sound)-4], ".mp3")) client_cmd(id, "mp3 play ^"sound/%s^"", sound)
	else client_cmd(id, "spk ^"%s^"", sound)
}

stock SetFov(id, num = 90)
{
	static g_MsgFov; 
	if(!g_MsgFov) g_MsgFov = get_user_msgid("SetFOV")
	
	message_begin(MSG_ONE_UNRELIABLE, g_MsgFov, {0,0,0}, id)
	write_byte(num)
	message_end()
}

stock FixedUnsigned16(Float:flValue, iScale)
{
	new iOutput;

	iOutput = floatround(flValue * iScale);

	if ( iOutput < 0 )
		iOutput = 0;

	if ( iOutput > 0xFFFF )
		iOutput = 0xFFFF;

	return iOutput;
}
Deneyiniz.

Link:
Linklerini gizle
Linki Kopyala
Cevapla