Enviar respuesta 
[TUTORIAL] Como emitir sonidos desde una sentencia, jugador u objeto.
Autor Mensaje
zoolk Sin conexión
Miembro Destacado


1k
Mensajes: 1,299
Registro en: Feb 2014
Reputación: 21
Mensaje: #1
[TUTORIAL] Como emitir sonidos desde una sentencia, jugador u objeto.
Bueno como dise el titulo como agregar un sonido a una sentencia?
Esto aveces es muy útil como para alguna tienda, menú o algunas otras funciones.

Primeramente necesitamos saber que hay 2 tipos de formatos .mp3 y .wav que cada uno es un procedimiento diferente.

Los formatos .wav son de excelente calidad de audio
Con el detalle que pueden llegar a pesar mucho dependiendo de la duración o calidad.
Esto puede afectar a los usuarios ya que la descarga puede llegar a tardar varios minutos dependiendo el peso del archivo.


Los formatos .mp3 tienen un poco de inferioridad a los .wav ya que tienen una menor calidad que los .wav
Pero los formatos .mp3 tienen mejor compresión comparando con el .wav osea que el tamaño/peso del archivo es menor que el .wav
Este formato tiene un beneficio ya que mejora la rapidez de descarga del archivo.

En fin empecemos con el tutorial.


*** Procedimiento para formato .wav ***

1.- Creamos una const donde tendremos la ubicación de nuestro sonido
Por ejemplo si queremos que nuestro sonido este ubicado en la carpeta: cstrike/sound/mis_sonidos/mi_sonido.wav

Código PHP:
new const SONIDO_WAV[] = { "mi_sonidos/mi_sonido.wav" 

Por ahora todo normal hemos puesto la ubicación de nuestro sonido y siempre que llamemos esa función llamara al sonido.

2.- Precacheamos el sonido. Todo sonido tiene que ser precacheado de no precachearlo el sonido no se escuchara o puede producir error en algunas ocasiones.

Código PHP:
public plugin_precache()
{
        
precache_sound(SONIDO_WAV)


Porque esto esta dentro de los paréntesis?
Es porque 'SONIDO_WAV' es nuestra dirección para acceder a nuestro sonido como ya lo habíamos hecho anteriormente en el paso anterior.
Perfecto ahora tenemos todo listo solo para llamar a nuestro sonido y emitirlo.

3.- Ahora tenemos todo preparado solo para emitir el sonido, como aremos eso?

Código PHP:
client_cmd(id"spk %s"SONIDO_WAV

client_cmd Con esta función podemos emitir el sonido al jugador
entre comillas "spk %s" porque?
Bueno con spk es la identificación del sonido .wav para reproducirlo
Dentro del %s estamos almacenando la ubicación del sonido y donde esta esa ubicación en nuestra const ' SONIDO_WAV'.
Bueno eso es todo en parte con el formato .wav.

*** Procedimiento para formato .mp3 ***

1.- Creamos una cost para la ubicación de nuestro sonido
por ejemplo si nuestro sonido queremos que este ubicado en la carpeta: cstrike/sound/mi_sonidos/mi_sonido.mp3
Código PHP:
new const SONIDO_MP3[] = { "sound/mi_sonidos/mi_sonido.mp3" 

Como verán le estoy agregando el directorio 'sound'
Bueno esto es algo que siempre deben agregar cuando es sonido de formato .mp3 de lo contrario no se reproducirá.

2.- Precacheamos el sonido

Código PHP:
public plugin_precache()
{
        
precache_generic(SONIDO_MP3)


Bueno igual que la forma anterior esta es la forma que deben precachear el sonido .mp3 de no precachearlo no se reproducirá o puede llegar a dar error.

3.- Sentencia que emitirá el sonido o lo pausara.

Emitir...
Código PHP:
client_cmd(id"mp3 play %s"SONIDO_MP3

Pausar...
Código PHP:
client_cmd(id"mp3 stop %s"SONIDO_MP3

De igual forma esto ara que el sonido se reproduzca en donde ustedes lo llamen.
Como verán lo que esta entre comillas "mp3 Play %s" lo mismo estamos identificando que reproducción del sonido .mp3
Y entre comillas "mp3 stop %s" estamos parando el sonido que reproducimos ubicado en nuestra const 'SONIDO_MP3'

*** Procedimiento para emit_sound ***

emit_sound es una funcion la cual hace sonar un sonido según donde este el jugador/objeto.
Por ejemplo si lo llamas en algún objeto el sonido saldra del objeto, un ejemplo claro son las armas el sonido de las balas.
Y se escuchara según la distancia en la que estes mas fuerte o mas bajo.
dato: por lo que yo se solo puede emitir sonidos .wav

1.- Const donde se ubicara nuestro sonido

Código PHP:
new const SONIDO[] = { "mis_sonidos/mi_sonido.wav" 

2.- Pasamos a precachear nuestro sonido

Código PHP:
public plugin_precache()
{
        
precache_sound(SONIDO)


3.- Creamos la función de nuestro sonido

Código PHP:
emit_sound (idCHAN_VOICESONIDO0.9ATTN_NORM0PITCH_NORM


Simplemente cada vez que llamen esa función el sonido se emitirá desde el jugador.

Descripción:
Código:
CHAN_VOICE - Es el canal que hace que el sonido salga del jugador.
SONIDO - Es nuestra const donde nuestro sonido esta ubicado.
ATTN_NORM - Son los valores de atenuación.
PITCH_NORM - Son los valores de tono

Syntax:
Código PHP:
emit_sound (indexchannel, const sample[], Float:volFloat:attflagspitch

Ahora para que un sonido salga de un objeto.
En este ejemplo para que salga de una granada.

1.- Nuestra const de ubicación del sonido

Código PHP:
new const SONIDO_OBJ[] = { "mis_sonidos/mi_sonido.wav" 

2.- Precacheamos nuestro sonido

Código PHP:
public plugin_precache()
{
        
precache_sound(SONIDO_OBJ)


3.- creamos nuestra función con sus respectivos canales.

Código PHP:
emit_sound(entCHAN_BODYSONIDO_OBJVOL_NORMATTN_NORM0PITCH_NORM

Y eso es todo el procedimiento solo tienen que llamar esa función donde quieran que se reproduzca su sonido.
Un ejemplo seria cuando la granada explota.

Descripción:
Código:
CHAN_BODY - Es el canal que hace que el sonido salga del objeto.
SONIDO_OBJ - Es nuestra const donde nuestro sonido esta ubicado.
VOL_NORM - Son los valores de volumen.
ATTN_NORM - Son los valores de atenuación.
PITCH_NORM - Son los valores de tono

Syntax:
Código PHP:
emit_sound (indexchannel, const sample[], Float:volFloat:attflagspitch

Esto fue todo por el momento actualice mi tutorial porque se un poco mas sobre el tema y se expresarme un poco mejor.
Si tengo algún error o si tienen alguna duda no duden en decirme ya que yo se que no lo ise del todo explicado en algunas partes.
Pueden comentar en lo que falle o si puedo mejorar o ampliar algo espero y les haya servido.
(Este mensaje fue modificado por última vez en: 27/04/2015 03:39 PM por zoolk.)
11/03/2014 03:15 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
RauliTop Sin conexión
Miembro Héroe


El protector 1k
Mensajes: 1,961
Registro en: Oct 2013
Reputación: 36
Mensaje: #2
RE: [TUTORIAL] como agregarle sonido a una sentencia
y si fuera un mp3?

(17/04/2015 03:36 PM)Neeeeeeeeeel.- escribió:  No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
11/03/2014 09:35 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Frosst Sin conexión
Miembro Sr.


Mensajes: 581
Registro en: Oct 2013
Reputación: 2
Mensaje: #3
RE: [TUTORIAL] como agregarle sonido a una sentencia
public plugin_precache() precache_sound(SOUND)

Deja el ejemplo en mp3 también
11/03/2014 09:44 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Metrikcz Sin conexión
Miembro Destacado


Plugin developer
Mensajes: 827
Registro en: Oct 2013
Reputación: 19
Mensaje: #4
RE: [TUTORIAL] como agregarle sonido a una sentencia
(11/03/2014 09:44 AM)Frosst escribió:  public plugin_precache() precache_sound(SOUND)
Hay solamente ahorras lineas

Todos los MODS VHL totalmente gratuitos Descarga Aqui

Mis plugins:
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
11/03/2014 09:48 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Frosst Sin conexión
Miembro Sr.


Mensajes: 581
Registro en: Oct 2013
Reputación: 2
Mensaje: #5
RE: [TUTORIAL] como agregarle sonido a una sentencia
(11/03/2014 09:48 AM)Metrikcz escribió:  
(11/03/2014 09:44 AM)Frosst escribió:  public plugin_precache() precache_sound(SOUND)
Hay solamente ahorras lineas

Se ve mas bonito así que ocupando lineas al pedo
11/03/2014 10:10 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Metrikcz Sin conexión
Miembro Destacado


Plugin developer
Mensajes: 827
Registro en: Oct 2013
Reputación: 19
Mensaje: #6
RE: [TUTORIAL] como agregarle sonido a una sentencia
Pero no se esta opimizando nada ademas de que probablemente el plugin al que se agrege ya tenga plugin precache y hay se ocupe ya poner las llaves

Todos los MODS VHL totalmente gratuitos Descarga Aqui

Mis plugins:
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
11/03/2014 10:16 AM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
3mcy daimon't Sin conexión
Miembro


Mensajes: 219
Registro en: Nov 2013
Reputación: 1
Mensaje: #7
RE: [TUTORIAL] como agregarle sonido a una sentencia
(11/03/2014 09:35 AM)RauliTop escribió:  y si fuera un mp3?

Código PHP:
new const SOUND[] = { "asd.mp3" }

client_cmd(id"mp3 play %s"SOUND); 

Sistema de Logros v2.0 + Guardado

He vuelto... esta vez con mas ganas de ayudar que nunca!
(Este mensaje fue modificado por última vez en: 11/03/2014 01:55 PM por 3mcy daimon't.)
11/03/2014 01:55 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
roccoxx Sin conexión
Miembro Destacado


Plugin developer Trebol purpura 1k
Mensajes: 1,159
Registro en: Oct 2013
Reputación: 18
Mensaje: #8
RE: [TUTORIAL] como agregarle sonido a una sentencia
(11/03/2014 01:55 PM)3mcy daimont escribió:  
(11/03/2014 09:35 AM)RauliTop escribió:  y si fuera un mp3?

Código PHP:
new const SOUND[] = { "asd.mp3" }

client_cmd(id"mp3 play %s"SOUND); 

el ya lo sabe lo dijo para que lo agregue.

futuro ingeniero agrónomo.

tutoriales-allied
buscas un zp?

"La imitación es la forma más sincera de admiración con la que puede pagar la mediocridad a la grandeza"

volví a vender plugins, contactame
11/03/2014 02:24 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Metrikcz Sin conexión
Miembro Destacado


Plugin developer
Mensajes: 827
Registro en: Oct 2013
Reputación: 19
Mensaje: #9
RE: [TUTORIAL] como agregarle sonido a una sentencia
y el precache es precache_generic y se tiene que agregar la direccion sound/ tambien

Todos los MODS VHL totalmente gratuitos Descarga Aqui

Mis plugins:
FB: fb.com/rwoong
Venta plugins a pedido en México mándame MP
11/03/2014 03:15 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
zoolk Sin conexión
Miembro Destacado


1k
Mensajes: 1,299
Registro en: Feb 2014
Reputación: 21
Mensaje: #10
RE: [TUTORIAL] como agregarle sonido a una sentencia
Puse el precache_sound asi por si quieren meter 2 o mas sonidos yo solo meti 1 pero para no confundir Whatever
(Este mensaje fue modificado por última vez en: 11/03/2014 05:41 PM por zoolk.)
11/03/2014 05:39 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Enviar respuesta 


Salto de foro:


Usuario(s) navegando en este tema: 1 invitado(s)

Contáctanos | Allied Modders en español | Volver arriba | Volver al contenido | Archivo (Modo simple) | Sindicación RSS