Advertisement
Makcu73

Панель текстовая Ивентов

Nov 20th, 2017
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Max K. 03.07.2017 mcskill.ru
  2. local component = require("component")
  3. local computer = require("computer")
  4. local term = require("term")
  5. local event = require("event")
  6. local gpu = component.gpu
  7. local os = require("os")
  8. local serialization = require("serialization")
  9. local unicode = require("unicode")
  10. gpu.setResolution(86,23) -- 86,23 = 7*4 screen
  11. local width, height = gpu.getResolution()
  12.  
  13. local helpStrings = {
  14.   "<c>|cc00ffИВЕНТЫ (МИНИ-ИГРЫ) СЕРВЕРА GALAXYCRAFT",
  15.   " |ffffffИвенты проводятся каждый вечер! О начале ивента объявляется в чат",
  16. "",
  17. "<c>|cc00ffКОМАНДЫ ИВЕНТА",
  18.   "  |cc00ff/warp world |ffffff- |66ccffстроительный мир|ffffff. Строить дома можно только тут",
  19.   " |cc00ff/warp mining |ffffff- |cc9900копательный мир|ffffff, состоит только из ресурсов и камня для",
  20.   " |cc00ff/warp nether |ffffff- |ff6666нижний мир |ffffff(ад)",
  21.   "    |cc00ff/warp end |ffffff- |9999ffмир края |ffffff(эндер)",
  22.   "         |cc00ff/rtp |ffffff- переместиться в случайное место на карте (сперва перейди в другой мир)",
  23.   "        |cc00ff/zone |ffffff- выделить территорию для привата - автоматически выделяются 9 чанков",
  24.   "                |ffffffвокруг тебя - |cc00ff589000 |ffffffкубов. Топоры, //wand и прочее - не нужны",
  25.   "|cc00ff/rg claim имя |ffffff- заприватить выделенную территорию",
  26.   "        |cc00ff-mods |ffffff- список модераторов онлайн",
  27.   "            |cc00ff! |ffffff- писать в глобальный чат. Можно задавать свои вопросы",
  28.   "",
  29.   "",
  30.   "",
  31.   "",
  32.   "<c>Миры:",
  33.   "",
  34.   "     |66ccffГлавный мир |ffffff- |cc00ff6000 |ffffffх |cc00ff6000|ffffff. Последний вайп сервера - |cc00ff14 января 2018",
  35.   "|cc9900Копательный мир |ffffff- |cc00ff6000 |ffffffх |cc00ff6000",
  36.   "              |ff6666Ад |ffffff- |cc00ff2000 |ffffffх |cc00ff2000",
  37.   "            |9999ffКрай |ffffff- |cc00ff2000 |ffffffх |cc00ff2000",
  38. }
  39. function drawWindow(x,y,w,h)
  40.   gpu.set(x,y,string.rep("─",w))
  41.   gpu.set(x,y+h-1,string.rep("─",w))
  42.   gpu.set(x,y,string.rep("│",h),true)
  43.   gpu.set(x+w-1,y,string.rep("│",h),true)
  44.  
  45.   gpu.set(x,y,"┌")
  46.   gpu.set(x+w-1,y,"┐")
  47.   gpu.set(x,y+h-1,"└")
  48.   gpu.set(x+w-1,y+h-1,"┘")
  49. end
  50. function drawText(x,y,array)
  51.   function printLine(string)
  52.     if string ~= "" then
  53.       local a,b = string.find(string,"|........")
  54.       if a == nil then
  55.         io.write(string)
  56.         gpu.setForeground(0xffffff)
  57.       elseif a > 1 then
  58.         io.write(string:sub(0,a-1))
  59.         printLine(string:sub(a))
  60.       elseif a == 1 then
  61.         gpu.setForeground(tonumber("0x" .. string:sub(2,7)))
  62.         string = string:sub(7+1)
  63.         printLine(string)
  64.       end
  65.     else
  66.       gpu.setForeground(0xffffff)
  67.       return true
  68.     end
  69.   end
  70.  
  71.   local i = 0
  72.   for k,v in pairs(array) do -- <c> in the beginning to draw centered
  73.     if string.find(v,"<c>") == 1 then
  74.       local newstring = string.gsub(v,"|......","")
  75.       local newstring = string.gsub(newstring,"<c>","")
  76.       term.setCursor(math.floor(width/2) - math.floor(unicode.len(newstring)/2),y+i)
  77.     else
  78.       term.setCursor(x,y+i)
  79.     end
  80.     printLine(v:gsub("<c>",""))
  81.     i = i+1
  82.   end
  83. end
  84. term.clear()
  85. drawText(1,1,helpStrings)
  86. os.sleep(math.huge)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement