|
|
|
@ -188,11 +188,18 @@ void begin_text_input(); // called when player engages in dialog, must say somet
|
|
|
|
|
// a callback, when 'text backend' has finished making text
|
|
|
|
|
void end_text_input(char *what_player_said)
|
|
|
|
|
{
|
|
|
|
|
player->state = CHARACTER_IDLE;
|
|
|
|
|
#ifdef WEB // hacky
|
|
|
|
|
_sapp_emsc_register_eventhandlers();
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
size_t player_said_len = strlen(what_player_said);
|
|
|
|
|
if(player_said_len == 0)
|
|
|
|
|
{
|
|
|
|
|
// this just means cancel the dialog
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Sentence what_player_said_sentence = {0};
|
|
|
|
|
assert(player_said_len < ARRLEN(what_player_said_sentence.data));
|
|
|
|
|
memcpy(what_player_said_sentence.data, what_player_said, player_said_len);
|
|
|
|
@ -215,7 +222,7 @@ void end_text_input(char *what_player_said)
|
|
|
|
|
}
|
|
|
|
|
BUFF_APPEND(to_append, what_player_said_sentence);
|
|
|
|
|
BUFF_APPEND(to_append, SENTENCE_CONST("NPC response"));
|
|
|
|
|
player->state = CHARACTER_IDLE;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// keydown needs to be referenced when begin text input,
|
|
|
|
|