$àîîîààààààààààààààÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÐÐ àîîî >â#Ì ÌÀ ÀÀÌ À À À À À ÀÀÌÀ À ÌÌ À À Ì Ì ÀÀ À ÌÀ ÀÌÌÀ ÌÌÌÀ ÀÀÀ À ÀÀ À ÀÀÀÌÀ ÀÀ ÀÀÀÀÀÌ À ÀÀÀÀÀÀÀÀ À À Ì ÀÀ ÀÀÀ ÀÀÀÀÌÀÀ ÀÀÀÀ À ÀÀ ÀÀÀÀÌ À À Ì Ì À Ì ÌÀÀ ÀÌÀÌÀÀÀÀÀÌÀÀ À ÌÌÌÀÌÀ À ÀÌ Ì Ì À À Ì ÀÌÀÀ À ÌÀ Ì Ì À ÀÌ ÌÌ À À Ì Ì À ÌÀ ÀÌ Ì ÌÀ ÐÐ ÐîîîîîîîîîîîîîîîþÿÿþÿÿþÿÿþÿÿþÌüþÏüþÏüþÌÿþÌÿþüüþüüþüüþÿüþÿüþÌüþüüþüüþÏÿþÏÿþÿÿþüüþüüþüÿþüÿþÌüþÌÿþÌÿþÌüþÌüþüüþÿÿþÿÿþÿÿþÿÿþÌüîîîîîîîîîîîîîîî-- title: Roller Counter -- author: SirWobb79 (@admiralerkal79 via discord) -- desc: A simple counter style I wanted to try -- license: MIT License -- version: 1 -- script: lua n = {} nLength = 5 value = 0 f, p = 0, 1 index = 1 mode = 2 check = 0 auto = 0 pause = false speed = 1 for i=1, nLength do table.insert(n, 0) end --[[function increment(n) f = 6 if n[#n] = n[#n] + 1 end]] x, y = 116, 68 function TIC() cls() --spr(1, x, y, 0, 1, 0, 0, 2, 2) --[[n2 = tostring(n) while #n2 < nLength do n2 = "0"..n2 end --trace(n2) n3 = "" for i=#n2, 1, -1 do n3 = n3..n2:sub(i, i) end]] if btn(0) then y = y + 1 end if btn(1) then y = y - 1 end if btn(2) then x = x + 1 end if btn(3) then x = x - 1 end if keyp(13) and index ~= 1 then index = index - 1 end if keyp(14) and index ~= #n then index = index + 1 end if keyp(11) and #n ~= 1 then t = {} for i=1, #n-1 do table.insert(t, n[i]) end n = t end if keyp(10) then table.insert(n, 0) end if keyp(5) then auto = 0 end if keyp(17) then auto = 1 end if keyp(23) then auto = 2 end if keyp(16) then pause = not pause end if keyp(15) and speed ~= 1 then speed = speed - 1 for i=1, #n do if n[i]%(6/speed) ~= 0 then n[i] = n[i] + (6-(n[i]%6)) if n[i] >= 60 then n[i] = n[i]-60 end check = check + 1 end end if value ~= 0 and pause == false then f = 6 end end if keyp(9) and speed ~= 3 then speed = speed + 1 for i=1, #n do if n[i]%(6/speed) ~= 0 then n[i] = n[i] + (6-(n[i]%6)) if n[i] >= 60 then n[i] = n[i]-60 end check = check + 1 end end if value ~= 0 and pause == false then f = 6 end end if index > #n then index = #n end if btnp(4) or btn(6) then --increment(n) value = value + 1 end if btnp(5) or btn(7) then --increment(n) value = value - 1 end if auto == 1 then value = 2 end if auto == 2 then value = -2 end --trace(f) for i=1, #n do spr(2, x-((i-2)*6), y, 0, 1, 0, 0) print("0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n0", (x+9)-((i-1)*6), (y+2)-n[i], 12, true, 1, true) spr(1, x-((i-2)*6), y, 0, 1, 0, 0, 1, 2) end rect(x-((#n-2)*6)+1, y-60, #n*6, 60, 0) rect(x-((#n-2)*6)+1, y+9, #n*6, 60, 0) spr(3, x+8-((index-1)*6), y-4, 0) print("To add "..value.." at digit "..index.."/"..#n..", rolling at speed "..speed.."/3\nPause="..tostring(pause), 0, 0, 12, false, 1, true) --((tonumber(n3:sub(i, i))*6)) --value = 2 if value == 0 then check = 0 if check ~= #n then for i=1, #n do if n[i]%6 ~= 0 then n[i] = n[i] + 1 if n[i] >= 60 then n[i] = n[i]-60 end check = check + 1 end end end end if value ~= 0 and f == 0 and not pause then f = 6 p = 1 if value > 0 then value = value - 1 elseif value < 0 then value = value + 1 end end --trace(f) if f > 0 then for tick=1, speed do if mode == 1 then if value > 0 then n[p] = n[p] + 1 f = f - 1 if n[p] == 60 then n[p] = 0 f = 6 p = p + 1 end if p > #n then p = #n f = 0 end end if value < 0 then n[p] = n[p] - 1 f = f - 1 if n[p] <= 0 then n[p] = 60 f = 6 p = p + 1 end if p > #n then p = #n f = 0 end end elseif mode == 2 then r = index if value > 0 then while n[r] >= 54 and r < #n do r = r + 1 end for i=index, r do n[i] = n[i] + 1 if n[i] >= 60 then n[i] = n[i]-60 end end f = f - 1 end if value < 0 then while (n[r] == 0 or n[r] > 54) and r < #n do r = r + 1 end for i=index, r do n[i] = n[i] - 1 if n[i] < 0 then n[i] = n[i]+60 end end f = f - 1 end end end end --[[for i=1, #n do if n[i] == 60 then n[i] = 0 end end]] --n = n + 1 --n = n % math.floor(10^nLength) end