2017-08-25 9 views
2

私はLUAの初心者ですから、何か問題があります。私は、Computercraftと呼ばれるMinecraft modのコードを使用していますが、私にとってはプログラミングの素晴らしい紹介です。基本的なLUAエラーをトレースする方法は?

私は26行ではないコードも失敗している理由を調べるためにウェブを検索していましたが、悲しいことにそれを見つけることはできませんでした。

monitor = peripheral.wrap("right") 
monitor.clear() 
monitor.setCursorPos(1,1) 
monitor.setTextScale(1) 
monitor.print("Current mode:") 
monitor.setCursorPos(1,3) 
monitor.print("Dust gaat naar furnace") 
redstone.setOutput(back,false) 
print("Dust gaat automatisch naar de furnace toe") 
print("Wil je dat de dust naar de chest gaat in plaats van de furnace?") 
write() 
while input == ja 
do 
    print("Oke :)") 
    redstone.setOutput(back,true) 
    monitor.clear() 
    monitor.setCursorPos(1,1) 
    monitor.print("Current mode:") 
    monitor.setCursorPos(1,3) 
    monitor.print("Dust gaat naar chest") 
end 
else 
    print("Okeuu dan niet jongee") 
end 

私は '終了' 2回使用されていることを知っている:

は、ここでは、コードです。これは、削除するとエラーが発生するためです。

私はプログラムを実行するときに私が得るエラーは次のとおりです。

bios:14: [string ".temp"]:22: '<eof>' expected. 

The error I get when I remove the first 'end'.

The error I get when I remove the second 'end'.

EDIT オーケーだけでなく、私はエラーを取り除くことに成功し、いくつかのアドバイスをした後。 回答したすべての人に感謝します! c: 今、私は笑に他のエラーがあります。 としては、私はそれについての新しいポストを作った提案:Basic LUA problems

+2

ポストあなたのエラーをしないよう

あなたのコードは、おそらく、する必要があります。写真ではありません。 –

+3

おそらく、 "while"の代わりに "if"を使いたいでしょうか? 'もしinput == ja then ... else ... end' –

+0

私は新しい問題は別の問題の問題だと言いたい。編集内容を元に戻し、回答を承認済みとしてマークし、新しい問題の新しい質問を作成する必要があります。 –

答えて

2

:22:他のである、エラーがスクリプトの22行目の周りに発生したことを言っています。あなたがルアリファレンスガイドを見ているなら、elseは、ステートメントの場合はと、の場合はステートメントのいずれかになります。次のようにしばらくはここでは意味テキストとして

if input == ja 
then 
    ... code ... 
else 
    ... other code ... 
end 
+0

ありがとう、bucnh !!すぐに試してみるでしょうc: – Ynk

+0

別のエラーが出ます: ".temp:5:nilを呼び出そう" – Ynk

+0

@Ynk - おそらく 'monitor.print'は' nil'です。 –

関連する問題