Game Maker Studio 2 get_string устарела

Я пытаюсь попросить пользователя ввести имя в мою таблицу рекордов.

Я не хочу использовать get_string_async, потому что тогда он добавляет имя и оценку еще до того, как пользователь укажет имя, однако get_string не работает, потому что он устарел.

name = get_string("Game Over. What is your name?","Player");
highscore_add(name,score);
global.highscore == 1; //tells draw event to draw highscore table.

Есть ли альтернатива get_string, которая ожидает ввода, прежде чем продолжить выполнение кода?


person Jojo197    schedule 02.11.2018    source источник
comment
Я думал, что воспользуюсь событием KeyUp, но я не думаю, что это хорошо работает для каждой отдельной клавиши.   -  person Steven    schedule 02.11.2018
comment
Не используйте get_string или get_string_async, это только для отладки. Перейдите в Marketplace и получите любой бесплатный графический интерфейс или текстовое поле (текстовый ввод) и используйте его.   -  person Dmi7ry    schedule 02.11.2018
comment
У меня есть дополнительная учетная запись в рамках моей школы, и я не могу покупать активы.   -  person Jojo197    schedule 03.11.2018
comment
Идея ключевого события может сработать. Я мог бы использовать KeyDown любой, а затем добавить этот ключ в строку. Затем добавьте строку в таблицу рекордов, когда пользователь нажимает Enter. Единственное, я не уверен, есть ли способ найти строковое значение нажатой клавиши. Изменить: для этого я могу использовать keyboard_string.   -  person Jojo197    schedule 03.11.2018


Ответы (1)


Если вы хотите, чтобы игрок вводил свое собственное имя, попробуйте настроить что-нибудь, где, когда вы впервые начинаете печатать, это происходит.

вы можете поместить это в сценарий и сказать:

name = scr_get_name();


//Inside of "scr_get_name()"
keyboard_string = 0;
if(player_typing){
    if(keyboard_check_pressed(vk_enter)){
        name = keyboard_string;
        return(name);
    }
}
person King Duck    schedule 19.12.2018
comment
Да, я закончил тем, что сделал что-то вроде этого. - person Jojo197; 21.12.2018