From 2050c0e0576f05156f192aa4caf48834d2f28b14 Mon Sep 17 00:00:00 2001 From: fschildt Date: Fri, 22 Aug 2025 15:23:11 +0200 Subject: first commit --- src/client/string32_handles.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/client/string32_handles.c (limited to 'src/client/string32_handles.c') diff --git a/src/client/string32_handles.c b/src/client/string32_handles.c new file mode 100644 index 0000000..59900a8 --- /dev/null +++ b/src/client/string32_handles.c @@ -0,0 +1,40 @@ +#include +#include +#include + + +internal_var Arena arena; +internal_var String32 **string32_values; + + +String32* +string32_value(String32Handle handle) +{ + if (handle < SH_COUNT) { + return string32_values[handle]; + } + else { + return string32_values[SH_EMPTY]; + } +} + + +void +string32_handles_load_language(void) +{ + // Todo: read these from files. + + arena_clear(&arena); + arena_init(&arena, KIBIBYTES(1)); + + string32_values = arena_push(&arena, SH_COUNT*sizeof(*string32_values)); + string32_values[SH_EMPTY] = string32_create_from_ascii(&arena, ""); + string32_values[SH_LOGIN_USERNAME_HINT] = string32_create_from_ascii(&arena, "username:"); + string32_values[SH_LOGIN_SERVERNAME_HINT] = string32_create_from_ascii(&arena, "servername:"); + string32_values[SH_LOGIN_WARNING_USERNAME_INVALID] = string32_create_from_ascii(&arena, "error: username is invalid."); + string32_values[SH_LOGIN_WARNING_SERVERNAME_INVALID] = string32_create_from_ascii(&arena, "error: servername is invalid."); + string32_values[SH_LOGIN_WARNING_CONNECTING] = string32_create_from_ascii(&arena, "connecting..."); + string32_values[SH_LOGIN_WARNING_COULD_NOT_CONNECT] = string32_create_from_ascii(&arena, "error: could not connect"); + string32_values[SH_LOGIN_WARNING_CONNECTION_LOST] = string32_create_from_ascii(&arena, "error: connection lost"); +} + -- cgit v1.2.3