14 #define GUI_TEXT_CAPACITY 4096
15 #define GUI_SEARCH_CAPACITY 128
16 #define GUI_STATUS_CAPACITY 512
17 #define GUI_OUTPUT_ROOT "out"
18 #define GUI_GIF_DELAY_MIN_CS 1
19 #define GUI_GIF_DELAY_MAX_CS 50
20 #define GUI_GIF_DELAY_DEFAULT_CS 5
223 int export_spritesheets,
226 int export_idle_break,
High-level orchestration API for Nintendo DS Pokemon Black/White asset extraction.
#define ANIMA_MAX_PREVIEW_ASSETS
Definition: anima_backend.h:20
void GuiState_UpdatePreview(GuiPreview *p)
Advances active viewport frame index based on real-world elapsed frame delta time.
Definition: gui_state.c:330
void GuiState_SetGifDelayCs(GuiState *state, int delay_cs)
Sets the custom GIF frame delay.
Definition: gui_state.c:355
int GuiState_LoadAndValidateRom(GuiState *state, const char *path)
Validates NDS ROM header and initializes internal directory mappings.
Definition: gui_state.c:24
void GuiState_ExportCurrent(GuiState *state, const PokemonCatalogEntry *entry)
Exports the currently active preview asset view to its default output file path.
Definition: gui_state.c:924
void GuiState_SanitizePath(const char *name, char *out, size_t out_size)
Sanitizes folder name by stripping out illegal character blocks.
Definition: gui_state.c:81
void GuiState_BuildOutputDir(const PokemonCatalogEntry *entry, char *buf, size_t sz)
Builds directory path where current species assets will be written.
Definition: gui_state.c:119
#define GUI_SEARCH_CAPACITY
Definition: gui_state.h:15
#define GUI_STATUS_CAPACITY
Definition: gui_state.h:16
const char * GuiState_BaseName(const char *path)
Extracts file basename from full absolute or relative path.
Definition: gui_state.c:72
void GuiState_UnloadPreview(GuiPreview *p)
Deallocates texture cache and color frames stored inside preview struct.
Definition: gui_state.c:369
GuiPreviewMode
Categorization of current preview viewport drawing state.
Definition: gui_state.h:25
@ PREVIEW_GIF
Definition: gui_state.h:26
@ PREVIEW_STATIC_IDLE
Definition: gui_state.h:28
@ PREVIEW_COMPOSED
Definition: gui_state.h:30
@ PREVIEW_NMAR_ANIMATION
Definition: gui_state.h:31
@ PREVIEW_IDLE_BREAK
Definition: gui_state.h:29
@ PREVIEW_SPRITESHEET
Definition: gui_state.h:27
@ PREVIEW_NMCR_MAP
Definition: gui_state.h:32
struct GuiPreview GuiPreview
Texture and temporal data cache for animating species previews.
int GuiState_RefreshAssets(GuiState *state, const PokemonCatalogEntry *entry)
Scans ROM files to discover all asset variants for selected species.
Definition: gui_state.c:264
struct GuiState GuiState
State variables and option flags for the main immediate-mode GUI editor.
void GuiState_ExportAllAssets(GuiState *state, const PokemonCatalogEntry *entry)
Recursively renders and writes all assets discovered for species.
Definition: gui_state.c:753
int GuiState_EntryMatchesQuery(const PokemonCatalogEntry *entry, const char *query)
Checks if a Pokemon species matches the search filtering text query.
Definition: gui_state.c:151
void GuiState_SetStatus(GuiState *state, const char *text)
Sets statusbar notification message.
Definition: gui_state.c:59
void GuiState_RunExport(GuiState *state, const PokemonCatalogEntry *entry, int export_spritesheets, int export_static, int export_gif, int export_idle_break, int export_composed)
Performs batch export run for currently selected Pokemon.
Definition: gui_state.c:684
void GuiState_Init(GuiState *state)
Initializes default options inside a GuiState structure.
Definition: gui_state.c:15
int GuiState_TryLoadPreview(GuiState *state, const PokemonCatalogEntry *entry)
Attempts to load the preview for a Pokemon catalog entry.
Definition: gui_state.c:630
void GuiState_ExportDsFiles(GuiState *state, const PokemonCatalogEntry *entry)
Raw dumps individual compressed Nitro NARC blocks for selected species to disk.
Definition: gui_state.c:722
int GuiState_GifDelayCs(const GuiState *state)
Retrieves the current custom GIF frame delay.
Definition: gui_state.c:341
const PokemonCatalogEntry * GuiState_SelectedEntry(int dex_id)
Retrieves the species catalog entry matching index.
Definition: gui_state.c:162
void GuiState_CopyText(char *dst, size_t dst_size, const char *src)
Helper utility to safely copy a string with bounding limit constraints.
Definition: gui_state.c:64
const char * GuiState_GetFormName(const GuiState *state, int dex_id, int form_idx)
Retrieves user-friendly label name of alternate form index.
Definition: gui_state.c:192
int GuiState_GetFormCount(const GuiState *state, int dex_id)
Retrieves form count for a species.
Definition: gui_state.c:168
#define GUI_TEXT_CAPACITY
Definition: gui_state.h:14
Pokemon catalog structure and query database functions.
Metadata record detailing a discovered asset available for preview and export.
Definition: anima_backend.h:77
Abstract texture representation mapped to graphics card registers.
Definition: gui_platform.h:25
Texture and temporal data cache for animating species previews.
Definition: gui_state.h:38
GrTexture texture
Definition: gui_state.h:39
int content_height
Definition: gui_state.h:47
int content_x
Definition: gui_state.h:44
int loaded
Definition: gui_state.h:41
int content_width
Definition: gui_state.h:46
int current_frame
Definition: gui_state.h:49
unsigned char * frames
Definition: gui_state.h:40
int height
Definition: gui_state.h:43
float frame_timer
Definition: gui_state.h:50
int width
Definition: gui_state.h:42
int content_y
Definition: gui_state.h:45
int frame_count
Definition: gui_state.h:48
float seconds_per_frame
Definition: gui_state.h:51
State variables and option flags for the main immediate-mode GUI editor.
Definition: gui_state.h:57
AnimaPreviewAssetInfo assets[ANIMA_MAX_PREVIEW_ASSETS]
Definition: gui_state.h:78
char search[GUI_SEARCH_CAPACITY]
Definition: gui_state.h:59
int rom_text_active
Definition: gui_state.h:62
int list_scroll
Definition: gui_state.h:65
int asset_count
Definition: gui_state.h:77
int is_back
Definition: gui_state.h:71
int gender
Definition: gui_state.h:69
int gif_delay_cs
Definition: gui_state.h:80
int asset_dropdown_open
Definition: gui_state.h:74
GuiPreviewMode preview_mode
Definition: gui_state.h:66
int is_sequel
Definition: gui_state.h:81
int asset_dropdown_scroll
Definition: gui_state.h:75
int has_female
Definition: gui_state.h:79
int rom_ready
Definition: gui_state.h:61
int form_dropdown_scroll
Definition: gui_state.h:73
char status[GUI_STATUS_CAPACITY]
Definition: gui_state.h:60
int form_index
Definition: gui_state.h:70
int selected_dex_id
Definition: gui_state.h:64
GuiPreview preview
Definition: gui_state.h:67
int form_dropdown_open
Definition: gui_state.h:72
int selected_asset
Definition: gui_state.h:76
int search_active
Definition: gui_state.h:63
char rom_path[GUI_TEXT_CAPACITY]
Definition: gui_state.h:58
int is_shiny
Definition: gui_state.h:68
Represents a single species entry in the local database catalog.
Definition: pokemon_catalog.h:12