Jump to content
Sign in to follow this  
.Metrix

[REZOLVAT] Cerere modificare plugin

Recommended Posts

Nume : zp_extra_goldenak47


Versiune :---


Descriere detaliata : vreau sa imi modificati pluginul in asa fel sa poata fi cumparat doar cu ammo, nu sa poata fi luat din meniul de arme gratis(meniul de la inceput)


/*

[ZP] Extra Item: Golden Ak 47

Team: Humans

 

Description: This plugin adds a new weapon for Human Teams.

Weapon Cost: 30

 

Features:

- This weapon do more damage

- This weapon has zoom

- Launch Lasers

- This weapon has unlimited bullets

 

Credits:

 

KaOs - For his Dual MP5 mod

 

Cvars:

 

 

- zp_goldenak_dmg_multiplier <5> - Damage Multiplier for Golden Ak 47

- zp_goldenak_gold_bullets <1|0> - Golden bullets effect ?

- zp_goldenak_custom_model <1|0> - Golden ak Custom Model

- zp_goldenak_unlimited_clip <1|0> - Golden ak Unlimited Clip 

 

*/

 

 

 

#include <amxmodx>

#include <fakemeta>

#include <fun>

#include <hamsandwich>

#include <cstrike>

#include <zombieplague>

 

#define is_valid_player(%1) (1 <= %1 <= 32)

 

new AK_V_MODEL[64] = "models/zombie_plague/v_golden_ak47.mdl"

new AK_P_MODEL[64] = "models/zombie_plague/p_golden_ak47.mdl"

 

/* Pcvars */

new cvar_dmgmultiplier, cvar_goldbullets,  cvar_custommodel, cvar_uclip

 

// Item ID

new g_itemid

 

new bool:g_HasAk[33]

 

new g_hasZoom[ 33 ]

new bullets[ 33 ]

 

// Sprite

new m_spriteTexture

 

const Wep_ak47 = ((1<<CSW_AK47))

 

public plugin_init()

{

 

/* CVARS */

cvar_dmgmultiplier = register_cvar("zp_goldenak_dmg_multiplier", "5")

cvar_custommodel = register_cvar("zp_goldenak_custom_model", "1")

cvar_goldbullets = register_cvar("zp_goldenak_gold_bullets", "1")

cvar_uclip = register_cvar("zp_goldenak_unlimited_clip", "1")

 

// Register The Plugin

register_plugin("[ZP] Extra: Golden Ak 47", "1.1", "AlejandroSk")

// Register Zombie Plague extra item

g_itemid = zp_register_extra_item("Golden Ak 47", 30, ZP_TEAM_HUMAN)

// Death Msg

register_event("DeathMsg", "Death", "a")

// Weapon Pick Up

register_event("WeapPickup","checkModel","b","1=19")

// Current Weapon Event

register_event("CurWeapon","checkWeapon","be","1=1")

register_event("CurWeapon", "make_tracer", "be", "1=1", "3>0")

// Ham TakeDamage

RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")

register_forward( FM_CmdStart, "fw_CmdStart" )

RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1)

 

}

 

public client_connect(id)

{

g_HasAk[id] = false

}

 

public client_disconnect(id)

{

g_HasAk[id] = false

}

 

public Death()

{

g_HasAk[read_data(2)] = false

}

 

public fwHamPlayerSpawnPost(id)

{

g_HasAk[id] = false

}

 

public plugin_precache()

{

precache_model(AK_V_MODEL)

precache_model(AK_P_MODEL)

m_spriteTexture = precache_model("sprites/dot.spr")

precache_sound("weapons/zoom.wav")

}

 

public zp_user_infected_post(id)

{

if (zp_get_user_zombie(id))

{

g_HasAk[id] = false

}

}

 

public checkModel(id)

{

if ( zp_get_user_zombie(id) )

return PLUGIN_HANDLED

 

new szWeapID = read_data(2)

 

if ( szWeapID == CSW_AK47 && g_HasAk[id] == true && get_pcvar_num(cvar_custommodel) )

{

set_pev(id, pev_viewmodel2, AK_V_MODEL)

set_pev(id, pev_weaponmodel2, AK_P_MODEL)

}

return PLUGIN_HANDLED

}

 

public checkWeapon(id)

{

new plrClip, plrAmmo, plrWeap[32]

new plrWeapId

 

plrWeapId = get_user_weapon(id, plrClip , plrAmmo)

 

if (plrWeapId == CSW_AK47 && g_HasAk[id])

{

checkModel(id)

}

else 

{

return PLUGIN_CONTINUE

}

 

if (plrClip == 0 && get_pcvar_num(cvar_uclip))

{

// If the user is out of ammo..

get_weaponname(plrWeapId, plrWeap, 31)

// Get the name of their weapon

give_item(id, plrWeap)

engclient_cmd(id, plrWeap) 

engclient_cmd(id, plrWeap)

engclient_cmd(id, plrWeap)

}

return PLUGIN_HANDLED

}

 

 

 

public fw_TakeDamage(victim, inflictor, attacker, Float:damage)

{

    if ( is_valid_player( attacker ) && get_user_weapon(attacker) == CSW_AK47 && g_HasAk[attacker] )

    {

        SetHamParamFloat(4, damage * get_pcvar_float( cvar_dmgmultiplier ) )

    }

}

 

public fw_CmdStart( id, uc_handle, seed )

{

if( !is_user_alive( id ) ) 

return PLUGIN_HANDLED

 

if( ( get_uc( uc_handle, UC_Buttons ) & IN_ATTACK2 ) && !( pev( id, pev_oldbuttons ) & IN_ATTACK2 ) )

{

new szClip, szAmmo

new szWeapID = get_user_weapon( id, szClip, szAmmo )

 

if( szWeapID == CSW_AK47 && g_HasAk[id] == true && !g_hasZoom[id] == true)

{

g_hasZoom[id] = true

cs_set_user_zoom( id, CS_SET_AUGSG552_ZOOM, 0 )

emit_sound( id, CHAN_ITEM, "weapons/zoom.wav", 0.20, 2.40, 0, 100 )

}

 

else if ( szWeapID == CSW_AK47 && g_HasAk[id] == true && g_hasZoom[id])

{

g_hasZoom[ id ] = false

cs_set_user_zoom( id, CS_RESET_ZOOM, 0 )

 

}

 

}

return PLUGIN_HANDLED

}

 

 

public make_tracer(id)

{

if (get_pcvar_num(cvar_goldbullets))

{

new clip,ammo

new wpnid = get_user_weapon(id,clip,ammo)

new pteam[16]

 

get_user_team(id, pteam, 15)

 

if ((bullets[id] > clip) && (wpnid == CSW_AK47) && g_HasAk[id]) 

{

new vec1[3], vec2[3]

get_user_origin(id, vec1, 1) // origin; your camera point.

get_user_origin(id, vec2, 4) // termina; where your bullet goes (4 is cs-only)

 

 

//BEAMENTPOINTS

message_begin( MSG_BROADCAST,SVC_TEMPENTITY)

write_byte (0)     //TE_BEAMENTPOINTS 0

write_coord(vec1[0])

write_coord(vec1[1])

write_coord(vec1[2])

write_coord(vec2[0])

write_coord(vec2[1])

write_coord(vec2[2])

write_short( m_spriteTexture )

write_byte(1) // framestart

write_byte(5) // framerate

write_byte(2) // life

write_byte(10) // width

write_byte(0) // noise

write_byte( 255 )     // r, g, b

write_byte( 215 )       // r, g, b

write_byte( 0 )       // r, g, b

write_byte(200) // brightness

write_byte(150) // speed

message_end()

}

 

bullets[id] = clip

}

 

}

 

public zp_extra_item_selected(player, itemid)

{

if ( itemid == g_itemid )

{

if ( user_has_weapon(player, CSW_AK47) )

{

drop_prim(player)

}

 

give_item(player, "weapon_ak47")

client_print(player, print_chat, "[ZP] You bought Golden Ak - 47")

g_HasAk[player] = true;

}

}

 

stock drop_prim(id) 

{

new weapons[32], num

get_user_weapons(id, weapons, num)

for (new i = 0; i < num; i++) {

if (Wep_ak47 & (1<<weapons)) 

{

static wname[32]

get_weaponname(weapons, wname, sizeof wname - 1)

engclient_cmd(id, "drop", wname)

}

}

}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE

*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1034\\ f0\\ fs16 \n\\ par }

*/

 

Share this post


Link to post
Share on other sites

Trebuie modificat foarte mult pluginul de bazaa ca sa apara la meniul de arme de la spawn.

Daca esti dispus sa platesti ma contactezi.

Share this post


Link to post
Share on other sites

Eu vreau sa nu apara la armele de la spawn, vreau sa apara doar in shop si la spawn sa dea ak47 normal.

Share this post


Link to post
Share on other sites

Incearca sa schimbi puginul de aka47 gold daca nu trebuie modificata baza de date :D

P.S am intrat la tine pe sv si ma injurat unu cu numele tau :D

Share this post


Link to post
Share on other sites

Rezolvat, am gasit in alt addons un plugin care merge cum trebuie.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×