Raised This Month: $ Target: $400
 0% 

[ZP] Extra item : Anaconda Relover v1.1


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
.Dare Devil.
Veteran Member
Join Date: Sep 2010
Old 05-26-2011 , 09:08   Re: [ZP] Extra item : Anaconda Relover v1.1
Reply With Quote #9

PHP Code:
/*******************************************************************************
   [ZP] Extra Item: Anaconda Revolver
    Team: Humans
 
 
Description: This plugin adds a new weapon for Human Teams.
Weapon Cost: 20
Features:
- This weapon do more damage
- This weapon has zoom
- This weapon has unlimited bullets
********************************************************************************
Cvars:

- zp_anaconda_dmg_multiplier <5> - Damage Multiplier for Anaconda?
- zp_anaconda_custom_model <1|0> - Anaconda Custom Model
- zp_anaconda_unlimited_clip <1|0> - anaconda Unlimited Clip 
*/
*******************************************************************************
#include <amxmodx>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
#include <cstrike>
#include <zombieplague>
 #define is_valid_player(%1) (1 <= %1 <= 32)
 
new ana_V_MODEL[64] = "models/zombie_plague/v_anaconda.mdl"
 
new ana_P_MODEL[64] = "models/zombie_plague/p_anaconda.mdl"
/* Pcvars */
new cvar_dmgmultiplier,  cvar_custommodelcvar_uclip
// Item ID
new g_itemid
new bool:g_HasDeagle[33]
new 
g_hasZoom33 ]

// Sprite
new m_spriteTexture
const Wep_deagle = ((1<<CSW_DEAGLE))
public 
plugin_init()
{
 
 
/* CVARS */
 
cvar_dmgmultiplier register_cvar("zp_anaconda_dmg_multiplier""3")
 
cvar_custommodel register_cvar("zp_anaconda_custom_model""1")
 
cvar_uclip register_cvar("zp_anaconda_unlimited_clip""0")
 
 
// Register The Plugin
 
register_plugin("[ZP] Extra: Anaconda Revolver""1.1""Fr0zeen")
 
// Register Zombie Plague extra item
 
g_itemid zp_register_extra_item("Anaconda Revolver"20ZP_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")
 
// Ham TakeDamage
 
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage")
 
register_forwardFM_CmdStart"fw_CmdStart" )
 
RegisterHam(Ham_Spawn"player""fwHamPlayerSpawnPost"1)
 
}
public 
client_connect(id)
{
 
g_Hasdeagle[id] = false
}
public 
client_disconnect(id)
{
 
g_Hasdeagle[id] = false
}
public 
Death()
{
 
g_Hasdeagle[read_data(2)] = false
}
public 
fwHamPlayerSpawnPost(id)
{
 
g_Hasdeagle[id] = false
}
public 
plugin_precache()
{
 
precache_model(ana_V_MODEL)
 
precache_model(ana_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_Hasdeagle[id] = false
 
}
}
public 
checkModel(id)
{
 if ( 
zp_get_user_zombie(id) )
  return 
PLUGIN_HANDLED
 
 
new szWeapID read_data(2)
 
 if ( 
szWeapID == CSW_DEAGLE && g_Hasdeagle[id] == true && get_pcvar_num(cvar_custommodel) )
 {
  
set_pev(idpev_viewmodel2ana_V_MODEL)
  
set_pev(idpev_weaponmodel2ana_P_MODEL)
 }
 return 
PLUGIN_HANDLED
}
public 
checkWeapon(id)
{
 new 
plrClipplrAmmoplrWeap[32]
 new 
plrWeapId
 
 plrWeapId 
get_user_weapon(idplrClip plrAmmo)
 
 if (
plrWeapId == CSW_DEAGLE && g_Hasdeagle[id])
 {
  
checkModel(id)
 }
 else 
 {
  return 
PLUGIN_CONTINUE
 
}
 
 if (
plrClip == && get_pcvar_num(cvar_uclip))
 {
  
// If the user is out of ammo..
  
get_weaponname(plrWeapIdplrWeap31)
  
// Get the name of their weapon
  
give_item(idplrWeap)
  
engclient_cmd(idplrWeap
  
engclient_cmd(idplrWeap)
  
engclient_cmd(idplrWeap)
 }
 return 
PLUGIN_HANDLED
}
 
public 
fw_TakeDamage(victiminflictorattackerFloat:damage)
{
    if ( 
is_valid_playerattacker ) && get_user_weapon(attacker) == CSW_DEAGLE && g_Hasdeagle[attacker] )
    {
        
SetHamParamFloat(4damage get_pcvar_floatcvar_dmgmultiplier ) )
    }
}
public 
fw_CmdStartiduc_handleseed )
{
 if( !
is_user_aliveid ) ) 
  return 
PLUGIN_HANDLED
 
 
if( ( get_ucuc_handleUC_Buttons ) & IN_ATTACK2 ) && !( pevidpev_oldbuttons ) & IN_ATTACK2 ) )
 {
  new 
szClipszAmmo
  
new szWeapID get_user_weaponidszClipszAmmo )
  
  if( 
szWeapID == CSW_DEAGLE && g_Hasdeagle[id] == true && !g_hasZoom[id] == true)
  {
   
g_hasZoom[id] = true
   cs_set_user_zoom
idCS_SET_AUGSG552_ZOOM)
   
emit_soundidCHAN_ITEM"weapons/zoom.wav"0.202.400100 )
  }
  
  else if ( 
szWeapID == CSW_DEAGLE && g_HasDEAGLE[id] == true && g_hasZoom[id])
  {
   
g_hasZoomid ] = false
   cs_set_user_zoom
idCS_RESET_ZOOM)
   
  }
  
 }
 return 
PLUGIN_HANDLED
}
 
{
 
 {
  new 
clip,ammo
  
new wpnid get_user_weapon(id,clip,ammo)
  new 
pteam[16]
  
  
get_user_team(idpteam15)
  
  if ((
bullets[id] > clip) && (wpnid == CSW_DEAGLE) && g_Hasdeagle[id]) 
  {
   new 
vec1[3], vec2[3]
   
get_user_origin(idvec11// origin; your camera point.
   
get_user_origin(idvec24// termina; where your bullet goes (4 is cs-only)
   
   
   //BEAMENTPOINTS
   
message_beginMSG_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_shortm_spriteTexture )
   
write_byte(1// framestart
   
write_byte(5// framerate
   
write_byte(2// life
   
write_byte(10// width
   
write_byte(0// noise
   
write_byte255 )     // r, g, b
   
write_byte215 )       // r, g, b
   
write_byte)       // r, g, b
   
write_byte(200// brightness
   
write_byte(150// speed
   
message_end()
  }
 
  
bullets[id] = clip
 
}
 
}
public 
zp_extra_item_selected(playeritemid)
{
 if ( 
itemid == g_itemid )
 {
  if ( 
user_has_weapon(playerCSW_DEAGLE) )
  {
   
drop_prim(player)
  }
  
  
give_item(player"weapon_deagle")
  
client_print(playerprint_chat"[ZP] You bought Anaconda Revolver")
  
g_Hasdeagle[player] = true;
 }
}
stock drop_prim(id
{
 new 
weapons[32], num
 get_user_weapons
(idweaponsnum)
 for (new 
0numi++) {
  if (
Wep_deagle & (1<<weapons[i])) 
  {
   static 
wname[32]
   
get_weaponname(weapons[i], wnamesizeof wname 1)
   
engclient_cmd(id"drop"wname)
  }
 }
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ fbidis\\ ansi\\ ansicpg1252\\ deff0{\\ fonttbl{\\ f0\\ fnil\\ fcharset0 Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ ltrpar\\ lang1034\\ f0\\ fs16 \n\\ par }
*/ 
Golden ak style

Rippperrrrr!
.Dare Devil. is offline
 



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 16:28.


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