Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
17/10/2013, 08:10 PM
(Última modificación: 01/06/2015, 09:48 PM por Metrikcz .)
Suicidio Explosivo v1.2
[By: Metrikcz]
Descripción:
Con este plugin al tener poca vida (La indicada por una Cvar) Iniciara una cuenta en la cual tendremos tiempo para correr con el enemigo y explotar y asi causarle daño
Comando:
say /explote - Inicia la cuenta para Explotarse
Cvars (Números en comillas son los valores por defecto, usted las puede modificar):
AsE_Hp_CanExplot "20"
Define la vida para poder explotarse.
AsE_Time_Explot "5"
Tiempo en el que al usar el comando de explotar, el usuario explotara.
AsE_Radio_Affected "300"
Define el radio de la explocion en la que se afectara al que este en el.
AsE_Damage_Affected "30"
Vida que le quita al usuario que estubo en la explocion.
Creditos a Milashkasiya Por la mejoracion de todo el codigo.
- Gracias a GeniusShark Por la idea.
Archivos adjuntos
Descargar AMXX / Suicidio-Explosivo.sma (Tamaño: 3.94 KB / Descargas: 564)
Mensajes: 996
Temas: 11
Registro en: Oct 2013
Reputación:
20
dentro de todo es vastante original
que pasa si se desconecta el usuario que va a explotar durante el tiempo de previo a la explosion?
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
(17/10/2013, 08:27 PM) [Anti] escribió: dentro de todo es vastante original
que pasa si se desconecta el usuario que va a explotar durante el tiempo de previo a la explosion?
Chequeo si esta vivo en el task, si no esta conectado retornara false
Mensajes: 4,629
Temas: 73
Registro en: Oct 2013
Reputación:
44
Suicidación? Se dice suicidio :p
Mensajes: 996
Temas: 11
Registro en: Oct 2013
Reputación:
20
17/10/2013, 08:44 PM
(Última modificación: 17/10/2013, 08:48 PM por [Anti] .)
(17/10/2013, 08:32 PM) Metrikcz escribió: (17/10/2013, 08:27 PM) [Anti] escribió: dentro de todo es vastante original
que pasa si se desconecta el usuario que va a explotar durante el tiempo de previo a la explosion?
Chequeo si esta vivo en el task, si no esta conectado retornara false
sorry, no lo vi :S
PD:
podes sacar las librerias cstrike y fun.
los team los podes checkear con get_user_team() de amxmodx
y la vida la setias con fakemeta
Mensajes: 3,012
Temas: 47
Registro en: Oct 2013
Reputación:
33
te parece bien llamar a la native get_user_health(victim) cada vez que un usuario es lastimado?
Ingeniero agrónomo y desarrollador de Software.
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"
Merci Alliedmodders pour m'introduire dans la programmation.
Mensajes: 538
Temas: 13
Registro en: Oct 2013
Reputación:
16
1.
Código PHP:
public logevent_round_start () { new maxplayers = get_maxplayers () for(new i = 1 ; i <= maxplayers ; i ++) { if( is_user_connected ( i )) client_putinserver ( i ) } }
->
Código PHP:
public logevent_round_start () { arrayset ( g_msgsend , 0 , sizeof g_msgsend ) arrayset ( g_timexplote , 0 , sizeof g_timexplote ) }
2. En lugar de
RegisterHam(Ham_TakeDamage... deberías usar el evento
Health .
3.
Código PHP:
set_task ( 0.1 , "task_explote" , id )
->
Código PHP:
// Aunque tambien podrias pasar cvar_explotime como parámetro del set_task, y te ahorrarias la variable g_timexplote[33] set_task ( 1.0 , "task_explote" , id , _ , _ , "a" , get_pcvar_num ( cvar_explotime ) )
Código PHP:
public task_explote ( id ) { if(! is_user_alive ( id )) return PLUGIN_HANDLED ; set_hudmessage ( random_num ( 0 , 255 ), random_num ( 0 , 255 ), random_num ( 0 , 255 ), - 1.0 , 0.40 , 0 , 1.0 , 1.0 ) show_hudmessage ( id , "[AMXX] Explotara en: %d Segundos" , g_timexplote [ id ]) if(! g_timexplote [ id ]) { Explote ( id ) return PLUGIN_HANDLED ; } g_timexplote [ id ]-- set_task ( 1.0 , "task_explote" , id ) return PLUGIN_HANDLED ; }
->
Código PHP:
public task_explote ( id ) { // Tambien podrias remover el task cuando el player muere, se desconecta o entra a espectador. if( ! is_user_alive ( id ) ) return; if( !-- g_timexplote [ id ] ) { Explote ( id ) return } set_hudmessage ( random_num ( 0 , 255 ), random_num ( 0 , 255 ), random_num ( 0 , 255 ), - 1.0 , 0.40 , 0 , 1.0 , 1.0 ) show_hudmessage ( id , "[AMXX] Explotara en: %d Segundos" , g_timexplote [ id ]) }
4. En vez de cvar_ff = register_cvar("AsE_Team_Affected", "0") deberías usar el valor
mp_friendlyfire
5. El mensaje Damage hazlo global.
6. En lugar de
set_user_health(victim, get_user_health(victim) - get_pcvar_num(cvar_damage)) deberías usar
ExecuteHamB(Ham_TakeDamage...
7. Agregar client_disconnect para remover el task.
8. Opcional: remover el task cuando el player se desconecta, muere o entra espectator y eliminar
if(!is_user_alive(id)) de
task_explote .
explocion -> explosion
Hi [R]ak
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
17/10/2013, 11:12 PM
(Última modificación: 17/10/2013, 11:13 PM por Metrikcz .)
(17/10/2013, 08:44 PM) [Anti] escribió: (17/10/2013, 08:32 PM) Metrikcz escribió: (17/10/2013, 08:27 PM) [Anti] escribió: dentro de todo es vastante original
que pasa si se desconecta el usuario que va a explotar durante el tiempo de previo a la explosion?
Chequeo si esta vivo en el task, si no esta conectado retornara false
sorry, no lo vi :S
PD:
podes sacar las librerias cstrike y fun.
los team los podes checkear con get_user_team() de amxmodx
y la vida la setias con fakemeta
Gracias Lo hare.!
(17/10/2013, 10:13 PM) roccoxx escribió: te parece bien llamar a la native get_user_health(victim) cada vez que un usuario es lastimado?
No es tan malo los zp lo hacen cada segundo para mostrar la hp de alguien en un hud.
(17/10/2013, 10:24 PM) Milashkasiya escribió: 1.
Código PHP:
public logevent_round_start () { new maxplayers = get_maxplayers () for(new i = 1 ; i <= maxplayers ; i ++) { if( is_user_connected ( i )) client_putinserver ( i ) } }
->
Código PHP:
public logevent_round_start () { arrayset ( g_msgsend , 0 , sizeof g_msgsend ) arrayset ( g_timexplote , 0 , sizeof g_timexplote ) }
2. En lugar de RegisterHam(Ham_TakeDamage... deberías usar el evento Health .
3.
Código PHP:
set_task ( 0.1 , "task_explote" , id )
->
Código PHP:
// Aunque tambien podrias pasar cvar_explotime como parámetro del set_task, y te ahorrarias la variable g_timexplote[33] set_task ( 1.0 , "task_explote" , id , _ , _ , "a" , get_pcvar_num ( cvar_explotime ) )
Código PHP:
public task_explote ( id ) { if(! is_user_alive ( id )) return PLUGIN_HANDLED ; set_hudmessage ( random_num ( 0 , 255 ), random_num ( 0 , 255 ), random_num ( 0 , 255 ), - 1.0 , 0.40 , 0 , 1.0 , 1.0 ) show_hudmessage ( id , "[AMXX] Explotara en: %d Segundos" , g_timexplote [ id ]) if(! g_timexplote [ id ]) { Explote ( id ) return PLUGIN_HANDLED ; } g_timexplote [ id ]-- set_task ( 1.0 , "task_explote" , id ) return PLUGIN_HANDLED ; }
->
Código PHP:
public task_explote ( id ) { // Tambien podrias remover el task cuando el player muere, se desconecta o entra a espectador. if( ! is_user_alive ( id ) ) return; if( !-- g_timexplote [ id ] ) { Explote ( id ) return } set_hudmessage ( random_num ( 0 , 255 ), random_num ( 0 , 255 ), random_num ( 0 , 255 ), - 1.0 , 0.40 , 0 , 1.0 , 1.0 ) show_hudmessage ( id , "[AMXX] Explotara en: %d Segundos" , g_timexplote [ id ]) }
4. En vez de cvar_ff = register_cvar("AsE_Team_Affected", "0") deberías usar el valor mp_friendlyfire
5. El mensaje Damage hazlo global.
6. En lugar de set_user_health(victim, get_user_health(victim) - get_pcvar_num(cvar_damage)) deberías usar ExecuteHamB(Ham_TakeDamage...
7. Agregar client_disconnect para remover el task.
8. Opcional: remover el task cuando el player se desconecta, muere o entra espectator y eliminar if(!is_user_alive(id)) de task_explote .
explocion -> explosion
Gracias por todas las recomentaciones se implementaran, muy bueno!
Mensajes: 3,012
Temas: 47
Registro en: Oct 2013
Reputación:
33
Que el zp lo haga no quiere decir que este bien.
Ingeniero agrónomo y desarrollador de Software.
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"
Merci Alliedmodders pour m'introduire dans la programmation.
Mensajes: 1,182
Temas: 18
Registro en: Oct 2013
Reputación:
16
Con lo que dice roccoxx creo que seria mejor obtener la vida en Ham_Spawn y setearla en una variable
Saludos,
cLAANS.-
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
(17/10/2013, 11:19 PM) roccoxx escribió: Que el zp lo haga no quiere decir que este bien.
No dije que estubiese bien
Mensajes: 3,012
Temas: 47
Registro en: Oct 2013
Reputación:
33
bueno pero Dijiste que no era tan malo y usaste el zp para justificar tu respuesta. Preguntale a rak aver que te dice xd
Ingeniero agrónomo y desarrollador de Software.
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"
Merci Alliedmodders pour m'introduire dans la programmation.
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
(17/10/2013, 11:59 PM) roccoxx escribió: bueno pero Dijiste que no era tan malo y usaste el zp para justificar tu respuesta. Preguntale a rak aver que te dice xd
Ok, Panda yo te invoco, despues de todo ahora lo hago en el event Health como me dijo Milashkasiya
PD: Porque nombres tan raros y dificiles u.u, tengo que abrir otra pestaña para ver como se escribe.
Mensajes: 996
Temas: 11
Registro en: Oct 2013
Reputación:
20
Otra cosa, si le setias la vida en 0, porque justo es igual la vida que el daño, se va a buggiar
Mensajes: 1,616
Temas: 19
Registro en: Oct 2013
Reputación:
16
El nombre está mal redactado, sería como decir, me voy a auto-suicidar
Deberías renombrar el plugin a "Suicidio explosivo".
Ni te molestes en enviarme un mensaje privado para pedirme ayuda porque NO lo voy a contestar.
Gracias por su atención.
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
18/10/2013, 04:23 PM
(Última modificación: 18/10/2013, 04:25 PM por Metrikcz .)
(18/10/2013, 02:39 PM) [Anti] escribió: Otra cosa, si le setias la vida en 0, porque justo es igual la vida que el daño, se va a buggiar
Hago eso en un chequeo ...
(18/10/2013, 03:33 PM) alan_el_more escribió: El nombre está mal redactado, sería como decir, me voy a auto-suicidar
Deberías renombrar el plugin a "Suicidio explosivo".
Tienes razón suicidarse es auto matarse, el auto sobra luego se lo quito ando en movil.
Mensajes: 2,600
Temas: 33
Registro en: Oct 2013
Reputación:
36
18/10/2013, 05:13 PM
(Última modificación: 18/10/2013, 05:13 PM por RauliTop .)
maxplayers hazlo global, y con respecto a arrayset es lo mismo que tienes puesto.
(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.
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
(18/10/2013, 05:13 PM) RauliTop escribió: maxplayers hazlo global, y con respecto a arrayset es lo mismo que tienes puesto.
No uso ya maxplayers
Mensajes: 30
Temas: 5
Registro en: Oct 2013
Reputación:
0
Muy buena, ya esta testeado? (Y)
Existen 10 tipos de personas en el mundo, las que entienden binario y las que no.
Mensajes: 2,600
Temas: 33
Registro en: Oct 2013
Reputación:
36
(18/10/2013, 05:16 PM) Metrikcz escribió: (18/10/2013, 05:13 PM) RauliTop escribió: maxplayers hazlo global, y con respecto a arrayset es lo mismo que tienes puesto.
No uso ya maxplayers
ahh, es que no ví el code, ví el code que quotearon en la primera pag
(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.
Mensajes: 35
Temas: 0
Registro en: Oct 2013
Reputación:
0
muy original la idea che
ta pensando para un hns mas que nada no ?
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
19/10/2013, 11:00 AM
(Última modificación: 19/10/2013, 11:01 AM por Metrikcz .)
(18/10/2013, 10:46 PM) G3n1uSh4rcks escribió: Muy buena, ya esta testeado? (Y)
smn
(19/10/2013, 06:22 AM) cr1st escribió: muy original la idea che
ta pensando para un hns mas que nada no ?
No lo se, se podria usar para el mod que quisieran que les paresca bien.
Mensajes: 4,629
Temas: 73
Registro en: Oct 2013
Reputación:
44
Mensajes: 2,568
Temas: 40
Registro en: Feb 2014
Reputación:
72
Buen plugin!
PD: Hay un bug: si pones /explote mas de una vez bugeas el contador, comprueba que el task no exista antes de setear otro.
Por otro lado, podrias usar bitsums y agregar un hud sincronizado.
Mensajes: 965
Temas: 45
Registro en: Oct 2013
Reputación:
19
(21/06/2014, 04:33 PM) Mario AR. escribió: Buen plugin!
PD: Hay un bug: si pones /explote mas de una vez bugeas el contador, comprueba que el task no exista antes de setear otro.
Por otro lado, podrias usar bitsums y agregar un hud sincronizado.Fix.