#include "systems.h" void updateAnimations(ecs_iter_t *it) { Animation *anim = ecs_field(it, Animation, 1); TextureRegion *t = ecs_field(it, TextureRegion, 2); float dt = GetFrameTime(); for (i32 i = 0; i < it->count; i++) { anim[i].elapsed += dt; if (anim[i].elapsed < anim[i].frameDuration) continue; anim[i].currFrame = (anim[i].currFrame + 1) % anim[i].frameCount; anim[i].elapsed = 0.0f; t[i].rec.x = anim[i].firstFrame.rec.x + anim[i].currFrame * t[i].rec.width; } }