AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   [HELP] Bonus Box (https://forums.alliedmods.net/showthread.php?t=278646)

warco 02-05-2016 08:22

[HELP] Bonus Box
 
Hi, i have modified this plugin for my serveur Basebuilder Ammopacks, and the box don't spawn after the player dead (zombie or builder)

I use this plugin : https://forums.alliedmods.net/showthread.php?t=266085


PHP Code:

/*

Name: [ZP] Addon: Bonus Box
Author: PomanoB & STRELOK
Version 1.0

Based on [ZP] DM Item's by PomanoB
*/

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <ammopacks>
#include <basebuilder>
#include <hamsandwich>

#define PLUGIN "[ZP] Addon: Bonus Box"
#define VERSION "1.0"
#define AUTHOR "PomanoB & Accelerator"

#define OFFSET_FLASH_AMMO 387
#define OFFSET_HE_AMMO 388
#define OFFSET_SMOKE_AMMO 389

new const item_class_name[] = "dm_item"

new g_models[][] = {"models/bb/box_bbfg.mdl"}

public 
plugin_precache()
{
    for (new 
0sizeof g_modelsi++)
        
precache_model(g_models[i])    
}

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_forward(FM_Touch"fwd_Touch")
    
    
register_event("HLTV""round_start""a""1=0""2=0")
    
    
RegisterHam(Ham_Killed"player""fw_PlayerKilled")
    
    
register_dictionary("bonus_box.txt")
}

public 
fwd_Touch(touchertouched)
{
    if (!
is_user_alive(toucher) || !pev_valid(touched))
        return 
FMRES_IGNORED
    
    
new classname[32]    
    
pev(touchedpev_classnameclassname31)
    if (!
equal(classnameitem_class_name))
        return 
FMRES_IGNORED


    give_item
(toucher)
    
set_pev(touchedpev_effectsEF_NODRAW)
    
set_pev(touchedpev_solidSOLID_NOT)
    
    return 
FMRES_IGNORED
    
}

public 
fw_PlayerKilled(victimattackershouldgib)
{
    if (!
is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim || !attacker)
        return 
HAM_IGNORED
    
    
    
new random random_num(08)
    
    if (
random == || random == || random == 6)
    {
        new 
origin[3]
        
get_user_origin(victimorigin0)
        
        
addItem(origin)
    }
    
    return 
HAM_IGNORED
}

public 
removeEntity(ent)
{
    if (
pev_valid(ent))
        
engfunc(EngFunc_RemoveEntityent)
}

public 
addItem(origin[3])
{
    new 
ent fm_create_entity("info_target")
    
set_pev(entpev_classnameitem_class_name)
    
    
engfunc(EngFunc_SetModel,entg_models[random_num(0sizeof g_models 1)])

    
set_pev(ent,pev_mins,Float:{-10.0,-10.0,0.0})
    
set_pev(ent,pev_maxs,Float:{10.0,10.0,25.0})
    
set_pev(ent,pev_size,Float:{-10.0,-10.0,0.0,10.0,10.0,25.0})
    
engfunc(EngFunc_SetSize,ent,Float:{-10.0,-10.0,0.0},Float:{10.0,10.0,25.0})

    
set_pev(ent,pev_solid,SOLID_BBOX)
    
set_pev(ent,pev_movetype,MOVETYPE_FLY)
    
    new 
Float:fOrigin[3]
    
IVecFVec(originfOrigin)
    
set_pev(entpev_originfOrigin)
    
    
set_pev(ent,pev_renderfx,kRenderFxGlowShell)
    switch(
random_num(1,4))
    {
        case 
1set_pev(ent,pev_rendercolor,Float:{0.0,0.0,255.0})
        case 
2set_pev(ent,pev_rendercolor,Float:{0.0,255.0,0.0})
        case 
3set_pev(ent,pev_rendercolor,Float:{255.0,0.0,0.0})
        case 
4set_pev(ent,pev_rendercolor,Float:{255.0,255.0,255.0})
    }
}

public 
give_item(id)
{
    new 
zombie 
    zombie 
zp_get_user_zombie(id)
    
    new 
random_num(0,(zombie 7))
    switch (
i)
    {
            
        case 
0:
        {
            
fm_set_user_health(idget_user_health(id) + (zombie 750 250))
            
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_HEALTH_UP")
        }
        case 
1:
        {
            
fm_set_user_health(idget_user_health(id) - (zombie 500 100))
            
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_HEALTH_DOWN")
        }
        case 
2:
        {
            
BB_set_user_ap(idBB_get_user_ap(id) + random_num(115))
            
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_AMMOPACKS_UP")
        }
        case 
3:
        {
            
fm_give_item(id"weapon_flashbang")
            
            
set_pdata_int(idOFFSET_FLASH_AMMO1)
            
            
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_FLASH")
        }
        case 
4:
        {
            if (!
user_has_weapon(idCSW_SG550))
            {
                
fm_give_item(id"weapon_sg550")
                
ExecuteHamB(Ham_GiveAmmoid30"556nato"90)
                
                
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_SG550")
            }
        }
        case 
5:
        {
            if (!
user_has_weapon(idCSW_G3SG1))
            {
                
fm_give_item(id"weapon_g3sg1")
                
ExecuteHamB(Ham_GiveAmmoid30"762nato"20)
                
                
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_G3SG1")
            }
        }
        case 
6:
        {
            
fm_give_item(id"weapon_hegrenade")
            
            
set_pdata_int(idOFFSET_HE_AMMO1)
            
            
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_GRENADE")
        }
        case 
7:
        {
            if (!
user_has_weapon(idCSW_M249))
            {
                
fm_give_item(id"weapon_m249")
                
ExecuteHamB(Ham_GiveAmmoid100"9mm"200)
                
                
ChatColor(id"!g[BB]!y %L"LANG_PLAYER"ITEM_DM_M249")
            }
        }
    }
}

public 
round_start()
{
    new 
ent FM_NULLENT
    
static string_class[] = "classname"
    
while ((ent engfunc(EngFunc_FindEntityByStringentstring_classitem_class_name))) 
        
set_pev(entpev_flagsFL_KILLME)
}

// Stock: ChatColor!
stock ChatColor(const id, const input[], any:...)
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4"// Green Color
    
replace_all(msg190"!y""^1"// Default Color
    
replace_all(msg190"!team""^3"// Team Color
    
replace_all(msg190"!team2""^0"// Team2 Color
    
    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }



warco 02-06-2016 08:03

Re: [HELP] Bonus Box
 
up


All times are GMT -4. The time now is 09:21.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.