feat(services): resources service
This commit is contained in:
parent
2778dc4eda
commit
9f6f83e296
5 changed files with 81 additions and 36 deletions
45
src/c/resources_service.c
Normal file
45
src/c/resources_service.c
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
#include "resources_service.h"
|
||||
|
||||
typedef struct ResourcesService {
|
||||
GFont font_koneko_toro;
|
||||
GFont font_toro;
|
||||
GBitmap *character_even;
|
||||
GBitmap *character_odd;
|
||||
} ResourcesService;
|
||||
|
||||
static ResourcesService *s_resources_service;
|
||||
|
||||
void resources_service_init(void) {
|
||||
s_resources_service = malloc(sizeof(ResourcesService));
|
||||
s_resources_service->font_koneko_toro =
|
||||
fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_KONEKO_TORO_28));
|
||||
s_resources_service->font_toro =
|
||||
fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_TORO_38));
|
||||
s_resources_service->character_even = gbitmap_create_with_resource(RESOURCE_ID_CHARACTER_EVEN);
|
||||
s_resources_service->character_odd = gbitmap_create_with_resource(RESOURCE_ID_CHARACTER_ODD);
|
||||
}
|
||||
|
||||
void resources_service_deinit(void) {
|
||||
fonts_unload_custom_font(s_resources_service->font_koneko_toro);
|
||||
fonts_unload_custom_font(s_resources_service->font_toro);
|
||||
gbitmap_destroy(s_resources_service->character_even);
|
||||
gbitmap_destroy(s_resources_service->character_odd);
|
||||
free(s_resources_service);
|
||||
}
|
||||
|
||||
GBitmap *resources_service_get_character(int ticks) {
|
||||
if (ticks % 2 == 0) {
|
||||
return s_resources_service->character_even;
|
||||
}
|
||||
return s_resources_service->character_odd;
|
||||
}
|
||||
|
||||
GFont resources_service_get_custom_font(CustomFont font) {
|
||||
switch (font) {
|
||||
case CustomFontKonekoToro:
|
||||
return s_resources_service->font_koneko_toro;
|
||||
case CustomFontToro:
|
||||
return s_resources_service->font_toro;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue