Mensajes: 68
Temas: 18
Registro en: Dec 2013
Reputación:
0
Hola gente, soy nuevo aquí y bue ...
Esto vendria más para el deathrun...
Nose si se puede pero cuando un jugador se cae de un lugar se muera, osea, que si te caes de un lugar mediano y solo te quita -30HP quiero que directamente muera... Esto para los que se caen de algun lugar de un mapa deathrun y no se tiren...
PD: que solo la función sea aplicada para los CT's
PD: Este code lo saque de No Fall Damage de v3x, vi en sacarle casi todo y que solo cumpliera la función que yo queria... Lo logré pero aca lo que quiero cambiar esque cuando toque el piso desde una gran altura y enves de recibir daño directamente lo mate... Pero lo que logre esque llegue a una velocidad de 400(test) mientras cae y muera...
Code:
Código PHP: #include <amxmodx> #include <engine>
#define FALL_VELOCITY 400.0
public plugin_init() { register_plugin("Fall Death", "0.2", "v3x"); }
public client_PostThink(id){ if(is_user_alive(id) && is_user_connected(id)) { if(entity_get_float(id, EV_FL_flFallVelocity) >= FALL_VELOCITY) { user_kill(id) } } }
Salu2 y muchas gracias!
Mensajes: 538
Temas: 13
Registro en: Oct 2013
Reputación:
16
Por que no compruebas en TakeDamage que bitsDamageType sea DMG_FALL y luego cambiar el valor de flDamage?
Hi [R]ak
Mensajes: 68
Temas: 18
Registro en: Dec 2013
Reputación:
0
06/02/2014, 02:11 AM
(Última modificación: 06/02/2014, 02:56 AM por Zetz.)
Ojala te pudiera entender , pero apenas el DMG_FALL.... soy nuevo en esto, disculpa :S
EDIT: Ya experimente más con el flFallVelocity y que la función funcione para el CT , salió todo como lo esperado... Te lo agradecería si te puedes tomar la molestia de explicarme un poco lo que me dijiste Milashkasiya para ver de cambiarlo de que si el damage recibido por la caida es mayor/igual a tal numero, lo mate al player directamente... Porque si el ct esta en base tt y en los mapas que tienen esas escaleras y varios pisos... El ct se lanza sin usar la escalera superando la velocidad de caida de 680units se muere
Mensajes: 538
Temas: 13
Registro en: Oct 2013
Reputación:
16
06/02/2014, 11:41 AM
(Última modificación: 06/02/2014, 10:05 PM por Milashkasiya.)
Código PHP: #include <amxmodx> #include <hamsandwich> #include <cstrike> #include <hlsdk_const>
#define DAMAGE_FALL 10000.0
public plugin_init( ) { RegisterHam( Ham_TakeDamage, "player", "Player_TakeDamage" ) }
public Player_TakeDamage( victim, inflictor, attacker, Float:damage, damagebits ) { if( damagebits & DMG_FALL // caida && damage > 0.0 // daño mayor a 0.0 && cs_get_user_team(victim) == CS_TEAM_CT ) // es ct { SetHamParamFloat( 4, DAMAGE_FALL ) // nuevo daño 10000.0 return HAM_HANDLED } return HAM_IGNORED }
Hi [R]ak
Mensajes: 2,600
Temas: 33
Registro en: Oct 2013
Reputación:
36
(06/02/2014, 11:41 AM)Milashkasiya escribió: Código PHP: #include <amxmodx> #include <hamsandwich> #include <cstrike> #include <hlsdk_const>
#define DAMAGE_FALL 10000.0
public plugin_init( ) { RegisterHam( Ham_TakeDamage, "player", "Player_TakeDamage" ) }
public Player_TakeDamage( victim, inflictor, attacker, Float:damage, damagebits ) { if( damagebits == DMG_FALL // caida && damage > 0.0 // daño mayor a 0.0 && cs_get_user_team(victim) == CS_TEAM_CT ) // es ct { SetHamParamFloat( 4, DAMAGE_FALL ) // nuevo daño 10000.0 return HAM_HANDLED } return HAM_IGNORED }
digo yo, si se llama a Ham_Takedamage es porque el daño es mayor a 0
(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: 538
Temas: 13
Registro en: Oct 2013
Reputación:
16
(06/02/2014, 11:52 AM)RauliTop escribió: (06/02/2014, 11:41 AM)Milashkasiya escribió: Código PHP: #include <amxmodx> #include <hamsandwich> #include <cstrike> #include <hlsdk_const>
#define DAMAGE_FALL 10000.0
public plugin_init( ) { RegisterHam( Ham_TakeDamage, "player", "Player_TakeDamage" ) }
public Player_TakeDamage( victim, inflictor, attacker, Float:damage, damagebits ) { if( damagebits == DMG_FALL // caida && damage > 0.0 // daño mayor a 0.0 && cs_get_user_team(victim) == CS_TEAM_CT ) // es ct { SetHamParamFloat( 4, DAMAGE_FALL ) // nuevo daño 10000.0 return HAM_HANDLED } return HAM_IGNORED }
digo yo, si se llama a Ham_Takedamage es porque el daño es mayor a 0
Al menos no en HLDM, en CS no se. De todas formas lo hice como referencia a lo que pidio:
Cita:para ver de cambiarlo de que si el damage recibido por la caida es mayor/igual a tal numero, lo mate al player directamente
Hi [R]ak
Mensajes: 68
Temas: 18
Registro en: Dec 2013
Reputación:
0
06/02/2014, 10:56 PM
(Última modificación: 07/02/2014, 03:38 AM por Zetz.)
Muchisimas gracias!!, pronto lo voy a probar como quedo.
Te lo agradezco!, primera ves que pido ayuda
EDIT: lo testie y quedo mucho mejor!!, agradezco por la ayuda una vez más
Salu2!!
|