[Ajudar] Pipe Bomba Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Zplague

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Seu portal de Zombie Plague no Brasil

Zumbis Online

Últimos assuntos

» [ANÚNCIO] Alguem vivo ai?
por Eclipse 17/9/2024, 6:39 pm

» The Fen1xS CLan | Zombie Plague | [XP/LEVELS] #2024
por hevy 5/7/2024, 8:28 pm

»
por Eclipse 29/2/2024, 12:30 am

» [Plugin] /vm Com Status
por Isr7 4/6/2023, 3:24 pm

» Alguém pra manter um servidor comigo?
por Isr7 3/6/2023, 4:52 pm

» Alguém querendo criar um servidor de zp? eu pago a host quem quiser deixar o discord ai Isr7#6920
por Isr7 3/6/2023, 3:18 pm

» PEDIDO: Multijump pros VIP
por Madness 15/3/2023, 3:44 pm

» [ZP] Modo padre para 5.0
por XperitosEspetinho123 15/7/2022, 3:31 pm

» [KZ] Servidores de cs 1.6
por [Dk]Serial-Killer 7/5/2022, 4:12 am

» [PLUGIN BY SKVD & WILLIAN] SHOP DE FANTASIAS
por dushowW 23/7/2020, 5:44 pm

Os membros mais ativos da semana

Nenhum usuário

Frases filosóficas Zplague:

....

Google Adsense

Estatísticas

Os nossos membros postaram um total de 38140 mensagens em 6680 assuntos

Temos 2796 usuários registrados

O último membro registrado é zmplugins - Henrique


    [Ajudar] Pipe Bomba

    Dexter
    Dexter
    Humano


    Nick : Dexter
    Masculino Número de Mensagens : 913
    '-'
    Ammo Packs : 3678
    Honra : -3
    Data de inscrição : 28/04/2013

    [Ajudar] Pipe Bomba Empty [Ajudar] Pipe Bomba

    Mensagem por Dexter 11/6/2013, 1:32 am

    Alguem arruma essa pipe bomba ela nao quer explodir aki vou posta a .sma
    Código:
    /*
       -*- [ZP] Extra Item: Pipe Bomb -*-
       
       -*- Author: 4eRT -*-
       
       -*- About -*-
    This plugin is another extra item for Zombie Plague.
    It works like Pipe Bomb in Left 4 Dead.

       -*- Description -*-
    Plugin includes 2 extras: Pipe Bomb for Humans which
    drags zombies to nade on ground and then kills them
    (or hurts) and Mental Shield for Zombies which can
    block Pipe Bombs. All setting can be configured
    through the cvars.

       -*- Credits -*-
    MeRcyLeZZ - Great thanks for your ZP mode!!!
    frk_14 & Koshak - for pipe models
    crazyeffect - multilingual
    meTaLiCroSS - for optimization

       -*- Cvars -*-
       Pipe Bomb:
    zp_pipe_enabled 1 // 0=off plugin 1=on
    zp_pipe_radius 200 // radius of pipe bomb area def=200
    zp_pipe_duration 10 // time before pipe explodes def=10
    zp_pipe_cost 15 // extras cost def=15
    zp_pipe_mode 1 // 1=hook zombies to nade and then make them super damage 2=hook zombies to nade and hurt them at the same time def=1
    zp_pipe_speed 90.0 // speed at which drags zombies def=80.0
    zp_pipe_damage 2200 // damage given to zombies def=2200
    zp_pipe_shake 1 // 1=shake zombies screen 0=not def=1
    zp_pipe_sound 1 //1=enable beep pipe sound 0=off def=1
    zp_pipe_hud 1 // 1=enable hud messages 0=off def=1
    zp_pipe_ap 0 // additional ammo packs if you killed zombie by Pipe
       Mental Shield:
    zp_mshield_enabled 1 // 1=on plugin 0=off
    zp_mshield_cost 7 // extras cost def=7
    zp_mshield_hud 1 // 1=enable hud 0=off def=1

       -*- Modules -*-
    fakemeta
    hamsandwich
    engine
    fun
    cstrike

       -*- History -*-
    0.1b (23.01.10)
    First release.
    0.2b (24.01.10)
    Fixed some mistakes.
    0.3b (24.01.10)
    Added models.
    0.4b (25.01.10)
    Model bugs fixed.
    */

    #include <amxmodx>
    #include <fakemeta>
    #include <hamsandwich>
    #include <engine>
    #include <zombieplague>
    #include <  fun >
    #include <cstrike>

    #define VERSION "0.4b"

    const m_pPlayer = 41;
    new const NADE_TYPE_PIPE = 4327;
    new const NADE_DURATION_PIPE = pev_flSwimTime;
    new const g_trailspr[] ="sprites/laserbeam.spr";
    new const g_ringspr[] = "sprites/shockwave.spr";
    new const g_firespr[] = "sprites/zerogxplode.spr";
    new const g_sound[] = "items/pipe_beep.wav";
    new const g_vmodel[] = "models/zombie_plague/v_pipe.mdl";
    new const g_pmodel[] = "models/zombie_plague/p_pipe.mdl";
    new const g_wmodel[] = "models/zombie_plague/w_pipe.mdl";
    new const g_vflare[] = "models/zombie_plague/v_grenade_flare.mdl"; // type here your custom flare model to prevent bug. now uses default model
    new const g_extra_pipe[] = { "Pipe Bomb" };
    new const g_extra_shield[] = { "Mental Shield" };
    new cvar_duration, cvar_radius, cvar_enabled, cvar_sound, cvar_cost, cvar_mode, cvar_hud, cvar_damage, cvar_speed, cvar_shake, cvar_Scost, cvar_Senabled, cvar_Shud, cvar_extraap; // some cvars
    new g_msgsync, g_trail, g_ring, g_fire, g_score, g_death, g_shake, g_pipe, bool: g_has_pipe[33], bool: g_has_shield[33], g_mshield; // some vars

    public plugin_init() {
       register_plugin("[ZP] Extra: Pipe Bomb", VERSION, "4eRT");
       register_forward(FM_SetModel,"fw_SetModel", 1);
       register_dictionary("zp_extra_pipe.txt");
       RegisterHam(Ham_Think, "grenade", "fw_ThinkGren");
       RegisterHam(Ham_Spawn, "player", "fw_Spawn");
       RegisterHam(Ham_Item_Deploy, "weapon_smokegrenade", "fw_smDeploy", 1);
       
       // Cvars
       cvar_duration = register_cvar("zp_pipe_duration", "10");
       cvar_radius = register_cvar ( "zp_pipe_radius", "200");
       cvar_enabled = register_cvar("zp_pipe_enabled", "1");
       cvar_cost = register_cvar("zp_pipe_cost", "15");
       cvar_mode = register_cvar("zp_pipe_mode", "1");
       cvar_sound = register_cvar("zp_pipe_sound", "1");
       cvar_hud = register_cvar("zp_pipe_hud", "1");
       cvar_damage = register_cvar("zp_pipe_damage", "2200");
       cvar_speed = register_cvar("zp_pipe_speed", "90.0");
       cvar_shake = register_cvar("zp_pipe_shake", "1");
       cvar_extraap = register_cvar("zp_pipe_ap", "0");
       cvar_Scost = register_cvar("zp_mshield_cost", "7");
       cvar_Senabled = register_cvar("zp_mshield_enabled", "1");
       cvar_Shud = register_cvar("zp_mshield_hud", "1");
       
       // Registering extra items
       if(get_pcvar_num(cvar_enabled))
          g_pipe = zp_register_extra_item(g_extra_pipe, get_pcvar_num(cvar_cost), ZP_TEAM_HUMAN);
       
       if(get_pcvar_num(cvar_Senabled))
          g_mshield = zp_register_extra_item(g_extra_shield, get_pcvar_num(cvar_Scost), ZP_TEAM_ZOMBIE);
       
       g_msgsync = CreateHudSyncObj();
       g_score = get_user_msgid("ScoreInfo");
       g_death = get_user_msgid("DeathMsg");
       g_shake = get_user_msgid("ScreenShake");
    }

    public plugin_precache() {
       precache_model(g_vmodel);
       precache_model(g_pmodel);
       precache_model(g_wmodel);
       precache_model(g_vflare);
       precache_sound(g_sound);
       g_fire = precache_model(g_firespr);
       g_trail = precache_model(g_trailspr);
       g_ring = precache_model(g_ringspr);
    }

    public replace_models(id)
    {
       if(get_user_weapon(id) == CSW_SMOKEGRENADE)
       {
          set_pev(id, pev_viewmodel2, g_vmodel);
          set_pev(id, pev_weaponmodel2, g_pmodel);
       }
    }

    public replace_models2(id)
       if(get_user_weapon(id) == CSW_SMOKEGRENADE)
          set_pev(id, pev_viewmodel2, g_vflare);

    public fw_smDeploy(const iEntity)
    {
       if(pev_valid(iEntity) != 2)
          return HAM_IGNORED;
       
       new id = get_pdata_cbase(iEntity, m_pPlayer, 4);
       
       if(g_has_pipe[id] && !zp_get_user_zombie(id) && is_user_alive(id))
       {
          set_pev(id, pev_viewmodel2, g_vmodel);
          set_pev(id, pev_weaponmodel2, g_pmodel);
       }
       
       return HAM_IGNORED;
    }

    public zp_extra_item_selected(id, item)
    {
       if(item == g_pipe)
       {
          if(!get_pcvar_num(cvar_enabled))
          {
             client_print(id, print_chat, "[ZP] %L", id, "DISABLED");
             return ZP_PLUGIN_HANDLED;
          }
          
          if(g_has_pipe[id])
          {
             if(get_pcvar_num(cvar_hud) == 1)
             {
                set_hudmessage(255, 0, 0, -1.0, 0.55, 0, 0.0, 2.0, 2.0, 1.0, -1);
                ShowSyncHudMsg(id, g_msgsync, "%L", id, "ALREADY");
             }
             else
                client_print(id, print_chat, "[ZP] %L", id, "ALREADY");
       
             return ZP_PLUGIN_HANDLED;
          }
       
          g_has_pipe[id] = true;
          new was = cs_get_user_bpammo(id, CSW_SMOKEGRENADE);

          if(was >= 1)
             cs_set_user_bpammo(id, CSW_SMOKEGRENADE, was + 1);
          else
             give_item(id, "weapon_smokegrenade");
          
          replace_models(id);
          
          if(get_pcvar_num(cvar_hud) == 1)
          {
             new msg[32], hud = random_num(0, 1);
       
             if(hud == 0)
                formatex(msg, 31, "%L", id, "DANGEROUS");
             else
                formatex(msg, 31, "%L", id, "GO_EXPLOSIVE");
       
             set_hudmessage(255, 0, 0, -1.0, 0.55, 0, 0.0, 3.0, 2.0, 1.0, -1);
             ShowSyncHudMsg(id, g_msgsync, "%s", msg);
          }
       }
       
       if(item == g_mshield)
       {
          if(!get_pcvar_num(cvar_Senabled))
          {
             client_print(id, print_chat, "[ZP] %L", id, "MS_DISABLED");
             return ZP_PLUGIN_HANDLED;
          }
          
          if(g_has_shield[id])
          {
             if(get_pcvar_num(cvar_Shud))
             {
                set_hudmessage(255, 0, 0, -1.0, 0.55, 0, 0.0, 2.0, 2.0, 1.0, -1);
                ShowSyncHudMsg(id, g_msgsync, "%L", id, "ALREADY");
             }
             else
                client_print(id, print_chat, "[ZP] %L", id, "ALREADY");
          
             return ZP_PLUGIN_HANDLED;
          }
       
          g_has_shield[id] = true;
       
          if(get_pcvar_num(cvar_Shud))
          {
             set_hudmessage(255, 0, 0, -1.0, 0.55, 0, 0.0, 3.0, 2.0, 1.0, -1);
             ShowSyncHudMsg(id, g_msgsync, "%L", id, "PROTECTED");
          }
          else
             client_print(id, print_chat, "[ZP] %L", id, "PROTECTED");
       }
       
       return PLUGIN_CONTINUE;
    }

    public zp_user_infected_post(id)
    {
       g_has_pipe[id] = false;
       g_has_shield[id] = false;
    }
          
    public fw_Spawn(id)
    {
       g_has_pipe[id] = false;
       g_has_shield[id] = false;
    }

    public fw_SetModel(entity, const model[]) // Set smokegrenade pipes effects and type
    {
       static Float:dmgtime, owner;
       pev(entity, pev_dmgtime, dmgtime);
       owner = pev(entity, pev_owner);
       
       if(!pev_valid(entity) || dmgtime == 0.0)
          return FMRES_IGNORED;
       
       if (model[9] == 's' && model[10] == 'm' && g_has_pipe[owner])
       {
          g_has_pipe[owner] = false;
          entity_set_model(entity, g_wmodel);
          replace_models2(owner);
          
          set_rendering(entity, kRenderFxGlowShell, 128, 0, 0, kRenderNormal, 16);
          
          message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
          write_byte(TE_BEAMFOLLOW) // TE id
          write_short(entity) // entity
          write_short(g_trail) // sprite
          write_byte(10) // life
          write_byte(10) // width
          write_byte(128) // r
          write_byte(0) // g
          write_byte(0) // b
          write_byte(255) // brightness
          message_end()
          
          set_pev(entity, pev_flTimeStepSound, NADE_TYPE_PIPE);
          
          return FMRES_SUPERCEDE;
       }
       
       return FMRES_IGNORED;
    }

    public fw_ThinkGren(entity) // Grenade think event
    {
       if (!pev_valid(entity))
          return HAM_IGNORED;
       
       static Float:dmgtime, Float: current_time, attacker;
       pev(entity, pev_dmgtime, dmgtime);
       current_time = get_gametime();
       attacker = pev(entity, pev_owner);
       
       if(dmgtime > current_time)
          return HAM_IGNORED;
       
       if(pev(entity, pev_flTimeStepSound) == NADE_TYPE_PIPE)
       {
          static duration;
          duration = pev(entity, NADE_DURATION_PIPE);
          
          if (duration > 0)
          {
             new Float:originF[3]
             pev(entity, pev_origin, originF);
             
             if (duration == 1)
             {
                remove_task(entity);
                effect(originF);
                
                if (get_pcvar_num(cvar_mode) == 1)
                   kill(originF, attacker);
                
                engfunc(EngFunc_RemoveEntity, entity);
                return HAM_SUPERCEDE;
             }
             
             light(originF, duration);
             set_task(0.1, "hook", entity, _, _, "b");
             
             if(get_pcvar_num(cvar_mode) == 2)
                set_task(1.0, "hurt", entity, _, _, "b");
                
             if(get_pcvar_num(cvar_sound))
             {
                if(duration == 2)
                   set_task(0.1, "beep", entity, _, _, "b");
                else
                   emit_sound(entity, CHAN_WEAPON, g_sound, 1.0, ATTN_NORM, 0, PITCH_HIGH);
             }
             
             set_pev(entity, NADE_DURATION_PIPE, --duration);
             set_pev(entity, pev_dmgtime, current_time + 3.0);
          } else if ((pev(entity, pev_flags) & FL_ONGROUND) && get_speed(entity) < 10)
          {
             set_pev(entity, NADE_DURATION_PIPE, 1 + get_pcvar_num(cvar_duration)/3);
             set_pev(entity, pev_dmgtime, current_time + 0.1);
          } else
             set_pev(entity, pev_dmgtime, current_time + 0.5);
       }
       
       return HAM_IGNORED;
    }

    public beep(entity) // Plays loop beep sound before explosion
    {
       //Bugfix
       if (!pev_valid(entity))
       {
          remove_task(entity);
          return;
       }
       
       emit_sound(entity, CHAN_WEAPON, g_sound, 1.0, ATTN_NORM, 0, PITCH_HIGH);
    }

    public hook(entity) // Magnet func. Hooks zombies to nade
    {
       //Bugfix
       if (!pev_valid(entity))
       {
          remove_task(entity);
          return;
       }
       
       static Float:originF[3], Float:radius, victim = -1;
       radius = get_pcvar_float(cvar_radius);
       pev(entity, pev_origin, originF);
       
       while ((victim = engfunc(EngFunc_FindEntityInSphere, victim, originF, radius)) != 0)
       {
          if (!is_user_alive(victim) || !zp_get_user_zombie(victim) || g_has_shield[victim])
             continue;

          new Float:fl_Velocity[3];
          new vicOrigin[3], originN[3];

          get_user_origin(victim, vicOrigin);
          originN[0] = floatround(originF[0]);
          originN[1] = floatround(originF[1]);
          originN[2] = floatround(originF[2]);
          
          new distance = get_distance(originN, vicOrigin);

          if (distance > 1)
          {
             new Float:fl_Time = distance / get_pcvar_float(cvar_speed);

             fl_Velocity[0] = (originN[0] - vicOrigin[0]) / fl_Time;
             fl_Velocity[1] = (originN[1] - vicOrigin[1]) / fl_Time;
             fl_Velocity[2] = (originN[2] - vicOrigin[2]) / fl_Time;
          } else
          {
             fl_Velocity[0] = 0.0
             fl_Velocity[1] = 0.0
             fl_Velocity[2] = 0.0
          }

          entity_set_vector(victim, EV_VEC_velocity, fl_Velocity);
          
          if(get_pcvar_num(cvar_shake))
          {
             message_begin(MSG_ONE_UNRELIABLE, g_shake, _, victim)
             write_short(1<<14) // amplitude
             write_short(1<<14) // duration
             write_short(1<<14) // frequency
             message_end()
          }
       }
    }

    public hurt(entity) // Hurts zombies if mode = 2
    {
       //Bugfix
       if (!pev_valid(entity))
       {
          remove_task(entity);
          return;
       }
       
       static Float:originF[3], Float:radius, victim = -1;
       radius = get_pcvar_float(cvar_radius)/2.0;
       pev(entity, pev_origin, originF);
       
       while ((victim = engfunc(EngFunc_FindEntityInSphere, victim, originF, radius)) != 0)
       {
          if (!is_user_alive(victim) || !zp_get_user_zombie(victim) || g_has_shield[victim])
             continue;
          
          new Float:dam = get_pcvar_float(cvar_damage);
          
          if(get_user_health(victim) - get_pcvar_float(cvar_damage) > 0)
             fakedamage(victim, "Pipe Bomb", dam, 256);
       }
    }

    public kill(const Float:originF[3], attacker) // Kills zombies in radius / 2 if mode = 1
    {
       static Float:radius, victim = -1;
       radius = get_pcvar_float(cvar_radius) / 2.0;
       
       while ((victim = engfunc(EngFunc_FindEntityInSphere, victim, originF, radius)) != 0)
       {
          if (!is_user_alive(victim) || !zp_get_user_zombie(victim) || g_has_shield[victim])
             continue;
          
          new Float:dam = get_pcvar_float(cvar_damage);
          set_msg_block(g_death, BLOCK_SET);
          fakedamage(victim, "Pipe Bomb", dam, 256);
          set_msg_block(g_death, BLOCK_NOT);
          
          if(get_user_health(victim) <= 0)
          {
             SendDeathMsg(attacker, victim);
             
             if(victim != attacker && !zp_get_user_zombie(attacker))
                UpdateFrags(attacker, 1, 1);
             else
                UpdateFrags(attacker, -1, 1);
          }
       }
    }

    public light(const Float:originF[3], duration)  // Blast ring and small red light around nade from zombie_plague40.sma. Great thx, MeRcyLeZZ!!! ;)
    {
       // Lighting
       engfunc(EngFunc_MessageBegin, MSG_PAS, SVC_TEMPENTITY, originF, 0);
       write_byte(TE_DLIGHT); // TE id
       engfunc(EngFunc_WriteCoord, originF[0]); // x
       engfunc(EngFunc_WriteCoord, originF[1]); // y
       engfunc(EngFunc_WriteCoord, originF[2]); // z
       write_byte(5); // radius
       write_byte(128); // r
       write_byte(0); // g
       write_byte(0); // b
       write_byte(51); //life
       write_byte((duration < 2) ? 3 : 0); //decay rate
       message_end();
       
       // Smallest ring
       engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF, 0)
       write_byte(TE_BEAMCYLINDER) // TE id
       engfunc(EngFunc_WriteCoord, originF[0]) // x
       engfunc(EngFunc_WriteCoord, originF[1]) // y
       engfunc(EngFunc_WriteCoord, originF[2]) // z
       engfunc(EngFunc_WriteCoord, originF[0]) // x axis
       engfunc(EngFunc_WriteCoord, originF[1]) // y axis
       engfunc(EngFunc_WriteCoord, originF[2]+385.0) // z axis
       write_short(g_ring) // sprite
       write_byte(0) // startframe
       write_byte(0) // framerate
       write_byte(4) // life
       write_byte(60) // width
       write_byte(0) // noise
       write_byte(128) // red
       write_byte(0) // green
       write_byte(0) // blue
       write_byte(200) // brightness
       write_byte(0) // speed
       message_end()
       
       // Medium ring
       engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF, 0)
       write_byte(TE_BEAMCYLINDER) // TE id
       engfunc(EngFunc_WriteCoord, originF[0]) // x
       engfunc(EngFunc_WriteCoord, originF[1]) // y
       engfunc(EngFunc_WriteCoord, originF[2]) // z
       engfunc(EngFunc_WriteCoord, originF[0]) // x axis
       engfunc(EngFunc_WriteCoord, originF[1]) // y axis
       engfunc(EngFunc_WriteCoord, originF[2]+470.0) // z axis
       write_short(g_ring) // sprite
       write_byte(0) // startframe
       write_byte(0) // framerate
       write_byte(4) // life
       write_byte(60) // width
       write_byte(0) // noise
       write_byte(128) // red
       write_byte(0) // green
       write_byte(0) // blue
       write_byte(200) // brightness
       write_byte(0) // speed
       message_end()
       
       // Largest ring
       engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF, 0)
       write_byte(TE_BEAMCYLINDER) // TE id
       engfunc(EngFunc_WriteCoord, originF[0]) // x
       engfunc(EngFunc_WriteCoord, originF[1]) // y
       engfunc(EngFunc_WriteCoord, originF[2]) // z
       engfunc(EngFunc_WriteCoord, originF[0]) // x axis
       engfunc(EngFunc_WriteCoord, originF[1]) // y axis
       engfunc(EngFunc_WriteCoord, originF[2]+555.0) // z axis
       write_short(g_ring) // sprite
       write_byte(0) // startframe
       write_byte(0) // framerate
       write_byte(4) // life
       write_byte(60) // width
       write_byte(0) // noise
       write_byte(128) // red
       write_byte(0) // green
       write_byte(0) // blue
       write_byte(200) // brightness
       write_byte(0) // speed
       message_end()
    }

    public effect(const Float:originF[3]) // Explosion effect
    {
       // Largest ring
       engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF, 0)
       write_byte(TE_BEAMCYLINDER) // TE id
       engfunc(EngFunc_WriteCoord, originF[0]) // x
       engfunc(EngFunc_WriteCoord, originF[1]) // y
       engfunc(EngFunc_WriteCoord, originF[2]) // z
       engfunc(EngFunc_WriteCoord, originF[0]) // x axis
       engfunc(EngFunc_WriteCoord, originF[1]) // y axis
       engfunc(EngFunc_WriteCoord, originF[2]+555.0) // z axis
       write_short(g_ring) // sprite
       write_byte(0) // startframe
       write_byte(0) // framerate
       write_byte(4) // life
       write_byte(60) // width
       write_byte(0) // noise
       write_byte(128) // red
       write_byte(0) // green
       write_byte(0) // blue
       write_byte(200) // brightness
       write_byte(0) // speed
       message_end()
       
       // Explosion sprite
       engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF, 0)
       write_byte(TE_EXPLOSION)
       engfunc(EngFunc_WriteCoord, originF[0])
       engfunc(EngFunc_WriteCoord, originF[1])
       engfunc(EngFunc_WriteCoord, originF[2])
       write_short(g_fire) //sprite index
       write_byte(25) // scale in 0.1's
       write_byte(10) // framerate
       write_byte(0) // flags
       message_end()
    }

    UpdateFrags(attacker, frags, scoreboard) // Updates attacker frags
    {
       // Set attacker frags
       set_pev(attacker, pev_frags, float(pev(attacker, pev_frags) + frags))
       
       if(get_pcvar_num(cvar_extraap) > 0)
          zp_set_user_ammo_packs(attacker, zp_get_user_ammo_packs(attacker) + get_pcvar_num(cvar_extraap));
          
       // Update scoreboard with attacker and victim info
       if (scoreboard)
       {
          message_begin(MSG_BROADCAST, g_score)
          write_byte(attacker) // id
          write_short(pev(attacker, pev_frags)) // frags
          write_short(get_user_deaths(attacker)) // deaths
          write_short(0) // class?
          write_short(get_user_team(attacker)) // team
          message_end()
       }
    }

    SendDeathMsg(attacker, victim) // Sends death message
    {
       message_begin(MSG_BROADCAST, g_death)
       write_byte(attacker) // killer
       write_byte(victim) // victim
       write_byte(0) // headshot flag
       write_string("Pipe Bomb") // killer's weapon
       message_end()
    }
    /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
    *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1049\\ f0\\ fs16 \n\\ par }
    */

      Data/hora atual: 23/11/2024, 8:31 am