This site is a testing version, but all data is shared with the live forum.


Raised This Month: $ Target: $400
 0% 

How to fixed ZP Items Rock Guitar


Post New Thread Reply   
 
Thread Tools Display Modes
georgik57
Veteran Member
Join Date: Oct 2008
Location: 🎧Music World
Old 04-04-2024 , 05:45   Re: How to fixed ZP Items Rock Guitar
Reply With Quote #11

Delete or comment:
PHP Code:
stock client_print_color(const id,const input[], any:...)
{
    new 
msg[191], players[32], count 1vformat(msg,190,input,3);
    
replace_all(msg,190,"!g","^4");    // green
    
replace_all(msg,190,"!y","^1");    // normal
    
replace_all(msg,190,"!t","^3");    // team
        
    
if (idplayers[0] = id; else get_players(players,count,"ch");
        
    for (new 
i=0;i<count;i++)
    {
        if (
is_user_connected(players[i]))
        {
            
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
            
write_byte(players[i]);
            
write_string(msg);
            
message_end();
        }
    }

__________________
georgik57 is offline
Send a message via MSN to georgik57 Send a message via Yahoo to georgik57 Send a message via Skype™ to georgik57
bakugan
Member
Join Date: Dec 2023
Location: Bulgaria
Old 04-04-2024 , 12:26   Re: How to fixed ZP Items Rock Guitar
Reply With Quote #12

Quote:
Originally Posted by georgik57 View Post
Delete or comment:
PHP Code:
stock client_print_color(const id,const input[], any:...)
{
    new 
msg[191], players[32], count 1vformat(msg,190,input,3);
    
replace_all(msg,190,"!g","^4");    // green
    
replace_all(msg,190,"!y","^1");    // normal
    
replace_all(msg,190,"!t","^3");    // team
        
    
if (idplayers[0] = id; else get_players(players,count,"ch");
        
    for (new 
i=0;i<count;i++)
    {
        if (
is_user_connected(players[i]))
        {
            
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
            
write_byte(players[i]);
            
write_string(msg);
            
message_end();
        }
    }


Just fixed my plugins:

PHP Code:
/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "[ V.I.P ] Extra Item"
#define VERSION "ZM4.3"
#define AUTHOR "HarveyWNvm LLC."


#define WEAPON_BITSUM ((1<<CSW_GALIL))
#define ITEM_COST 35

new const V_GUITAR_MDL[64] = "models/zombie_plague/v_rock_guitar.mdl";
new const 
P_GUITAR_MDL[64] = "models/zombie_plague/p_rock_guitar.mdl";
new const 
W_GUITAR_MDL[64] = "models/zombie_plague/w_rock_guitar.mdl";
new const 
OLD_W_MDL[64] = "models/w_galil.mdl";

new const 
GUNSHOT_DECALS[] = { 4142434445 }

new const 
GUITAR_SOUNDS[][] = {"weapons/gt_clipin.wav""weapons/gt_clipon.wav""weapons/gt_clipout.wav""weapons/gt_draw.wav"}

new const 
ZOOM_SOUND[] = "weapons/zoom.wav";
new const 
SHOT_SOUND[] = "weapons/rguitar.wav";

new 
g_itemid g_has_guitar[33] , g_hamczbots g_clip_ammo[33] , g_has_zoom[33] , blood_spr[2] , cvar_rockguitar_damage_x cvar_rockguitar_clip cvar_rockguitar_bpammo cvar_rockguitar_shotspd cvar_rockguitar_oneround cvar_botquota;

public 
plugin_init()
{
    
// Plugin Register
    
register_plugin("[ZP] Extra Item: Rock Guitar""VERSION""HarveyWNvm LLC.");

    
// Extra Item Register
    
g_itemid /= zv_register_extra_item("[ZP] Rock Guitar""X3 DMG""ZV_TEAM_HUMAN")

    
// Cvars Register
    
cvar_rockguitar_damage_x register_cvar("zp_rockguitar_damage_x""5.0");
    
cvar_rockguitar_clip register_cvar("zp_rockguitar_clip""40");
    
cvar_rockguitar_bpammo register_cvar("zp_rockguitar_bpammo""200");
    
cvar_rockguitar_shotspd register_cvar("zp_rockguitar_shot_speed""0.11");
    
cvar_rockguitar_oneround register_cvar("zp_rockguitar_oneround""0");

    
// Cvar Pointer
    
cvar_botquota get_cvar_pointer("bot_quota");

    
// Events
    
register_event("CurWeapon""event_CurWeapon""b""1=1");
    
register_event("HLTV""event_RoundStart""a""1=0""2=0");
    
register_event("DeathMsg""event_DeathMsg""a""1>0");

    
// Forwards
    
register_forward(FM_SetModel"fw_SetModel");
    
register_forward(FM_UpdateClientData"fw_UpdateClientData_Post"1);
    
register_forward(FM_CmdStart"fw_CmdStart");

    
// Hams
    
RegisterHam(Ham_Item_PostFrame"weapon_galil""fw_ItemPostFrame");
    
RegisterHam(Ham_Item_AddToPlayer"weapon_galil""fw_AddToPlayer");
    
RegisterHam(Ham_Weapon_PrimaryAttack"weapon_galil""fw_PrimaryAttack");
    
RegisterHam(Ham_Weapon_PrimaryAttack"weapon_galil""fw_PrimaryAttack_Post"1);
    
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage");
}

public 
plugin_precache()
{
    
// Models
    
precache_model(V_GUITAR_MDL);
    
precache_model(P_GUITAR_MDL);
    
precache_model(W_GUITAR_MDL);
    
precache_model(OLD_W_MDL);

    
// Blood Sprites
    
blood_spr[0] = precache_model("sprites/blood.spr");
    
blood_spr[1] = precache_model("sprites/bloodspray.spr");

    
// Sounds
    
for(new 0sizeof GUITAR_SOUNDSi++) precache_sound(GUITAR_SOUNDS[i]);
    
precache_sound(ZOOM_SOUND);
    
precache_sound(SHOT_SOUND);
}

public 
client_putinserver(id)
{
    
g_has_guitar[id] = false;

    if (
is_user_bot(id) && !g_hamczbots && cvar_botquota)
    {
        
set_task(0.1"register_ham_czbots"id);
    }
}

public 
client_disconnect(id)
{
    
g_has_guitar[id] = false;
}

public 
client_connected(id)
{
    
g_has_guitar[id] = false;
}

public 
zp_user_humanized_post(idhuman)
{
    if(
get_pcvar_num(cvar_rockguitar_oneround))
        
g_has_guitar[id] = false;
}

public 
zp_user_infected_post(id)
{
    
g_has_guitar[id] = false;
}

public 
register_ham_czbots(id)
{
    if (
g_hamczbots || !is_user_bot(id) || !get_pcvar_num(cvar_botquota))
        return;

    
RegisterHamFromEntity(Ham_TakeDamageid"fw_TakeDamage");

    
g_hamczbots true;
}

public 
zv_extra_item_selected(playeritemid)
{
    if(
itemid == g_itemid)
    {
        if(
user_has_weapon(playerCSW_GALIL))
        {
            
drop_primary(player);
        }
        
g_has_guitar[player] = true;
        new 
wpnid give_item(player"weapon_galil");
        
client_print_color(player"!g[ZP] !yYou bought !g%s!y."ITEM_NAME);
        
cs_set_weapon_ammo(wpnidget_pcvar_num(cvar_rockguitar_clip));
        
cs_set_user_bpammo(playerCSW_GALILget_pcvar_num(cvar_rockguitar_bpammo));
    }
}

public 
event_CurWeapon(id)
{
    if (!
is_user_alive(id) || zp_get_user_zombie(id)) return PLUGIN_HANDLED;
    
    if (
read_data(2) == CSW_GALIL && g_has_guitar[id])
    {
        
set_pev(idpev_viewmodel2V_GUITAR_MDL);
        
set_pev(idpev_weaponmodel2P_GUITAR_MDL);
    }
    return 
PLUGIN_CONTINUE;
}

public 
event_RoundStart()
{
    if(
get_pcvar_num(cvar_rockguitar_oneround))
    {
        for (new 
1<= get_maxplayers(); i++)
            
g_has_guitar[i] = false;
    }
}

public 
event_DeathMsg()
{
    
g_has_guitar[read_data(2)] = false;
}

public 
fw_SetModel(entitymodel[])
{
    if(!
pev_valid(entity) || !equal(modelOLD_W_MDL)) return FMRES_IGNORED;
    
    static 
szClassName[33]; pev(entitypev_classnameszClassNamecharsmax(szClassName));
    if(!
equal(szClassName"weaponbox")) return FMRES_IGNORED;
    
    static 
ownerwpn;
    
owner pev(entitypev_owner);
    
wpn find_ent_by_owner(-1"weapon_galil"entity);
    
    if(
g_has_guitar[owner] && pev_valid(wpn))
    {
        
g_has_guitar[owner] = false;
        
set_pev(wpnpev_impulse43555);
        
engfunc(EngFunc_SetModelentityW_GUITAR_MDL);
        
        return 
FMRES_SUPERCEDE;
    }
    return 
FMRES_IGNORED;
}

public 
fw_UpdateClientData_Post(idsendweaponscd_handle)
{
    if(
is_user_alive(id) && get_user_weapon(id) == CSW_GALIL && g_has_guitar[id])
    {
        
set_cd(cd_handleCD_flNextAttackhalflife_time () + 0.001);
    }
}

public 
fw_CmdStart(iduc_handleseed)
{
    if(
is_user_alive(id) &&  get_user_weapon(id) == CSW_GALIL && g_has_guitar[id])
    {
        if((
get_uc(uc_handleUC_Buttons) & IN_ATTACK2) && !(pev(idpev_oldbuttons) & IN_ATTACK2))
        {
            if(!
g_has_zoom[id])
            {
                
g_has_zoom[id] = true;
                
cs_set_user_zoom(idCS_SET_AUGSG552_ZOOM1);
                
emit_sound(idCHAN_ITEMZOOM_SOUND0.202.400100);
            }
            else
            {
                
g_has_zoom[id] = false;
                
cs_set_user_zoom(idCS_RESET_ZOOM0);
            }
        }

        if (
g_has_zoom[id] && (pev(idpev_button) & IN_RELOAD))
        {
            
g_has_zoom[id] = false;
            
cs_set_user_zoom(idCS_RESET_ZOOM0);
        }
    }
}

public 
fw_ItemPostFrame(weapon_entity)
{
    new 
id pev(weapon_entitypev_owner);

    if(
g_has_guitar[id] && is_user_alive(id))
    {
        static 
iClipExtraiClipExtra get_pcvar_num(cvar_rockguitar_clip);

        new 
Float:flNextAttack get_pdata_float(id835);

        new 
iBpAmmo cs_get_user_bpammo(idCSW_GALIL);
        new 
iClip get_pdata_int(weapon_entity514);

        new 
fInReload get_pdata_int(weapon_entity544);

        if(
fInReload && flNextAttack <= 0.0)
        {
            new 
Clp min(iClipExtra iClipiBpAmmo);
            
set_pdata_int(weapon_entity51iClip Clp4);
            
cs_set_user_bpammo(idCSW_GALILiBpAmmo-Clp);
            
set_pdata_int(weapon_entity5404);
        }
    }
}

public 
fw_AddToPlayer(weapon_entityid)
{
    if(
pev_valid(weapon_entity) && is_user_connected(id) && pev(weapon_entitypev_impulse) == 43555)
    {
        
g_has_guitar[id] = true;
        
set_pev(weapon_entitypev_impulse0);
        return 
HAM_HANDLED;
    }
    return 
HAM_IGNORED;
}

public 
fw_PrimaryAttack(weapon_entity)
{
    new 
id get_pdata_cbase(weapon_entity414);
    
    if(
g_has_guitar[id])
    {
        
g_clip_ammo[id] = cs_get_weapon_ammo(weapon_entity);
    }
}

public 
fw_PrimaryAttack_Post(weapon_entity)
{
    new 
id get_pdata_cbase(weapon_entity414);

    if (
g_has_guitar[id] && g_clip_ammo[id])
    {
        
set_pdata_float(weapon_entity46get_pcvar_float(cvar_rockguitar_shotspd), 4);
        
emit_sound(idCHAN_WEAPONSHOT_SOUND[0], VOL_NORMATTN_NORM0PITCH_NORM);
        
UTIL_PlayWeaponAnimation(idrandom_num(35));
        
UTIL_MakeBloodAndBulletHoles(id);
    }
}

public 
fw_TakeDamage(victiminflictorattackerFloat:damage)
{
    if(
is_user_alive(attacker) && get_user_weapon(attacker) == CSW_GALIL && g_has_guitar[attacker])
    {
        
SetHamParamFloat(4damage get_pcvar_float(cvar_rockguitar_damage_x));
    }
}

stock UTIL_PlayWeaponAnimation(const Player, const Sequence)
{
    
set_pev(Playerpev_weaponanimSequence);
    
    
message_begin(MSG_ONE_UNRELIABLESVC_WEAPONANIM, .player Player);
    
write_byte(Sequence);
    
write_byte(pev(Playerpev_body));
    
message_end();
}

stock UTIL_MakeBloodAndBulletHoles(id)
{
    new 
aimOrigin[3], targetbody;
    
get_user_origin(idaimOrigin3);
    
get_user_aiming(idtargetbody);
    
    if(
target && target <= get_maxplayers() && zp_get_user_zombie(target))
    {
        new 
Float:fStart[3], Float:fEnd[3], Float:fRes[3], Float:fVel[3];
        
pev(idpev_originfStart);
        
        
velocity_by_aim(id64fVel);
        
        
fStart[0] = float(aimOrigin[0]);
        
fStart[1] = float(aimOrigin[1]);
        
fStart[2] = float(aimOrigin[2]);
        
fEnd[0] = fStart[0]+fVel[0];
        
fEnd[1] = fStart[1]+fVel[1];
        
fEnd[2] = fStart[2]+fVel[2];
        
        new 
res;
        
engfunc(EngFunc_TraceLinefStartfEnd0targetres);
        
get_tr2(resTR_vecEndPosfRes);
        
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY);
        
write_byte(TE_BLOODSPRITE);
        
write_coord(floatround(fStart[0]));
        
write_coord(floatround(fStart[1]));
        
write_coord(floatround(fStart[2]));
        
write_short(blood_spr[1]);
        
write_short(blood_spr[0]);
        
write_byte(70);
        
write_byte(random_num(1,2));
        
message_end();
        
        
    } 
    else if(!
is_user_connected(target))
    {
        if(
target)
        {
            
message_begin(MSG_BROADCASTSVC_TEMPENTITY);
            
write_byte(TE_DECAL);
            
write_coord(aimOrigin[0]);
            
write_coord(aimOrigin[1]);
            
write_coord(aimOrigin[2]);
            
write_byte(GUNSHOT_DECALS[random_num(0sizeof GUNSHOT_DECALS -1)]);
            
write_short(target);
            
message_end();
        } 
        else 
        {
            
message_begin(MSG_BROADCASTSVC_TEMPENTITY);
            
write_byte(TE_WORLDDECAL);
            
write_coord(aimOrigin[0]);
            
write_coord(aimOrigin[1]);
            
write_coord(aimOrigin[2]);
            
write_byte(GUNSHOT_DECALS[random_num(0sizeof GUNSHOT_DECALS -1)]);
            
message_end()
        }
        
        
message_begin(MSG_BROADCASTSVC_TEMPENTITY);
        
write_byte(TE_GUNSHOTDECAL);
        
write_coord(aimOrigin[0]);
        
write_coord(aimOrigin[1]);
        
write_coord(aimOrigin[2]);
        
write_short(id);
        
write_byte(GUNSHOT_DECALS[random_num(0sizeof GUNSHOT_DECALS -)]);
        
message_end();
    }
}

stock drop_primary(id)
{
    new 
weapons[32], num;
    
get_user_weapons(idweaponsnum);
    for (new 
0numi++)
    {
        if (
WEAPON_BITSUM & (1<<weapons[i]))
        {
            static 
wname[32];
            
get_weaponname(weapons[i], wnamesizeof wname 1);
            
engclient_cmd(id"drop"wname);
        }
    }
}

stock client_print_color(const id,const input[], any:...)
{
    new 
msg[191], players[32], count 1vformat(msg,190,input,3);
    
replace_all(msg,190,"!g","^4");    // green
    
replace_all(msg,190,"!y","^1");    // normal
    
replace_all(msg,190,"!t","^3");    // team
        
    
if (idplayers[0] = id; else get_players(players,count,"ch");
        
    for (new 
i=0;i<count;i++)
    {
        if (
is_user_connected(players[i]))
        {
            
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
            
write_byte(players[i]);
            
write_string(msg);
            
message_end();
        }
    }

Thank you!!!
__________________
WebSite
bakugan is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


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


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