Computercraft Minecraft?

Hallo,

Kennt sich jemand mit Computercraft aus?

Weil ich weis nicht was ich falsch machen bei diesem Code kommt bei mir too Long withour yielding

Code:

shell.run("clear")

print("On which side is the modem connected?")

print()

print("Top")

print("Back")

print("Right")

print("Left")

print("Bottom")

while true do

event,side,x,y = os.pullEventRaw()

if event == "mouse_click" and x >= 1 and x<= 3 and y == 3 then

rednet.open("top")

break

elseif event == "mouse_click" and x >= 1 and x <= 4 and y == 4 then

rednet.open("back")

break

elseif event == "mouse_click" and x >= 1 and x <= 5 and y == 5 then

rednet.open("right")

print("GI")

break

elseif event == "mouse_click" and x >= 1 and x <= 4 and y == 6 then

rednet.open("Left")

break

elseif event == "mouse_click" and x >= 1 and x <= 6 and y == 7 then

rednet.open("bottom")

break

end

end

shell.run("clear")

a=0

b=0

c=0

d=0

e=0

f=0

g=0

h=0

while true do

term.setCursorPos(1,1)

term.setBackgroundColor(colors.black)

print("Wireless Redstone OUTPUT")

print()

-- SYSTEM 1 --

io.write("System 1: ")

term.setTextColor(colors.white)

term.setBackgroundColor(colors.red)

io.write("OFFLINE")

term.setBackgroundColor(colors.black)

io.write("   ")

term.setBackgroundColor(colors.green)

io.write("ONLINE")

term.setBackgroundColor(colors.black)

io.write("   ")

term.setBackgroundColor(colors.black)

if a == 1 then

io.write("Status: ")

term.setBackgroundColor(colors.green)

io.write("ONLINE ")

term.setBackgroundColor(colors.black)

else

io.write("Status: ")

term.setBackgroundColor(colors.red)

io.write("OFFLINE")

term.setBackgroundColor(colors.black)

end

-- SYTEM 2 --

io.write("System 2: ")

term.setTextColor(colors.white)

term.setBackgroundColor(colors.red)

io.write("OFFLINE")

term.setBackgroundColor(colors.black)

io.write("   ")

term.setBackgroundColor(colors.green)

io.write("ONLINE")

term.setBackgroundColor(colors.black)

io.write("   ")

term.setBackgroundColor(colors.black)

if b == 1 then

io.write("Status: ")

term.setBackgroundColor(colors.green)

io.write("ONLINE ")

term.setBackgroundColor(colors.black)

else

io.write("Status: ")

term.setBackgroundColor(colors.red)

io.write("OFFLINE")

term.setBackgroundColor(colors.black)

event1,side1,x1,y1 = os.pullEventRaw()

-- ERSTES --

if event1 == "mouse_click" and x1 >=11 and x1 <=17 and y1 == 3 then

-- REDNET AUSCHALTEN --

rednet.broadcast("0")

a = 0

elseif event1 == "mouse_click" and x1 >=22 and x1 <=27 and y1 == 3 then

-- REDNET ANSCHALTEN --

a = 1

rednet.broadcast("1")

elseif event1 == "mouse_click" and x1 >=11 and x1 <=17 and y1 == 4 then

-- REDNET AUSCHALTEN --

rednet.broadcast("3")

b = 0

elseif event1 == "mouse_click" and x1 >=22 and x1 <=27 and y1 == 4 then

-- REDNET ANSCHALTEN --

b = 1

rednet.broadcast("2")

end

end

--ZWEITES--

term.clear()

end

Minecraft, computercraft
1 Antwort
Minecraft ComputerCraft "Benutzerordner" festlegen

Hallo,

folgendes wird vielleicht erst einmal verwirrend klingen, aber ich versuche es verständlich rüberzubringen :D .

Also: ich bin gerade dabei, einfach aus Langeweile ein kleines Mini-System für die Computer in Minecraft (genauer: ComputerCraft 1.5 in TekkitLite 1.4.7) zu schreiben. Das wichtigste ist mir die Unterscheidung zwischen "Admin" und "nicht-Admin". Der "Kern" ist schon fertig und läuft auch wie er soll. Nun möchte ich aber, dass jeder Benutzer ein eigenes Benutzerverzeichnis hat, (Beispiel: /system/userdirs oder /users/ ) und nicht von diesem in ein übergeordnetes Verzeichnis wechseln kann, wenn er kein Admin ist, was auch heissen soll, dass es für nicht-Admins wie das Stammverzeichnis aussehen soll.

Mit " shell.setDir() " und " shell.setPath() " funktioniert es nicht.

shell.setDir() sorgt zwar dafür dass das Benutzerverzeichnis für nicht-Admins als Stammverzeichnis gesetzt wird, aber diese können dann nicht mehr die Standardprogramme ausführen (z.B. copy, mkdir, edit).

shell.setPath() macht ebenfalls nicht das gewünschte, sondern setzt nur den Pfad von "/" auf z.B. "/system/userdirs/", aber die Benutzer können dann trotzdem mit "cd .." in höhere Verzeichnisse, bzw ins Stammverzeichnis, wechseln, was wie oben beschhrieben, nicht erwünscht ist.

Wie kann ich das nun so wie ich es beschrieben habe, am einfachsten umsetzen?

Vielen Dank für eure Hilfe!

Computerspiele, Programmierung, Minecraft, lua, computercraft, Tekkit Lite
1 Antwort

Meistgelesene Fragen zum Thema Computercraft

Computercraft Stripmining Programm gesucht

4 Antworten

Computercraft Floppy disk "alongtimeago"

3 Antworten

Programm von Disk auf Computer speichern [Computercraft 1.4.7]

2 Antworten

Minecraft Mining Turtle HILFE SCHNELL! BITTEE!

2 Antworten

MC Computercraft Miningturtle kann Fackeln setzen?

1 Antwort

ComputerCraft: Mining Turtle Programm?

2 Antworten

Computercraft window:94: Arguments must be the same length?

3 Antworten

Computer Craft Redstone Input lesen?

2 Antworten

Wie behebe ich den Error auf dem ComputercraftMod bei einem Programm "attempt to index (a nil value)" Was heisst das überhaupt?

2 Antworten

Computercraft - Neue und gute Antworten