[ZP] Reload Sounds

Descarcari de pluginuri si discutii despre acestea.

Moderators: Moderatori ajutători, Scripteri TheXForce

Post Reply
User avatar
Rainq
Fost administrator
Fost administrator
Posts: 381
Joined: Mon Jan 18, 2021 7:25 am
Status: Citesc forumul TheXForce.RO...!
Detinator Steam: Da
SteamID: mrainq
Gaming experience: Nu spun..
Reputatie: Fost administrator
Nume anterior: Light
Fost detinator zm.thexforce.ro
Fost detinator dr.thexforce.ro
Location: Bucureşti
Has thanked: 2 times
Been thanked: 1 time
Contact:

[ZP] Reload Sounds

Post by Rainq »

Descriere: Sunete la reload

Descarcare:

Code: Select all

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

#define MAX_PLAYERS	32

#define XTRA_OFS_WEAPON	4
#define m_pPlayer	41
#define m_fInReload	54

#define XTRA_OFS_PLAYER	5
#define m_flNextAttack	83

new weapons[][]=
{   
	"weapon_p228", 
	"weapon_scout", 
	"weapon_xm1014", 
	"weapon_mac10", 
	"weapon_aug", 
	"weapon_elite", 
	"weapon_fiveseven", 
	"weapon_ump45",
	"weapon_sg550", 
	"weapon_galil", 
	"weapon_famas", 
	"weapon_usp", 
	"weapon_glock18", 
	"weapon_awp",
	"weapon_mp5navy", 
	"weapon_m249",
	"weapon_m3", 
	"weapon_m4a1", 
	"weapon_tmp", 
	"weapon_g3sg1", 
	"weapon_deagle", 
	"weapon_sg552", 
	"weapon_ak47", 
	"weapon_p90"
}

new g_iSendAudio
const NOCLIP_WPN_BS = ((1<<2)|(1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4))
const SHOTGUNS_BS = ((1<<CSW_M3)|(1<<CSW_XM1014))
new g_pCvarRadioDelay,audio_cvar
new Float:g_flNextRadioGameTime[MAX_PLAYERS+1]
new g_szLocation[MAX_PLAYERS+1][32]
static sprite[33][16]
new users_character[33]

