Hello, I'm trying to pass bit-field through a native and verify if exists. So basically this is what I'm trying but it's not working properly.
Register weapons plugin
Spoiler
Code:
newconst g_szClassWeapons[][]={"Weapon #1", "Weapon #2", "Weapon #3"};
new bitsWeapons =-1, iWeaponId;
for(new i =0; i < sizeof g_szClassWeapons; i++){
iWeaponId = avp_get_weapon_id(g_szClassWeapons[i]);
if(iWeaponId ==-1)continue;
bitsWeapons |=(1<<iWeaponId);
}
avp_marine_class_add(/* These parameters doesn't matter */, bitsWeapons);
Native plugin
Spoiler
Code:
public something(iClassId){new rgClass[eClass];
// A custom function to get Mod weapons. This works like get_user_weapons
avp_get_weapons(rgWeapons, iWeaponsCount, iTeam);
ArrayGetArray(g_aClasses, iClassId, rgClass);
for(new i =0; i < iWeaponsCount; i++){
iWeaponId = rgWeapons[i];
if(!(rgClass[CLASS_WEAPONS]&(1<<iWeaponId)))continue;
// something...}}public native_handle(iPluginId, iParamsCount){new rgClass[eClass];
rgClass[CLASS_WEAPONS] |=get_param(6);
ArrayPushArray(g_aClasses, iClassId, rgClass);
}