Hey I'm getting better at this, just one issue that i can never seem to solve even with help, the weapon models won't change. Does anyone see what the problem is?
Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <superheromod>
#define PLUGIN "Tony Montana"
#define VERSION "1.0"
#define AUTHOR "Vendetter"
#define AMMO_MODE 0
// Hero
new gHeroName[] = "Tony Montana"
new bool:gHasTonyMontana[SH_MAXSLOTS+1]
// Models
new g_p_model
new g_v_model
// Recoil
new Float:gPunchAngle[3] = {0.0,0.0,0.0}
// Switch Model
new bool:ModelWeaponLoaded
public plugin_init()
{
register_plugin("Tony Montana", "1.0", "Vendetter");
register_cvar("montana_level", "10");
shCreateHero(gHeroName, "M4A1 Power-Up", "Say Hello To My Little Friend", false, "montana_level");
register_srvcmd("montana_init", "montana_init");
shRegHeroInit(gHeroName, "montana_init");
register_event("CurWeapon", "Event_weapon","be","1=1");
register_event("ResetHUD", "new_spawn","b");
}
public plugin_precache()
{
g_p_model = precache_model("models/shmod/p_tonymontana_m4.mdl")
g_v_model = precache_model("models/shmod/v_tonymontana_m4.mdl")
}
public montana_init(id)
{
new temp[6];
read_argv(1,temp,5);
new id =str_to_num(temp);
read_argv(2,temp,5);
new hasPowers = str_to_num(temp);
gHasTonyMontana[id] = (hasPowers != 0);
if(hasPowers)
{
weapon_change(id)
}
}
switch_model(id)
{
if (!shModActive() || !is_user_alive(id) || !gHasTonyMontana[id]) return;
new clip, ammo, wpnid = get_user_weapon(id,clip,ammo);
if(wpnid == CSW_M4A1)
{
set_pev(id, pev_viewmodel, engfunc(EngFunc_AllocString, g_v_model));
set_pev(id, pev_weaponmodel, engfunc(EngFunc_AllocString, g_p_model));
}
}
public Event_weapon(id)
{
new clip = read_data(3);
if (clip == 0)
{
shReloadAmmo(id);
}
}
public client_PreThink(id)
{
if(gHasTonyMontana[id] && is_user_alive(id))
{
entity_set_vector(id,EV_VEC_punchangle,gPunchAngle);
}
}
public weapon_change(id)
{
if ( !shModActive() || !gHasTonyMontana[id] )
return
if ( read_data(2) != CSW_M4A1 )
return
if ( ModelWeaponLoaded )
switch_model(id)
if ( read_data(3) == 0 )
shReloadAmmo(id, AMMO_MODE)
}
public tonymontana_weapons(id)
{
if ( !shModActive() || !gHasTonyMontana[id] ) return
shGiveWeapon(id, "weapon_m4a1")
}
public new_spawn(id)
{
if ( shModActive() && is_user_alive(id) && gHasTonyMontana[id] )
{
set_task(0.1, "tonymontana_weapons", id)
}
}