1. sayfa (Toplam 1 sayfa)

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Çrş May 19, 2021 11:14 pm
gönderen EmirGuler
Herkese Merhaba Ben Sunucuma ClusterGrenade Plugini Yüklemek İstiyorum Ama Panelde Yasaklı Kodlar Mevcuttur Diyor Yardımcı Olursanız Sevinirim :)

Kod: Tümünü seç


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

#define NAME			"[ZL] ClusterGrenade"
#define VERSION			"Public [1.0]"
#define AUTHOR			"Alexander.3"

#define TRAIL			// Âêëş÷èòü ïîääåğæêó õâîñòèêà îò îñêîëîê
#define SHOCKWAVE		// Âêëş÷èòü ïîääåğæêó îáğó÷à îò îñêîëîê
#define SCREENFADE		// Âêëş÷èòü ïîääåğæêó çàòåìíåíèÿ ıêğàíà
#define SCREENSHACKE		// Âêëş÷èòü ïîääåğæêó òğÿñêè ıêğàíà
#define RANDOM			// Âêëş÷èòü ïîääåğæêó ğàçíûõ öâåòîâ ( öâåòà áóäóò â ğàíäîìíîì ïîğÿäêå )

const cluster_num =		10	// Êîë-âî îñêîëîê
const Float:cluster_radius = 	200.0	// Ğàäèóñ ğàçëåòà îñêîëîê
const Float:cluster_dradius =	240.0	// Ğàäèóñ óğîíà îñêîëîê
const Float:cluster_damage =	100.0	// Óğîí íàíîñèìûé îò îñêîëîê

new const cluster_models[] =	"models/w_hegrenade.mdl"	// Ìîäåëü îñêîëîê
new const cluster_sprite[] =	"sprites/dexplo.spr"		// Ñïğàéò âçğûâà îñêîëîê

// Íàñòğîéêà ñëåäà îò ãğàíàòû
#if defined TRAIL
new g_Trail
new const cluster_trail[] =	"sprites/laserbeam.spr"		// Ñïğàéò ïîëîñîêè îò îñêîëîê
new cluster_trail_red =		255	// Êğàñíûé
new cluster_trail_green =	0	// Çåëåíûé
new cluster_trail_blue =	50	// Ñèíèé
#endif

// Íàñòğîéêà îáğó÷à
#if defined SHOCKWAVE
new g_sw
new const cluster_sw[] =		"sprites/shockwave.spr"		// Ñïğàéò-îáğó÷ îò îñêîëîê
new cluster_sw_red =		255	// Êğàñíûé
new cluster_sw_green =		0	// Çåëåíûé
new cluster_sw_blue =		50	// Ñèíèé
#endif

// ÍÀñòğîéêà çàòåìíåíèÿ ıêğàíà
#if defined SCREENFADE
new cluster_sf_red =		255	// Êğàñíûé
new cluster_sf_green =		0	// Ñèíèé
new cluster_sf_blue =		50 	// Çåëåíûé
#endif

new g_Exlplosion

public plugin_init() {
	register_plugin(NAME, VERSION, AUTHOR)
	
	RegisterHam(Ham_Think, "grenade", "Hook_Grenade", 1)	// Ğåãèñòğèğóåì ñèíê äëÿ ãğàíàò
	
	register_touch("cluster_bomb", "*", "Hook_Touch")	// Ëîâèì ïğèêîñíîâåíèå ãğàíàòû
}

public Hook_Grenade( Ent ) {
	if (!pev_valid( Ent ))	// Ïğîâåğêà íà âàëèäíîñòü
		return HAM_IGNORED
	
	static Float:dmgtime
	
	pev(Ent, pev_dmgtime, dmgtime)	// Ïîëó÷àåì âğåìÿ âçğûâà ãğàíàòû
	
	if (dmgtime > get_gametime())	// Ëîâèì ìîìåíò âçğûâà ãğàíàòû
		return HAM_IGNORED
	
	new szModels[32]
	pev(Ent, pev_model, szModels, charsmax(szModels))	// Ïîëó÷àåì ìîäåëü
	
	if (!equal(szModels, "models/w_hegrenade.mdl"))		// Ïğîâåğêà íà he_ ãğàíàòó
		return HAM_IGNORED
	
	new Float:b_origin[3]
	pev(Ent, pev_origin, b_origin)	// Ïîëó÷àåì êîîğäèíàòû ãğàíàòû
	
	for (new i; i < cluster_num; i++) {
		#if defined RANDOM
		cluster_effect()
		#endif
		
		new bomb			
		bomb = create_entity("info_target")		// Ñîçäàåì ıíòèòè
		engfunc(EngFunc_SetOrigin, bomb, b_origin)	// Óñòàíàâëèâàåì êîîğäèíàòû äëÿ ñîçäàííîé ıíòèòè
		engfunc(EngFunc_SetModel, bomb, cluster_models)	// Óñòàíàâëèâàåì ìîäåëüêó
		set_pev(bomb, pev_solid, SOLID_TRIGGER)		// Ñîëèäíîñòü ñòàâèì íà TRGGGER, ÷òî áû íå âçğûâàëèñü ğàíüøå íóæíîãî âğåìåíè
		set_pev(bomb, pev_classname, "cluster_bomb")	// Óñòàíàâëèâàåì ClassName äëÿ ïğîâåğêè â Touch ıâåíòå
		set_pev(bomb, pev_movetype, MOVETYPE_TOSS)	// Óñòàíàâëèâàåì MOVETYPE_TOSS
		set_pev(bomb, pev_owner, pev(Ent, pev_owner))	// Óñòàíàâëèâàåì èíäåêñ èãğîêà äëÿ ıíòèòè
		
		// Ğàáîòà ñ ğàçáğîñîì, áóäåò ğàíäîìíàÿ â ïğåäåëå ëèìèòà.
		new Float:velocity[3]
		velocity[0] = random_float(-(cluster_radius), cluster_radius)	
		velocity[1] = random_float(-(cluster_radius), cluster_radius)
		velocity[2] = cluster_radius + 185.0 // 185 - ñìåùåíèå
		
		set_pev(bomb, pev_velocity, velocity)	// Óñòàíàâëèâàåì ñèëó ğàçëåòà îñêîëîê
		
		#if defined TRAIL
		message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
		write_byte(TE_BEAMFOLLOW)
		write_short(bomb)
		write_short(g_Trail)
		write_byte(13)
		write_byte(5)
		write_byte(cluster_trail_red)
		write_byte(cluster_trail_green)
		write_byte(cluster_trail_blue)
		write_byte(255)
		message_end()
		#endif
	}
	set_pev(Ent, pev_flags, FL_KILLME)	// Óäàëÿåì ñòàíäàğòíóş áîìáó
	return HAM_HANDLED
}

public Hook_Touch(grenade, went) {
	if (!pev_valid( grenade ))	// Ïğîâåğêà íà âàëèäíîñòü
		return
	
	new szWEnt[32]
	pev(went, pev_classname, szWEnt, charsmax(szWEnt))	// Ïîëó÷àåì ClassName íàøåãî îñêîëêà
	
	if (equal(szWEnt, "cluster_bomb"))	// Ïğîâåğêà ıíòèòè íà îñêîëêè
		return
	
	new Float:origin[3]	// Êîîğäèíàòû îñêîëîê
	new victim = -1		// Èãğîêè êîòîğûå ïîïàäóò â ğàäèóñ
	
	pev(grenade, pev_origin, origin)	// Ïîëó÷àåì êîîğäèíàòû ãğàíàòû
	
	while((victim = engfunc(EngFunc_FindEntityInSphere, victim, origin, cluster_dradius))) {
		if (!is_user_alive( victim ))	// Ïğîâåğêà íà âàëèäíîñòü
			continue
			
		if (get_user_team(victim) == get_user_team(pev(grenade, pev_owner)))	// Ïğîâåğêà íà êîìàíäó, ÷òî áû íå íàíîñèëî óğîí ÷ëåíàì ïî êîìàíäå
			continue
	
		ExecuteHamB(Ham_TakeDamage, victim, 0, grenade, cluster_damage, (1<<24))	// Íàíîñèì óğîí èãğîêàì êîòîğûå ïîïàëè â ğàäèóñ äåéñòâèÿ âçğûâà
		
		// Áîëåâàÿ èêîíêà
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("Damage"), {0,0,0}, victim)
		write_byte(0)
		write_byte(100)
		write_long(1<<1)
		engfunc(EngFunc_WriteCoord, origin[0])
		engfunc(EngFunc_WriteCoord, origin[1])
		engfunc(EngFunc_WriteCoord, origin[2])
		message_end()
		
		#if defined SCREENFADE
		ZL_ScreenFade(victim, 2, 1, cluster_sf_red, cluster_sf_green, cluster_sf_blue, 130, 1) // Îêğàñêà ıêğàíà
		#endif
		
		// Òğÿñêà ıêğàíà
		#if defined SCREENSHACKE		
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenShake"), {0,0,0}, victim)
		write_short(1<<14)
		write_short((1<<12) * 8)
		write_short((2<<12) * 7)
		message_end()
		#endif
	}
	
	// Âîëíà îò îñêîëîê
	#if defined SHOCKWAVE
	engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	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] + cluster_dradius)
	write_short(g_sw)
	write_byte(0)
	write_byte(0)
	write_byte(4)
	write_byte(20)
	write_byte(0)
	write_byte(cluster_sw_red)
	write_byte(cluster_sw_green)
	write_byte(cluster_sw_blue)
	write_byte(255)
	write_byte(0)
	message_end()
	#endif
	
	// İìóëèğóåì âçğûâ
	engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	write_byte(TE_EXPLOSION)
	engfunc(EngFunc_WriteCoord, origin[0])
	engfunc(EngFunc_WriteCoord, origin[1])
	engfunc(EngFunc_WriteCoord, origin[2] + 25.0)
	write_short(g_Exlplosion)
	write_byte(20)
	write_byte(10)
	write_byte(0)
	message_end()
	
	// Óäàëÿåì îñêîëîê
	engfunc(EngFunc_RemoveEntity, grenade)
}

// Çàãğóæàåì ğåñóğñû
public plugin_precache() {
	g_Exlplosion = precache_model(cluster_sprite)
	#if defined TRAIL
	g_Trail = precache_model(cluster_trail)
	#endif
	#if defined SHOCKWAVE
	g_sw = precache_model(cluster_sw)
	#endif
}

#if defined RANDOM
cluster_effect() {
	#if defined TRAIL
	cluster_trail_red = random(255)
	cluster_trail_green = random(255)
	cluster_trail_blue = random(255)
	#endif
	
	#if defined SHOCKWAVE
	cluster_sw_red = random(255)
	cluster_sw_green = random(255)
	cluster_sw_blue = random(255)
	#endif
	
	#if defined SCREENFADE
	cluster_sf_red = random(255)
	cluster_sf_green = random(255)
	cluster_sf_blue = random(255)
	#endif
}
#endif

stock ZL_ScreenFade(id, Timer, FadeTime, red, green, blue, Alpha, type) {
	if(id) if(!is_user_connected(id)) return

	if (Timer > 0xFFFF) Timer = 0xFFFF
	if (FadeTime <= 0) FadeTime = 4
	
	message_begin(id ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, get_user_msgid("ScreenFade"), _, id);
	write_short(Timer * 1 << 12)
	write_short(FadeTime * 1 << 12)
	switch (type) {
		case 1: write_short(0x0000)		// IN ( FFADE_IN )
		case 2: write_short(0x0001)		// OUT ( FFADE_OUT )
		case 3: write_short(0x0002)		// MODULATE ( FFADE_MODULATE )
		case 4: write_short(0x0004)		// STAYOUT ( FFADE_STAYOUT )
		default: write_short(0x0001)
	}
	write_byte(red)
	write_byte(green)
	write_byte(blue)
	write_byte(Alpha)
	message_end()
}

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Çrş May 19, 2021 11:46 pm
gönderen bestcore
Yasaklı kodları kontrol etmek için şu uzantıyı inceleyebilirsiniz,
viewtopic.php?p=236018#p236018

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Çrş May 19, 2021 11:53 pm
gönderen EmirGuler
bestcore yazdı: Çrş May 19, 2021 11:46 pm Yasaklı kodları kontrol etmek için şu uzantıyı inceleyebilirsiniz,
viewtopic.php?p=236018#p236018
106 velocity[2] = cluster_radius + 185.0 // 185 burda hata alıyorum nasıl düzeltirim acaba ?

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Cum May 21, 2021 12:55 pm
gönderen EmirGuler
+GÜNCEL

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Pzr May 23, 2021 11:32 am
gönderen EmirGuler
+Güncel

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Pzt May 24, 2021 10:49 pm
gönderen EmirGuler
+Güncelll

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Çrş May 26, 2021 9:30 pm
gönderen EmirGuler
+Güncel Bi Yardım Edin Artık.

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Çrş May 26, 2021 10:34 pm
gönderen Xau
EmirGuler yazdı: Çrş May 26, 2021 9:30 pm +Güncel Bi Yardım Edin Artık.

Kod: Tümünü seç

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

#define NAME			"[ZL] ClusterGrenade"
#define VERSION			"Public [1.0]"
#define AUTHOR			"Alexander.3"

#define TRAIL			// Âêëş÷èòü ïîääåğæêó õâîñòèêà îò îñêîëîê
#define SHOCKWAVE		// Âêëş÷èòü ïîääåğæêó îáğó÷à îò îñêîëîê
#define SCREENFADE		// Âêëş÷èòü ïîääåğæêó çàòåìíåíèÿ ıêğàíà
#define SCREENSHACKE		// Âêëş÷èòü ïîääåğæêó òğÿñêè ıêğàíà
#define RANDOM			// Âêëş÷èòü ïîääåğæêó ğàçíûõ öâåòîâ ( öâåòà áóäóò â ğàíäîìíîì ïîğÿäêå )

const cluster_num =		10	// Êîë-âî îñêîëîê
const Float:cluster_radius = 	200.0	// Ğàäèóñ ğàçëåòà îñêîëîê
const Float:cluster_dradius =	240.0	// Ğàäèóñ óğîíà îñêîëîê
const Float:cluster_damage =	100.0	// Óğîí íàíîñèìûé îò îñêîëîê

new const cluster_models[] =	"models/w_hegrenade.mdl"	// Ìîäåëü îñêîëîê
new const cluster_sprite[] =	"sprites/dexplo.spr"		// Ñïğàéò âçğûâà îñêîëîê

// Íàñòğîéêà ñëåäà îò ãğàíàòû
#if defined TRAIL
new g_Trail
new const cluster_trail[] =	"sprites/laserbeam.spr"		// Ñïğàéò ïîëîñîêè îò îñêîëîê
new cluster_trail_red =		255	// Êğàñíûé
new cluster_trail_green =	0	// Çåëåíûé
new cluster_trail_blue =	50	// Ñèíèé
#endif

// Íàñòğîéêà îáğó÷à
#if defined SHOCKWAVE
new g_sw
new const cluster_sw[] =		"sprites/shockwave.spr"		// Ñïğàéò-îáğó÷ îò îñêîëîê
new cluster_sw_red =		255	// Êğàñíûé
new cluster_sw_green =		0	// Çåëåíûé
new cluster_sw_blue =		50	// Ñèíèé
#endif

// ÍÀñòğîéêà çàòåìíåíèÿ ıêğàíà
#if defined SCREENFADE
new cluster_sf_red =		255	// Êğàñíûé
new cluster_sf_green =		0	// Ñèíèé
new cluster_sf_blue =		50 	// Çåëåíûé
#endif

new g_Exlplosion

public plugin_init() {
	register_plugin(NAME, VERSION, AUTHOR)
	
	RegisterHam(Ham_Think, "grenade", "Hook_Grenade", 1)	// Ğåãèñòğèğóåì ñèíê äëÿ ãğàíàò
	
	register_touch("cluster_bomb", "*", "Hook_Touch")	// Ëîâèì ïğèêîñíîâåíèå ãğàíàòû
}

public Hook_Grenade( Ent ) {
	if (!pev_valid( Ent ))	// Ïğîâåğêà íà âàëèäíîñòü
		return HAM_IGNORED
	
	static Float:dmgtime
	
	pev(Ent, pev_dmgtime, dmgtime)	// Ïîëó÷àåì âğåìÿ âçğûâà ãğàíàòû
	
	if (dmgtime > get_gametime())	// Ëîâèì ìîìåíò âçğûâà ãğàíàòû
		return HAM_IGNORED
	
	new szModels[32]
	pev(Ent, pev_model, szModels, charsmax(szModels))	// Ïîëó÷àåì ìîäåëü
	
	if (!equal(szModels, "models/w_hegrenade.mdl"))		// Ïğîâåğêà íà he_ ãğàíàòó
		return HAM_IGNORED
	
	new Float:b_origin[3]
	pev(Ent, pev_origin, b_origin)	// Ïîëó÷àåì êîîğäèíàòû ãğàíàòû
	
	for (new i; i < cluster_num; i++) {
		#if defined RANDOM
		cluster_effect()
		#endif
		
		new bomb			
		bomb = create_entity("info_target")		// Ñîçäàåì ıíòèòè
		engfunc(EngFunc_SetOrigin, bomb, b_origin)	// Óñòàíàâëèâàåì êîîğäèíàòû äëÿ ñîçäàííîé ıíòèòè
		engfunc(EngFunc_SetModel, bomb, cluster_models)	// Óñòàíàâëèâàåì ìîäåëüêó
		set_pev(bomb, pev_solid, SOLID_TRIGGER)		// Ñîëèäíîñòü ñòàâèì íà TRGGGER, ÷òî áû íå âçğûâàëèñü ğàíüøå íóæíîãî âğåìåíè
		set_pev(bomb, pev_classname, "cluster_bomb")	// Óñòàíàâëèâàåì ClassName äëÿ ïğîâåğêè â Touch ıâåíòå
		set_pev(bomb, pev_movetype, MOVETYPE_TOSS)	// Óñòàíàâëèâàåì MOVETYPE_TOSS
		set_pev(bomb, pev_owner, pev(Ent, pev_owner))	// Óñòàíàâëèâàåì èíäåêñ èãğîêà äëÿ ıíòèòè
		
		// Ğàáîòà ñ ğàçáğîñîì, áóäåò ğàíäîìíàÿ â ïğåäåëå ëèìèòà.
		new Float:velocity[3]
		velocity[0] = random_float(-(cluster_radius), cluster_radius)	
		velocity[1] = random_float(-(cluster_radius), cluster_radius)
		velocity[2] = cluster_radius + 185 // 185 - ñìåùåíèå
		
		set_pev(bomb, pev_velocity, velocity)	// Óñòàíàâëèâàåì ñèëó ğàçëåòà îñêîëîê
		
		#if defined TRAIL
		message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
		write_byte(TE_BEAMFOLLOW)
		write_short(bomb)
		write_short(g_Trail)
		write_byte(13)
		write_byte(5)
		write_byte(cluster_trail_red)
		write_byte(cluster_trail_green)
		write_byte(cluster_trail_blue)
		write_byte(255)
		message_end()
		#endif
	}
	set_pev(Ent, pev_flags, FL_KILLME)	// Óäàëÿåì ñòàíäàğòíóş áîìáó
	return HAM_HANDLED
}

public Hook_Touch(grenade, went) {
	if (!pev_valid( grenade ))	// Ïğîâåğêà íà âàëèäíîñòü
		return
	
	new szWEnt[32]
	pev(went, pev_classname, szWEnt, charsmax(szWEnt))	// Ïîëó÷àåì ClassName íàøåãî îñêîëêà
	
	if (equal(szWEnt, "cluster_bomb"))	// Ïğîâåğêà ıíòèòè íà îñêîëêè
		return
	
	new Float:origin[3]	// Êîîğäèíàòû îñêîëîê
	new victim = -1		// Èãğîêè êîòîğûå ïîïàäóò â ğàäèóñ
	
	pev(grenade, pev_origin, origin)	// Ïîëó÷àåì êîîğäèíàòû ãğàíàòû
	
	while((victim = engfunc(EngFunc_FindEntityInSphere, victim, origin, cluster_dradius))) {
		if (!is_user_alive( victim ))	// Ïğîâåğêà íà âàëèäíîñòü
			continue
			
		if (get_user_team(victim) == get_user_team(pev(grenade, pev_owner)))	// Ïğîâåğêà íà êîìàíäó, ÷òî áû íå íàíîñèëî óğîí ÷ëåíàì ïî êîìàíäå
			continue
	
		ExecuteHamB(Ham_TakeDamage, victim, 0, grenade, cluster_damage, (1<<24))	// Íàíîñèì óğîí èãğîêàì êîòîğûå ïîïàëè â ğàäèóñ äåéñòâèÿ âçğûâà
		
		// Áîëåâàÿ èêîíêà
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("Damage"), {0,0,0}, victim)
		write_byte(0)
		write_byte(100)
		write_long(1<<1)
		engfunc(EngFunc_WriteCoord, origin[0])
		engfunc(EngFunc_WriteCoord, origin[1])
		engfunc(EngFunc_WriteCoord, origin[2])
		message_end()
		
		#if defined SCREENFADE
		ZL_ScreenFade(victim, 2, 1, cluster_sf_red, cluster_sf_green, cluster_sf_blue, 130, 1) // Îêğàñêà ıêğàíà
		#endif
		
		// Òğÿñêà ıêğàíà
		#if defined SCREENSHACKE		
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenShake"), {0,0,0}, victim)
		write_short(1<<14)
		write_short((1<<12) * 8)
		write_short((2<<12) * 7)
		message_end()
		#endif
	}
	
	// Âîëíà îò îñêîëîê
	#if defined SHOCKWAVE
	engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	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] + cluster_dradius)
	write_short(g_sw)
	write_byte(0)
	write_byte(0)
	write_byte(4)
	write_byte(20)
	write_byte(0)
	write_byte(cluster_sw_red)
	write_byte(cluster_sw_green)
	write_byte(cluster_sw_blue)
	write_byte(255)
	write_byte(0)
	message_end()
	#endif
	
	// İìóëèğóåì âçğûâ
	engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	write_byte(TE_EXPLOSION)
	engfunc(EngFunc_WriteCoord, origin[0])
	engfunc(EngFunc_WriteCoord, origin[1])
	engfunc(EngFunc_WriteCoord, origin[2] + 25.0)
	write_short(g_Exlplosion)
	write_byte(20)
	write_byte(10)
	write_byte(0)
	message_end()
	
	// Óäàëÿåì îñêîëîê
	engfunc(EngFunc_RemoveEntity, grenade)
}

// Çàãğóæàåì ğåñóğñû
public plugin_precache() {
	g_Exlplosion = precache_model(cluster_sprite)
	#if defined TRAIL
	g_Trail = precache_model(cluster_trail)
	#endif
	#if defined SHOCKWAVE
	g_sw = precache_model(cluster_sw)
	#endif
}

#if defined RANDOM
cluster_effect() {
	#if defined TRAIL
	cluster_trail_red = random(255)
	cluster_trail_green = random(255)
	cluster_trail_blue = random(255)
	#endif
	
	#if defined SHOCKWAVE
	cluster_sw_red = random(255)
	cluster_sw_green = random(255)
	cluster_sw_blue = random(255)
	#endif
	
	#if defined SCREENFADE
	cluster_sf_red = random(255)
	cluster_sf_green = random(255)
	cluster_sf_blue = random(255)
	#endif
}
#endif

stock ZL_ScreenFade(id, Timer, FadeTime, red, green, blue, Alpha, type) {
	if(id) if(!is_user_connected(id)) return

	if (Timer > 0xFFFF) Timer = 0xFFFF
	if (FadeTime <= 0) FadeTime = 4
	
	message_begin(id ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, get_user_msgid("ScreenFade"), _, id);
	write_short(Timer * 1 << 12)
	write_short(FadeTime * 1 << 12)
	switch (type) {
		case 1: write_short(0x0000)		// IN ( FFADE_IN )
		case 2: write_short(0x0001)		// OUT ( FFADE_OUT )
		case 3: write_short(0x0002)		// MODULATE ( FFADE_MODULATE )
		case 4: write_short(0x0004)		// STAYOUT ( FFADE_STAYOUT )
		default: write_short(0x0001)
	}
	write_byte(red)
	write_byte(green)
	write_byte(blue)
	write_byte(Alpha)
	message_end()
}
Denermisin

ClusterGrenade Derlenmiyor

Gönderilme zamanı: Sal Haz 01, 2021 12:36 am
gönderen EmirGuler
Xau yazdı: Çrş May 26, 2021 10:34 pm
EmirGuler yazdı: Çrş May 26, 2021 9:30 pm +Güncel Bi Yardım Edin Artık.

Kod: Tümünü seç

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

#define NAME			"[ZL] ClusterGrenade"
#define VERSION			"Public [1.0]"
#define AUTHOR			"Alexander.3"

#define TRAIL			// Âêëş÷èòü ïîääåğæêó õâîñòèêà îò îñêîëîê
#define SHOCKWAVE		// Âêëş÷èòü ïîääåğæêó îáğó÷à îò îñêîëîê
#define SCREENFADE		// Âêëş÷èòü ïîääåğæêó çàòåìíåíèÿ ıêğàíà
#define SCREENSHACKE		// Âêëş÷èòü ïîääåğæêó òğÿñêè ıêğàíà
#define RANDOM			// Âêëş÷èòü ïîääåğæêó ğàçíûõ öâåòîâ ( öâåòà áóäóò â ğàíäîìíîì ïîğÿäêå )

const cluster_num =		10	// Êîë-âî îñêîëîê
const Float:cluster_radius = 	200.0	// Ğàäèóñ ğàçëåòà îñêîëîê
const Float:cluster_dradius =	240.0	// Ğàäèóñ óğîíà îñêîëîê
const Float:cluster_damage =	100.0	// Óğîí íàíîñèìûé îò îñêîëîê

new const cluster_models[] =	"models/w_hegrenade.mdl"	// Ìîäåëü îñêîëîê
new const cluster_sprite[] =	"sprites/dexplo.spr"		// Ñïğàéò âçğûâà îñêîëîê

// Íàñòğîéêà ñëåäà îò ãğàíàòû
#if defined TRAIL
new g_Trail
new const cluster_trail[] =	"sprites/laserbeam.spr"		// Ñïğàéò ïîëîñîêè îò îñêîëîê
new cluster_trail_red =		255	// Êğàñíûé
new cluster_trail_green =	0	// Çåëåíûé
new cluster_trail_blue =	50	// Ñèíèé
#endif

// Íàñòğîéêà îáğó÷à
#if defined SHOCKWAVE
new g_sw
new const cluster_sw[] =		"sprites/shockwave.spr"		// Ñïğàéò-îáğó÷ îò îñêîëîê
new cluster_sw_red =		255	// Êğàñíûé
new cluster_sw_green =		0	// Çåëåíûé
new cluster_sw_blue =		50	// Ñèíèé
#endif

// ÍÀñòğîéêà çàòåìíåíèÿ ıêğàíà
#if defined SCREENFADE
new cluster_sf_red =		255	// Êğàñíûé
new cluster_sf_green =		0	// Ñèíèé
new cluster_sf_blue =		50 	// Çåëåíûé
#endif

new g_Exlplosion

public plugin_init() {
	register_plugin(NAME, VERSION, AUTHOR)
	
	RegisterHam(Ham_Think, "grenade", "Hook_Grenade", 1)	// Ğåãèñòğèğóåì ñèíê äëÿ ãğàíàò
	
	register_touch("cluster_bomb", "*", "Hook_Touch")	// Ëîâèì ïğèêîñíîâåíèå ãğàíàòû
}

public Hook_Grenade( Ent ) {
	if (!pev_valid( Ent ))	// Ïğîâåğêà íà âàëèäíîñòü
		return HAM_IGNORED
	
	static Float:dmgtime
	
	pev(Ent, pev_dmgtime, dmgtime)	// Ïîëó÷àåì âğåìÿ âçğûâà ãğàíàòû
	
	if (dmgtime > get_gametime())	// Ëîâèì ìîìåíò âçğûâà ãğàíàòû
		return HAM_IGNORED
	
	new szModels[32]
	pev(Ent, pev_model, szModels, charsmax(szModels))	// Ïîëó÷àåì ìîäåëü
	
	if (!equal(szModels, "models/w_hegrenade.mdl"))		// Ïğîâåğêà íà he_ ãğàíàòó
		return HAM_IGNORED
	
	new Float:b_origin[3]
	pev(Ent, pev_origin, b_origin)	// Ïîëó÷àåì êîîğäèíàòû ãğàíàòû
	
	for (new i; i < cluster_num; i++) {
		#if defined RANDOM
		cluster_effect()
		#endif
		
		new bomb			
		bomb = create_entity("info_target")		// Ñîçäàåì ıíòèòè
		engfunc(EngFunc_SetOrigin, bomb, b_origin)	// Óñòàíàâëèâàåì êîîğäèíàòû äëÿ ñîçäàííîé ıíòèòè
		engfunc(EngFunc_SetModel, bomb, cluster_models)	// Óñòàíàâëèâàåì ìîäåëüêó
		set_pev(bomb, pev_solid, SOLID_TRIGGER)		// Ñîëèäíîñòü ñòàâèì íà TRGGGER, ÷òî áû íå âçğûâàëèñü ğàíüøå íóæíîãî âğåìåíè
		set_pev(bomb, pev_classname, "cluster_bomb")	// Óñòàíàâëèâàåì ClassName äëÿ ïğîâåğêè â Touch ıâåíòå
		set_pev(bomb, pev_movetype, MOVETYPE_TOSS)	// Óñòàíàâëèâàåì MOVETYPE_TOSS
		set_pev(bomb, pev_owner, pev(Ent, pev_owner))	// Óñòàíàâëèâàåì èíäåêñ èãğîêà äëÿ ıíòèòè
		
		// Ğàáîòà ñ ğàçáğîñîì, áóäåò ğàíäîìíàÿ â ïğåäåëå ëèìèòà.
		new Float:velocity[3]
		velocity[0] = random_float(-(cluster_radius), cluster_radius)	
		velocity[1] = random_float(-(cluster_radius), cluster_radius)
		velocity[2] = cluster_radius + 185 // 185 - ñìåùåíèå
		
		set_pev(bomb, pev_velocity, velocity)	// Óñòàíàâëèâàåì ñèëó ğàçëåòà îñêîëîê
		
		#if defined TRAIL
		message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
		write_byte(TE_BEAMFOLLOW)
		write_short(bomb)
		write_short(g_Trail)
		write_byte(13)
		write_byte(5)
		write_byte(cluster_trail_red)
		write_byte(cluster_trail_green)
		write_byte(cluster_trail_blue)
		write_byte(255)
		message_end()
		#endif
	}
	set_pev(Ent, pev_flags, FL_KILLME)	// Óäàëÿåì ñòàíäàğòíóş áîìáó
	return HAM_HANDLED
}

