Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Farbmonitor Aktivieren
- --"AN" = Spiel ist mit Farbe (Nur Advance Monitor)
- --"AUS" = Fuer alle Monitore. (keine Farbe)
- Farbe = "AN"
- -- Variablen
- Programmname = "XXO"
- Monitor = peripheral.wrap("top")
- Spieler = "X"
- Feld_1 = "leer"
- Feld_2 = "leer"
- Feld_3 = "leer"
- Feld_4 = "leer"
- Feld_5 = "leer"
- Feld_6 = "leer"
- Feld_7 = "leer"
- Feld_8 = "leer"
- Feld_9 = "leer"
- Klick = 0 + 0
- -- Funktionen --
- -- Check des Spielstandes
- function Check( PosX , PosY )
- Klick = Klick + 1
- if Spieler == "X" then
- X_setzen(PosX,PosY)
- Spieler = "O"
- else
- O_setzen(PosX,PosY)
- Spieler = "X"
- end
- end
- -- Grundlinien
- function Raster()
- Monitor.clear()
- if Farbe == "AN" then
- Monitor.setTextColor(colors.white)
- end
- Monitor.setCursorPos(26,19)
- Monitor.write("STOP")
- for i =1,17 do
- Monitor.setCursorPos(10,i+1)
- Monitor.write("|")
- Monitor.setCursorPos(20,i+1)
- Monitor.write("|")
- end
- Monitor.setCursorPos(2,7)
- Monitor.write("--------+---------+--------")
- Monitor.setCursorPos(2,13)
- Monitor.write("--------+---------+--------")
- end
- -- X
- function X_setzen( A , B )
- if Farbe == "AN" then
- Monitor.setTextColor(colors.red)
- end
- Monitor.setCursorPos(A,B)
- Monitor.write("# #")
- Monitor.setCursorPos(A,B+1)
- Monitor.write(" # # ")
- Monitor.setCursorPos(A,B+2)
- Monitor.write(" # ")
- Monitor.setCursorPos(A,B+3)
- Monitor.write(" # # ")
- Monitor.setCursorPos(A,B+4)
- Monitor.write("# #")
- end
- -- O
- function O_setzen( A , B )
- if Farbe == "AN" then
- Monitor.setTextColor(colors.blue)
- end
- Monitor.setCursorPos(A,B)
- Monitor.write(" ### ")
- Monitor.setCursorPos(A,B+1)
- Monitor.write("# #")
- Monitor.setCursorPos(A,B+2)
- Monitor.write("# #")
- Monitor.setCursorPos(A,B+3)
- Monitor.write("# #")
- Monitor.setCursorPos(A,B+4)
- Monitor.write(" ### ")
- end
- Raster()
- -- Touchabfrage --
- while true do
- local event, side, X, Y = os.pullEvent("monitor_touch")
- --Zeile 1
- if X >= 2 and X <= 9 and Y >= 2 and Y <= 6 and Feld_1 == "leer" then
- Feld_1 = Spieler
- Check(3,2)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 11 and X <= 19 and Y >= 2 and Y <= 6 and Feld_2 == "leer" then
- Feld_2 = Spieler
- Check(13,2)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 21 and X <= 29 and Y >= 2 and Y <= 6 and Feld_3 == "leer" then
- Feld_3 = Spieler
- Check(23,2)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- --Zeile 2
- if X >= 1 and X <= 9 and Y >= 8 and Y <= 12 and Feld_4 == "leer" then
- Feld_4 = Spieler
- Check(3,8)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 11 and X <= 19 and Y >= 8 and Y <= 12 and Feld_5 == "leer" then
- Feld_5 = Spieler
- Check(13,8)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 21 and X <= 29 and Y >= 8 and Y <= 12 and Feld_6 == "leer" then
- Feld_6 = Spieler
- Check(23,8)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- --Zeile 3
- if X >= 1 and X <= 9 and Y >= 14 and Y <= 18 and Feld_7 == "leer" then
- Feld_7 = Spieler
- Check(3,14)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 11 and X <= 19 and Y >= 14 and Y <= 18 and Feld_8 == "leer" then
- Feld_8 = Spieler
- Check(13,14)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 21 and X <= 29 and Y >= 14 and Y <= 18 and Feld_9 == "leer" then
- Feld_9 = Spieler
- Check(23,14)
- sleep(0.5)
- if Klick == 9 then
- shell.run(Programmname)
- break
- end
- end
- if X >= 26 and X <= 29 and Y == 19 then
- Monitor.clear()
- print("XXO Beendet!")
- break
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement