ech.. pisane na kolanie:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#define is_valid_player(%1) (1 <= %1 <= 32)
#define MULTIDMG_AK 1.3 // 130% normalnych obrazen
new PLUGIN_NAME[] = "Bronie"
new PLUGIN_AUTHOR[] = "Nakupenda."
new PLUGIN_VERSION[] = "1.1"
new AK_V_MODEL[64] = "models/v_new_ak.mdl"
new AK_P_MODEL[64] = "models/p_new_ak.mdl"
new bool:ak_47[33]
public plugin_init()
{
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
register_clcmd("say /ak","AKMenu");
register_clcmd("say_team /ak","AKMenu");
register_event("CurWeapon", "Event_CurWeapon", "be", "1=1");
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
}
public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
{
if(is_valid_player(attacker) && get_user_weapon(attacker) == CSW_AK47 && ak_47[attacker])
SetHamParamFloat(4, damage * MULTIDMG_AK )
}
public AKMenu(id)
{
new menu = menu_create("Menu Broni:", "Menu_handler");
new ak[128];
formatex(ak, 127, "AK")
menu_additem(menu,ak)
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu);
return PLUGIN_HANDLED;
}
public Menu_handler(id, menu, item)
{
if(!is_user_connected(id))
return PLUGIN_HANDLED;
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
set_hudmessage(92, 172, 238, 0.3, 0.3,0, 6.0, 5.0)
switch(item)
{
case 0:
{
if(is_user_alive(id))
{
ak_47[id] = true;
checkModel(id)
}
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public plugin_precache()
{
precache_model(AK_V_MODEL)
precache_model(AK_P_MODEL)
}
public Event_CurWeapon(id)
{
if (!is_user_alive(id) )
return PLUGIN_CONTINUE;
new Gun = read_data(2)
if(Gun == CSW_AK47 && ak_47[id])
checkModel(id)
return PLUGIN_CONTINUE;
}
public client_connect(id)
ak_47[id] = false;
public client_disconnect(id)
ak_47[id] = false;
public checkModel(id)
{
new szWeapID = read_data(2)
if (szWeapID == CSW_AK47 && ak_47[id])
{
set_pev(id, pev_viewmodel2, AK_V_MODEL)
set_pev(id, pev_weaponmodel2, AK_P_MODEL)
}
return PLUGIN_HANDLED
}