|
Member
|

07-29-2014
, 14:03
Re: Emit_sound error
|
#2
|
LOL, I fix it by myself
Here's an example. For somebody have same trouble like me
PHP Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <hamsandwich>
#define PLUGIN "Sound replace" #define VERSION "Testing" #define AUTHOR "Gian_Yagami"
new model[33][32]; new sound[101]; new sex[32] // sound female new const SOUND_F_BHIT[3][] = { "player/f_bhit_flesh-1.wav", "player/f_bhit_flesh-2.wav", "player/f_bhit_flesh-3.wav"} new const SOUND_F_DIE[3][] = { "player/f_die1.wav", "player/f_die2.wav", "player/f_die3.wav"} new const SOUND_F_HS[3][] = { "player/f_headshot1.wav", "player/f_headshot2.wav", "player/f_headshot3.wav"}
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) RegisterHam(Ham_Spawn, "player", "PlayerSpawn", 1); register_forward(FM_EmitSound, "fw_EmitSound") }
public plugin_precache() for (new i = 0; i <= 2; i++) { engfunc(EngFunc_PrecacheSound, SOUND_F_BHIT[i]) engfunc(EngFunc_PrecacheSound, SOUND_F_DIE[i]) engfunc(EngFunc_PrecacheSound, SOUND_F_HS[i]) }
public PlayerSpawn(id) { if(!is_user_alive(id)) return; cs_get_user_model(id, model[id], 31); if(equal(model[id], "yuri")){ sex[id]= 1;} else sex[id]= 0 } public fw_EmitSound(id, channel, const sample[], Float:volume, Float:attn, flags, pitch) { if(!is_user_connected(id)) return FMRES_IGNORED; if(sex[id] != 1) return FMRES_IGNORED; for (new i = 0; i <= 2; i++) { // Hit format(sound, charsmax(sound), "%s", SOUND_F_BHIT[i]) replace(sound, charsmax(sound), "player/f_", "player/") if (equal(sample, sound)) { emit_sound(id, channel, SOUND_F_BHIT[i], volume, attn, flags, pitch) return FMRES_SUPERCEDE; } // Die format(sound, charsmax(sound), "%s", SOUND_F_DIE[i]) replace(sound, charsmax(sound), "player/f_", "player/") if (equal(sample, sound)) { emit_sound(id, channel, SOUND_F_DIE[i], volume, attn, flags, pitch) return FMRES_SUPERCEDE; } // Headshot format(sound, charsmax(sound), "%s", SOUND_F_HS[i]) replace(sound, charsmax(sound), "player/f_", "player/") if (equal(sample, sound)) { emit_sound(id, channel, SOUND_F_HS[i], volume, attn, flags, pitch) return FMRES_SUPERCEDE; } } return FMRES_IGNORED; }
just need Sound forwarding. and you need a variable to checked if your model is female, because you can't write check model statement in fw_emitsound action.
Last edited by Gian_Yagami; 07-30-2014 at 00:42.
|
|