Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local c = require("component")
- local unicode = require("unicode")
- local term = require("term")
- local holo
- local gpu = c.gpu
- --Проверка на наличие нужных устройств
- if not c.isAvailable("hologram") then
- ecs.error("Подключите голографический проектор 2-ого уровня")
- return
- else
- holo = c.hologram
- end
- local hologram = {}
- ---------------------------------------
- local symbols = {
- A = {
- {0, 0, 1, 0, 0},
- {0, 1, 0, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 1, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- },
- B = {
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 1, 0},
- },
- C = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- D = {
- {1, 1, 1, 1, 0},
- {0, 1, 0, 0, 1},
- {0, 1, 0, 0, 1},
- {0, 1, 0, 0, 1},
- {0, 1, 0, 0, 1},
- {0, 1, 0, 0, 1},
- {1, 1, 1, 1, 0},
- },
- E = {
- {1, 1, 1, 1, 1},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 1, 1},
- },
- F = {
- {1, 1, 1, 1, 1},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- },
- G = {
- {0, 1, 1, 1, 1},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 1, 1, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- H = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 1, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- },
- I = {
- {0, 1, 1, 1, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 1, 1, 1, 0},
- },
- J = {
- {0, 0, 0, 0, 01},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- {0, 1, 0, 0, 1},
- {0, 0, 1, 1, 0},
- },
- K = {
- {1, 0, 0, 1, 1},
- {1, 0, 1, 0, 0},
- {1, 0, 1, 0, 0},
- {1, 1, 0, 0, 0},
- {1, 0, 1, 0, 0},
- {1, 0, 0, 1, 0},
- {1, 0, 0, 0, 1},
- },
- L = {
- {0, 1, 0, 0, 0},
- {0, 1, 0, 0, 0},
- {0, 1, 0, 0, 0},
- {0, 1, 0, 0, 0},
- {0, 1, 0, 0, 0},
- {0, 1, 0, 0, 0},
- {0, 1, 1, 1, 0},
- },
- M = {
- {1, 0, 0, 0, 1},
- {1, 1, 0, 1, 1},
- {1, 0, 1, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- },
- N = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 1, 0, 0, 1},
- {1, 0, 1, 0, 1},
- {1, 0, 0, 1, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- },
- O = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- P = {
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- },
- Q = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 1, 0, 1},
- {1, 0, 0, 1, 1},
- {0, 1, 1, 1, 0},
- },
- R = {
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 0, 0},
- {1, 0, 0, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- },
- S = {
- {0, 1, 1, 1, 1},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {0, 1, 1, 1, 0},
- {0, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- T = {
- {1, 1, 1, 1, 1},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- },
- U = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- V = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 0, 1, 0},
- {0, 0, 1, 0, 0},
- },
- W = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 1, 0, 1},
- {1, 1, 0, 1, 1},
- {1, 0, 0, 0, 1},
- },
- X = {
- {1, 0, 0, 0, 1},
- {0, 1, 0, 1, 0},
- {0, 1, 0, 1, 0},
- {0, 0, 1, 0, 0},
- {0, 1, 0, 1, 0},
- {0, 1, 0, 1, 0},
- {1, 0, 0, 0, 1},
- },
- Y = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 0, 1, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- },
- Z = {
- {1, 1, 1, 1, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 1, 0},
- {0, 0, 1, 0, 0},
- {0, 1, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 1, 1},
- },
- ["."] = {
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- },
- [","] = {
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 1, 0, 0, 0},
- {1, 0, 0, 0, 0},
- },
- ["!"] = {
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- },
- [":"] = {
- {0, 0, 0, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 0, 0, 0},
- },
- ["-"] = {
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 1, 1, 1, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- },
- ["_"] = {
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {1, 1, 1, 1, 1},
- },
- ["1"] = {
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 1, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 1, 1, 1, 0},
- },
- ["2"] = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 1, 1},
- },
- ["3"] = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 1, 1, 0},
- {0, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- ["4"] = {
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 1, 1, 1, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 0, 1},
- },
- ["5"] = {
- {1, 1, 1, 1, 1},
- {1, 0, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 1, 0},
- {0, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- ["6"] = {
- {0, 0, 1, 1, 1},
- {0, 1, 0, 0, 0},
- {1, 0, 0, 0, 0},
- {1, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- ["7"] = {
- {1, 1, 1, 1, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 1, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- {0, 0, 1, 0, 0},
- },
- ["8"] = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- ["9"] = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 1},
- {0, 0, 0, 0, 1},
- {0, 0, 0, 1, 0},
- {1, 1, 1, 0, 0},
- },
- ["0"] = {
- {0, 1, 1, 1, 0},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {1, 0, 0, 0, 1},
- {0, 1, 1, 1, 0},
- },
- [" "] = {
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- },
- empty = {
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0},
- },
- }
- local function clear()
- holo.clear()
- end
- function hologram.drawSymbol(x, y, z, symbol, color)
- for j = 1, #symbol do
- for i = 1, #symbol[j] do
- if symbol[j][i] == 1 then
- holo.set(x + i - 1, y - j + 1, z, color)
- end
- end
- end
- end
- function hologram.text(x, y, z, text, color)
- local length = unicode.len(text)
- local smeshenie = 0
- for i = 1, length do
- local sym = unicode.sub(text, i, i)
- hologram.drawSymbol(x + smeshenie, y, z, symbols[sym], color)
- smeshenie = smeshenie + 6
- end
- end
- ---------------------------------------
- local args = {...}
- local scale = tonumber(args[1]) or 2
- local height = tonumber(args[2]) or 15
- local date
- holo.setScale(scale)
- while true do
- holo.clear()
- date = "HALLO HYI" -- string.sub(os.date("%T"), 1, -4)
- text = "TMD"
- holoColor = 2
- hologram.text(10, height, 24, text, holoColor)
- term.clear()
- gpu.set(2, 2, "Hologram Text 0.1")
- gpu.set(2, 3, "Текущий текст: " .. text)
- os.sleep(1)
- end
- ---------------------------------------
- return hologram
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement