Пользовательские инициалы ввода - ImpactJS

Поэтому в моем конечном состоянии я хочу, чтобы пользователь вводил свои инициалы. Я настроил массив, который имеет весь алфавит, триггеры для выбора буквы и font_draw, но я не могу показаться, но я получаю сообщение об ошибке, что моя функция не определена. Есть идеи?

    userInitials: function(){
        io_clear();
        a = 0
        l[0] = " "
        l[1] = "a"
        l[2] = 'b'
        l[3] = 'c'
        l[4] = 'd'
        l[5] = 'e'
        l[6] = 'f'
        l[7] = 'g'
        l[8] = 'h'
        l[9] = 'i'
        l[10] = 'j'
        l[11] = 'k'
        l[12] = 'l'
        l[13] = 'm'
        l[14] = 'n'
        l[15] = 'o'
        l[16] = 'p'
        l[17] = 'q'
        l[18] = 'r'
        l[19] = 's'
        l[20] = 't'
        l[21] = 'u'
        l[22] = 'v'
        l[23] = 'w'
        l[24] = 'x'
        l[25] = 'y'
        l[26] = 'z'
        str = ""

        if(ig.input.pressed('up')){             
            if (a>26){
                a+= 1;
            }else{
                a = 0;
            }
        }

        if(ig.input.pressed('down')){
            if (a<0){
                a -= 1;
            }else{
                a = 26;
            }
        }

        this.font_draw(x,y,str+'['+1[a]+'] ');

        if(ig.input.pressed('space')){
            str += l[a];
        }
    },

    draw:function(){
        if(this.gameOver){
            this.font.draw(userInitials, ig.system.width/2, 95, ig.Font.ALIGN.CENTER);
    }

1 ответ

Решение

Когда вы вызываете функции, которые вы хотите использовать 'this',

Если нет текущего объекта,this'относится к глобальному объекту. В веб-браузере этоwindow'- объект верхнего уровня, который представляет документ, местоположение, историю и несколько других полезных свойств и методов.

'thisостается глобальным объектом, если вы вызываете функцию:

И потому, this.userInitials() буду работать:

this.font.draw(this.userInitials(), ig.system.width/2, 95, ig.Font.ALIGN.CENTER);
Другие вопросы по тегам