the first code set should work, the second code set won't because iId != wapen_tabel index. a simple function to create a static array should be easy, ie
Code:
int UTIL_GetWapenIndex (int iId)
{
return wapen_ids(iId);
}
void UTIL_MakeWapenIndex (void)
{
int i = 0;
for (i = 0; i < 32; i++)
wapen_ids(wapen_tabel(i).iId) = i;
return;
}
or something like that.
HTH. testing the shield code now...