Zumbis Online
Últimos assuntos
» [NPC] Frozen Boss
por [Dk]Serial-Killer 21/2/2017, 7:56 pm

» [NPC]Alien Boss
por [Dk]Serial-Killer 20/2/2017, 10:11 am

» Serve teste(Ainda estou arrumando meu addons)
por .Cannabis. 8/2/2017, 3:51 pm

» [Gp'Ex] Não Sabia que tinha voltado KKKKKKKK SO QUE NUNCA
por Wilian 4/2/2017, 6:05 pm

» Addons: Dark Plagues 5.0.8
por SoaD^ | [M]aTaDoR.?>* 1/2/2017, 11:18 am

» [Test] Angra Nest controlável
por Wilian 30/1/2017, 8:48 am

» Rapaz voltaram que isso
por .Cannabis. 26/1/2017, 6:15 pm

» Boss Firemonster
por [Dk]Serial-Killer 26/1/2017, 10:59 am

» [AJUDA] Mod Berserker
por [Dk]Serial-Killer 22/1/2017, 8:41 pm

» [AJUDA] Banco
por [Dk]Serial-Killer 22/1/2017, 8:23 pm

Frases filosóficas Zplague:
....
Os membros mais ativos da semana

Adsense

[ZP] Destruir granadas ao chegar perto

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[ZP] Destruir granadas ao chegar perto

Mensagem por [D]etonado[R] em 8/11/2013, 10:57 am



Quando um HE granada explode, ele também detona granadas que estão nas proximidades. Como no video acima


Cvars:



  • hdg_affect_radius - afetam raio. Padrão 350.


  • hdg_survival_chance - uma chance (default 3% (+ alguma chance randomizado distância)) para uma granada para sobreviver a uma explosão de uma granada HE nas proximidades. Defina 0 para desabilitado


Sma:

Código:
#include <amxmodx>
#include <fakemeta>
#include <engine>

#define FL_EXPLODED      FL_IMMUNE_SLIME

#define m_usEvent      114
#define XO_WEAPON      4

#define HEGRENADE      (1<<0)
#define SMOKENADE      (1<<1)

new cvar_AffectRadius, cvar_SurvivalChance

public plugin_init()
{
   register_plugin("HEs destroy grenades", "1.0", "beast")
   
   register_think("grenade", "ThinkGrenade")
   
   cvar_AffectRadius = register_cvar("hdg_affect_radius", "350")
   cvar_SurvivalChance = register_cvar("hdg_survival_chance", "3")
}

public ThinkGrenade(he)
{
   // ent not valid or not a HE
   if(!pev_valid(he) || ~get_pdata_int(he, m_usEvent, XO_WEAPON) & HEGRENADE)
      return PLUGIN_CONTINUE
      
   static flags
   
   flags = pev(he, pev_flags)
   
   // grenade has exploded
   if(flags & FL_EXPLODED)
      return PLUGIN_CONTINUE
   
   static Float:dmgTime
   
   pev(he, pev_dmgtime, dmgTime)
   
   // not ready to explode yet
   if(dmgTime > get_gametime())
      return PLUGIN_CONTINUE
   
   // marking the grenade as exploded
   set_pev(he, pev_flags, flags | FL_EXPLODED)
   
   static nearbyNades[32], count, nearbyNade, Float:affectRadius, survivalChance,
   Float:originHe[3], Float:originNearbyNade[3]
   
   affectRadius = get_pcvar_float(cvar_AffectRadius)
   survivalChance = get_pcvar_num(cvar_SurvivalChance)
   
   pev(he, pev_origin, originHe)
   
   // finding nearby grenades
   count = find_sphere_class(he, "grenade", affectRadius, nearbyNades, charsmax(nearbyNades))

   for(new i = 0; i < count; i++)
   {
      nearbyNade = nearbyNades[i]
      
      if(nearbyNade == he)
         continue

      if(survivalChance)
      {
         pev(nearbyNade, pev_origin, originNearbyNade)
         
         // grenade has a chance to survive
         if(random_float(0.0, 100.0) <= survivalChance + // some distance randomness
         get_distance_f(originHe, originNearbyNade) * random_float(0.0, 5.0) / affectRadius)
            continue
      }
      
      // detonating he and flashbang
      set_pev(nearbyNade, pev_dmgtime, 0.0)

      // detonating smokenade
      if(get_pdata_int(nearbyNade, m_usEvent, XO_WEAPON) & SMOKENADE)
      {
         set_pev(nearbyNade, pev_flags, pev(nearbyNade, pev_flags) | FL_ONGROUND)
         dllfunc(DLLFunc_Think, nearbyNade)
      }
   }
   
   return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1063\\ f0\\ fs16 \n\\ par }
*/

____________________________________________


[D]etonado[R]
Humano
Humano

Nick : [D]etonado[R]
Masculino Número de Mensagens : 623
Ammo Packs : 1418
Honra : 19
Data de inscrição : 17/10/2013

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [ZP] Destruir granadas ao chegar perto

Mensagem por Leozinho em 8/11/2013, 11:12 am

Legal o plugin.

____________________________________________


Leozinho
Administrador
Administrador

Masculino Número de Mensagens : 2854
Ammo Packs : 2587
Honra : 78
Data de inscrição : 20/11/2011

Ver perfil do usuário leozinho.zp

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum