#include #include #include #include #include "assets.h" Asset assets[] = { { .type = Texture_Asset, .name = "bar-background", .filePath = "assets/art/backgrounds/bar-background.png" }, { .type = Texture_Asset, .name = "rails", .filePath = "assets/art/backgrounds/rails.png" }, }; #define ASSET_COUNT (sizeof(assets) / sizeof(Asset)) void LoadAssets() { for (size_t i = 0; i < ASSET_COUNT; i++) { Asset* c = &assets[i]; switch (c->type) { case Texture_Asset: c->texture = LoadTexture(c->filePath); break; default: break; } } } Asset* GetMatchingAssetWithType(const char* targetName, AssetType targetType) { for (size_t i = 0; i < ASSET_COUNT; i++) { Asset* c = &assets[i]; if (strcmp(targetName, c->name) == 0 && c->type == targetType) return c; } return NULL; } void UnloadAssets() { for (size_t i = 0; i < ASSET_COUNT; i++) { Asset* c = &assets[i]; switch (c->type) { case Texture_Asset: UnloadTexture(c->texture); break; default: break; } } }