diff --git a/autogen/convert_functions.py b/autogen/convert_functions.py
index 9912c9aa2..412b1a9e3 100644
--- a/autogen/convert_functions.py
+++ b/autogen/convert_functions.py
@@ -27,6 +27,7 @@ in_files = [
"src/game/thread6.c",
"src/pc/djui/djui_popup.h",
"src/pc/network/network_utils.h",
+ "src/pc/djui/djui_chat_message.h",
]
override_allowed_functions = {
@@ -48,6 +49,7 @@ override_disallowed_functions = {
"src/game/mario_actions_submerged.c": [ "^[us]32 act_.*" ],
"src/game/mario_step.h": [ " stub_mario_step", "transfer_bully_speed"],
"src/game/mario.h": [ " init_mario" ],
+ "src/pc/djui/djui_chat_message.h": [ "create_from" ],
}
###########################################################
diff --git a/docs/lua/functions.md b/docs/lua/functions.md
index 7a9a82fac..b0aa48ec1 100644
--- a/docs/lua/functions.md
+++ b/docs/lua/functions.md
@@ -20,6 +20,11 @@
+- djui_chat_message.h
+ - [djui_chat_message_create](#djui_chat_message_create)
+
+
+
- djui_popup.h
- [djui_popup_create](#djui_popup_create)
@@ -502,6 +507,32 @@
+---
+# functions from djui_chat_message.h
+
+
+
+
+## [djui_chat_message_create](#djui_chat_message_create)
+
+### Lua Example
+`djui_chat_message_create(message)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| message | string |
+
+### Returns
+- None
+
+### C Prototype
+`void djui_chat_message_create(const char* message);`
+
+[:arrow_up_small:](#)
+
+
+
---
# functions from djui_popup.h
diff --git a/src/pc/djui/djui_chat_message.c b/src/pc/djui/djui_chat_message.c
index a1697accd..a2373923b 100644
--- a/src/pc/djui/djui_chat_message.c
+++ b/src/pc/djui/djui_chat_message.c
@@ -43,16 +43,16 @@ static void djui_chat_message_destroy(struct DjuiBase* base) {
free(chatMessage);
}
-struct DjuiChatMessage* djui_chat_message_create_from(u8 globalIndex, char* message) {
+void djui_chat_message_create_from(u8 globalIndex, const char* message) {
struct NetworkPlayer* np = network_player_from_global_index(globalIndex);
u8* rgb = get_player_color(np->paletteIndex, 0);
char chatMsg[256] = { 0 };
snprintf(chatMsg, 256, "\\#%02x%02x%02x\\%s:\\#dcdcdc\\ %s", rgb[0], rgb[1], rgb[2], (np != NULL) ? np->name : "Player", message);
play_sound((globalIndex == gNetworkPlayerLocal->globalIndex) ? SOUND_MENU_MESSAGE_DISAPPEAR : SOUND_MENU_MESSAGE_APPEAR, gDefaultSoundArgs);
- return djui_chat_message_create(chatMsg);
+ djui_chat_message_create(chatMsg);
}
-struct DjuiChatMessage* djui_chat_message_create(char* message) {
+void djui_chat_message_create(const char* message) {
struct DjuiChatMessage* chatMessage = calloc(1, sizeof(struct DjuiChatMessage));
struct DjuiBase* base = &chatMessage->base;
djui_base_init(&gDjuiChatBox->chatFlow->base, base, djui_chat_message_render, djui_chat_message_destroy);
@@ -86,6 +86,4 @@ struct DjuiChatMessage* djui_chat_message_create(char* message) {
// figure out chat message width
f32 messageWidth = djui_text_find_width(chatText, 10);
chatMessage->messageWidth = messageWidth + 8;
-
- return chatMessage;
}
diff --git a/src/pc/djui/djui_chat_message.h b/src/pc/djui/djui_chat_message.h
index 777901e41..83829d6f8 100644
--- a/src/pc/djui/djui_chat_message.h
+++ b/src/pc/djui/djui_chat_message.h
@@ -9,5 +9,5 @@ struct DjuiChatMessage {
f32 createTime;
};
-struct DjuiChatMessage* djui_chat_message_create_from(u8 globalIndex, char* message);
-struct DjuiChatMessage* djui_chat_message_create(char* message);
+void djui_chat_message_create_from(u8 globalIndex, const char* message);
+void djui_chat_message_create(const char* message);
diff --git a/src/pc/lua/smlua_functions_autogen.c b/src/pc/lua/smlua_functions_autogen.c
index bb1ef1e94..4b89ebeed 100644
--- a/src/pc/lua/smlua_functions_autogen.c
+++ b/src/pc/lua/smlua_functions_autogen.c
@@ -185,6 +185,21 @@ int smlua_func_update_character_anim_offset(lua_State* L) {
return 1;
}
+ /////////////////////////
+ // djui_chat_message.h //
+/////////////////////////
+
+int smlua_func_djui_chat_message_create(lua_State* L) {
+ if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
+
+ const char* message = smlua_to_string(L, 1);
+ if (!gSmLuaConvertSuccess) { return 0; }
+
+ djui_chat_message_create(message);
+
+ return 1;
+}
+
//////////////////
// djui_popup.h //
//////////////////
@@ -2904,6 +2919,9 @@ void smlua_bind_functions_autogen(void) {
smlua_bind_function(L, "play_character_sound_offset", smlua_func_play_character_sound_offset);
smlua_bind_function(L, "update_character_anim_offset", smlua_func_update_character_anim_offset);
+ // djui_chat_message.h
+ smlua_bind_function(L, "djui_chat_message_create", smlua_func_djui_chat_message_create);
+
// djui_popup.h
smlua_bind_function(L, "djui_popup_create", smlua_func_djui_popup_create);