From d31eb41e7e58838ec0d890c62636fc7bf8438e33 Mon Sep 17 00:00:00 2001 From: MysterD Date: Wed, 18 Aug 2021 21:51:55 -0700 Subject: [PATCH] Move character names to character struct --- src/game/characters.c | 2 ++ src/game/characters.h | 1 + src/pc/djui/djui_panel_player.c | 7 +++++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/game/characters.c b/src/game/characters.c index 4310c21d8..5ac9be363 100644 --- a/src/game/characters.c +++ b/src/game/characters.c @@ -14,6 +14,7 @@ extern Gfx luigi_cap_seg3_dl_03022F48[]; struct Character gCharacters[CT_MAX] = { [CT_MARIO] = { + .name = "Mario", .hudHead = ',', .cameraHudHead = GLYPH_CAM_MARIO_HEAD, .modelId = MODEL_MARIO, @@ -71,6 +72,7 @@ struct Character gCharacters[CT_MAX] = { }, [CT_LUIGI] = { + .name = "Luigi", .hudHead = '.', .cameraHudHead = GLYPH_CAM_LUIGI_HEAD, .modelId = MODEL_LUIGI, diff --git a/src/game/characters.h b/src/game/characters.h index 307f21824..dda308151 100644 --- a/src/game/characters.h +++ b/src/game/characters.h @@ -12,6 +12,7 @@ enum CharacterType { }; struct Character { + char* name; char hudHead; u32 cameraHudHead; u32 modelId; diff --git a/src/pc/djui/djui_panel_player.c b/src/pc/djui/djui_panel_player.c index c9ca8daa2..432f5a786 100644 --- a/src/pc/djui/djui_panel_player.c +++ b/src/pc/djui/djui_panel_player.c @@ -75,8 +75,11 @@ void djui_panel_player_create(struct DjuiBase* caller) { djui_interactable_hook_focus(&inputbox1->base, NULL, NULL, djui_panel_player_name_on_focus_end); } - char* modelChoices[2] = { "Mario", "Luigi" }; - struct DjuiSelectionbox* selectionbox1 = djui_selectionbox_create(&body->base, "Model", modelChoices, 2, &configPlayerModel); + char* modelChoices[CT_MAX] = { 0 }; + for (int i = 0; i < CT_MAX; i++) { + modelChoices[i] = gCharacters[i].name; + } + struct DjuiSelectionbox* selectionbox1 = djui_selectionbox_create(&body->base, "Model", modelChoices, CT_MAX, &configPlayerModel); djui_base_set_size_type(&selectionbox1->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); djui_base_set_size(&selectionbox1->base, 1.0f, 32); djui_interactable_hook_value_change(&selectionbox1->base, djui_panel_player_value_changed);