static void StartChatInput(int dest) { chat_on = true; HUlib_resetIText(&w_chat); HU_queueChatChar(HU_BROADCAST); I_StartTextInput(0, 8, SCREENWIDTH, 16); }
static boolean SCSaveGame(int option) { char *ptr; if (!FileMenuKeySteal) { int x, y; FileMenuKeySteal = true; // We need to activate the text input interface to type the save // game name: x = SaveMenu.x + 1; y = SaveMenu.y + 1 + option * ITEM_HEIGHT; I_StartTextInput(x, y, x + 190, y + ITEM_HEIGHT - 2); M_StringCopy(oldSlotText, SlotText[option], sizeof(oldSlotText)); ptr = SlotText[option]; while (*ptr) { ptr++; } *ptr = '['; *(ptr + 1) = 0; SlotStatus[option]++; currentSlot = option; slotptr = ptr - SlotText[option]; return false; } else { G_SaveGame(option, SlotText[option]); FileMenuKeySteal = false; I_StopTextInput(); MN_DeactivateMenu(); } BorderNeedRefresh = true; if (quicksave == -1) { quicksave = option + 1; players[consoleplayer].message = NULL; players[consoleplayer].messageTics = 1; } return true; }