Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- mon = peripheral.wrap("front")
- x,y = mon.getSize()
- x1,y1 = mon.getCursorPos()
- t_x,t_y = term.getSize()
- t_x1,t_y1 = term.getCursorPos()
- g_strona = 1
- Tytul =
- {
- "Survival i wyzwania",
- "Sortownia i magazyn ",
- "Proste konstrukcje (1)",
- "Proste konstrukcje (2)",
- "Mechanizmy i automaty (1)",
- "Mechanizmy i automaty (2)",
- "Zrodla pozyskania energii (1)",
- "Zrodla pozyskania energii (2)",
- "Szkola czarow i magii",
- "Inne wyzwania",
- "Poboczne for fun"
- }
- Lista_zadan =
- {
- zad1, zad2, zad3, zad4, zad5, zad6, zad7, zad8, zad9, zad10,
- zad11, zad12, zad13, zad14, zad15, zad16, zad17, zad18, zad19, zad20,
- zad21, zad22, zad23, zad24, zad25, zad26, zad27, zad28, zad29, zad30,
- zad31, zad32, zad33, zad34, zad35, zad36, zad37, zad38, zad39, zad40,
- zad41, zad42, zad43, zad44, zad45, zad46, zad47, zad48, zad49, zad50,
- zad51, zad52, zad53, zad54, zad55, zad56, zad57, zad58, zad59, zad60,
- zad61, zad62, zad63, zad64, zad65, zad66, zad67, zad68, zad69, zad70,
- zad71, zad72, zad73, zad74, zad75, zad76, zad77, zad78, zad79, zad80,
- zad81, zad82, zad83, zad84, zad85, zad86, zad87, zad88, zad89, zad90,
- zad91, zad92, zad93, zad94, zad95, zad96, zad97, zad98, zad99, zad100,
- zad101, zad102, zad103, zad104, zad105, zad106, zad107, zad108, zad109, zad110,}
- --for n=1,110 do
- --table.insert(Lista_zadan,{"test","N"} )
- --end
- function save(table, name)
- local file = fs.open(name, "w")
- file.write(textutils.serialize(table))
- file.close()
- end
- function load(name)
- local file = fs.open(name, "r")
- local data = file.readAll()
- file.close()
- return textutils.unserialize(data)
- end
- Lista_zadan = load("lista_zadan")
- mon.setBackgroundColor(colors.black)
- function ekran()
- term.clear()
- mon.clear()
- mon.setTextScale(0.5)
- term.setTextColor(64)
- mon.setTextColor(3)
- mon.setCursorPos(1,1)
- term.setCursorPos(1,1)
- banner = '-----------------------------------------------'
- term.setCursorPos((math.floor(t_x/2) - (math.floor(#banner/2))),2)
- mon.setCursorPos((math.floor(x/2) - (math.floor(#banner/2))),2)
- mon.write(banner)
- term.write(banner)
- banner = 'Strona '..tostring(g_strona)..' - HZSquad'
- term.setCursorPos((math.floor(t_x/2) - (math.floor(#banner/2))),3)
- mon.setCursorPos((math.floor(x/2) - (math.floor(#banner/2))),3)
- mon.write(banner)
- term.write(banner)
- banner = '-----------------------------------------------'
- term.setCursorPos((math.floor(t_x/2) - (math.floor(#banner/2))),4)
- mon.setCursorPos((math.floor(x/2) - (math.floor(#banner/2))),4)
- mon.write(banner)
- term.write(banner)
- licznik = 1
- -- 5 - zielony 8192
- -- 14 - Czerwony 16384
- for i = ((g_strona-1)*10+1), #Lista_zadan do
- term.setCursorPos(1, 4 + (licznik))
- mon.setCursorPos(1, 4 + (licznik*2))
- if Lista_zadan[i][2] == "T" then
- term.setTextColor(8192)
- mon.setTextColor(8192)
- else
- term.setTextColor(16384)
- mon.setTextColor(16384)
- end
- term.write( Lista_zadan[i][1])
- mon.write(Lista_zadan[i][1])
- licznik = licznik + 1
- if licznik > 20 then
- break
- end
- end
- mon.setTextColor(3)
- term.setCursorPos(1, 27)
- term.write("Nastepna strona - >")
- term.setCursorPos(1, 28)
- term.write("<- Poprzednia strona")
- mon.setCursorPos(1, y)
- mon.write("<- Poprzednia strona")
- mon.setCursorPos(x-(#"<- Poprzednia strona"), y)
- mon.write("Nastepna strona - >")
- return Pilnuj_dotyk()
- end
- function Pilnuj_dotyk()
- while true do
- event,button,xPos,yPos = os.pullEvent()
- if event == "mouse_click" then
- mon.setCursorPos(1,1)
- if button == 1 then
- term.setCursorPos(1,1)
- term.write("y: " .. yPos)
- if yPos >= 5 and yPos <= 15 then
- if Lista_zadan[((g_strona-1)*10) + (yPos-4)][2] == "T" then
- Lista_zadan[((g_strona-1)*10) + (yPos)-4][2] = "N"
- else
- Lista_zadan[((g_strona-1)*10) + (yPos)-4][2] = "T"
- end
- end
- if yPos == 17 then -- nastepny
- if g_strona < 11 then
- g_strona = g_strona + 1
- end
- end
- if yPos == 18 then -- poprzedni
- if g_strona > 1 then
- g_strona = g_strona - 1
- end
- end
- save(Lista_zadan, "lista_zadan")
- return ekran()
- end
- elseif event == "monitor_touch" then
- if yPos >= 6 and yPos <= 44 then
- l_nr = 0
- l_nr = math.floor(yPos/2-2)
- -- if yPos == 6 then l_nr = 1
- -- elseif yPos == 8 then l_nr = 2
- -- elseif yPos == 10 then l_nr = 3
- -- elseif yPos == 12 then l_nr = 4
- -- elseif yPos == 14 then l_nr = 5
- -- elseif yPos == 16 then l_nr = 6
- -- elseif yPos == 18 then l_nr = 7
- -- elseif yPos == 20 then l_nr = 8
- --elseif yPos == 22 then l_nr = 9
- -- elseif yPos == 24 then l_nr = 10
- -- end
- if l_nr > 0 then
- if Lista_zadan[((g_strona-1)*10) + l_nr][2] == "T" then
- Lista_zadan[((g_strona-1)*10) + l_nr][2] = "N"
- else
- Lista_zadan[((g_strona-1)*10) + l_nr][2] = "T"
- end
- end
- end
- if yPos >= 45 then -- nastepny
- if xPos < 20 then
- if g_strona > 1 then
- g_strona = g_strona - 1
- end
- elseif xPos> x-20 then
- if g_strona < 5 then
- g_strona = g_strona + 1
- end
- end
- end
- save(Lista_zadan, "lista_zadan")
- return ekran()
- end
- end
- end
- function main()
- if fs.exists("lista_zadan") then
- else
- save(Lista_zadan, "lista_zadan")
- end
- Lista_zadan_kopia = load("lista_zadan")
- for i = 1, #Lista_zadan_kopia do
- Lista_zadan[i][2] = Lista_zadan_kopia[i][2]
- end
- save(Lista_zadan, "lista_zadan")
- mon.clear()
- term.clear()
- return ekran()
- end
- return main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement