include <amxmodx>
#include <cstrike>
#include <hamsandwich>
public plugin_init() {
RegisterHam(Ham_Touch, "armoury_entity", "CBase__Touch");
}
public CBase__Touch(ent, id, idc, type, Float:val) {
client_print(id, print_chat, "%d", cs_get_weapon_id(ent))
return HAM_SUPERCEDE;
}
как мы уже выяснили, бывает weaponbox, а бывает armoury_entity.к примеру лежит оружие на земле
get_member(pArmoury, m_Armoury_iItem)
)покажите как кодом это будет
#include <amxmodx>
#include <hamsandwich>
#include <cstrike>
public plugin_init()
{
register_plugin("Weapon informer", "0.0.1", "wopox1337");
RegisterHam(Ham_Touch, "armoury_entity", "CArmoury_ArmouryTouch");
}
public CArmoury_ArmouryTouch(this, other)
{
if(!is_user_alive(other))
{
return;
}
new ArmouryType = cs_get_armoury_type(this);
static szWeaponName[32];
get_weaponname(ArmouryType, szWeaponName, charsmax(szWeaponName));
client_print(other, print_center, "Вы прикоснулись к '%s'", szWeaponName);
}
for(new i, weapon; i < MAX_ITEM_TYPES; i++) {
weapon = get_member(ent, m_WeaponBox_rgpPlayerItems, i);
if (!is_nullent(weapon) && get_entvar(weapon, var_impulse) == 666) {
// some action
}
}