didnt need all that drawing pixels is easier than i thought lmao
This commit is contained in:
+10
-28
@@ -1,42 +1,24 @@
|
||||
local raster = {util = {}}
|
||||
|
||||
local ocelot = component.proxy(component.list("ocelot")())
|
||||
local gpu = component.proxy(component.list("gpu")())
|
||||
|
||||
function raster.drawPixel(x, y, bg, fg)
|
||||
-- get original character for "merging"
|
||||
local char = gpu.get(x, y)[0]
|
||||
local char, fg, bg = gpu.get(x, y) -- thx wah
|
||||
if bg ~= nil then gpu.setBackground(bg) end
|
||||
if fg ~= nil then gpu.setForeground(fg) end
|
||||
-- convert from braille to char code
|
||||
-- convert from
|
||||
-- 1 4 1 2
|
||||
-- 2 5 -> 3 4
|
||||
-- 3 6 5 6
|
||||
-- 7 8 7 8 using complicate bit thingery
|
||||
-- example would be 171 should be converted to 157
|
||||
-- or a more simple one: 16 to 4
|
||||
-- bitwise or
|
||||
-- unconvert
|
||||
-- print the thing
|
||||
char = string.byte(char)
|
||||
-- i do NOT need to convert the thing.
|
||||
ocelot.log(char)
|
||||
char = formByte({getBit(char, 0), getBit(char, 2), getBit(char, 4), getBit(char, 1), getBit(char, 3), getBit(char, 5), getBit(char, 6), getBit(char, 7)})
|
||||
char = utf8.codepoint(char)
|
||||
if char < 0x2800 or char > 0x28ff then -- check if char is not a braille character
|
||||
char = 0 -- yes
|
||||
end
|
||||
-- now i just need to print the character + the new character but i forgot how to do it plus its late gn
|
||||
ocelot.log(char)
|
||||
end
|
||||
|
||||
function raster.util.XY2Braille(x, y)
|
||||
return math.floor(x/2), math.floor(y/4)
|
||||
end
|
||||
function raster.util.Braille2XY(x, y)
|
||||
return math.floor(x*2), math.floor(y*4)
|
||||
end
|
||||
function raster.util.getBit(a, which)
|
||||
return 1 == ((a >> which) & 1);
|
||||
end
|
||||
function raster.util.formByte(a)
|
||||
local x = 0
|
||||
for i = 1, 8 do
|
||||
x = x+(a[i]<<i)
|
||||
end
|
||||
return x
|
||||
end
|
||||
|
||||
return raster
|
||||
Reference in New Issue
Block a user