X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FAnimation.h;h=8c8d5e55c6f55b72dc49a6f25ff73159df27d00c;hb=87ff660bf58766ab705a749e72e04154ccf5a737;hp=b292813f31429369e7f0c8aa56fbc04e87c92ca8;hpb=9248d1455aa434112b5ddd771fd69b8df02d44ee;p=lugaru.git diff --git a/Source/Animation.h b/Source/Animation.h index b292813..8c8d5e5 100644 --- a/Source/Animation.h +++ b/Source/Animation.h @@ -23,19 +23,38 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define ANIMATION_H enum anim_attack_type { - neutral, normalattack, reversed, reversal + neutral, normalattack, reversed, reversal }; enum anim_height_type { - lowheight, middleheight, highheight + lowheight, middleheight, highheight }; enum animation_types { -#define DECLARE_ANIM(id, file, height, attack) id, +#define DECLARE_ANIM(id, ...) id, +#include "Animation.def" +#undef DECLARE_ANIM + animation_count +}; + +enum animation_bit_offsets { +#define DECLARE_ANIM_BIT(bit) o_##bit, +#include "Animation.def" +#undef DECLARE_ANIM_BIT + animation_bit_count +}; + +enum animation_bits_def { +#define DECLARE_ANIM_BIT(bit) bit = 1 << o_##bit, +#include "Animation.def" +#undef DECLARE_ANIM_BIT +}; + +static const int animation_bits[animation_count] = { +#define DECLARE_ANIM(id, name, height, type, bits) bits, #include "Animation.def" #undef DECLARE_ANIM -animation_count }; extern Animation animation[animation_count];