public pfn_touch(ptr , ptd) { if(ptr > 0 && ptd > 0 && ptd <= get_maxplayers()) { if(!is_valid_ent(ptr) || !is_valid_ent(ptd)) return; new pToucher[64] , pTouched[33]; entity_get_string(ptr , EV_SZ_model , pToucher , 63); entity_get_string(ptd , EV_SZ_classname , pTouched , 32); new model = check_nade_model(pToucher); if(model > 0 && equal(pTouched , "player")) { if(is_user_alive(ptd)) { new ammo = cs_get_user_bpammo(ptd , model); new max_ammo; switch(model) { case CSW_FLASHBANG: max_ammo = get_nade_num(CSW_FLASHBANG); case CSW_HEGRENADE: max_ammo = get_nade_num(CSW_HEGRENADE); case CSW_SMOKEGRENADE: max_ammo = get_nade_num(CSW_SMOKEGRENADE); } if(ammo > 0 && ammo < max_ammo) { remove_entity(ptr); cs_set_user_bpammo(ptd , model , ammo + 1); emit_sound(ptd, CHAN_WEAPON , "items/9mmclip1.wav" , 1.0 , ATTN_NORM , 0 , PITCH_NORM); } } } } } stock check_nade_model(model[]) { if( containi( model, "w_flashbang.mdl" ) == 0 ) return CSW_FLASHBANG; if( containi( model, "w_hegrenade.mdl" ) == 0 ) return CSW_HEGRENADE; if( containi( model, "w_smokegrenade.mdl" ) == 0 ) return CSW_SMOKEGRENADE; return 0; } stock get_nade_num(nade) { switch(nade) { case CSW_FLASHBANG: return get_cvar_num(CVAR_FB); case CSW_HEGRENADE: return get_cvar_num(CVAR_HE); case CSW_SMOKEGRENADE: return get_cvar_num(CVAR_SG); } return 0; }