long /*bitvector_t*/bitvector; /**< Tells which bits to set (AFF_XXX). */
It appears that bitvector_t (which was defined above as an unsigned long int) is commented out, so an accurate declaration (I think) would be:
long bitvector;
Is this "long variable" really "long int variable"? If so, this means that affected_by structs are only supported for up to 32 AFF_ types.
Also, the player "affected_by" variable is an array:
int affected_by[AF_ARRAY_MAX]
Since the player affect variable is an array of size 4 (default), this means that players can be affected by up to 32*4 (128) different affects. This is supported by the utilities SET_BIT_AR, REMOVE_BIT_AR, and IS_SET_AR.
So if affected_type.bitvector only supports 32 different affect flags, why does affected_by support 128?
And, more importantly, is there an easy way to expand affected_type.bitvector to support 128 different affect types?
Thanks

