Vec font_scale;
const Sprite_font *sprite_font;
float angle;
+ Vec position;
};
MenuTitle *create_menu_title(const char *text,
trace_assert(text);
Lt *lt = create_lt();
- if (lt == NULL) {
- return NULL;
- }
MenuTitle *menu_title = PUSH_LT(
lt,
- nth_alloc(sizeof(MenuTitle)),
+ nth_calloc(1, sizeof(MenuTitle)),
free);
if (menu_title == NULL) {
RETURN_LT(lt, NULL);
menu_title->font_scale = font_scale;
menu_title->sprite_font = sprite_font;
menu_title->angle = 0.0f;
+ menu_title->position = vec(0.0f, 0.0f);
return menu_title;
}
}
int menu_title_render(const MenuTitle *menu_title,
- SDL_Renderer *renderer,
- Vec position)
+ SDL_Renderer *renderer)
{
trace_assert(menu_title);
trace_assert(renderer);
menu_title->sprite_font,
renderer,
vec_sum(
- position,
+ menu_title->position,
vec(
(float) (i * FONT_CHAR_WIDTH) * menu_title->font_scale.x,
sinf(menu_title->angle + (float) i / (float) n * 10.0f) * 20.0f)),
return vec(boundary.w, boundary.h);
}
+
+void menu_title_move(MenuTitle *menu_title,
+ Vec position)
+{
+ menu_title->position = position;
+}