Advertisement
koki2000

random button

Dec 25th, 2016
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.09 KB | None | 0 0
  1. w, h = term.getSize()
  2. text = ""
  3. local gomb = {}
  4. term.clear()
  5. gomb[1] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "1"}
  6. gomb[2] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "2"}
  7. gomb[3] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "3"}
  8. gomb[4] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "4"}
  9. gomb[5] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "5"}
  10. gomb[6] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "6"}
  11. gomb[7] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "7"}
  12. gomb[8] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "8"}
  13. gomb[9] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "9"}
  14. gomb[10] = {x = nil, y = nil, x2 = nil, y2 = nil, color = nil, szoveg = "0"}
  15. gomb[11] = {x = 1, y = 9, x2 = 3, y2 = 9, color = colors.gray, szoveg = "*"}
  16. gomb[12] = {x = 9, y = 9, x2 = 11, y2 = 9, color = colors.gray, szoveg = "#"}
  17.  
  18. gomb2 = {}
  19. gomb2[1] = {x = 1, y = 3, x2 = 3, y2 = 3}
  20. gomb2[2] = {x = 5, y = 3, x2 = 7, y2 = 3}
  21. gomb2[3] = {x = 9, y = 3, x2 = 11, y2 = 3}
  22. gomb2[4] = {x = 1, y = 5, x2 = 3, y2 = 5}
  23. gomb2[5] = {x = 5, y = 5, x2 = 7, y2 = 5}
  24. gomb2[6] = {x = 9, y = 5, x2 = 11, y2 = 5}
  25. gomb2[7] = {x = 1, y = 7, x2 = 3, y2 = 7}
  26. gomb2[8] = {x = 5, y = 7, x2 = 7, y2 = 7}
  27. gomb2[9] = {x = 9, y = 7, x2 = 11, y2 = 7}
  28. gomb2[10] = {x = 5, y = 9, x2 = 7, y2 = 9}
  29.  
  30. szinek = {}
  31. szinek[1] = {color = 2}
  32. szinek[2] = {color = 4}
  33. szinek[3] = {color = 8}
  34. szinek[4] = {color = 16}
  35. szinek[5] = {color = 32}
  36. szinek[6] = {color = 64}
  37. szinek[7] = {color = 128}
  38. szinek[8] = {color = 256}
  39. szinek[9] = {color = 512}
  40. szinek[10] = {color = 1024}
  41.  
  42. szamok = {}
  43. szin = {}
  44.  
  45. function rand()
  46.  while #szamok < #gomb2 do
  47.   dobottszam = math.random(1, #gomb2)
  48.   table.insert(szamok, dobottszam)
  49.    index = 0
  50.    for i = 1, #szamok do
  51.     if dobottszam == szamok[i] then
  52.      index = index + 1
  53.      if index > 1 then
  54.       table.remove(szamok, i , dobottszam)
  55.      end
  56.     end
  57.    end
  58.  end
  59.  
  60.  while #szin < #gomb2 do
  61.   szinszam = math.random(1, #gomb2)
  62.   table.insert(szin, szinszam)
  63.   index = 0
  64.   for k = 1, #szin do
  65.    if szinszam == szin[k] then
  66.     index = index + 1
  67.     if index > 1 then
  68.      table.remove(szin, k , szinszam)
  69.     end
  70.    end
  71.   end
  72.  end
  73.   for j = 1, #gomb2 do
  74.   szam = szamok[j]
  75.   dobottszin = szin[j]
  76.   gomb[j].x = gomb2[szam].x
  77.   gomb[j].y = gomb2[szam].y
  78.   gomb[j].x2 = gomb2[szam].x2
  79.   gomb[j].y2 = gomb2[szam].y2
  80.   gomb[j].color = szinek[dobottszin].color
  81.  end
  82.  szamok = {}
  83.  szin = {}
  84. end
  85.  
  86. function textbox()
  87.  bal = gomb[1].x
  88.  jobb = gomb[1].x2
  89.  for h = 1, #gomb do
  90.   if gomb[h].x < bal then
  91.    bal = gomb[h].x
  92.   end
  93.   if gomb[h].x2 > jobb then
  94.    jobb = gomb[h].x2
  95.   end
  96.  end
  97.  for g = 1, 2 do
  98.   for h = bal, jobb do
  99.    term.setCursorPos(h, g)
  100.    term.setBackgroundColor(colors.lime)
  101.    print(" ")
  102.   end
  103.  end
  104.  term.setCursorPos(bal, 1)
  105.  print(text)
  106. end
  107.  
  108. function kirajzol()
  109.  textbox()
  110.  for i = 1, #gomb do
  111.   for j = 0 + gomb[i].y, gomb[i].y2 do
  112.    for k = 0 + gomb[i].x, gomb[i].x2 do
  113.     term.setCursorPos(k, j)
  114.     term.setBackgroundColor(gomb[i].color)
  115.     print(" ")
  116.    end
  117.   end
  118.   term.setCursorPos(gomb[i].x+1, gomb[i].y)
  119.   term.setTextColor(colors.red)
  120.   print(gomb[i].szoveg)
  121.  end
  122.  term.setBackgroundColor(colors.black)
  123.  term.setTextColor(colors.white)
  124. end
  125.  
  126. function paint()
  127.  term.clear()
  128.  for i = 1, #gomb do
  129.   paintutils.drawFilledBox(gomb[i].x, gomb[i].y, gomb[i].x2, gomb[i].y2, gomb[i].color)
  130.   term.setCursorPos(gomb[i].x+1, gomb[i].y)
  131.   print(gomb[i].szoveg)
  132.  end
  133.   term.setBackgroundColor(colors.black)
  134. end
  135.  
  136. function click(xpos, ypos, xs, ys, xe, ye)
  137.  if xpos < xs or xpos > xe or ypos < ys or ypos > ye then
  138.   return false
  139.  else
  140.   return true
  141.  end
  142. end
  143.  
  144. function setter(i)
  145.  text = text..gomb[i].szoveg
  146.  if gomb[i].szoveg == "*" then
  147.   text = ""
  148.  end
  149. end
  150.  
  151. while true do
  152. rand()
  153. kirajzol()
  154. local event, button, xpos, ypos = os.pullEvent("mouse_click")
  155.  for i=1, #gomb do
  156.   if click(xpos, ypos, gomb[i].x, gomb[i].y, gomb[i].x2, gomb[i].y2) then
  157.    setter(i)
  158.   end
  159.  end
  160. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement