Death Sprite Effect v1.5 [ Like CSO ]

Pluginuri pentru modul AmxModX.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

User avatar
Jorj
Fost moderator
Fost moderator
Posts: 3494
Joined: 13 Aug 2013, 18:10
Detinator Steam: Da
Detinator server CS: Furien.LsZ.Ro
SteamID: clic_lsz
Reputatie: Fost eXtream Mod
Fost Membru Club eXtreamCS (patru luni)
Nume anterior: Clic
Location: Piatra Neamt
Has thanked: 1 time
Been thanked: 20 times
Contact:

24 Feb 2015, 13:19

Descriere: Niste effecte CSO la kill . L-am cautat si eu ceva vreme si am zis sa il postez :P

Descarcare: deatheffect rar


Nume: Death Sprite Effect
Versiune: 1.5
Link oficial: http://amxx.pl/topic/108593-death-sprit ... -like-cso/
fara sunete | Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <dhudmessage>

new knife_kill, grenade_kill, headshot, normal_kill

new level[32]
new bool:kills[32]

new one_kill
new two_kill
new three_kill
new four_kill
new five_kill
new six_kill
new seven_kill
new eight_kill
new more_than_eight_kill
new g_lastkill
new g_firstblood

public plugin_precache()
{
        headshot = precache_model("sprites/headshot.spr")
        knife_kill = precache_model("sprites/knife_kill.spr")
        grenade_kill = precache_model("sprites/grenade_kill.spr")
        one_kill = precache_model("sprites/1_kill.spr")
        two_kill = precache_model("sprites/2_kill.spr")
        three_kill = precache_model("sprites/3_kill.spr")
        four_kill = precache_model("sprites/4_kill.spr")
        five_kill = precache_model("sprites/5_kill.spr")
        six_kill = precache_model("sprites/6_kill.spr")
        seven_kill = precache_model("sprites/7_kill.spr")
        eight_kill = precache_model("sprites/8_kill.spr")
        more_than_eight_kill = precache_model("sprites/more_than_8_kill.spr")
        normal_kill = precache_model("sprites/normal_kill.spr")
}

public plugin_init()
{
	register_plugin("Death Sprite Effect","1.5","RaZzoR")
        register_event("DeathMsg","onDeath","a")
        register_event("DeathMsg","onDeath_level","a")
        register_event("TextMsg", "eRestart", "a", "2&#Game_C", "2&#Game_w")
	register_event("SendAudio", "eEndRound", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw")
	register_event("RoundTime", "eNewRound", "bc")
}


public eRestart()
{
	eEndRound()
	g_firstblood = 1
}

public eEndRound()
{

}

public client_disconnect(id)
{
	level[id]= 0
}
public client_putinserver(id)
{
	level[id]= 0
}

public onDeath()
{
        new name_attacker[32]
	new name_victim[32]
        new wpn[3]
        new hs = read_data(3)
        new attacker = read_data(1)
        new victim = read_data(2)

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)
        read_data(4,wpn,2)
    
        if (wpn[0] != 'k' && wpn[1] != 'r' && !can_see_fm(attacker, victim)) 
	{
		if (hs)
                {
                  set_dhudmessage(255, 0, 0, -1.0, 0.20, 0, 6.0, 3.0, 0.1, 1.5) 
	          show_dhudmessage(attacker, "FALON AT FEJLOVES!^n-|IGEN! :D|-")
                  client_cmd(attacker,"spk misc/headshot")
                }
	}
        else if (hs && wpn[0] != 'k' && wpn[1] != 'r')
	{
		show_sprite(victim, headshot)
                client_cmd(attacker,"spk misc/headshot")   
	}
        else if (wpn[0] == 'k')
        {
	        show_sprite(victim, knife_kill)
                client_cmd(attacker,"spk misc/knife_kill")
        }
        else if (wpn[1] == 'r')
        {
	        show_sprite(victim, grenade_kill)
                client_cmd(attacker,"spk misc/grenade_kill")
        }

        return PLUGIN_CONTINUE
}