new male_sounds[][] =
{
	"zombie_plague/zpcspower/reload.wav",
	"zombie_plague/zpcspower/reload1.wav",
	"zombie_plague/zpcspower/reload2.wav",
	"zombie_plague/zpcspower/reload3.wav",
	"zombie_plague/zpcspower/reload4.wav",
	"zombie_plague/zpcspower/reload5.wav",
	"zombie_plague/zpcspower/reload6.wav",
	"zombie_plague/zpcspower/reload7.wav",
	"zombie_plague/zpcspower/reload8.wav",
	"zombie_plague/zpcspower/reload9.wav",
	"zombie_plague/zpcspower/reload11.wav",
	"zombie_plague/zpcspower/reload12.wav",
    "zombie_plague/zpcspower/reload13.wav",
    "zombie_plague/zpcspower/reload14.wav",
    "zombie_plague/zpcspower/reload15.wav"
}
public plugin_init()
{
	register_plugin("L4D Reloading Sounds", "2.9", "One/Connor")
	/* Delay between reloads*/
	g_pCvarRadioDelay = register_cvar("reload_radio_delay", "5")
	
	/* Reload Hook event*/
	for(new i = 0 ; i< sizeof weapons; i++)
	{
			RegisterHam(Ham_Weapon_Reload, weapons[i], "Weapon_Reload", 1)

	}
	register_event("CurWeapon", "ev_CheckWeapon", "be", "1=1")
	register_event("ResetHUD","resethud","be")
	new szModName[7]
	get_modname(szModName, charsmax(szModName))
	if(equal(szModName, "czero"))
	{
		register_event("Location", "Event_Location", "be")
	}
	audio_cvar = register_cvar("amx_reload_sound","1")		//Enables Reloadsounds
	g_iSendAudio = get_user_msgid("SendAudio")
}
public ev_CheckWeapon(id)
{
	if(zp_get_user_zombie(id))
		return PLUGIN_HANDLED

	new  clip, ammo
	static  iwpn
	iwpn = get_user_weapon(id, clip, ammo)

	
	switch(iwpn) 
	{
		case CSW_P228:         sprite[id]="d_p228"
		case CSW_SCOUT:         sprite[id]="d_scout"
		case CSW_HEGRENADE:         sprite[id]="d_grenade"
		case CSW_XM1014:         sprite[id]="d_xm1014"
		case CSW_MAC10:         sprite[id]="d_mac10"
		case CSW_AUG:         sprite[id]="d_aug"
		case CSW_SMOKEGRENADE:     sprite[id]="d_flashbang"
		case CSW_ELITE:         sprite[id]="d_elite"
		case CSW_FIVESEVEN:         sprite[id]="d_fiveseven"
		case CSW_UMP45:         sprite[id]="d_ump45"
		case CSW_SG550:         sprite[id]="d_sg550"
		case CSW_GALIL:         sprite[id]="d_galil"
		case CSW_FAMAS:         sprite[id]="d_famas"
		case CSW_USP:         sprite[id]="d_usp"
		case CSW_MP5NAVY:         sprite[id]="d_mp5navy"
		case CSW_M249:         sprite[id]="d_m249"
		case CSW_M3:             sprite[id]="d_m3"
		case CSW_M4A1:         sprite[id]="d_m4a1"
		case CSW_TMP:         sprite[id]="d_tmp"
		case CSW_G3SG1:         sprite[id]="d_g3sg1"
		case CSW_FLASHBANG:         sprite[id]="d_flashbang"
		case CSW_DEAGLE:         sprite[id]="d_deagle"
		case CSW_SG552:         sprite[id]="d_sg552"
		case CSW_AK47:         sprite[id]="d_ak47"
		case CSW_KNIFE:         sprite[id]="d_knife"
		case CSW_P90:         sprite[id]="d_p90"
		case CSW_GLOCK18:         sprite[id]="d_glock18"
		case CSW_AWP:         sprite[id]="d_awp"
	}
	return PLUGIN_HANDLED
}
public resethud(id)
{
	if(zp_get_user_zombie(id))
		return PLUGIN_HANDLED
		
	users_character[id] = 1		//male
	return PLUGIN_HANDLED
}
public plugin_precache()
{
	for( new i; i < sizeof male_sounds; i++ )
	{
		precache_sound(male_sounds[i])
	}
}
public Event_Location( id )
{
	if(zp_get_user_zombie(id))
		return PLUGIN_HANDLED

	if( read_data(1) == id )
	{
		read_data(2, g_szLocation[id], charsmax(g_szLocation[]))
	}
	return PLUGIN_HANDLED
}
Reload_Inform( id )
{
	if(zp_get_user_zombie(id))
		return PLUGIN_HANDLED
		
	new Float:flGameTime = get_gametime()
	if( flGameTime > g_flNextRadioGameTime[id] )
	{
		g_flNextRadioGameTime[id] + get_pcvar_float(g_pCvarRadioDelay)

		new iPlayers[MAX_PLAYERS], iNum, iPlayer
		new CsTeams:iTeam = cs_get_user_team(id)

		new male = random_num( 0, sizeof male_sounds-1 )


		new szId[4]
		num_to_str(id, szId, charsmax(szId))

		new szName[32]
		get_user_name(id, szName, charsmax(szName))

		new szLocation[32]
		szLocation = g_szLocation[id]

		get_players(iPlayers, iNum, "ch")

		for(new i; i<iNum; i++)
		{
			iPlayer = iPlayers[i]
			if( iPlayer == id || cs_get_user_team(iPlayer) == iTeam )
			{
				if(get_pcvar_num(audio_cvar))
				{
					if(users_character[id] == 1)
					{
						Send_SendAudio(id, iPlayer, male_sounds[male])
					}
				}
			}
		}
	}
	return PLUGIN_HANDLED
}
public Weapon_Reload( iEnt )
{
	if( get_pdata_int(iEnt, m_fInReload, XTRA_OFS_WEAPON) )
	{
		new id = get_pdata_cbase(iEnt, m_pPlayer, XTRA_OFS_WEAPON)
		Reload_Inform(id)
	}
}

Send_SendAudio(const iSender, const iReceiver, const szSound[], const iPitch = 100)
{
	message_begin(MSG_ONE_UNRELIABLE, g_iSendAudio, .player=iReceiver)
	write_byte(iSender)
	write_string(szSound)
	write_short(iPitch)
	message_end()
}
Nume: Reload Sounds
Versiune: 2.9
Link oficial: cspower / thexforce

Instalare:
1. Fisierul Reload_Sounds_ZP.sma il puneti in addons/amxmodx/scripting
2. Fisierul Reload_Sounds_ZP.amxx il puneti in addons/amxmodx/plugins
3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la urma:

Code: Select all

Reload_Sounds_ZP.amxx
4. Alti pasi necesari....

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

Code: Select all

reload_radio_delay
Imagini: -
Image
Post Reply

Return to “Pluginuri”