2017-05-24 6 views
1
以下のコードを実行しようとすると、このエラーが生成され

Luaのは、 ')'( '(' '<eof>' ニアライン19で終了する予定

lua/testhud.lua:28: ')' expected (to close '(' at line 19) near ''

コード:

surface.CreateFont("Whatever", { 

    font = "Arial", 
    size = 100, 
    weight = 500, 
    blursize = 0, 
    scanlines = 0, 
    antialias = true, 
    underline = false, 
    italic = false, 
    strikeout = false, 
    symbol = false, 
    rotary = false, 
    shadow = false, 
    additive = false, 
    outline = false, 
}) 


hook.Add("HudPaint" , "DrawMyHud" , function() 

    local health = LocalPlayer():Health() 

    draw.RoundedBox(0,8,8,300+4 , 30+4,Color(86,55,89)) 
    draw.RoundedBox(0,10,10,health * 3,30,Color(255,120,120)) 
    draw.SimpleText(health.."%","Whatever",10 + 150 , 10 + 15 ,Colour(255,255,255),1,1) 


end 
+0

これは、解釈しやすいエラーです。括弧は一致する必要があります。すべての開口部の門のために、閉じた門がなければなりません。このエラーはルアが閉鎖している括弧を見つけようとしていると言いますが、開かれた括弧がどこにあるのかを正確に示しています(行19)。だから、19行目に行き、開いている括弧を見つけて、それに合致する閉じたものを見つけようとする。これを行うとChris Hの答えにつながります。 – Mud

答えて

3

Error: lua/testhud.lua:28: ')' expected (to close '(' at line 19) near ''

行19の先頭付近で '(')を閉じるには ')'がありません。定義している関数の 'end'文の後に置かなければなりません:

hook.Add("HudPaint" , "DrawMyHud" , function() 

    local health = LocalPlayer():Health() 

    draw.RoundedBox(0,8,8,300+4 , 30+4,Color(86,55,89)) 
    draw.RoundedBox(0,10,10,health * 3,30,Color(255,120,120)) 
    draw.SimpleText(health.."%","Whatever",10 + 150 , 10 + 15 ,Colour(255,255,255),1,1) 

end) 
+0

私はそれを実行し、それが何を言うのを見るでしょう。 –

+0

これは私にエラーコード[ERROR] lua/testhud.luaを与えました:1:グローバル '表面'(ゼロ値)をインデックスしようとしました if(SERVER)then end(CLIENT)then then open? –

+0

ここでは変数( 'surface'や' hook'など)を使用して、関数を定義していない( 'CreateFont'などのような)関数を呼び出しました。したがって、Luaはそれらのものが何であるかを知らないので、ゼロ値のインデックスを作成しようとすることについてのメッセージが表示されます。おそらく、 'require'ステートメントでインポートする必要があるモジュールがあります。 –

関連する問題