public onDeath_level()
{
        new players_ct[32], players_t[32], ict, ite
	get_players(players_ct,ict,"ae","CT")   
	get_players(players_t,ite,"ae","TERRORIST")
	if (ict == 0 || ite == 0) g_lastkill = 1
        
        new attacker = read_data(1)
        new victim = read_data(2)
        new name_attacker[32]
	new name_victim[32]

        level[attacker] += 1
	level[victim]= 0

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)

        if((victim == attacker) || (get_user_team(attacker) == get_user_team(victim)) || !victim || !attacker)
			return PLUGIN_CONTINUE
       


        if (g_firstblood && attacker!=victim && attacker>0) 
	{	
                 g_firstblood = 0			
		 set_dhudmessage(255, 105, 180, -1.0, 0.35, 0, 6.0, 3.0, 0.1, 1.5) 
		 show_dhudmessage(0, "ELSO OLES: ^n %s megolte %s-t!", name_attacker, name_victim)
		 client_cmd(0, "speak misc/firstblood")
	}
        if (g_lastkill == 1)
	{
		g_lastkill = 0
                set_dhudmessage(255, 215, 0, -1.0, 0.30, 0, 6.0, 3.0, 0.1, 1.5) 
		show_dhudmessage(0, "UTOLSO OLES: ^n %s megolte %s-t!", name_attacker, name_victim)
		client_cmd(0, "speak misc/last_kill")
	}  
        if (level[attacker] == 1)
        {
	        show_sprite(victim, one_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/1_kill")	
		
	}
        if (level[attacker] == 2)
        {
	        show_sprite(victim, two_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/2_kill")		
		
	}
        if (level[attacker] == 3)
        {
	        show_sprite(victim, three_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/3_kill")		
		
	}
        if (level[attacker] == 4)
        {
	        show_sprite(victim, four_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/4_kill")		
		
	}
        if (level[attacker] == 5)
        {
	        show_sprite(victim, five_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/5_kill")	 	
		
	}
        if (level[attacker] == 6)
        {
	        show_sprite(victim, six_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/6_kill")	 	
		
	}
        if (level[attacker] == 7)
        {
	        show_sprite(victim, seven_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/7_kill")	 	
		
	}
        if (level[attacker] == 8)
        {
	        show_sprite(victim, eight_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/8_kill")		
		
	}
        if (level[attacker] > 8)
        {
	        show_sprite(victim, more_than_eight_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/unstoppable")		
		
	}
         
        return PLUGIN_CONTINUE
}

public show_sprite(attacker, sprite)
{	
        if(!is_user_connected(attacker))
		return PLUGIN_CONTINUE



	static origin[3]
	get_user_origin(attacker, origin)
	
        message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
	write_byte(TE_SPRITE)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2]+65)
	write_short(sprite)
	write_byte(10)
	write_byte(250)
	message_end()
        
        return PLUGIN_CONTINUE
}

public podesi_boolove(id)
{	
	kills[id] = false
}

bool:can_see_fm(entindex1, entindex2)
{
	if (!entindex1 || !entindex2)
		return false

	if (pev_valid(entindex1) && pev_valid(entindex1))
	{
		new flags = pev(entindex1, pev_flags)
		if (flags & EF_NODRAW || flags & FL_NOTARGET)
		{
			return false
		}

		new Float:lookerOrig[3]
		new Float:targetBaseOrig[3]
		new Float:targetOrig[3]
		new Float:temp[3]

		pev(entindex1, pev_origin, lookerOrig)
		pev(entindex1, pev_view_ofs, temp)
		lookerOrig[0] += temp[0]
		lookerOrig[1] += temp[1]
		lookerOrig[2] += temp[2]

		pev(entindex2, pev_origin, targetBaseOrig)
		pev(entindex2, pev_view_ofs, temp)
		targetOrig[0] = targetBaseOrig [0] + temp[0]
		targetOrig[1] = targetBaseOrig [1] + temp[1]
		targetOrig[2] = targetBaseOrig [2] + temp[2]

		engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the had of seen player
		if (get_tr2(0, TraceResult:TR_InOpen) && get_tr2(0, TraceResult:TR_InWater))
		{
			return false
		} 
		else 
		{
			new Float:flFraction
			get_tr2(0, TraceResult:TR_flFraction, flFraction)
			if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
			{
				return true
			}
			else
			{
				targetOrig[0] = targetBaseOrig [0]
				targetOrig[1] = targetBaseOrig [1]
				targetOrig[2] = targetBaseOrig [2]
				engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the body of seen player
				get_tr2(0, TraceResult:TR_flFraction, flFraction)
				if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
				{
					return true
				}
				else
				{
					targetOrig[0] = targetBaseOrig [0]
					targetOrig[1] = targetBaseOrig [1]
					targetOrig[2] = targetBaseOrig [2] - 17.0
					engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the legs of seen player
					get_tr2(0, TraceResult:TR_flFraction, flFraction)
					if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
					{
						return true
					}
				}
			}
		}
	}
	return false
}
Fara sunete / mesaje | Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <dhudmessage>

new knife_kill, grenade_kill, headshot, normal_kill

new level[32]
new bool:kills[32]

new one_kill
new two_kill
new three_kill
new four_kill
new five_kill
new six_kill
new seven_kill
new eight_kill
new more_than_eight_kill
new g_lastkill
new g_firstblood

public plugin_precache()
{
        headshot = precache_model("sprites/headshot.spr")
        knife_kill = precache_model("sprites/knife_kill.spr")
        grenade_kill = precache_model("sprites/grenade_kill.spr")
        one_kill = precache_model("sprites/1_kill.spr")
        two_kill = precache_model("sprites/2_kill.spr")
        three_kill = precache_model("sprites/3_kill.spr")
        four_kill = precache_model("sprites/4_kill.spr")
        five_kill = precache_model("sprites/5_kill.spr")
        six_kill = precache_model("sprites/6_kill.spr")
        seven_kill = precache_model("sprites/7_kill.spr")
        eight_kill = precache_model("sprites/8_kill.spr")
        more_than_eight_kill = precache_model("sprites/more_than_8_kill.spr")
        normal_kill = precache_model("sprites/normal_kill.spr")
}

public plugin_init()
{
	register_plugin("Death Sprite Effect","1.5","RaZzoR")
        register_event("DeathMsg","onDeath","a")
        register_event("DeathMsg","onDeath_level","a")
        register_event("TextMsg", "eRestart", "a", "2&#Game_C", "2&#Game_w")
	register_event("SendAudio", "eEndRound", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw")
	register_event("RoundTime", "eNewRound", "bc")
}


public eRestart()
{
	eEndRound()
	g_firstblood = 1
}

public eEndRound()
{

}

public client_disconnect(id)
{
	level[id]= 0
}
public client_putinserver(id)
{
	level[id]= 0
}

public onDeath()
{
        new name_attacker[32]
	new name_victim[32]
        new wpn[3]
        new hs = read_data(3)
        new attacker = read_data(1)
        new victim = read_data(2)

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)
        read_data(4,wpn,2)
    
        if (wpn[0] != 'k' && wpn[1] != 'r' && !can_see_fm(attacker, victim)) 
	{
		if (hs)
                {
                  set_dhudmessage(255, 0, 0, -1.0, 0.20, 0, 6.0, 3.0, 0.1, 1.5) 
                  client_cmd(attacker,"spk misc/headshot")
                }
	}
        else if (hs && wpn[0] != 'k' && wpn[1] != 'r')
	{
		show_sprite(victim, headshot)
	}
        else if (wpn[0] == 'k')
        {
	        show_sprite(victim, knife_kill)
        }
        else if (wpn[1] == 'r')
        {
	        show_sprite(victim, grenade_kill)
        }

        return PLUGIN_CONTINUE
}

public onDeath_level()
{
        new players_ct[32], players_t[32], ict, ite
	get_players(players_ct,ict,"ae","CT")   
	get_players(players_t,ite,"ae","TERRORIST")
	if (ict == 0 || ite == 0) g_lastkill = 1
        
        new attacker = read_data(1)
        new victim = read_data(2)
        new name_attacker[32]
	new name_victim[32]

        level[attacker] += 1
	level[victim]= 0

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)

        if((victim == attacker) || (get_user_team(attacker) == get_user_team(victim)) || !victim || !attacker)
			return PLUGIN_CONTINUE
       


        if (g_firstblood && attacker!=victim && attacker>0) 
	{	
                 g_firstblood = 0			
	}
        if (g_lastkill == 1)
	{
		g_lastkill = 0
	}  
        if (level[attacker] == 1)
        {
	        show_sprite(victim, one_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 2)
        {
	        show_sprite(victim, two_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 3)
        {
	        show_sprite(victim, three_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 4)
        {
	        show_sprite(victim, four_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 5)
        {
	        show_sprite(victim, five_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 6)
        {
	        show_sprite(victim, six_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 7)
        {
	        show_sprite(victim, seven_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 8)
        {
	        show_sprite(victim, eight_kill)
                kills[victim] = true
		
	}
        if (level[attacker] > 8)
        {
	        show_sprite(victim, more_than_eight_kill)
                kills[victim] = true
		
	}
         
        return PLUGIN_CONTINUE
}

public show_sprite(attacker, sprite)
{	
        if(!is_user_connected(attacker))
		return PLUGIN_CONTINUE


	static origin[3]
	get_user_origin(attacker, origin)
	
        message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
	write_byte(TE_SPRITE)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2]+65)
	write_short(sprite)
	write_byte(10)
	write_byte(250)
	message_end()
        
        return PLUGIN_CONTINUE
}

public podesi_boolove(id)
{	
	kills[id] = false
}

bool:can_see_fm(entindex1, entindex2)
{
	if (!entindex1 || !entindex2)
		return false

	if (pev_valid(entindex1) && pev_valid(entindex1))
	{
		new flags = pev(entindex1, pev_flags)
		if (flags & EF_NODRAW || flags & FL_NOTARGET)
		{
			return false
		}

		new Float:lookerOrig[3]
		new Float:targetBaseOrig[3]
		new Float:targetOrig[3]
		new Float:temp[3]

		pev(entindex1, pev_origin, lookerOrig)
		pev(entindex1, pev_view_ofs, temp)
		lookerOrig[0] += temp[0]
		lookerOrig[1] += temp[1]
		lookerOrig[2] += temp[2]

		pev(entindex2, pev_origin, targetBaseOrig)
		pev(entindex2, pev_view_ofs, temp)
		targetOrig[0] = targetBaseOrig [0] + temp[0]
		targetOrig[1] = targetBaseOrig [1] + temp[1]
		targetOrig[2] = targetBaseOrig [2] + temp[2]

		engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the had of seen player
		if (get_tr2(0, TraceResult:TR_InOpen) && get_tr2(0, TraceResult:TR_InWater))
		{
			return false
		} 
		else 
		{
			new Float:flFraction
			get_tr2(0, TraceResult:TR_flFraction, flFraction)
			if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
			{
				return true
			}
			else
			{
				targetOrig[0] = targetBaseOrig [0]
				targetOrig[1] = targetBaseOrig [1]
				targetOrig[2] = targetBaseOrig [2]
				engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the body of seen player
				get_tr2(0, TraceResult:TR_flFraction, flFraction)
				if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
				{
					return true
				}
				else
				{
					targetOrig[0] = targetBaseOrig [0]
					targetOrig[1] = targetBaseOrig [1]
					targetOrig[2] = targetBaseOrig [2] - 17.0
					engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the legs of seen player
					get_tr2(0, TraceResult:TR_flFraction, flFraction)
					if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
					{
						return true
					}
				}
			}
		}
	}
	return false
}
Instalare:
1. Fisierul deatheffect.sma il puneti in addons/amxmodx/scripting
2. Fisierul deatheffect.amxx il puneti in addons/amxmodx/plugins
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la urma:

Code: Select all

deatheffect.amxx
4. Alti pasi necesari....

Cvar-uri (se adauga in fisierul amxmodx\configs\amxx.cfg):

- nu necesita

Comenzi administrative (se tasteaza in consola si trebuie sa fiti administrator):

- nu necesita

Comenzi publice (se tasteaza in joc prin apasarea tastei Y):

- nu necesita

Module necesare (se sterge ; din fata modulului de mai jos; acestea le gasiti in fisierul amxmodx\configs\modules.ini):

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <dhudmessage>
Video:
http://www.youtube.com/watch?v=seXbmXhVeZ8

Nu detin drepturi de autor pe el , deci nu ofer suport.
Last edited by Jorj on 11 May 2017, 09:53, edited 1 time in total.
Reason: update
Intermediez tranzactii cand am chef si timp ! :)

Image
RoyalServer 2
User avatar
Truth
Membru, skill +1
Membru, skill +1
Posts: 215
Joined: 26 Jun 2014, 19:50
Detinator Steam: Da
CS Status: I learn ...
SteamID: Private
Fond eXtream: 0
Location: Buzau
Has thanked: 1 time
Been thanked: 9 times

24 Feb 2015, 13:24

Pare interesant...
Mulţumim pentru postare. :)
Image

Pluginuri Publicate:

- Furien XP System #1 | #2 | #3 | #4 | #5 | #6
User avatar
meii
Membru, skill +1
Membru, skill +1
Posts: 145
Joined: 16 Jan 2015, 13:45
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Contact:

07 Mar 2015, 11:34

mersi, imi place mult.
wizzkidon
Membru, skill 0
Membru, skill 0
Posts: 81
Joined: 20 Jun 2013, 09:00
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Has thanked: 1 time
Been thanked: 1 time
Contact:

18 Jan 2017, 18:41

Pot dezactiva sunetele? Vreau pluginul fără sunete.
User avatar
KuramaN
Membru, skill 0
Membru, skill 0
Posts: 40
Joined: 18 Jan 2017, 08:47
Detinator Steam: Da
CS Status: BB MaddoX Power <3
Detinator server CS: Da
SteamID: Privat.
Fond eXtream: 0
Contact:

19 Jan 2017, 17:33

Incearcearca asta, Ar trebui sa mearga..
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <dhudmessage>

new knife_kill, grenade_kill, headshot, normal_kill

new level[32]
new bool:kills[32]

new one_kill
new two_kill
new three_kill
new four_kill
new five_kill
new six_kill
new seven_kill
new eight_kill
new more_than_eight_kill
new g_lastkill
new g_firstblood

public plugin_precache()
{
        headshot = precache_model("sprites/headshot.spr")
        knife_kill = precache_model("sprites/knife_kill.spr")
        grenade_kill = precache_model("sprites/grenade_kill.spr")
        one_kill = precache_model("sprites/1_kill.spr")
        two_kill = precache_model("sprites/2_kill.spr")
        three_kill = precache_model("sprites/3_kill.spr")
        four_kill = precache_model("sprites/4_kill.spr")
        five_kill = precache_model("sprites/5_kill.spr")
        six_kill = precache_model("sprites/6_kill.spr")
        seven_kill = precache_model("sprites/7_kill.spr")
        eight_kill = precache_model("sprites/8_kill.spr")
        more_than_eight_kill = precache_model("sprites/more_than_8_kill.spr")
        normal_kill = precache_model("sprites/normal_kill.spr")
}

public plugin_init()
{
	register_plugin("Death Sprite Effect","1.5","RaZzoR")
        register_event("DeathMsg","onDeath","a")
        register_event("DeathMsg","onDeath_level","a")
        register_event("TextMsg", "eRestart", "a", "2&#Game_C", "2&#Game_w")
	register_event("SendAudio", "eEndRound", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw")
	register_event("RoundTime", "eNewRound", "bc")
}


public eRestart()
{
	eEndRound()
	g_firstblood = 1
}

public eEndRound()
{

}

public client_disconnect(id)
{
	level[id]= 0
}
public client_putinserver(id)
{
	level[id]= 0
}

public onDeath()
{
        new name_attacker[32]
	new name_victim[32]
        new wpn[3]
        new hs = read_data(3)
        new attacker = read_data(1)
        new victim = read_data(2)

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)
        read_data(4,wpn,2)
    
        if (wpn[0] != 'k' && wpn[1] != 'r' && !can_see_fm(attacker, victim)) 
	{
		if (hs)
                {
                  set_dhudmessage(255, 0, 0, -1.0, 0.20, 0, 6.0, 3.0, 0.1, 1.5) 
	          show_dhudmessage(attacker, "FALON AT FEJLOVES!^n-|IGEN! :D|-")
                  client_cmd(attacker,"spk misc/headshot")
                }
	}
        else if (hs && wpn[0] != 'k' && wpn[1] != 'r')
	{
		show_sprite(victim, headshot)
                client_cmd(attacker,"spk misc/headshot")   
	}
        else if (wpn[0] == 'k')
        {
	        show_sprite(victim, knife_kill)
                client_cmd(attacker,"spk misc/knife_kill")
        }
        else if (wpn[1] == 'r')
        {
	        show_sprite(victim, grenade_kill)
                client_cmd(attacker,"spk misc/grenade_kill")
        }

        return PLUGIN_CONTINUE
}

public onDeath_level()
{
        new players_ct[32], players_t[32], ict, ite
	get_players(players_ct,ict,"ae","CT")   
	get_players(players_t,ite,"ae","TERRORIST")
	if (ict == 0 || ite == 0) g_lastkill = 1
        
        new attacker = read_data(1)
        new victim = read_data(2)
        new name_attacker[32]
	new name_victim[32]

        level[attacker] += 1
	level[victim]= 0

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)

        if((victim == attacker) || (get_user_team(attacker) == get_user_team(victim)) || !victim || !attacker)
			return PLUGIN_CONTINUE
       


        if (g_firstblood && attacker!=victim && attacker>0) 
	{	
                 g_firstblood = 0			
		 set_dhudmessage(255, 105, 180, -1.0, 0.35, 0, 6.0, 3.0, 0.1, 1.5) 
		 show_dhudmessage(0, "ELSO OLES: ^n %s megolte %s-t!", name_attacker, name_victim)
		 client_cmd(0, "speak misc/firstblood")
	}
        if (g_lastkill == 1)
	{
		g_lastkill = 0
                set_dhudmessage(255, 215, 0, -1.0, 0.30, 0, 6.0, 3.0, 0.1, 1.5) 
		show_dhudmessage(0, "UTOLSO OLES: ^n %s megolte %s-t!", name_attacker, name_victim)
		client_cmd(0, "speak misc/last_kill")
	}  
        if (level[attacker] == 1)
        {
	        show_sprite(victim, one_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/1_kill")	
		
	}
        if (level[attacker] == 2)
        {
	        show_sprite(victim, two_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/2_kill")		
		
	}
        if (level[attacker] == 3)
        {
	        show_sprite(victim, three_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/3_kill")		
		
	}
        if (level[attacker] == 4)
        {
	        show_sprite(victim, four_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/4_kill")		
		
	}
        if (level[attacker] == 5)
        {
	        show_sprite(victim, five_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/5_kill")	 	
		
	}
        if (level[attacker] == 6)
        {
	        show_sprite(victim, six_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/6_kill")	 	
		
	}
        if (level[attacker] == 7)
        {
	        show_sprite(victim, seven_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/7_kill")	 	
		
	}
        if (level[attacker] == 8)
        {
	        show_sprite(victim, eight_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/8_kill")		
		
	}
        if (level[attacker] > 8)
        {
	        show_sprite(victim, more_than_eight_kill)
                kills[victim] = true
                client_cmd(attacker,"spk misc/unstoppable")		
		
	}
         
        return PLUGIN_CONTINUE
}

public show_sprite(attacker, sprite)
{	
        if(!is_user_connected(attacker))
		return PLUGIN_CONTINUE



	static origin[3]
	get_user_origin(attacker, origin)
	
        message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
	write_byte(TE_SPRITE)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2]+65)
	write_short(sprite)
	write_byte(10)
	write_byte(250)
	message_end()
        
        return PLUGIN_CONTINUE
}

public podesi_boolove(id)
{	
	kills[id] = false
}

bool:can_see_fm(entindex1, entindex2)
{
	if (!entindex1 || !entindex2)
		return false

	if (pev_valid(entindex1) && pev_valid(entindex1))
	{
		new flags = pev(entindex1, pev_flags)
		if (flags & EF_NODRAW || flags & FL_NOTARGET)
		{
			return false
		}

		new Float:lookerOrig[3]
		new Float:targetBaseOrig[3]
		new Float:targetOrig[3]
		new Float:temp[3]

		pev(entindex1, pev_origin, lookerOrig)
		pev(entindex1, pev_view_ofs, temp)
		lookerOrig[0] += temp[0]
		lookerOrig[1] += temp[1]
		lookerOrig[2] += temp[2]

		pev(entindex2, pev_origin, targetBaseOrig)
		pev(entindex2, pev_view_ofs, temp)
		targetOrig[0] = targetBaseOrig [0] + temp[0]
		targetOrig[1] = targetBaseOrig [1] + temp[1]
		targetOrig[2] = targetBaseOrig [2] + temp[2]

		engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the had of seen player
		if (get_tr2(0, TraceResult:TR_InOpen) && get_tr2(0, TraceResult:TR_InWater))
		{
			return false
		} 
		else 
		{
			new Float:flFraction
			get_tr2(0, TraceResult:TR_flFraction, flFraction)
			if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
			{
				return true
			}
			else
			{
				targetOrig[0] = targetBaseOrig [0]
				targetOrig[1] = targetBaseOrig [1]
				targetOrig[2] = targetBaseOrig [2]
				engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the body of seen player
				get_tr2(0, TraceResult:TR_flFraction, flFraction)
				if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
				{
					return true
				}
				else
				{
					targetOrig[0] = targetBaseOrig [0]
					targetOrig[1] = targetBaseOrig [1]
					targetOrig[2] = targetBaseOrig [2] - 17.0
					engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the legs of seen player
					get_tr2(0, TraceResult:TR_flFraction, flFraction)
					if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
					{
						return true
					}
				}
			}
		}
	}
	return false
}
wizzkidon
Membru, skill 0
Membru, skill 0
Posts: 81
Joined: 20 Jun 2013, 09:00
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Has thanked: 1 time
Been thanked: 1 time
Contact:

06 Feb 2017, 21:38

Imi poate face cineva pluginul, fara sunete?
User avatar
KuramaN
Membru, skill 0
Membru, skill 0
Posts: 40
Joined: 18 Jan 2017, 08:47
Detinator Steam: Da
CS Status: BB MaddoX Power <3
Detinator server CS: Da
SteamID: Privat.
Fond eXtream: 0
Contact:

07 Feb 2017, 19:30

e chiar putin mai sus nu il vezi ? :))0
coL.Trankan
Membru, skill 0
Membru, skill 0
Posts: 23
Joined: 17 May 2016, 09:24
Detinator Steam: Nu
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Contact:

29 Mar 2017, 21:13

Nu merge tot se aud sunetele
User avatar
-ToTo-
Membru, skill +2
Membru, skill +2
Posts: 501
Joined: 30 Jul 2016, 21:28
Detinator Steam: Da
CS Status: Muncă
SteamID: id/totooffices/
Fond eXtream: 0
Location: Botosani
Has thanked: 10 times
Been thanked: 5 times

14 Apr 2017, 15:41

poate ma e nevoie,e personalizat de mine functioneaza fara probleme (l-am folosit pe server furien)
Furien Remade Level || Class || Power || Quest || Event
IP : 188.212.100.219:27015

User avatar
ALEXVL
Membru, skill +1
Membru, skill +1
Posts: 243
Joined: 22 Jul 2015, 00:01
Detinator Steam: Da
CS Status: Online
Detinator server CS: ZMX.LSEPLAY.COM
SteamID: Da
Fond eXtream: 0
Contact:

11 May 2017, 00:18

coL.Trankan wrote:Nu merge tot se aud sunetele
Salut am refacut eu acest plugin in caz ca il mai cauta cineva nu are nici sunete nici mesaje doar efectul.
Fara sunete / mesaje | Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <dhudmessage>

new knife_kill, grenade_kill, headshot, normal_kill

new level[32]
new bool:kills[32]

new one_kill
new two_kill
new three_kill
new four_kill
new five_kill
new six_kill
new seven_kill
new eight_kill
new more_than_eight_kill
new g_lastkill
new g_firstblood

public plugin_precache()
{
        headshot = precache_model("sprites/headshot.spr")
        knife_kill = precache_model("sprites/knife_kill.spr")
        grenade_kill = precache_model("sprites/grenade_kill.spr")
        one_kill = precache_model("sprites/1_kill.spr")
        two_kill = precache_model("sprites/2_kill.spr")
        three_kill = precache_model("sprites/3_kill.spr")
        four_kill = precache_model("sprites/4_kill.spr")
        five_kill = precache_model("sprites/5_kill.spr")
        six_kill = precache_model("sprites/6_kill.spr")
        seven_kill = precache_model("sprites/7_kill.spr")
        eight_kill = precache_model("sprites/8_kill.spr")
        more_than_eight_kill = precache_model("sprites/more_than_8_kill.spr")
        normal_kill = precache_model("sprites/normal_kill.spr")
}

public plugin_init()
{
	register_plugin("Death Sprite Effect","1.5","RaZzoR")
        register_event("DeathMsg","onDeath","a")
        register_event("DeathMsg","onDeath_level","a")
        register_event("TextMsg", "eRestart", "a", "2&#Game_C", "2&#Game_w")
	register_event("SendAudio", "eEndRound", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw")
	register_event("RoundTime", "eNewRound", "bc")
}


public eRestart()
{
	eEndRound()
	g_firstblood = 1
}

public eEndRound()
{

}

public client_disconnect(id)
{
	level[id]= 0
}
public client_putinserver(id)
{
	level[id]= 0
}

public onDeath()
{
        new name_attacker[32]
	new name_victim[32]
        new wpn[3]
        new hs = read_data(3)
        new attacker = read_data(1)
        new victim = read_data(2)

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)
        read_data(4,wpn,2)
    
        if (wpn[0] != 'k' && wpn[1] != 'r' && !can_see_fm(attacker, victim)) 
	{
		if (hs)
                {
                  set_dhudmessage(255, 0, 0, -1.0, 0.20, 0, 6.0, 3.0, 0.1, 1.5) 
                  client_cmd(attacker,"spk misc/headshot")
                }
	}
        else if (hs && wpn[0] != 'k' && wpn[1] != 'r')
	{
		show_sprite(victim, headshot)
	}
        else if (wpn[0] == 'k')
        {
	        show_sprite(victim, knife_kill)
        }
        else if (wpn[1] == 'r')
        {
	        show_sprite(victim, grenade_kill)
        }

        return PLUGIN_CONTINUE
}

public onDeath_level()
{
        new players_ct[32], players_t[32], ict, ite
	get_players(players_ct,ict,"ae","CT")   
	get_players(players_t,ite,"ae","TERRORIST")
	if (ict == 0 || ite == 0) g_lastkill = 1
        
        new attacker = read_data(1)
        new victim = read_data(2)
        new name_attacker[32]
	new name_victim[32]

        level[attacker] += 1
	level[victim]= 0

        get_user_name(attacker, name_attacker, 31)
	get_user_name(victim, name_victim, 31)

        if((victim == attacker) || (get_user_team(attacker) == get_user_team(victim)) || !victim || !attacker)
			return PLUGIN_CONTINUE
       


        if (g_firstblood && attacker!=victim && attacker>0) 
	{	
                 g_firstblood = 0			
	}
        if (g_lastkill == 1)
	{
		g_lastkill = 0
	}  
        if (level[attacker] == 1)
        {
	        show_sprite(victim, one_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 2)
        {
	        show_sprite(victim, two_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 3)
        {
	        show_sprite(victim, three_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 4)
        {
	        show_sprite(victim, four_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 5)
        {
	        show_sprite(victim, five_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 6)
        {
	        show_sprite(victim, six_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 7)
        {
	        show_sprite(victim, seven_kill)
                kills[victim] = true
		
	}
        if (level[attacker] == 8)
        {
	        show_sprite(victim, eight_kill)
                kills[victim] = true
		
	}
        if (level[attacker] > 8)
        {
	        show_sprite(victim, more_than_eight_kill)
                kills[victim] = true
		
	}
         
        return PLUGIN_CONTINUE
}

public show_sprite(attacker, sprite)
{	
        if(!is_user_connected(attacker))
		return PLUGIN_CONTINUE


	static origin[3]
	get_user_origin(attacker, origin)
	
        message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
	write_byte(TE_SPRITE)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2]+65)
	write_short(sprite)
	write_byte(10)
	write_byte(250)
	message_end()
        
        return PLUGIN_CONTINUE
}

public podesi_boolove(id)
{	
	kills[id] = false
}

bool:can_see_fm(entindex1, entindex2)
{
	if (!entindex1 || !entindex2)
		return false

	if (pev_valid(entindex1) && pev_valid(entindex1))
	{
		new flags = pev(entindex1, pev_flags)
		if (flags & EF_NODRAW || flags & FL_NOTARGET)
		{
			return false
		}

		new Float:lookerOrig[3]
		new Float:targetBaseOrig[3]
		new Float:targetOrig[3]
		new Float:temp[3]

		pev(entindex1, pev_origin, lookerOrig)
		pev(entindex1, pev_view_ofs, temp)
		lookerOrig[0] += temp[0]
		lookerOrig[1] += temp[1]
		lookerOrig[2] += temp[2]

		pev(entindex2, pev_origin, targetBaseOrig)
		pev(entindex2, pev_view_ofs, temp)
		targetOrig[0] = targetBaseOrig [0] + temp[0]
		targetOrig[1] = targetBaseOrig [1] + temp[1]
		targetOrig[2] = targetBaseOrig [2] + temp[2]

		engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the had of seen player
		if (get_tr2(0, TraceResult:TR_InOpen) && get_tr2(0, TraceResult:TR_InWater))
		{
			return false
		} 
		else 
		{
			new Float:flFraction
			get_tr2(0, TraceResult:TR_flFraction, flFraction)
			if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
			{
				return true
			}
			else
			{
				targetOrig[0] = targetBaseOrig [0]
				targetOrig[1] = targetBaseOrig [1]
				targetOrig[2] = targetBaseOrig [2]
				engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the body of seen player
				get_tr2(0, TraceResult:TR_flFraction, flFraction)
				if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
				{
					return true
				}
				else
				{
					targetOrig[0] = targetBaseOrig [0]
					targetOrig[1] = targetBaseOrig [1]
					targetOrig[2] = targetBaseOrig [2] - 17.0
					engfunc(EngFunc_TraceLine, lookerOrig, targetOrig, 0, entindex1, 0) //  checks the legs of seen player
					get_tr2(0, TraceResult:TR_flFraction, flFraction)
					if (flFraction == 1.0 || (get_tr2(0, TraceResult:TR_pHit) == entindex2))
					{
						return true
					}
				}
			}
		}
	}
	return false
}
ZOMBIE CROWN ROMANIA.
The NeW Wolrd Zombie
view server | Afiseaza codul
[ Mod:[/size] Image] [Statistici:[/size] Image ][IP:[/size] Image ]
User avatar
Jorj
Fost moderator
Fost moderator
Posts: 3494
Joined: 13 Aug 2013, 18:10
Detinator Steam: Da
Detinator server CS: Furien.LsZ.Ro
SteamID: clic_lsz
Reputatie: Fost eXtream Mod
Fost Membru Club eXtreamCS (patru luni)
Nume anterior: Clic
Location: Piatra Neamt
Has thanked: 1 time
Been thanked: 20 times
Contact:

11 May 2017, 09:54

Am editat primul post cu versiuni fara sunete/mesaje.
Intermediez tranzactii cand am chef si timp ! :)

Image
User avatar
EleCtr0zZz
Membru, skill +1
Membru, skill +1
Posts: 428
Joined: 25 May 2015, 07:27
Detinator Steam: Da
SteamID: =
Fond eXtream: 0
Has thanked: 3 times
Contact:

31 Jan 2018, 20:16

Eu cand bag acest plugin pe server, imi pica server-ul dupa ce schimb mapa, imi poate spune cineva de ce?
Post Reply

Return to “AmxModX”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 15 guests