1

所以在我的最终状态下,我想让用户输入他们的姓名首字母。我已经设置了一个包含所有字母的数组,触发选择一个字母和 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);
    }
4

1 回答 1

1

当你调用你想要使用的函数时'this'

如果没有当前对象,' this' 指的是全局对象。在 Web 浏览器中,这就是“<code>window”——顶级对象,它代表文档、位置、历史记录和一些其他有用的属性和方法。

如果你正在调用一个函数,'<code>this' 仍然是全局对象:

因此,this.userInitials()将起作用:

this.font.draw(this.userInitials(), ig.system.width/2, 95, ig.Font.ALIGN.CENTER);
于 2013-02-13T01:07:57.380 回答