Редактирование функции get_string в Game Maker Studio 2 - PullRequest
0 голосов
/ 24 марта 2020

Все работает, но когда мне предлагают ввести мое имя, это выглядит как ошибка. Есть ли в любом случае, я могу редактировать это?

Я новичок в GameMaker, это просто моя личная работа для развлечения.

Я искал в Интернете решение, но его, кажется, нигде нет, я не уверен, возможно ли это .

Ниже приведен код, на который я ссылаюсь.

if (currentHealth <= 0) {
    name = get_string("Please enter your name: ","Anonymus");
    highscore_add(name, global.points);
    room_goto(GAMEOVER);
}  

Ответы [ 2 ]

0 голосов
/ 30 марта 2020

Если вы хотите «поле ввода» (термин для поиска), вы можете использовать keyboard_string. Например,

Создать:

keyboard_string = "";

Шаг:

if (keyboard_check_pressed(vk_enter)) {
    input = keyboard_string;
    // ... do something with `input`
}

Ничья:

draw_text(x, y, keyboard_string);

Или немного меньше основ c пример, который я сделал в 2013 году.

0 голосов
/ 29 марта 2020

Может быть, попытка get_string_asyn c () get_string должна использоваться только для отладки. если вы используете get_string_asyn c (), ваш код будет выглядеть следующим образом

Создать событие:

    async = -1
    input = 0

Шаг события:

        if (currentHealth <= 0 && input == 0) {
        name = get_string_async("Please enter your name: ","Anonymus");
        input = 1
        } 

Событие Async_Dialogue:

   var i_d = ds_map_find_value(async_load, "id");
if i_d == async
   {
   if ds_map_find_value(async_load, "status")
      {
         name = ds_map_find_value(async_load, "result");
         highscore_add(name, global.points);
         room_goto(GAMEOVER);
      }

Это прекрасно работает для меня

...