Veteran Member
Join Date: Dec 2019
Location: Iran is Always Eternal
|
01-23-2020
, 00:09
Re: Adding guns models to a plugin.
|
#4
|
This plugin is for you
Plugin for Ak-47:
PHP Code:
#include <amxmodx> #include <fakemeta> #include <fun> #include <hamsandwich> #include <cstrike> #include <amxmisc> #include <xs> #include <engine>
#define PLUGIN "Ak-47" #define VERSION "1.0" #define AUTHOR "AlferD"
#define CLIP 30
#define is_valid_player(%1) (1 <= %1 <= 32)
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
new const CSW_NEWPN = CSW_AK47 new const weapon_newpn[] = "weapon_ak47"
new V_MODEL[64] = "models/v_ak47_new.mdl" new P_MODEL[64] = "models/p_ak47_new.mdl"
/* Pcvars */ new cvar_dmgmultiplier, cvar_goldbullets, cvar_custommodel, cvar_cost, g_has_weapon
new Fload:g_clip[33]
new bullets[ 33 ]
new bool:g_HasG[33]
new msg_CurWeapon
// Sprite new m_spriteTexture
const Wep_g = ((1<<CSW_AK47))
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) /* CVARS */ cvar_dmgmultiplier = register_cvar("Ak_dmg_multiplier", "6") cvar_custommodel = register_cvar("Ak_custom_model", "1") cvar_goldbullets = register_cvar("Ak_gold_bullets", "0") cvar_cost = register_cvar("Ak_cost", "2500") RegisterHam(Ham_Item_PostFrame, weapon_newpn, "Fw_Item_PostFrame"); RegisterHam(Ham_Weapon_Reload, weapon_newpn, "Fw_Weapon_Reload"); RegisterHam(Ham_Weapon_Reload, weapon_newpn, "Fw_Weapon_Reload_Post", 1); RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage") // Register The Buy Cmd register_clcmd( "weapons_ak47", "Buy"); // 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 register_forward( FM_CmdStart, "fw_CmdStart" ) RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1) msg_CurWeapon = get_user_msgid("CurWeapon"); }
public Do_RegisterHam(id) { RegisterHamFromEntity(Ham_TraceAttack, id, "Fw_TraceAttack_Player"); }
public client_connect(id) { g_HasG[id] = false }
public client_disconnect(id) { g_HasG[id] = false }
public Death() { g_HasG[read_data(2)] = false }
public fwHamPlayerSpawnPost(id) { g_HasG[id] = false }
public plugin_precache() { precache_model(V_MODEL) precache_model(P_MODEL) m_spriteTexture = precache_model("sprites/dot.spr") }
public Buy(id) {
if ( !is_user_alive(id) ) { return PLUGIN_HANDLED } new money = cs_get_user_money(id) if (money >= get_pcvar_num(cvar_cost)) { Set_BitVar(g_has_weapon, id) new weapon = give_item(id, weapon_newpn) cs_set_user_money(id, money - get_pcvar_num(cvar_cost)) cs_set_weapon_ammo(weapon, CLIP) g_HasG[id] = true set_task(1.0, "lr") engfunc(EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, msg_CurWeapon, {0, 0, 0}, id) write_byte(1) write_byte(CSW_NEWPN) write_byte(CLIP) message_end() } else { set_task(1.0, "lr") client_print(id, print_center, "you have insufficient funds!") } return PLUGIN_HANDLED }
public checkModel(id) { if ( !g_HasG[id] ) return PLUGIN_HANDLED new szWeapID = read_data(2) if ( szWeapID == CSW_NEWPN && g_HasG[id] == true && get_pcvar_num(cvar_custommodel) ) { set_pev(id, pev_viewmodel2, V_MODEL) set_pev(id, pev_weaponmodel2, P_MODEL) } return PLUGIN_HANDLED }
public checkWeapon(id) { new plrAmmo new plrWeapId plrWeapId = get_user_weapon(id, plrAmmo) if (plrWeapId == CSW_NEWPN && g_HasG[id]) { checkModel(id) } else { return PLUGIN_CONTINUE } return PLUGIN_HANDLED }
public fw_TakeDamage(victim, inflictor, attacker, Float:damage) { if ( is_valid_player( attacker ) && get_user_weapon(attacker) == CSW_NEWPN && g_HasG[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 ) } 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_NEWPN) && g_HasG[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 } }
stock drop_prim(id) { new weapons[32], num get_user_weapons(id, weapons, num) for (new i = 0; i < num; i++) { if (Wep_g & (1<<weapons[i])) { static wname[32] get_weaponname(weapons[i], wname, sizeof wname - 1) engclient_cmd(id, "drop", wname) } } }
public Fw_Item_PostFrame(weapon) { if(!pev_valid(weapon)) return HAM_IGNORED static id id = pev(weapon, pev_owner) if(is_user_alive(id) && Get_BitVar(g_has_weapon, id)) { static Float:flNextAttack; flNextAttack = get_pdata_float(id, 83, 5); static bpammo; bpammo = cs_get_user_bpammo(id, CSW_NEWPN); static i_clip; i_clip = get_pdata_int(weapon, 51, 4); static fInReload; fInReload = get_pdata_int(weapon, 54, 4); if(fInReload && flNextAttack <= 0.0) { static temp1; temp1 = min(CLIP - i_clip, bpammo);
set_pdata_int(weapon, 51, i_clip + temp1, 4); cs_set_user_bpammo(id, CSW_NEWPN, bpammo - temp1); set_pdata_int(weapon, 54, 0, 4); fInReload = 0 } } return HAM_IGNORED }
public Fw_Weapon_Reload(weapon) { static id; id = pev(weapon, pev_owner); if(!is_user_alive(id)) return HAM_IGNORED if(!Get_BitVar(g_has_weapon, id)) return HAM_IGNORED g_clip[id] = -1; static bpammo; bpammo = cs_get_user_bpammo(id, CSW_NEWPN); static i_clip; i_clip = get_pdata_int(weapon, 51, 4); if(bpammo <= 0) return HAM_SUPERCEDE if(i_clip >= CLIP) return HAM_SUPERCEDE g_clip[id] = i_clip;
return HAM_HANDLED }
public lr(id) { client_print(id, print_center, "Plugin By: AlferD") client_print(id, print_center, "WebSite: www.king0goldcs.ir") }
public Fw_Weapon_Reload_Post(weapon) { static id; id = pev(weapon, pev_owner); if(!is_user_alive(id)) return HAM_IGNORED if(!Get_BitVar(g_has_weapon, id)) return HAM_IGNORED
if (g_clip[id] == -1) return HAM_IGNORED set_pdata_int(weapon, 51, g_clip[id], 4); set_pdata_int(weapon, 54, 1, 4);
return HAM_HANDLED }
Plugin for Deagle:
PHP Code:
#include <amxmodx> #include <fakemeta> #include <fun> #include <hamsandwich> #include <cstrike> #include <amxmisc> #include <xs> #include <engine>
#define PLUGIN "Deagle" #define VERSION "1.0" #define AUTHOR "AlferD"
#define CLIP 7
#define is_valid_player(%1) (1 <= %1 <= 32)
#define Get_BitVar(%1,%2) (%1 & (1 << (%2 & 31))) #define Set_BitVar(%1,%2) %1 |= (1 << (%2 & 31)) #define UnSet_BitVar(%1,%2) %1 &= ~(1 << (%2 & 31))
new const CSW_NEWPN = CSW_DEAGLE new const weapon_newpn[] = "weapon_deagle"
new V_MODEL[64] = "models/v_deagle_new.mdl" new P_MODEL[64] = "models/p_deagle_new.mdl"
/* Pcvars */ new cvar_dmgmultiplier, cvar_goldbullets, cvar_custommodel, cvar_cost, g_has_weapon
new Fload:g_clip[33]
new bullets[ 33 ]
new bool:g_HasDeagle[33]
new msg_CurWeapon
// Sprite new m_spriteTexture
const Wep_deagle = ((1<<CSW_DEAGLE))
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) /* CVARS */ cvar_dmgmultiplier = register_cvar("Deagle_dmg_multiplier", "6") cvar_custommodel = register_cvar("Deagle_custom_model", "1") cvar_goldbullets = register_cvar("Deagle_gold_bullets", "0") cvar_cost = register_cvar("Deagle_cost", "650") RegisterHam(Ham_Item_PostFrame, weapon_newpn, "Fw_Item_PostFrame"); RegisterHam(Ham_Weapon_Reload, weapon_newpn, "Fw_Weapon_Reload"); RegisterHam(Ham_Weapon_Reload, weapon_newpn, "Fw_Weapon_Reload_Post", 1); RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage") // Register The Buy Cmd register_clcmd( "weapons_deagle", "Buy"); // 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 register_forward( FM_CmdStart, "fw_CmdStart" ) RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1) msg_CurWeapon = get_user_msgid("CurWeapon"); }
public Do_RegisterHam(id) { RegisterHamFromEntity(Ham_TraceAttack, id, "Fw_TraceAttack_Player"); }
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(V_MODEL) precache_model(P_MODEL) m_spriteTexture = precache_model("sprites/dot.spr") }
public Buy(id) {
if ( !is_user_alive(id) ) { return PLUGIN_HANDLED } new money = cs_get_user_money(id) if (money >= get_pcvar_num(cvar_cost)) { Set_BitVar(g_has_weapon, id) new weapon = give_item(id, weapon_newpn) cs_set_user_money(id, money - get_pcvar_num(cvar_cost)) cs_set_weapon_ammo(weapon, CLIP) g_HasDeagle[id] = true set_task(1.0, "lr") engfunc(EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, msg_CurWeapon, {0, 0, 0}, id) write_byte(1) write_byte(CSW_NEWPN) write_byte(CLIP) message_end() } else { set_task(1.0, "lr") client_print(id, print_center, "you have insufficient funds!") } return PLUGIN_HANDLED }
public checkModel(id) { if ( !g_HasDeagle[id] ) return PLUGIN_HANDLED new szWeapID = read_data(2) if ( szWeapID == CSW_NEWPN && g_HasDeagle[id] == true && get_pcvar_num(cvar_custommodel) ) { set_pev(id, pev_viewmodel2, V_MODEL) set_pev(id, pev_weaponmodel2, P_MODEL) } return PLUGIN_HANDLED }
public checkWeapon(id) { new plrAmmo new plrWeapId plrWeapId = get_user_weapon(id, plrAmmo) if (plrWeapId == CSW_NEWPN && g_HasDeagle[id]) { checkModel(id) } else { return PLUGIN_CONTINUE } return PLUGIN_HANDLED }
public fw_TakeDamage(victim, inflictor, attacker, Float:damage) { if ( is_valid_player( attacker ) && get_user_weapon(attacker) == CSW_NEWPN && g_HasDeagle[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 ) } 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_NEWPN) && g_HasDeagle[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 } }
stock drop_prim(id) { new weapons[32], num get_user_weapons(id, weapons, num) for (new i = 0; i < num; i++) { if (Wep_deagle & (1<<weapons[i])) { static wname[32] get_weaponname(weapons[i], wname, sizeof wname - 1) engclient_cmd(id, "drop", wname) } } }
public Fw_Item_PostFrame(weapon) { if(!pev_valid(weapon)) return HAM_IGNORED static id id = pev(weapon, pev_owner) if(is_user_alive(id) && Get_BitVar(g_has_weapon, id)) { static Float:flNextAttack; flNextAttack = get_pdata_float(id, 83, 5); static bpammo; bpammo = cs_get_user_bpammo(id, CSW_NEWPN); static i_clip; i_clip = get_pdata_int(weapon, 51, 4); static fInReload; fInReload = get_pdata_int(weapon, 54, 4); if(fInReload && flNextAttack <= 0.0) { static temp1; temp1 = min(CLIP - i_clip, bpammo);
set_pdata_int(weapon, 51, i_clip + temp1, 4); cs_set_user_bpammo(id, CSW_NEWPN, bpammo - temp1); set_pdata_int(weapon, 54, 0, 4); fInReload = 0 } } return HAM_IGNORED }
public Fw_Weapon_Reload(weapon) { static id; id = pev(weapon, pev_owner); if(!is_user_alive(id)) return HAM_IGNORED if(!Get_BitVar(g_has_weapon, id)) return HAM_IGNORED g_clip[id] = -1; static bpammo; bpammo = cs_get_user_bpammo(id, CSW_NEWPN); static i_clip; i_clip = get_pdata_int(weapon, 51, 4); if(bpammo <= 0) return HAM_SUPERCEDE if(i_clip >= CLIP) return HAM_SUPERCEDE g_clip[id] = i_clip;
return HAM_HANDLED }
public lr(id) { client_print(id, print_center, "Plugin By: AlferD") client_print(id, print_center, "WebSite: www.king0goldcs.ir") }
public Fw_Weapon_Reload_Post(weapon) { static id; id = pev(weapon, pev_owner); if(!is_user_alive(id)) return HAM_IGNORED if(!Get_BitVar(g_has_weapon, id)) return HAM_IGNORED
if (g_clip[id] == -1) return HAM_IGNORED set_pdata_int(weapon, 51, g_clip[id], 4); set_pdata_int(weapon, 54, 1, 4);
return HAM_HANDLED }
Download Models
Plugin you (Change):
PHP Code:
#include < amxmodx > #include < cstrike > #include < fakemeta_util > #include < hamsandwich > #include < fun >
#define PLUGIN "New Dr" #define VERSION "1.0" #define AUTHOR "50Cent # HackeR"
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) // Add your code here... RegisterHam(Ham_Spawn, "player", "Inceput_runda", 1); }
public Inceput_runda(id) { if( get_user_team( id ) == 1 ) { fm_set_user_health(id, 150) give_item(id, "weapons_ak47") give_item(id, "weapons_deagle") cs_set_user_bpammo(id, CSW_AK47,90) cs_set_user_bpammo(id, CSW_DEAGLE, 35) } }
Last edited by alferd; 01-23-2020 at 00:23.
|
|