Обрабатывая события клавиатуры, имя игрока появляется на секунду и исчезает? - PullRequest
0 голосов
/ 14 февраля 2019

В свободное время я делал игру в пинг-понг и столкнулся с проблемой.В идеале мне нравится, когда показывается экран игры.Чтобы игрок мог вводить свои имена динамически.например, это должно быть Имя: H, затем другой символ нажал Имя: Hu

Я ovverode событие нажатия клавиши, playernme - это просто переменная списка для хранения символов, полученных из нажатий клавиш

public void Keydown(object sender, KeyboardKeyEventArgs e)
        {

            ///store handles the temp output of the ToCharArray
            char[] store = e.Key.ToString().ToCharArray();
            playernme.Add(store[0]);

        }

Этот playernme затем передается в средство визуализации, где метка GUI имеет вид

 foreach (char c in playernme)
            {
                playernamed += c.ToString();
            }
            GUI.Label(new Rectangle(0, (int)(fontSize / 2f), (int)width, (int)(fontSize * 4  )), "Name: " + playernamed , (int)fontSize, StringAlignment.Center);

Это то, что происходит на экране игры

enter image description here

Кажется, это простая проблема, которую я не могу обернуть.Я знаю, что при нажатии клавиши появляется несколько символов, но я не смог найти никакой связи с этим и почему имя не отображается

...