public Hook_Touch(grenade, went) {
	if (!pev_valid( grenade ))	// Ïğîâåğêà íà âàëèäíîñòü
		return
	
	new szWEnt[32]
	pev(went, pev_classname, szWEnt, charsmax(szWEnt))	// Ïîëó÷àåì ClassName íàøåãî îñêîëêà
	
	if (equal(szWEnt, "cluster_bomb"))	// Ïğîâåğêà ıíòèòè íà îñêîëêè
		return
	
	new Float:origin[3]	// Êîîğäèíàòû îñêîëîê
	new victim = -1		// Èãğîêè êîòîğûå ïîïàäóò â ğàäèóñ
	
	pev(grenade, pev_origin, origin)	// Ïîëó÷àåì êîîğäèíàòû ãğàíàòû
	
	while((victim = engfunc(EngFunc_FindEntityInSphere, victim, origin, cluster_dradius))) {
		if (!is_user_alive( victim ))	// Ïğîâåğêà íà âàëèäíîñòü
			continue
			
		if (get_user_team(victim) == get_user_team(pev(grenade, pev_owner)))	// Ïğîâåğêà íà êîìàíäó, ÷òî áû íå íàíîñèëî óğîí ÷ëåíàì ïî êîìàíäå
			continue
	
		ExecuteHamB(Ham_TakeDamage, victim, 0, grenade, cluster_damage, (1<<24))	// Íàíîñèì óğîí èãğîêàì êîòîğûå ïîïàëè â ğàäèóñ äåéñòâèÿ âçğûâà
		
		// Áîëåâàÿ èêîíêà
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("Damage"), {0,0,0}, victim)
		write_byte(0)
		write_byte(100)
		write_long(1<<1)
		engfunc(EngFunc_WriteCoord, origin[0])
		engfunc(EngFunc_WriteCoord, origin[1])
		engfunc(EngFunc_WriteCoord, origin[2])
		message_end()
		
		#if defined SCREENFADE
		ZL_ScreenFade(victim, 2, 1, cluster_sf_red, cluster_sf_green, cluster_sf_blue, 130, 1) // Îêğàñêà ıêğàíà
		#endif
		
		// Òğÿñêà ıêğàíà
		#if defined SCREENSHACKE		
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenShake"), {0,0,0}, victim)
		write_short(1<<14)
		write_short((1<<12) * 8)
		write_short((2<<12) * 7)
		message_end()
		#endif
	}
	
	// Âîëíà îò îñêîëîê
	#if defined SHOCKWAVE
	engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	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] + cluster_dradius)
	write_short(g_sw)
	write_byte(0)
	write_byte(0)
	write_byte(4)
	write_byte(20)
	write_byte(0)
	write_byte(cluster_sw_red)
	write_byte(cluster_sw_green)
	write_byte(cluster_sw_blue)
	write_byte(255)
	write_byte(0)
	message_end()
	#endif
	
	// İìóëèğóåì âçğûâ
	engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0)
	write_byte(TE_EXPLOSION)
	engfunc(EngFunc_WriteCoord, origin[0])
	engfunc(EngFunc_WriteCoord, origin[1])
	engfunc(EngFunc_WriteCoord, origin[2] + 25.0)
	write_short(g_Exlplosion)
	write_byte(20)
	write_byte(10)
	write_byte(0)
	message_end()
	
	// Óäàëÿåì îñêîëîê
	engfunc(EngFunc_RemoveEntity, grenade)
}

// Çàãğóæàåì ğåñóğñû
public plugin_precache() {
	g_Exlplosion = precache_model(cluster_sprite)
	#if defined TRAIL
	g_Trail = precache_model(cluster_trail)
	#endif
	#if defined SHOCKWAVE
	g_sw = precache_model(cluster_sw)
	#endif
}

#if defined RANDOM
cluster_effect() {
	#if defined TRAIL
	cluster_trail_red = random(255)
	cluster_trail_green = random(255)
	cluster_trail_blue = random(255)
	#endif
	
	#if defined SHOCKWAVE
	cluster_sw_red = random(255)
	cluster_sw_green = random(255)
	cluster_sw_blue = random(255)
	#endif
	
	#if defined SCREENFADE
	cluster_sf_red = random(255)
	cluster_sf_green = random(255)
	cluster_sf_blue = random(255)
	#endif
}
#endif

stock ZL_ScreenFade(id, Timer, FadeTime, red, green, blue, Alpha, type) {
	if(id) if(!is_user_connected(id)) return

	if (Timer > 0xFFFF) Timer = 0xFFFF
	if (FadeTime <= 0) FadeTime = 4
	
	message_begin(id ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, get_user_msgid("ScreenFade"), _, id);
	write_short(Timer * 1 << 12)
	write_short(FadeTime * 1 << 12)
	switch (type) {
		case 1: write_short(0x0000)		// IN ( FFADE_IN )
		case 2: write_short(0x0001)		// OUT ( FFADE_OUT )
		case 3: write_short(0x0002)		// MODULATE ( FFADE_MODULATE )
		case 4: write_short(0x0004)		// STAYOUT ( FFADE_STAYOUT )
		default: write_short(0x0001)
	}
	write_byte(red)
	write_byte(green)
	write_byte(blue)
	write_byte(Alpha)
	message_end()
}
Denermisin
derliyor ama aktif etmiyor plugini bu csdurağından kaynaklı Ömer Bey Bakarmısınız ?