Update and rename PrinterLib.lua to PrinterLib
This commit is contained in:
99
PrinterLib
Normal file
99
PrinterLib
Normal file
@@ -0,0 +1,99 @@
|
||||
-- shell.run("wget http://127.0.0.1:8080/code/printer/printer.lua")
|
||||
|
||||
local lib = {}
|
||||
local printer
|
||||
local xp = 1
|
||||
local yp = 1
|
||||
local shouldNewPage = false
|
||||
|
||||
function lib.init(side)
|
||||
printer = peripheral.wrap(side)
|
||||
if not printer then return nil end
|
||||
return true
|
||||
end
|
||||
|
||||
function lib.setPrinterObject(obj)
|
||||
printer = obj
|
||||
end
|
||||
|
||||
function lib.getPrinterObject()
|
||||
return printer
|
||||
end
|
||||
|
||||
function lib.setPos(x, y)
|
||||
if x ~= nil then
|
||||
xp = x
|
||||
end
|
||||
if y ~= nil then
|
||||
yp = y
|
||||
end
|
||||
printer.setCursorPos(xp, yp)
|
||||
end
|
||||
|
||||
function lib.getPos()
|
||||
return printer.getCursorPos()
|
||||
end
|
||||
|
||||
function lib.startPage()
|
||||
xp = 1
|
||||
yp = 1
|
||||
local st = printer.newPage()
|
||||
printer.setCursorPos(xp, yp)
|
||||
shouldNewPage = false
|
||||
return st
|
||||
end
|
||||
|
||||
function lib.endPage()
|
||||
printer.endPage()
|
||||
shouldNewPage = false
|
||||
end
|
||||
|
||||
function lib.write(text)
|
||||
data = tostring(text)
|
||||
for i = 1, #data do
|
||||
lib.writeChar(data:sub(i, i))
|
||||
end
|
||||
end
|
||||
|
||||
function lib.print(text)
|
||||
lib.write(text)
|
||||
lib.writeChar("\n")
|
||||
end
|
||||
|
||||
function lib.printCenter(text)
|
||||
data = tostring(text)
|
||||
xp = 13-(math.floor(#data/2))
|
||||
lib.print(data)
|
||||
end
|
||||
|
||||
-------------------
|
||||
|
||||
function lib.writeChar(char)
|
||||
if shouldNewPage then
|
||||
local st = false
|
||||
while st == false do
|
||||
st = printer.newPage()
|
||||
end
|
||||
printer.setCursorPos(1, 1)
|
||||
shouldNewPage = false
|
||||
end
|
||||
printer.setCursorPos(xp, yp)
|
||||
if char == "\n" then
|
||||
xp = 0
|
||||
yp = yp + 1
|
||||
else
|
||||
printer.write(char)
|
||||
end
|
||||
|
||||
xp = xp + 1
|
||||
if xp >= 26 then
|
||||
xp = 1
|
||||
yp = yp + 1
|
||||
end
|
||||
if yp >= 22 then
|
||||
yp = 1
|
||||
shouldNewPage = true
|
||||
end
|
||||
end
|
||||
|
||||
return lib
|
||||
Reference in New Issue
Block a user