#if !defined(LD_GAME_OUTFIT_H) #define LD_GAME_OUTFIT_H #define G_OUTFIT_COMPONENT_COUNT 8 global_var Str8 __outfit_names[] = { Sl("npc_%s_base_%d"), Sl("npc_%s_eyes_%d"), Sl("npc_%s_face_%d"), Sl("npc_%s_hair_%d"), Sl("npc_%s_hat_%d"), Sl("npc_%s_shirt_%d"), Sl("npc_%s_shoes_%d"), Sl("npc_%s_trousers_%d")}; global_var U32 __outfit_counts[] = { 2, // base 3, // eyes 5, // face 4, // hair 3, // hat 2, // shirt 1, // shoes 2 // trousers }; global_var U32 __outfit_back_counts[] = { 2, // base 0, // eyes 3, // face 4, // hair 3, // hat 2, // shirt 1, // shoes 2 // trousers }; StaticAssert(ArraySize(__outfit_names) == ArraySize(__outfit_counts)); #define OUTFIT_IMG(dir, n) D_ImageHandle(&game->draw, Sf(temp.arena, (const char *)__outfit_names[it].data, #dir, n)) function U32* GenOutfit(G_Outfit *o, World *world, G_State *game); #endif // LD_GAME_OUTFIT_H