static void ent_draw_projectile(EntityInterface *ent) { Projectile *proj = ENT_CAST(ent, Projectile); r_blend(proj->blend); r_shader_ptr(proj->shader); #ifdef PROJ_DEBUG static Projectile prev_state; memcpy(&prev_state, proj, sizeof(Projectile)); proj->draw_rule(proj, global.frames - proj->birthtime); if(memcmp(&prev_state, proj, sizeof(Projectile))) { set_debug_info(&proj->debug); log_fatal("Projectile modified its state in draw rule"); } #else proj->draw_rule(proj, global.frames - proj->birthtime); #endif }