Jump to content

Computercraft- HIIILFEEEEE!


Corona
 Share

Recommended Posts

Hallo Community, ich hab mich heute daran gewagt, meinen ur alten Autentifikationsautomaten zu renovieren, aber immer wenn ich mein fertiges Programm laufen lassen will, sagt er dass eine Klammer auf Line 49, also "while(reader.readLine() != nil)"fehlt. BITTE helft mir diesen dämlichen Fehler zu suchen! :'( Code:

	    local allowedPlayers = {"Coronaxe","TheWarflash"}    while true do      local evn, evt = os.pullEvent()      --print(evt)      if evn == "player" then        for i=1,#allowedPlayers do          if(allowedPlayers[i] == evt) then            --print("Player authenticated: "..evt)                  local stw = "Player "..evt.." logged in at day "..os.day().." at "..os.time()            print(stw)            local writer = fs.open("log","a")            writer.writeLine(stw)            writer.close()            timeout = os.startTimer(60)            --print(timeout)            rs.setOutput("top",true)            rs.setOutput("right",true)            os.sleep(0.5)          else            local stw = "Player "..evt.."failed to log in at day "..os.day().." at "..os.time()            print(stw)            local writer = fs.open("log","a")            writer.writeLine(stw)            writer.close()            rs.setOutput("top",false)            rs.setOutput("right",false)          end        end      end      if evt == timeout or evn == "redstone" then        --print(timeout)        rs.setOutput("top",false)        rs.setOutput("right",false)        os.sleep(0.5)      end      if evt == "p" then        term.clear()        term.setCursorPos(1,1)        print("Do you want to print the log file? y/n")        local ev,key = os.pullEvent("char")        if key == "y" then          local printer = peripheral.wrap("back")          local reader = fs.open("log","r")          printer.setCursorPos(1,1)          do            printer.write(reader.readLine())            local _,y = printer.getCursorPos()            printer.setCursorPos(1,y+1)          while(reader.readLine() != nil)        end      end    end

Edited by Corona
Link to comment
Share on other sites

Welche Sprachen kannst du noch so...

Abgesehen davon, dass das ziemlich episch ist was du da gemacht hast, hast du einen kleinen Fehler gemacht.

Alle Sprachen sind nur FAST gleich!

In LUA macht das keinen Sinn:

while conditionend

In C++ würde das so aussehen:

do {  stuff();} while (condition);

In LUA schaut das aber so aus:

repeat  stuffuntil condition

Die Frage die ich mir stelle ist, warum kreidet dir der Parser nicht das "do" an?

Probier mal ob es geht wenn du das "do" zu "repeat" und das "while" zu "until" änderst.

Edited by idk.cpp
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...
B
B