paint.generated.lua
· 35 KiB · Lua
原始檔案
Playground
local min, max, huge = math.min, math.max, math.huge
return function(counters, ports)
if counters["@set resolution"] > 0 then
ports[1].hook(counters)
return true
elseif counters["@set pixel"] > 0 then
ports[2].hook(counters)
return true
elseif counters["@draw line"] > 0 then
ports[3].hook(counters)
return true
elseif counters["@display"] > 0 then
ports[4].hook(counters)
return true
elseif counters["@poll inputs"] > 0 then
ports[5].hook(counters)
return true
elseif counters["@mouse position"] > 0 then
ports[6].hook(counters)
return true
elseif counters["@mouse is down"] > 0 then
ports[7].hook(counters)
return true
elseif counters["@mouse relative position"] > 0 then
ports[8].hook(counters)
return true
elseif counters["@mouse wheel"] > 0 then
ports[9].hook(counters)
return true
elseif counters["@sleep:60"] > 0 then
acc = counters["@sleep:60"]
counters["@sleep:60"] = max(counters["@sleep:60"] - acc, 0)
counters["@sleep"] = counters["@sleep"] + acc * 60
return true
elseif counters["@line x1:10"] > 0 then
acc = counters["@line x1:10"]
counters["@line x1:10"] = max(counters["@line x1:10"] - acc, 0)
counters["@line x1"] = counters["@line x1"] + acc * 10
return true
elseif counters["@line y1:10"] > 0 then
acc = counters["@line y1:10"]
counters["@line y1:10"] = max(counters["@line y1:10"] - acc, 0)
counters["@line y1"] = counters["@line y1"] + acc * 10
return true
elseif counters["@line x2:30"] > 0 then
acc = counters["@line x2:30"]
counters["@line x2:30"] = max(counters["@line x2:30"] - acc, 0)
counters["@line x2"] = counters["@line x2"] + acc * 30
return true
elseif counters["@line y2:10"] > 0 then
acc = counters["@line y2:10"]
counters["@line y2:10"] = max(counters["@line y2:10"] - acc, 0)
counters["@line y2"] = counters["@line y2"] + acc * 10
return true
elseif counters["@pixel r:255"] > 0 then
acc = counters["@pixel r:255"]
counters["@pixel r:255"] = max(counters["@pixel r:255"] - acc, 0)
counters["@pixel r"] = counters["@pixel r"] + acc * 255
return true
elseif counters["@pixel g:255"] > 0 then
acc = counters["@pixel g:255"]
counters["@pixel g:255"] = max(counters["@pixel g:255"] - acc, 0)
counters["@pixel g"] = counters["@pixel g"] + acc * 255
return true
elseif counters["@pixel b:255"] > 0 then
acc = counters["@pixel b:255"]
counters["@pixel b:255"] = max(counters["@pixel b:255"] - acc, 0)
counters["@pixel b"] = counters["@pixel b"] + acc * 255
return true
elseif counters["@pixel r:87"] > 0 then
acc = counters["@pixel r:87"]
counters["@pixel r:87"] = max(counters["@pixel r:87"] - acc, 0)
counters["@pixel r"] = counters["@pixel r"] + acc * 87
return true
elseif counters["@pixel g:87"] > 0 then
acc = counters["@pixel g:87"]
counters["@pixel g:87"] = max(counters["@pixel g:87"] - acc, 0)
counters["@pixel g"] = counters["@pixel g"] + acc * 87
return true
elseif counters["@pixel b:87"] > 0 then
acc = counters["@pixel b:87"]
counters["@pixel b:87"] = max(counters["@pixel b:87"] - acc, 0)
counters["@pixel b"] = counters["@pixel b"] + acc * 87
return true
elseif counters["@pixel r:219"] > 0 then
acc = counters["@pixel r:219"]
counters["@pixel r:219"] = max(counters["@pixel r:219"] - acc, 0)
counters["@pixel r"] = counters["@pixel r"] + acc * 219
return true
elseif counters["@pixel b:12"] > 0 then
acc = counters["@pixel b:12"]
counters["@pixel b:12"] = max(counters["@pixel b:12"] - acc, 0)
counters["@pixel b"] = counters["@pixel b"] + acc * 12
return true
elseif counters["clear @pixel r:255"] > 0 then
acc = counters["clear @pixel r:255"]
counters["clear @pixel r:255"] = max(counters["clear @pixel r:255"] - acc, 0)
counters["clear @pixel r"] = counters["clear @pixel r"] + acc * 255
return true
elseif counters["clear @pixel g:255"] > 0 then
acc = counters["clear @pixel g:255"]
counters["clear @pixel g:255"] = max(counters["clear @pixel g:255"] - acc, 0)
counters["clear @pixel g"] = counters["clear @pixel g"] + acc * 255
return true
elseif counters["clear @pixel b:255"] > 0 then
acc = counters["clear @pixel b:255"]
counters["clear @pixel b:255"] = max(counters["clear @pixel b:255"] - acc, 0)
counters["clear @pixel b"] = counters["clear @pixel b"] + acc * 255
return true
elseif counters["clear old mouse x:1000000"] > 0 then
acc = counters["clear old mouse x:1000000"]
counters["clear old mouse x:1000000"] = max(counters["clear old mouse x:1000000"] - acc, 0)
counters["clear old mouse x"] = counters["clear old mouse x"] + acc * 1000000
return true
elseif counters["clear old mouse y:1000000"] > 0 then
acc = counters["clear old mouse y:1000000"]
counters["clear old mouse y:1000000"] = max(counters["clear old mouse y:1000000"] - acc, 0)
counters["clear old mouse y"] = counters["clear old mouse y"] + acc * 1000000
return true
elseif counters["current mouse x -> old mouse x:1000000"] > 0 then
acc = counters["current mouse x -> old mouse x:1000000"]
counters["current mouse x -> old mouse x:1000000"] = max(counters["current mouse x -> old mouse x:1000000"] - acc, 0)
counters["current mouse x -> old mouse x"] = counters["current mouse x -> old mouse x"] + acc * 1000000
return true
elseif counters["current mouse y -> old mouse y:1000000"] > 0 then
acc = counters["current mouse y -> old mouse y:1000000"]
counters["current mouse y -> old mouse y:1000000"] = max(counters["current mouse y -> old mouse y:1000000"] - acc, 0)
counters["current mouse y -> old mouse y"] = counters["current mouse y -> old mouse y"] + acc * 1000000
return true
elseif counters["@mouse x -> current mouse x:1000000"] > 0 then
acc = counters["@mouse x -> current mouse x:1000000"]
counters["@mouse x -> current mouse x:1000000"] = max(counters["@mouse x -> current mouse x:1000000"] - acc, 0)
counters["@mouse x -> current mouse x"] = counters["@mouse x -> current mouse x"] + acc * 1000000
return true
elseif counters["@mouse y -> current mouse y:1000000"] > 0 then
acc = counters["@mouse y -> current mouse y:1000000"]
counters["@mouse y -> current mouse y:1000000"] = max(counters["@mouse y -> current mouse y:1000000"] - acc, 0)
counters["@mouse y -> current mouse y"] = counters["@mouse y -> current mouse y"] + acc * 1000000
return true
elseif counters["copy old mouse x -> @line x1:1000000"] > 0 then
acc = counters["copy old mouse x -> @line x1:1000000"]
counters["copy old mouse x -> @line x1:1000000"] = max(counters["copy old mouse x -> @line x1:1000000"] - acc, 0)
counters["copy old mouse x -> @line x1"] = counters["copy old mouse x -> @line x1"] + acc * 1000000
return true
elseif counters["copy old mouse y -> @line y1:1000000"] > 0 then
acc = counters["copy old mouse y -> @line y1:1000000"]
counters["copy old mouse y -> @line y1:1000000"] = max(counters["copy old mouse y -> @line y1:1000000"] - acc, 0)
counters["copy old mouse y -> @line y1"] = counters["copy old mouse y -> @line y1"] + acc * 1000000
return true
elseif counters["copy current mouse x -> @line x2:1000000"] > 0 then
acc = counters["copy current mouse x -> @line x2:1000000"]
counters["copy current mouse x -> @line x2:1000000"] = max(counters["copy current mouse x -> @line x2:1000000"] - acc, 0)
counters["copy current mouse x -> @line x2"] = counters["copy current mouse x -> @line x2"] + acc * 1000000
return true
elseif counters["copy current mouse y -> @line y2:1000000"] > 0 then
acc = counters["copy current mouse y -> @line y2:1000000"]
counters["copy current mouse y -> @line y2:1000000"] = max(counters["copy current mouse y -> @line y2:1000000"] - acc, 0)
counters["copy current mouse y -> @line y2"] = counters["copy current mouse y -> @line y2"] + acc * 1000000
return true
elseif counters["clear pixel color"] > 0 then
acc = counters["clear pixel color"]
counters["clear pixel color"] = max(counters["clear pixel color"] - acc, 0)
counters["clear @pixel g:255"] = counters["clear @pixel g:255"] + acc * 1
counters["clear @pixel b:255"] = counters["clear @pixel b:255"] + acc * 1
counters["clear @pixel r:255"] = counters["clear @pixel r:255"] + acc * 1
return true
elseif counters["clear @pixel r"] > 0 and counters["@pixel r"] > 0 then
local acc = huge
acc = min(acc, counters["@pixel r"])
acc = min(acc, counters["clear @pixel r"])
counters["clear @pixel r"] = max(counters["clear @pixel r"] - acc, 0)
counters["@pixel r"] = max(counters["@pixel r"] - acc, 0)
return true
elseif counters["clear @pixel g"] > 0 and counters["@pixel g"] > 0 then
local acc = huge
acc = min(acc, counters["clear @pixel g"])
acc = min(acc, counters["@pixel g"])
counters["clear @pixel g"] = max(counters["clear @pixel g"] - acc, 0)
counters["@pixel g"] = max(counters["@pixel g"] - acc, 0)
return true
elseif counters["clear @pixel b"] > 0 and counters["@pixel b"] > 0 then
local acc = huge
acc = min(acc, counters["@pixel b"])
acc = min(acc, counters["clear @pixel b"])
counters["clear @pixel b"] = max(counters["clear @pixel b"] - acc, 0)
counters["@pixel b"] = max(counters["@pixel b"] - acc, 0)
return true
elseif counters["clear @pixel r"] > 0 then
acc = counters["clear @pixel r"]
counters["clear @pixel r"] = max(counters["clear @pixel r"] - acc, 0)
return true
elseif counters["clear @pixel g"] > 0 then
acc = counters["clear @pixel g"]
counters["clear @pixel g"] = max(counters["clear @pixel g"] - acc, 0)
return true
elseif counters["clear @pixel b"] > 0 then
acc = counters["clear @pixel b"]
counters["clear @pixel b"] = max(counters["clear @pixel b"] - acc, 0)
return true
elseif counters["clear old mouse x"] > 0 and counters["old mouse x"] > 0 then
local acc = huge
acc = min(acc, counters["clear old mouse x"])
acc = min(acc, counters["old mouse x"])
counters["clear old mouse x"] = max(counters["clear old mouse x"] - acc, 0)
counters["old mouse x"] = max(counters["old mouse x"] - acc, 0)
return true
elseif counters["clear old mouse x"] > 0 then
acc = counters["clear old mouse x"]
counters["clear old mouse x"] = max(counters["clear old mouse x"] - acc, 0)
return true
elseif counters["clear old mouse y"] > 0 and counters["old mouse y"] > 0 then
local acc = huge
acc = min(acc, counters["old mouse y"])
acc = min(acc, counters["clear old mouse y"])
counters["clear old mouse y"] = max(counters["clear old mouse y"] - acc, 0)
counters["old mouse y"] = max(counters["old mouse y"] - acc, 0)
return true
elseif counters["clear old mouse y"] > 0 then
acc = counters["clear old mouse y"]
counters["clear old mouse y"] = max(counters["clear old mouse y"] - acc, 0)
return true
elseif counters["current mouse x -> old mouse x"] > 0 and counters["current mouse x"] > 0 then
local acc = huge
acc = min(acc, counters["current mouse x -> old mouse x"])
acc = min(acc, counters["current mouse x"])
counters["current mouse x -> old mouse x"] = max(counters["current mouse x -> old mouse x"] - acc, 0)
counters["current mouse x"] = max(counters["current mouse x"] - acc, 0)
counters["old mouse x"] = counters["old mouse x"] + acc * 1
return true
elseif counters["current mouse y -> old mouse y"] > 0 and counters["current mouse y"] > 0 then
local acc = huge
acc = min(acc, counters["current mouse y"])
acc = min(acc, counters["current mouse y -> old mouse y"])
counters["current mouse y -> old mouse y"] = max(counters["current mouse y -> old mouse y"] - acc, 0)
counters["current mouse y"] = max(counters["current mouse y"] - acc, 0)
counters["old mouse y"] = counters["old mouse y"] + acc * 1
return true
elseif counters["current mouse x -> old mouse x"] > 0 then
acc = counters["current mouse x -> old mouse x"]
counters["current mouse x -> old mouse x"] = max(counters["current mouse x -> old mouse x"] - acc, 0)
return true
elseif counters["current mouse y -> old mouse y"] > 0 then
acc = counters["current mouse y -> old mouse y"]
counters["current mouse y -> old mouse y"] = max(counters["current mouse y -> old mouse y"] - acc, 0)
return true
elseif counters["@mouse x -> current mouse x"] > 0 and counters["@mouse x"] > 0 then
local acc = huge
acc = min(acc, counters["@mouse x -> current mouse x"])
acc = min(acc, counters["@mouse x"])
counters["@mouse x -> current mouse x"] = max(counters["@mouse x -> current mouse x"] - acc, 0)
counters["@mouse x"] = max(counters["@mouse x"] - acc, 0)
counters["current mouse x"] = counters["current mouse x"] + acc * 1
return true
elseif counters["@mouse y -> current mouse y"] > 0 and counters["@mouse y"] > 0 then
local acc = huge
acc = min(acc, counters["@mouse y"])
acc = min(acc, counters["@mouse y -> current mouse y"])
counters["@mouse y -> current mouse y"] = max(counters["@mouse y -> current mouse y"] - acc, 0)
counters["@mouse y"] = max(counters["@mouse y"] - acc, 0)
counters["current mouse y"] = counters["current mouse y"] + acc * 1
return true
elseif counters["@mouse x -> current mouse x"] > 0 then
acc = counters["@mouse x -> current mouse x"]
counters["@mouse x -> current mouse x"] = max(counters["@mouse x -> current mouse x"] - acc, 0)
return true
elseif counters["@mouse y -> current mouse y"] > 0 then
acc = counters["@mouse y -> current mouse y"]
counters["@mouse y -> current mouse y"] = max(counters["@mouse y -> current mouse y"] - acc, 0)
return true
elseif counters["copy old mouse x -> @line x1"] > 0 and counters["old mouse x"] > 0 then
local acc = huge
acc = min(acc, counters["copy old mouse x -> @line x1"])
acc = min(acc, counters["old mouse x"])
counters["copy old mouse x -> @line x1"] = max(counters["copy old mouse x -> @line x1"] - acc, 0)
counters["old mouse x"] = max(counters["old mouse x"] - acc, 0)
counters["used old mouse x"] = counters["used old mouse x"] + acc * 1
counters["@line x1"] = counters["@line x1"] + acc * 1
return true
elseif counters["copy old mouse y -> @line y1"] > 0 and counters["old mouse y"] > 0 then
local acc = huge
acc = min(acc, counters["old mouse y"])
acc = min(acc, counters["copy old mouse y -> @line y1"])
counters["copy old mouse y -> @line y1"] = max(counters["copy old mouse y -> @line y1"] - acc, 0)
counters["old mouse y"] = max(counters["old mouse y"] - acc, 0)
counters["@line y1"] = counters["@line y1"] + acc * 1
counters["used old mouse y"] = counters["used old mouse y"] + acc * 1
return true
elseif counters["copy current mouse x -> @line x2"] > 0 and counters["current mouse x"] > 0 then
local acc = huge
acc = min(acc, counters["copy current mouse x -> @line x2"])
acc = min(acc, counters["current mouse x"])
counters["copy current mouse x -> @line x2"] = max(counters["copy current mouse x -> @line x2"] - acc, 0)
counters["current mouse x"] = max(counters["current mouse x"] - acc, 0)
counters["used current mouse x"] = counters["used current mouse x"] + acc * 1
counters["@line x2"] = counters["@line x2"] + acc * 1
return true
elseif counters["copy current mouse y -> @line y2"] > 0 and counters["current mouse y"] > 0 then
local acc = huge
acc = min(acc, counters["current mouse y"])
acc = min(acc, counters["copy current mouse y -> @line y2"])
counters["copy current mouse y -> @line y2"] = max(counters["copy current mouse y -> @line y2"] - acc, 0)
counters["current mouse y"] = max(counters["current mouse y"] - acc, 0)
counters["@line y2"] = counters["@line y2"] + acc * 1
counters["used current mouse y"] = counters["used current mouse y"] + acc * 1
return true
elseif counters["copy old mouse x -> @line x1"] > 0 then
acc = counters["copy old mouse x -> @line x1"]
counters["copy old mouse x -> @line x1"] = max(counters["copy old mouse x -> @line x1"] - acc, 0)
return true
elseif counters["copy old mouse y -> @line y1"] > 0 then
acc = counters["copy old mouse y -> @line y1"]
counters["copy old mouse y -> @line y1"] = max(counters["copy old mouse y -> @line y1"] - acc, 0)
return true
elseif counters["copy current mouse x -> @line x2"] > 0 then
acc = counters["copy current mouse x -> @line x2"]
counters["copy current mouse x -> @line x2"] = max(counters["copy current mouse x -> @line x2"] - acc, 0)
return true
elseif counters["copy current mouse y -> @line y2"] > 0 then
acc = counters["copy current mouse y -> @line y2"]
counters["copy current mouse y -> @line y2"] = max(counters["copy current mouse y -> @line y2"] - acc, 0)
return true
elseif counters["used old mouse x"] > 0 then
acc = counters["used old mouse x"]
counters["used old mouse x"] = max(counters["used old mouse x"] - acc, 0)
counters["old mouse x"] = counters["old mouse x"] + acc * 1
return true
elseif counters["used old mouse y"] > 0 then
acc = counters["used old mouse y"]
counters["used old mouse y"] = max(counters["used old mouse y"] - acc, 0)
counters["old mouse y"] = counters["old mouse y"] + acc * 1
return true
elseif counters["used current mouse x"] > 0 then
acc = counters["used current mouse x"]
counters["used current mouse x"] = max(counters["used current mouse x"] - acc, 0)
counters["current mouse x"] = counters["current mouse x"] + acc * 1
return true
elseif counters["used current mouse y"] > 0 then
acc = counters["used current mouse y"]
counters["used current mouse y"] = max(counters["used current mouse y"] - acc, 0)
counters["current mouse y"] = counters["current mouse y"] + acc * 1
return true
elseif counters["clear old mouse position"] > 0 then
acc = counters["clear old mouse position"]
counters["clear old mouse position"] = max(counters["clear old mouse position"] - acc, 0)
counters["clear old mouse y:1000000"] = counters["clear old mouse y:1000000"] + acc * 1
counters["clear old mouse x:1000000"] = counters["clear old mouse x:1000000"] + acc * 1
return true
elseif counters["move current mouse position to old mouse position"] > 0 then
acc = counters["move current mouse position to old mouse position"]
counters["move current mouse position to old mouse position"] = max(counters["move current mouse position to old mouse position"] - acc, 0)
counters["current mouse x -> old mouse x:1000000"] = counters["current mouse x -> old mouse x:1000000"] + acc * 1
counters["current mouse y -> old mouse y:1000000"] = counters["current mouse y -> old mouse y:1000000"] + acc * 1
return true
elseif counters["move @mouse position to current mouse position"] > 0 then
acc = counters["move @mouse position to current mouse position"]
counters["move @mouse position to current mouse position"] = max(counters["move @mouse position to current mouse position"] - acc, 0)
counters["@mouse y -> current mouse y:1000000"] = counters["@mouse y -> current mouse y:1000000"] + acc * 1
counters["@mouse x -> current mouse x:1000000"] = counters["@mouse x -> current mouse x:1000000"] + acc * 1
return true
elseif counters["update mouse position"] > 0 then
acc = counters["update mouse position"]
counters["update mouse position"] = max(counters["update mouse position"] - acc, 0)
counters["@mouse position"] = counters["@mouse position"] + acc * 1
counters["move current mouse position to old mouse position"] = counters["move current mouse position to old mouse position"] + acc * 1
counters["clear old mouse position"] = counters["clear old mouse position"] + acc * 1
counters["move @mouse position to current mouse position"] = counters["move @mouse position to current mouse position"] + acc * 1
return true
elseif counters["check if mouse button 1 is down"] > 0 and counters["find brush mode"] > 0 then
local acc = huge
acc = min(acc, counters["check if mouse button 1 is down"])
acc = min(acc, counters["find brush mode"])
counters["check if mouse button 1 is down"] = max(counters["check if mouse button 1 is down"] - acc, 0)
counters["find brush mode"] = max(counters["find brush mode"] - acc, 0)
counters["@mouse button"] = counters["@mouse button"] + acc * 1
counters["checking button 1"] = counters["checking button 1"] + acc * 1
counters["@mouse is down"] = counters["@mouse is down"] + acc * 1
return true
elseif counters["check if mouse button 2 is down"] > 0 and counters["find brush mode"] > 0 then
local acc = huge
acc = min(acc, counters["find brush mode"])
acc = min(acc, counters["check if mouse button 2 is down"])
counters["check if mouse button 2 is down"] = max(counters["check if mouse button 2 is down"] - acc, 0)
counters["find brush mode"] = max(counters["find brush mode"] - acc, 0)
counters["checking button 2"] = counters["checking button 2"] + acc * 1
counters["@mouse button"] = counters["@mouse button"] + acc * 2
counters["@mouse is down"] = counters["@mouse is down"] + acc * 1
return true
elseif counters["check if mouse button 3 is down"] > 0 and counters["find brush mode"] > 0 then
local acc = huge
acc = min(acc, counters["find brush mode"])
acc = min(acc, counters["check if mouse button 3 is down"])
counters["check if mouse button 3 is down"] = max(counters["check if mouse button 3 is down"] - acc, 0)
counters["find brush mode"] = max(counters["find brush mode"] - acc, 0)
counters["@mouse button"] = counters["@mouse button"] + acc * 3
counters["checking button 3"] = counters["checking button 3"] + acc * 1
counters["@mouse is down"] = counters["@mouse is down"] + acc * 1
return true
elseif counters["checking button 1"] > 0 and counters["@mouse button is down"] > 0 then
local acc = huge
acc = min(acc, counters["checking button 1"])
acc = min(acc, counters["@mouse button is down"])
counters["checking button 1"] = max(counters["checking button 1"] - acc, 0)
counters["@mouse button is down"] = max(counters["@mouse button is down"] - acc, 0)
counters["brush is drawing"] = counters["brush is drawing"] + acc * 1
return true
elseif counters["checking button 2"] > 0 and counters["@mouse button is down"] > 0 then
local acc = huge
acc = min(acc, counters["checking button 2"])
acc = min(acc, counters["@mouse button is down"])
counters["checking button 2"] = max(counters["checking button 2"] - acc, 0)
counters["@mouse button is down"] = max(counters["@mouse button is down"] - acc, 0)
counters["brush is erasing"] = counters["brush is erasing"] + acc * 1
return true
elseif counters["checking button 3"] > 0 and counters["@mouse button is down"] > 0 then
local acc = huge
acc = min(acc, counters["checking button 3"])
acc = min(acc, counters["@mouse button is down"])
counters["checking button 3"] = max(counters["checking button 3"] - acc, 0)
counters["@mouse button is down"] = max(counters["@mouse button is down"] - acc, 0)
counters["brush is drawing red"] = counters["brush is drawing red"] + acc * 1
return true
elseif counters["checking button 3"] > 0 then
acc = counters["checking button 3"]
counters["checking button 3"] = max(counters["checking button 3"] - acc, 0)
counters["find brush mode"] = counters["find brush mode"] + acc * 1
return true
elseif counters["checking button 2"] > 0 then
acc = counters["checking button 2"]
counters["checking button 2"] = max(counters["checking button 2"] - acc, 0)
counters["find brush mode"] = counters["find brush mode"] + acc * 1
return true
elseif counters["checking button 1"] > 0 then
acc = counters["checking button 1"]
counters["checking button 1"] = max(counters["checking button 1"] - acc, 0)
counters["find brush mode"] = counters["find brush mode"] + acc * 1
return true
elseif counters["find brush mode"] > 0 then
acc = counters["find brush mode"]
counters["find brush mode"] = max(counters["find brush mode"] - acc, 0)
return true
elseif counters["check if mouse button is down"] > 0 then
acc = counters["check if mouse button is down"]
counters["check if mouse button is down"] = max(counters["check if mouse button is down"] - acc, 0)
counters["check if mouse button 1 is down"] = counters["check if mouse button 1 is down"] + acc * 1
counters["find brush mode"] = counters["find brush mode"] + acc * 1
counters["check if mouse button 3 is down"] = counters["check if mouse button 3 is down"] + acc * 1
counters["check if mouse button 2 is down"] = counters["check if mouse button 2 is down"] + acc * 1
return true
elseif counters["set line color"] > 0 and counters["current color is 1"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 1"])
acc = min(acc, counters["set line color"])
counters["set line color"] = max(counters["set line color"] - acc, 0)
counters["current color is 1"] = max(counters["current color is 1"] - acc, 0)
counters["current color is 1"] = counters["current color is 1"] + acc * 1
counters["@pixel r:255"] = counters["@pixel r:255"] + acc * 1
counters["@pixel g:255"] = counters["@pixel g:255"] + acc * 1
counters["@pixel b:255"] = counters["@pixel b:255"] + acc * 1
return true
elseif counters["set line color"] > 0 and counters["current color is 2"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 2"])
acc = min(acc, counters["set line color"])
counters["set line color"] = max(counters["set line color"] - acc, 0)
counters["current color is 2"] = max(counters["current color is 2"] - acc, 0)
counters["current color is 2"] = counters["current color is 2"] + acc * 1
counters["@pixel r:87"] = counters["@pixel r:87"] + acc * 1
counters["@pixel g:87"] = counters["@pixel g:87"] + acc * 1
counters["@pixel b:87"] = counters["@pixel b:87"] + acc * 1
return true
elseif counters["set line color"] > 0 and counters["current color is 3"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 3"])
acc = min(acc, counters["set line color"])
counters["set line color"] = max(counters["set line color"] - acc, 0)
counters["current color is 3"] = max(counters["current color is 3"] - acc, 0)
counters["current color is 3"] = counters["current color is 3"] + acc * 1
counters["@pixel r:219"] = counters["@pixel r:219"] + acc * 1
counters["@pixel b:12"] = counters["@pixel b:12"] + acc * 1
return true
elseif counters["set line color"] > 0 and counters["current color is 4"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 4"])
acc = min(acc, counters["set line color"])
counters["set line color"] = max(counters["set line color"] - acc, 0)
counters["current color is 4"] = max(counters["current color is 4"] - acc, 0)
counters["current color is 4"] = counters["current color is 4"] + acc * 1
return true
elseif counters["set line position"] > 0 then
acc = counters["set line position"]
counters["set line position"] = max(counters["set line position"] - acc, 0)
counters["copy current mouse y -> @line y2:1000000"] = counters["copy current mouse y -> @line y2:1000000"] + acc * 1
counters["copy old mouse x -> @line x1:1000000"] = counters["copy old mouse x -> @line x1:1000000"] + acc * 1
counters["copy old mouse y -> @line y1:1000000"] = counters["copy old mouse y -> @line y1:1000000"] + acc * 1
counters["copy current mouse x -> @line x2:1000000"] = counters["copy current mouse x -> @line x2:1000000"] + acc * 1
return true
elseif counters["draw the line"] > 0 then
acc = counters["draw the line"]
counters["draw the line"] = max(counters["draw the line"] - acc, 0)
counters["@draw line"] = counters["@draw line"] + acc * 1
return true
elseif counters["plot line"] > 0 then
acc = counters["plot line"]
counters["plot line"] = max(counters["plot line"] - acc, 0)
counters["set line position"] = counters["set line position"] + acc * 1
counters["draw the line"] = counters["draw the line"] + acc * 1
return true
elseif counters["draw a line"] > 0 and counters["brush is drawing"] > 0 then
local acc = huge
acc = min(acc, counters["brush is drawing"])
acc = min(acc, counters["draw a line"])
counters["draw a line"] = max(counters["draw a line"] - acc, 0)
counters["brush is drawing"] = max(counters["brush is drawing"] - acc, 0)
counters["plot line"] = counters["plot line"] + acc * 1
counters["clear pixel color"] = counters["clear pixel color"] + acc * 1
counters["set line color"] = counters["set line color"] + acc * 1
return true
elseif counters["draw a line"] > 0 and counters["brush is erasing"] > 0 then
local acc = huge
acc = min(acc, counters["brush is erasing"])
acc = min(acc, counters["draw a line"])
counters["draw a line"] = max(counters["draw a line"] - acc, 0)
counters["brush is erasing"] = max(counters["brush is erasing"] - acc, 0)
counters["clear pixel color"] = counters["clear pixel color"] + acc * 1
counters["plot line"] = counters["plot line"] + acc * 1
return true
elseif counters["draw a line"] > 0 then
acc = counters["draw a line"]
counters["draw a line"] = max(counters["draw a line"] - acc, 0)
return true
elseif counters["check for color change"] > 0 then
acc = counters["check for color change"]
counters["check for color change"] = max(counters["check for color change"] - acc, 0)
counters["@mouse wheel"] = counters["@mouse wheel"] + acc * 1
counters["update color"] = counters["update color"] + acc * 1
return true
elseif counters["update color"] > 0 and counters["@mouse wheel +y"] > 0 then
local acc = huge
acc = min(acc, counters["@mouse wheel +y"])
acc = min(acc, counters["update color"])
counters["update color"] = max(counters["update color"] - acc, 0)
counters["@mouse wheel +y"] = max(counters["@mouse wheel +y"] - acc, 0)
counters["next color"] = counters["next color"] + acc * 1
return true
elseif counters["update color"] > 0 and counters["@mouse wheel -y"] > 0 then
local acc = huge
acc = min(acc, counters["@mouse wheel -y"])
acc = min(acc, counters["update color"])
counters["update color"] = max(counters["update color"] - acc, 0)
counters["@mouse wheel -y"] = max(counters["@mouse wheel -y"] - acc, 0)
counters["previous color"] = counters["previous color"] + acc * 1
return true
elseif counters["current color is 1"] > 0 and counters["next color"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 1"])
acc = min(acc, counters["next color"])
counters["current color is 1"] = max(counters["current color is 1"] - acc, 0)
counters["next color"] = max(counters["next color"] - acc, 0)
counters["current color is 2"] = counters["current color is 2"] + acc * 1
return true
elseif counters["current color is 2"] > 0 and counters["next color"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 2"])
acc = min(acc, counters["next color"])
counters["current color is 2"] = max(counters["current color is 2"] - acc, 0)
counters["next color"] = max(counters["next color"] - acc, 0)
counters["current color is 3"] = counters["current color is 3"] + acc * 1
return true
elseif counters["current color is 3"] > 0 and counters["next color"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 3"])
acc = min(acc, counters["next color"])
counters["current color is 3"] = max(counters["current color is 3"] - acc, 0)
counters["next color"] = max(counters["next color"] - acc, 0)
counters["current color is 4"] = counters["current color is 4"] + acc * 1
return true
elseif counters["current color is 4"] > 0 and counters["next color"] > 0 then
local acc = huge
acc = min(acc, counters["next color"])
acc = min(acc, counters["current color is 4"])
counters["current color is 4"] = max(counters["current color is 4"] - acc, 0)
counters["next color"] = max(counters["next color"] - acc, 0)
counters["current color is 1"] = counters["current color is 1"] + acc * 1
return true
elseif counters["current color is 1"] > 0 and counters["previous color"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 1"])
acc = min(acc, counters["previous color"])
counters["current color is 1"] = max(counters["current color is 1"] - acc, 0)
counters["previous color"] = max(counters["previous color"] - acc, 0)
counters["current color is 4"] = counters["current color is 4"] + acc * 1
return true
elseif counters["current color is 2"] > 0 and counters["previous color"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 2"])
acc = min(acc, counters["previous color"])
counters["current color is 2"] = max(counters["current color is 2"] - acc, 0)
counters["previous color"] = max(counters["previous color"] - acc, 0)
counters["current color is 1"] = counters["current color is 1"] + acc * 1
return true
elseif counters["current color is 3"] > 0 and counters["previous color"] > 0 then
local acc = huge
acc = min(acc, counters["current color is 3"])
acc = min(acc, counters["previous color"])
counters["current color is 3"] = max(counters["current color is 3"] - acc, 0)
counters["previous color"] = max(counters["previous color"] - acc, 0)
counters["current color is 2"] = counters["current color is 2"] + acc * 1
return true
elseif counters["current color is 4"] > 0 and counters["previous color"] > 0 then
local acc = huge
acc = min(acc, counters["previous color"])
acc = min(acc, counters["current color is 4"])
counters["current color is 4"] = max(counters["current color is 4"] - acc, 0)
counters["previous color"] = max(counters["previous color"] - acc, 0)
counters["current color is 3"] = counters["current color is 3"] + acc * 1
return true
elseif counters["@mouse wheel +y"] > 0 then
acc = counters["@mouse wheel +y"]
counters["@mouse wheel +y"] = max(counters["@mouse wheel +y"] - acc, 0)
return true
elseif counters["@mouse wheel -y"] > 0 then
acc = counters["@mouse wheel -y"]
counters["@mouse wheel -y"] = max(counters["@mouse wheel -y"] - acc, 0)
return true
elseif counters["update"] > 0 then
acc = counters["update"]
counters["update"] = max(counters["update"] - acc, 0)
counters["draw a line"] = counters["draw a line"] + acc * 1
counters["check if mouse button is down"] = counters["check if mouse button is down"] + acc * 1
counters["update mouse position"] = counters["update mouse position"] + acc * 1
return true
elseif counters["poll inputs"] > 0 then
acc = counters["poll inputs"]
counters["poll inputs"] = max(counters["poll inputs"] - acc, 0)
counters["@poll inputs"] = counters["@poll inputs"] + acc * 1
return true
elseif counters["draw brush color"] > 0 then
acc = counters["draw brush color"]
counters["draw brush color"] = max(counters["draw brush color"] - acc, 0)
counters["@line x2:30"] = counters["@line x2:30"] + acc * 1
counters["@line y1:10"] = counters["@line y1:10"] + acc * 1
counters["@line y2:10"] = counters["@line y2:10"] + acc * 1
counters["draw the line"] = counters["draw the line"] + acc * 1
counters["@line x1:10"] = counters["@line x1:10"] + acc * 1
counters["set line color"] = counters["set line color"] + acc * 1
return true
elseif counters["display"] > 0 then
acc = counters["display"]
counters["display"] = max(counters["display"] - acc, 0)
counters["@display"] = counters["@display"] + acc * 1
return true
elseif counters["sleep"] > 0 then
acc = counters["sleep"]
counters["sleep"] = max(counters["sleep"] - acc, 0)
counters["@sleep:16"] = counters["@sleep:16"] + acc * 1
return true
elseif counters["main loop"] > 0 then
acc = counters["main loop"]
counters["main loop"] = max(counters["main loop"] - acc, 0)
counters["sleep"] = counters["sleep"] + acc * 1
counters["display"] = counters["display"] + acc * 1
counters["main loop"] = counters["main loop"] + acc * 1
counters["check for color change"] = counters["check for color change"] + acc * 1
counters["poll inputs"] = counters["poll inputs"] + acc * 1
counters["draw brush color"] = counters["draw brush color"] + acc * 1
counters["update"] = counters["update"] + acc * 1
return true
end
return false
end
1 | local min, max, huge = math.min, math.max, math.huge |
2 | return function(counters, ports) |
3 | if counters["@set resolution"] > 0 then |
4 | ports[1].hook(counters) |
5 | return true |
6 | elseif counters["@set pixel"] > 0 then |
7 | ports[2].hook(counters) |
8 | return true |
9 | elseif counters["@draw line"] > 0 then |
10 | ports[3].hook(counters) |
11 | return true |
12 | elseif counters["@display"] > 0 then |
13 | ports[4].hook(counters) |
14 | return true |
15 | elseif counters["@poll inputs"] > 0 then |
16 | ports[5].hook(counters) |
17 | return true |
18 | elseif counters["@mouse position"] > 0 then |
19 | ports[6].hook(counters) |
20 | return true |
21 | elseif counters["@mouse is down"] > 0 then |
22 | ports[7].hook(counters) |
23 | return true |
24 | elseif counters["@mouse relative position"] > 0 then |
25 | ports[8].hook(counters) |
26 | return true |
27 | elseif counters["@mouse wheel"] > 0 then |
28 | ports[9].hook(counters) |
29 | return true |
30 | elseif counters["@sleep:60"] > 0 then |
31 | acc = counters["@sleep:60"] |
32 | counters["@sleep:60"] = max(counters["@sleep:60"] - acc, 0) |
33 | counters["@sleep"] = counters["@sleep"] + acc * 60 |
34 | return true |
35 | elseif counters["@line x1:10"] > 0 then |
36 | acc = counters["@line x1:10"] |
37 | counters["@line x1:10"] = max(counters["@line x1:10"] - acc, 0) |
38 | counters["@line x1"] = counters["@line x1"] + acc * 10 |
39 | return true |
40 | elseif counters["@line y1:10"] > 0 then |
41 | acc = counters["@line y1:10"] |
42 | counters["@line y1:10"] = max(counters["@line y1:10"] - acc, 0) |
43 | counters["@line y1"] = counters["@line y1"] + acc * 10 |
44 | return true |
45 | elseif counters["@line x2:30"] > 0 then |
46 | acc = counters["@line x2:30"] |
47 | counters["@line x2:30"] = max(counters["@line x2:30"] - acc, 0) |
48 | counters["@line x2"] = counters["@line x2"] + acc * 30 |
49 | return true |
50 | elseif counters["@line y2:10"] > 0 then |
51 | acc = counters["@line y2:10"] |
52 | counters["@line y2:10"] = max(counters["@line y2:10"] - acc, 0) |
53 | counters["@line y2"] = counters["@line y2"] + acc * 10 |
54 | return true |
55 | elseif counters["@pixel r:255"] > 0 then |
56 | acc = counters["@pixel r:255"] |
57 | counters["@pixel r:255"] = max(counters["@pixel r:255"] - acc, 0) |
58 | counters["@pixel r"] = counters["@pixel r"] + acc * 255 |
59 | return true |
60 | elseif counters["@pixel g:255"] > 0 then |
61 | acc = counters["@pixel g:255"] |
62 | counters["@pixel g:255"] = max(counters["@pixel g:255"] - acc, 0) |
63 | counters["@pixel g"] = counters["@pixel g"] + acc * 255 |
64 | return true |
65 | elseif counters["@pixel b:255"] > 0 then |
66 | acc = counters["@pixel b:255"] |
67 | counters["@pixel b:255"] = max(counters["@pixel b:255"] - acc, 0) |
68 | counters["@pixel b"] = counters["@pixel b"] + acc * 255 |
69 | return true |
70 | elseif counters["@pixel r:87"] > 0 then |
71 | acc = counters["@pixel r:87"] |
72 | counters["@pixel r:87"] = max(counters["@pixel r:87"] - acc, 0) |
73 | counters["@pixel r"] = counters["@pixel r"] + acc * 87 |
74 | return true |
75 | elseif counters["@pixel g:87"] > 0 then |
76 | acc = counters["@pixel g:87"] |
77 | counters["@pixel g:87"] = max(counters["@pixel g:87"] - acc, 0) |
78 | counters["@pixel g"] = counters["@pixel g"] + acc * 87 |
79 | return true |
80 | elseif counters["@pixel b:87"] > 0 then |
81 | acc = counters["@pixel b:87"] |
82 | counters["@pixel b:87"] = max(counters["@pixel b:87"] - acc, 0) |
83 | counters["@pixel b"] = counters["@pixel b"] + acc * 87 |
84 | return true |
85 | elseif counters["@pixel r:219"] > 0 then |
86 | acc = counters["@pixel r:219"] |
87 | counters["@pixel r:219"] = max(counters["@pixel r:219"] - acc, 0) |
88 | counters["@pixel r"] = counters["@pixel r"] + acc * 219 |
89 | return true |
90 | elseif counters["@pixel b:12"] > 0 then |
91 | acc = counters["@pixel b:12"] |
92 | counters["@pixel b:12"] = max(counters["@pixel b:12"] - acc, 0) |
93 | counters["@pixel b"] = counters["@pixel b"] + acc * 12 |
94 | return true |
95 | elseif counters["clear @pixel r:255"] > 0 then |
96 | acc = counters["clear @pixel r:255"] |
97 | counters["clear @pixel r:255"] = max(counters["clear @pixel r:255"] - acc, 0) |
98 | counters["clear @pixel r"] = counters["clear @pixel r"] + acc * 255 |
99 | return true |
100 | elseif counters["clear @pixel g:255"] > 0 then |
101 | acc = counters["clear @pixel g:255"] |
102 | counters["clear @pixel g:255"] = max(counters["clear @pixel g:255"] - acc, 0) |
103 | counters["clear @pixel g"] = counters["clear @pixel g"] + acc * 255 |
104 | return true |
105 | elseif counters["clear @pixel b:255"] > 0 then |
106 | acc = counters["clear @pixel b:255"] |
107 | counters["clear @pixel b:255"] = max(counters["clear @pixel b:255"] - acc, 0) |
108 | counters["clear @pixel b"] = counters["clear @pixel b"] + acc * 255 |
109 | return true |
110 | elseif counters["clear old mouse x:1000000"] > 0 then |
111 | acc = counters["clear old mouse x:1000000"] |
112 | counters["clear old mouse x:1000000"] = max(counters["clear old mouse x:1000000"] - acc, 0) |
113 | counters["clear old mouse x"] = counters["clear old mouse x"] + acc * 1000000 |
114 | return true |
115 | elseif counters["clear old mouse y:1000000"] > 0 then |
116 | acc = counters["clear old mouse y:1000000"] |
117 | counters["clear old mouse y:1000000"] = max(counters["clear old mouse y:1000000"] - acc, 0) |
118 | counters["clear old mouse y"] = counters["clear old mouse y"] + acc * 1000000 |
119 | return true |
120 | elseif counters["current mouse x -> old mouse x:1000000"] > 0 then |
121 | acc = counters["current mouse x -> old mouse x:1000000"] |
122 | counters["current mouse x -> old mouse x:1000000"] = max(counters["current mouse x -> old mouse x:1000000"] - acc, 0) |
123 | counters["current mouse x -> old mouse x"] = counters["current mouse x -> old mouse x"] + acc * 1000000 |
124 | return true |
125 | elseif counters["current mouse y -> old mouse y:1000000"] > 0 then |
126 | acc = counters["current mouse y -> old mouse y:1000000"] |
127 | counters["current mouse y -> old mouse y:1000000"] = max(counters["current mouse y -> old mouse y:1000000"] - acc, 0) |
128 | counters["current mouse y -> old mouse y"] = counters["current mouse y -> old mouse y"] + acc * 1000000 |
129 | return true |
130 | elseif counters["@mouse x -> current mouse x:1000000"] > 0 then |
131 | acc = counters["@mouse x -> current mouse x:1000000"] |
132 | counters["@mouse x -> current mouse x:1000000"] = max(counters["@mouse x -> current mouse x:1000000"] - acc, 0) |
133 | counters["@mouse x -> current mouse x"] = counters["@mouse x -> current mouse x"] + acc * 1000000 |
134 | return true |
135 | elseif counters["@mouse y -> current mouse y:1000000"] > 0 then |
136 | acc = counters["@mouse y -> current mouse y:1000000"] |
137 | counters["@mouse y -> current mouse y:1000000"] = max(counters["@mouse y -> current mouse y:1000000"] - acc, 0) |
138 | counters["@mouse y -> current mouse y"] = counters["@mouse y -> current mouse y"] + acc * 1000000 |
139 | return true |
140 | elseif counters["copy old mouse x -> @line x1:1000000"] > 0 then |
141 | acc = counters["copy old mouse x -> @line x1:1000000"] |
142 | counters["copy old mouse x -> @line x1:1000000"] = max(counters["copy old mouse x -> @line x1:1000000"] - acc, 0) |
143 | counters["copy old mouse x -> @line x1"] = counters["copy old mouse x -> @line x1"] + acc * 1000000 |
144 | return true |
145 | elseif counters["copy old mouse y -> @line y1:1000000"] > 0 then |
146 | acc = counters["copy old mouse y -> @line y1:1000000"] |
147 | counters["copy old mouse y -> @line y1:1000000"] = max(counters["copy old mouse y -> @line y1:1000000"] - acc, 0) |
148 | counters["copy old mouse y -> @line y1"] = counters["copy old mouse y -> @line y1"] + acc * 1000000 |
149 | return true |
150 | elseif counters["copy current mouse x -> @line x2:1000000"] > 0 then |
151 | acc = counters["copy current mouse x -> @line x2:1000000"] |
152 | counters["copy current mouse x -> @line x2:1000000"] = max(counters["copy current mouse x -> @line x2:1000000"] - acc, 0) |
153 | counters["copy current mouse x -> @line x2"] = counters["copy current mouse x -> @line x2"] + acc * 1000000 |
154 | return true |
155 | elseif counters["copy current mouse y -> @line y2:1000000"] > 0 then |
156 | acc = counters["copy current mouse y -> @line y2:1000000"] |
157 | counters["copy current mouse y -> @line y2:1000000"] = max(counters["copy current mouse y -> @line y2:1000000"] - acc, 0) |
158 | counters["copy current mouse y -> @line y2"] = counters["copy current mouse y -> @line y2"] + acc * 1000000 |
159 | return true |
160 | elseif counters["clear pixel color"] > 0 then |
161 | acc = counters["clear pixel color"] |
162 | counters["clear pixel color"] = max(counters["clear pixel color"] - acc, 0) |
163 | counters["clear @pixel g:255"] = counters["clear @pixel g:255"] + acc * 1 |
164 | counters["clear @pixel b:255"] = counters["clear @pixel b:255"] + acc * 1 |
165 | counters["clear @pixel r:255"] = counters["clear @pixel r:255"] + acc * 1 |
166 | return true |
167 | elseif counters["clear @pixel r"] > 0 and counters["@pixel r"] > 0 then |
168 | local acc = huge |
169 | acc = min(acc, counters["@pixel r"]) |
170 | acc = min(acc, counters["clear @pixel r"]) |
171 | counters["clear @pixel r"] = max(counters["clear @pixel r"] - acc, 0) |
172 | counters["@pixel r"] = max(counters["@pixel r"] - acc, 0) |
173 | return true |
174 | elseif counters["clear @pixel g"] > 0 and counters["@pixel g"] > 0 then |
175 | local acc = huge |
176 | acc = min(acc, counters["clear @pixel g"]) |
177 | acc = min(acc, counters["@pixel g"]) |
178 | counters["clear @pixel g"] = max(counters["clear @pixel g"] - acc, 0) |
179 | counters["@pixel g"] = max(counters["@pixel g"] - acc, 0) |
180 | return true |
181 | elseif counters["clear @pixel b"] > 0 and counters["@pixel b"] > 0 then |
182 | local acc = huge |
183 | acc = min(acc, counters["@pixel b"]) |
184 | acc = min(acc, counters["clear @pixel b"]) |
185 | counters["clear @pixel b"] = max(counters["clear @pixel b"] - acc, 0) |
186 | counters["@pixel b"] = max(counters["@pixel b"] - acc, 0) |
187 | return true |
188 | elseif counters["clear @pixel r"] > 0 then |
189 | acc = counters["clear @pixel r"] |
190 | counters["clear @pixel r"] = max(counters["clear @pixel r"] - acc, 0) |
191 | return true |
192 | elseif counters["clear @pixel g"] > 0 then |
193 | acc = counters["clear @pixel g"] |
194 | counters["clear @pixel g"] = max(counters["clear @pixel g"] - acc, 0) |
195 | return true |
196 | elseif counters["clear @pixel b"] > 0 then |
197 | acc = counters["clear @pixel b"] |
198 | counters["clear @pixel b"] = max(counters["clear @pixel b"] - acc, 0) |
199 | return true |
200 | elseif counters["clear old mouse x"] > 0 and counters["old mouse x"] > 0 then |
201 | local acc = huge |
202 | acc = min(acc, counters["clear old mouse x"]) |
203 | acc = min(acc, counters["old mouse x"]) |
204 | counters["clear old mouse x"] = max(counters["clear old mouse x"] - acc, 0) |
205 | counters["old mouse x"] = max(counters["old mouse x"] - acc, 0) |
206 | return true |
207 | elseif counters["clear old mouse x"] > 0 then |
208 | acc = counters["clear old mouse x"] |
209 | counters["clear old mouse x"] = max(counters["clear old mouse x"] - acc, 0) |
210 | return true |
211 | elseif counters["clear old mouse y"] > 0 and counters["old mouse y"] > 0 then |
212 | local acc = huge |
213 | acc = min(acc, counters["old mouse y"]) |
214 | acc = min(acc, counters["clear old mouse y"]) |
215 | counters["clear old mouse y"] = max(counters["clear old mouse y"] - acc, 0) |
216 | counters["old mouse y"] = max(counters["old mouse y"] - acc, 0) |
217 | return true |
218 | elseif counters["clear old mouse y"] > 0 then |
219 | acc = counters["clear old mouse y"] |
220 | counters["clear old mouse y"] = max(counters["clear old mouse y"] - acc, 0) |
221 | return true |
222 | elseif counters["current mouse x -> old mouse x"] > 0 and counters["current mouse x"] > 0 then |
223 | local acc = huge |
224 | acc = min(acc, counters["current mouse x -> old mouse x"]) |
225 | acc = min(acc, counters["current mouse x"]) |
226 | counters["current mouse x -> old mouse x"] = max(counters["current mouse x -> old mouse x"] - acc, 0) |
227 | counters["current mouse x"] = max(counters["current mouse x"] - acc, 0) |
228 | counters["old mouse x"] = counters["old mouse x"] + acc * 1 |
229 | return true |
230 | elseif counters["current mouse y -> old mouse y"] > 0 and counters["current mouse y"] > 0 then |
231 | local acc = huge |
232 | acc = min(acc, counters["current mouse y"]) |
233 | acc = min(acc, counters["current mouse y -> old mouse y"]) |
234 | counters["current mouse y -> old mouse y"] = max(counters["current mouse y -> old mouse y"] - acc, 0) |
235 | counters["current mouse y"] = max(counters["current mouse y"] - acc, 0) |
236 | counters["old mouse y"] = counters["old mouse y"] + acc * 1 |
237 | return true |
238 | elseif counters["current mouse x -> old mouse x"] > 0 then |
239 | acc = counters["current mouse x -> old mouse x"] |
240 | counters["current mouse x -> old mouse x"] = max(counters["current mouse x -> old mouse x"] - acc, 0) |
241 | return true |
242 | elseif counters["current mouse y -> old mouse y"] > 0 then |
243 | acc = counters["current mouse y -> old mouse y"] |
244 | counters["current mouse y -> old mouse y"] = max(counters["current mouse y -> old mouse y"] - acc, 0) |
245 | return true |
246 | elseif counters["@mouse x -> current mouse x"] > 0 and counters["@mouse x"] > 0 then |
247 | local acc = huge |
248 | acc = min(acc, counters["@mouse x -> current mouse x"]) |
249 | acc = min(acc, counters["@mouse x"]) |
250 | counters["@mouse x -> current mouse x"] = max(counters["@mouse x -> current mouse x"] - acc, 0) |
251 | counters["@mouse x"] = max(counters["@mouse x"] - acc, 0) |
252 | counters["current mouse x"] = counters["current mouse x"] + acc * 1 |
253 | return true |
254 | elseif counters["@mouse y -> current mouse y"] > 0 and counters["@mouse y"] > 0 then |
255 | local acc = huge |
256 | acc = min(acc, counters["@mouse y"]) |
257 | acc = min(acc, counters["@mouse y -> current mouse y"]) |
258 | counters["@mouse y -> current mouse y"] = max(counters["@mouse y -> current mouse y"] - acc, 0) |
259 | counters["@mouse y"] = max(counters["@mouse y"] - acc, 0) |
260 | counters["current mouse y"] = counters["current mouse y"] + acc * 1 |
261 | return true |
262 | elseif counters["@mouse x -> current mouse x"] > 0 then |
263 | acc = counters["@mouse x -> current mouse x"] |
264 | counters["@mouse x -> current mouse x"] = max(counters["@mouse x -> current mouse x"] - acc, 0) |
265 | return true |
266 | elseif counters["@mouse y -> current mouse y"] > 0 then |
267 | acc = counters["@mouse y -> current mouse y"] |
268 | counters["@mouse y -> current mouse y"] = max(counters["@mouse y -> current mouse y"] - acc, 0) |
269 | return true |
270 | elseif counters["copy old mouse x -> @line x1"] > 0 and counters["old mouse x"] > 0 then |
271 | local acc = huge |
272 | acc = min(acc, counters["copy old mouse x -> @line x1"]) |
273 | acc = min(acc, counters["old mouse x"]) |
274 | counters["copy old mouse x -> @line x1"] = max(counters["copy old mouse x -> @line x1"] - acc, 0) |
275 | counters["old mouse x"] = max(counters["old mouse x"] - acc, 0) |
276 | counters["used old mouse x"] = counters["used old mouse x"] + acc * 1 |
277 | counters["@line x1"] = counters["@line x1"] + acc * 1 |
278 | return true |
279 | elseif counters["copy old mouse y -> @line y1"] > 0 and counters["old mouse y"] > 0 then |
280 | local acc = huge |
281 | acc = min(acc, counters["old mouse y"]) |
282 | acc = min(acc, counters["copy old mouse y -> @line y1"]) |
283 | counters["copy old mouse y -> @line y1"] = max(counters["copy old mouse y -> @line y1"] - acc, 0) |
284 | counters["old mouse y"] = max(counters["old mouse y"] - acc, 0) |
285 | counters["@line y1"] = counters["@line y1"] + acc * 1 |
286 | counters["used old mouse y"] = counters["used old mouse y"] + acc * 1 |
287 | return true |
288 | elseif counters["copy current mouse x -> @line x2"] > 0 and counters["current mouse x"] > 0 then |
289 | local acc = huge |
290 | acc = min(acc, counters["copy current mouse x -> @line x2"]) |
291 | acc = min(acc, counters["current mouse x"]) |
292 | counters["copy current mouse x -> @line x2"] = max(counters["copy current mouse x -> @line x2"] - acc, 0) |
293 | counters["current mouse x"] = max(counters["current mouse x"] - acc, 0) |
294 | counters["used current mouse x"] = counters["used current mouse x"] + acc * 1 |
295 | counters["@line x2"] = counters["@line x2"] + acc * 1 |
296 | return true |
297 | elseif counters["copy current mouse y -> @line y2"] > 0 and counters["current mouse y"] > 0 then |
298 | local acc = huge |
299 | acc = min(acc, counters["current mouse y"]) |
300 | acc = min(acc, counters["copy current mouse y -> @line y2"]) |
301 | counters["copy current mouse y -> @line y2"] = max(counters["copy current mouse y -> @line y2"] - acc, 0) |
302 | counters["current mouse y"] = max(counters["current mouse y"] - acc, 0) |
303 | counters["@line y2"] = counters["@line y2"] + acc * 1 |
304 | counters["used current mouse y"] = counters["used current mouse y"] + acc * 1 |
305 | return true |
306 | elseif counters["copy old mouse x -> @line x1"] > 0 then |
307 | acc = counters["copy old mouse x -> @line x1"] |
308 | counters["copy old mouse x -> @line x1"] = max(counters["copy old mouse x -> @line x1"] - acc, 0) |
309 | return true |
310 | elseif counters["copy old mouse y -> @line y1"] > 0 then |
311 | acc = counters["copy old mouse y -> @line y1"] |
312 | counters["copy old mouse y -> @line y1"] = max(counters["copy old mouse y -> @line y1"] - acc, 0) |
313 | return true |
314 | elseif counters["copy current mouse x -> @line x2"] > 0 then |
315 | acc = counters["copy current mouse x -> @line x2"] |
316 | counters["copy current mouse x -> @line x2"] = max(counters["copy current mouse x -> @line x2"] - acc, 0) |
317 | return true |
318 | elseif counters["copy current mouse y -> @line y2"] > 0 then |
319 | acc = counters["copy current mouse y -> @line y2"] |
320 | counters["copy current mouse y -> @line y2"] = max(counters["copy current mouse y -> @line y2"] - acc, 0) |
321 | return true |
322 | elseif counters["used old mouse x"] > 0 then |
323 | acc = counters["used old mouse x"] |
324 | counters["used old mouse x"] = max(counters["used old mouse x"] - acc, 0) |
325 | counters["old mouse x"] = counters["old mouse x"] + acc * 1 |
326 | return true |
327 | elseif counters["used old mouse y"] > 0 then |
328 | acc = counters["used old mouse y"] |
329 | counters["used old mouse y"] = max(counters["used old mouse y"] - acc, 0) |
330 | counters["old mouse y"] = counters["old mouse y"] + acc * 1 |
331 | return true |
332 | elseif counters["used current mouse x"] > 0 then |
333 | acc = counters["used current mouse x"] |
334 | counters["used current mouse x"] = max(counters["used current mouse x"] - acc, 0) |
335 | counters["current mouse x"] = counters["current mouse x"] + acc * 1 |
336 | return true |
337 | elseif counters["used current mouse y"] > 0 then |
338 | acc = counters["used current mouse y"] |
339 | counters["used current mouse y"] = max(counters["used current mouse y"] - acc, 0) |
340 | counters["current mouse y"] = counters["current mouse y"] + acc * 1 |
341 | return true |
342 | elseif counters["clear old mouse position"] > 0 then |
343 | acc = counters["clear old mouse position"] |
344 | counters["clear old mouse position"] = max(counters["clear old mouse position"] - acc, 0) |
345 | counters["clear old mouse y:1000000"] = counters["clear old mouse y:1000000"] + acc * 1 |
346 | counters["clear old mouse x:1000000"] = counters["clear old mouse x:1000000"] + acc * 1 |
347 | return true |
348 | elseif counters["move current mouse position to old mouse position"] > 0 then |
349 | acc = counters["move current mouse position to old mouse position"] |
350 | counters["move current mouse position to old mouse position"] = max(counters["move current mouse position to old mouse position"] - acc, 0) |
351 | counters["current mouse x -> old mouse x:1000000"] = counters["current mouse x -> old mouse x:1000000"] + acc * 1 |
352 | counters["current mouse y -> old mouse y:1000000"] = counters["current mouse y -> old mouse y:1000000"] + acc * 1 |
353 | return true |
354 | elseif counters["move @mouse position to current mouse position"] > 0 then |
355 | acc = counters["move @mouse position to current mouse position"] |
356 | counters["move @mouse position to current mouse position"] = max(counters["move @mouse position to current mouse position"] - acc, 0) |
357 | counters["@mouse y -> current mouse y:1000000"] = counters["@mouse y -> current mouse y:1000000"] + acc * 1 |
358 | counters["@mouse x -> current mouse x:1000000"] = counters["@mouse x -> current mouse x:1000000"] + acc * 1 |
359 | return true |
360 | elseif counters["update mouse position"] > 0 then |
361 | acc = counters["update mouse position"] |
362 | counters["update mouse position"] = max(counters["update mouse position"] - acc, 0) |
363 | counters["@mouse position"] = counters["@mouse position"] + acc * 1 |
364 | counters["move current mouse position to old mouse position"] = counters["move current mouse position to old mouse position"] + acc * 1 |
365 | counters["clear old mouse position"] = counters["clear old mouse position"] + acc * 1 |
366 | counters["move @mouse position to current mouse position"] = counters["move @mouse position to current mouse position"] + acc * 1 |
367 | return true |
368 | elseif counters["check if mouse button 1 is down"] > 0 and counters["find brush mode"] > 0 then |
369 | local acc = huge |
370 | acc = min(acc, counters["check if mouse button 1 is down"]) |
371 | acc = min(acc, counters["find brush mode"]) |
372 | counters["check if mouse button 1 is down"] = max(counters["check if mouse button 1 is down"] - acc, 0) |
373 | counters["find brush mode"] = max(counters["find brush mode"] - acc, 0) |
374 | counters["@mouse button"] = counters["@mouse button"] + acc * 1 |
375 | counters["checking button 1"] = counters["checking button 1"] + acc * 1 |
376 | counters["@mouse is down"] = counters["@mouse is down"] + acc * 1 |
377 | return true |
378 | elseif counters["check if mouse button 2 is down"] > 0 and counters["find brush mode"] > 0 then |
379 | local acc = huge |
380 | acc = min(acc, counters["find brush mode"]) |
381 | acc = min(acc, counters["check if mouse button 2 is down"]) |
382 | counters["check if mouse button 2 is down"] = max(counters["check if mouse button 2 is down"] - acc, 0) |
383 | counters["find brush mode"] = max(counters["find brush mode"] - acc, 0) |
384 | counters["checking button 2"] = counters["checking button 2"] + acc * 1 |
385 | counters["@mouse button"] = counters["@mouse button"] + acc * 2 |
386 | counters["@mouse is down"] = counters["@mouse is down"] + acc * 1 |
387 | return true |
388 | elseif counters["check if mouse button 3 is down"] > 0 and counters["find brush mode"] > 0 then |
389 | local acc = huge |
390 | acc = min(acc, counters["find brush mode"]) |
391 | acc = min(acc, counters["check if mouse button 3 is down"]) |
392 | counters["check if mouse button 3 is down"] = max(counters["check if mouse button 3 is down"] - acc, 0) |
393 | counters["find brush mode"] = max(counters["find brush mode"] - acc, 0) |
394 | counters["@mouse button"] = counters["@mouse button"] + acc * 3 |
395 | counters["checking button 3"] = counters["checking button 3"] + acc * 1 |
396 | counters["@mouse is down"] = counters["@mouse is down"] + acc * 1 |
397 | return true |
398 | elseif counters["checking button 1"] > 0 and counters["@mouse button is down"] > 0 then |
399 | local acc = huge |
400 | acc = min(acc, counters["checking button 1"]) |
401 | acc = min(acc, counters["@mouse button is down"]) |
402 | counters["checking button 1"] = max(counters["checking button 1"] - acc, 0) |
403 | counters["@mouse button is down"] = max(counters["@mouse button is down"] - acc, 0) |
404 | counters["brush is drawing"] = counters["brush is drawing"] + acc * 1 |
405 | return true |
406 | elseif counters["checking button 2"] > 0 and counters["@mouse button is down"] > 0 then |
407 | local acc = huge |
408 | acc = min(acc, counters["checking button 2"]) |
409 | acc = min(acc, counters["@mouse button is down"]) |
410 | counters["checking button 2"] = max(counters["checking button 2"] - acc, 0) |
411 | counters["@mouse button is down"] = max(counters["@mouse button is down"] - acc, 0) |
412 | counters["brush is erasing"] = counters["brush is erasing"] + acc * 1 |
413 | return true |
414 | elseif counters["checking button 3"] > 0 and counters["@mouse button is down"] > 0 then |
415 | local acc = huge |
416 | acc = min(acc, counters["checking button 3"]) |
417 | acc = min(acc, counters["@mouse button is down"]) |
418 | counters["checking button 3"] = max(counters["checking button 3"] - acc, 0) |
419 | counters["@mouse button is down"] = max(counters["@mouse button is down"] - acc, 0) |
420 | counters["brush is drawing red"] = counters["brush is drawing red"] + acc * 1 |
421 | return true |
422 | elseif counters["checking button 3"] > 0 then |
423 | acc = counters["checking button 3"] |
424 | counters["checking button 3"] = max(counters["checking button 3"] - acc, 0) |
425 | counters["find brush mode"] = counters["find brush mode"] + acc * 1 |
426 | return true |
427 | elseif counters["checking button 2"] > 0 then |
428 | acc = counters["checking button 2"] |
429 | counters["checking button 2"] = max(counters["checking button 2"] - acc, 0) |
430 | counters["find brush mode"] = counters["find brush mode"] + acc * 1 |
431 | return true |
432 | elseif counters["checking button 1"] > 0 then |
433 | acc = counters["checking button 1"] |
434 | counters["checking button 1"] = max(counters["checking button 1"] - acc, 0) |
435 | counters["find brush mode"] = counters["find brush mode"] + acc * 1 |
436 | return true |
437 | elseif counters["find brush mode"] > 0 then |
438 | acc = counters["find brush mode"] |
439 | counters["find brush mode"] = max(counters["find brush mode"] - acc, 0) |
440 | return true |
441 | elseif counters["check if mouse button is down"] > 0 then |
442 | acc = counters["check if mouse button is down"] |
443 | counters["check if mouse button is down"] = max(counters["check if mouse button is down"] - acc, 0) |
444 | counters["check if mouse button 1 is down"] = counters["check if mouse button 1 is down"] + acc * 1 |
445 | counters["find brush mode"] = counters["find brush mode"] + acc * 1 |
446 | counters["check if mouse button 3 is down"] = counters["check if mouse button 3 is down"] + acc * 1 |
447 | counters["check if mouse button 2 is down"] = counters["check if mouse button 2 is down"] + acc * 1 |
448 | return true |
449 | elseif counters["set line color"] > 0 and counters["current color is 1"] > 0 then |
450 | local acc = huge |
451 | acc = min(acc, counters["current color is 1"]) |
452 | acc = min(acc, counters["set line color"]) |
453 | counters["set line color"] = max(counters["set line color"] - acc, 0) |
454 | counters["current color is 1"] = max(counters["current color is 1"] - acc, 0) |
455 | counters["current color is 1"] = counters["current color is 1"] + acc * 1 |
456 | counters["@pixel r:255"] = counters["@pixel r:255"] + acc * 1 |
457 | counters["@pixel g:255"] = counters["@pixel g:255"] + acc * 1 |
458 | counters["@pixel b:255"] = counters["@pixel b:255"] + acc * 1 |
459 | return true |
460 | elseif counters["set line color"] > 0 and counters["current color is 2"] > 0 then |
461 | local acc = huge |
462 | acc = min(acc, counters["current color is 2"]) |
463 | acc = min(acc, counters["set line color"]) |
464 | counters["set line color"] = max(counters["set line color"] - acc, 0) |
465 | counters["current color is 2"] = max(counters["current color is 2"] - acc, 0) |
466 | counters["current color is 2"] = counters["current color is 2"] + acc * 1 |
467 | counters["@pixel r:87"] = counters["@pixel r:87"] + acc * 1 |
468 | counters["@pixel g:87"] = counters["@pixel g:87"] + acc * 1 |
469 | counters["@pixel b:87"] = counters["@pixel b:87"] + acc * 1 |
470 | return true |
471 | elseif counters["set line color"] > 0 and counters["current color is 3"] > 0 then |
472 | local acc = huge |
473 | acc = min(acc, counters["current color is 3"]) |
474 | acc = min(acc, counters["set line color"]) |
475 | counters["set line color"] = max(counters["set line color"] - acc, 0) |
476 | counters["current color is 3"] = max(counters["current color is 3"] - acc, 0) |
477 | counters["current color is 3"] = counters["current color is 3"] + acc * 1 |
478 | counters["@pixel r:219"] = counters["@pixel r:219"] + acc * 1 |
479 | counters["@pixel b:12"] = counters["@pixel b:12"] + acc * 1 |
480 | return true |
481 | elseif counters["set line color"] > 0 and counters["current color is 4"] > 0 then |
482 | local acc = huge |
483 | acc = min(acc, counters["current color is 4"]) |
484 | acc = min(acc, counters["set line color"]) |
485 | counters["set line color"] = max(counters["set line color"] - acc, 0) |
486 | counters["current color is 4"] = max(counters["current color is 4"] - acc, 0) |
487 | counters["current color is 4"] = counters["current color is 4"] + acc * 1 |
488 | return true |
489 | elseif counters["set line position"] > 0 then |
490 | acc = counters["set line position"] |
491 | counters["set line position"] = max(counters["set line position"] - acc, 0) |
492 | counters["copy current mouse y -> @line y2:1000000"] = counters["copy current mouse y -> @line y2:1000000"] + acc * 1 |
493 | counters["copy old mouse x -> @line x1:1000000"] = counters["copy old mouse x -> @line x1:1000000"] + acc * 1 |
494 | counters["copy old mouse y -> @line y1:1000000"] = counters["copy old mouse y -> @line y1:1000000"] + acc * 1 |
495 | counters["copy current mouse x -> @line x2:1000000"] = counters["copy current mouse x -> @line x2:1000000"] + acc * 1 |
496 | return true |
497 | elseif counters["draw the line"] > 0 then |
498 | acc = counters["draw the line"] |
499 | counters["draw the line"] = max(counters["draw the line"] - acc, 0) |
500 | counters["@draw line"] = counters["@draw line"] + acc * 1 |
501 | return true |
502 | elseif counters["plot line"] > 0 then |
503 | acc = counters["plot line"] |
504 | counters["plot line"] = max(counters["plot line"] - acc, 0) |
505 | counters["set line position"] = counters["set line position"] + acc * 1 |
506 | counters["draw the line"] = counters["draw the line"] + acc * 1 |
507 | return true |
508 | elseif counters["draw a line"] > 0 and counters["brush is drawing"] > 0 then |
509 | local acc = huge |
510 | acc = min(acc, counters["brush is drawing"]) |
511 | acc = min(acc, counters["draw a line"]) |
512 | counters["draw a line"] = max(counters["draw a line"] - acc, 0) |
513 | counters["brush is drawing"] = max(counters["brush is drawing"] - acc, 0) |
514 | counters["plot line"] = counters["plot line"] + acc * 1 |
515 | counters["clear pixel color"] = counters["clear pixel color"] + acc * 1 |
516 | counters["set line color"] = counters["set line color"] + acc * 1 |
517 | return true |
518 | elseif counters["draw a line"] > 0 and counters["brush is erasing"] > 0 then |
519 | local acc = huge |
520 | acc = min(acc, counters["brush is erasing"]) |
521 | acc = min(acc, counters["draw a line"]) |
522 | counters["draw a line"] = max(counters["draw a line"] - acc, 0) |
523 | counters["brush is erasing"] = max(counters["brush is erasing"] - acc, 0) |
524 | counters["clear pixel color"] = counters["clear pixel color"] + acc * 1 |
525 | counters["plot line"] = counters["plot line"] + acc * 1 |
526 | return true |
527 | elseif counters["draw a line"] > 0 then |
528 | acc = counters["draw a line"] |
529 | counters["draw a line"] = max(counters["draw a line"] - acc, 0) |
530 | return true |
531 | elseif counters["check for color change"] > 0 then |
532 | acc = counters["check for color change"] |
533 | counters["check for color change"] = max(counters["check for color change"] - acc, 0) |
534 | counters["@mouse wheel"] = counters["@mouse wheel"] + acc * 1 |
535 | counters["update color"] = counters["update color"] + acc * 1 |
536 | return true |
537 | elseif counters["update color"] > 0 and counters["@mouse wheel +y"] > 0 then |
538 | local acc = huge |
539 | acc = min(acc, counters["@mouse wheel +y"]) |
540 | acc = min(acc, counters["update color"]) |
541 | counters["update color"] = max(counters["update color"] - acc, 0) |
542 | counters["@mouse wheel +y"] = max(counters["@mouse wheel +y"] - acc, 0) |
543 | counters["next color"] = counters["next color"] + acc * 1 |
544 | return true |
545 | elseif counters["update color"] > 0 and counters["@mouse wheel -y"] > 0 then |
546 | local acc = huge |
547 | acc = min(acc, counters["@mouse wheel -y"]) |
548 | acc = min(acc, counters["update color"]) |
549 | counters["update color"] = max(counters["update color"] - acc, 0) |
550 | counters["@mouse wheel -y"] = max(counters["@mouse wheel -y"] - acc, 0) |
551 | counters["previous color"] = counters["previous color"] + acc * 1 |
552 | return true |
553 | elseif counters["current color is 1"] > 0 and counters["next color"] > 0 then |
554 | local acc = huge |
555 | acc = min(acc, counters["current color is 1"]) |
556 | acc = min(acc, counters["next color"]) |
557 | counters["current color is 1"] = max(counters["current color is 1"] - acc, 0) |
558 | counters["next color"] = max(counters["next color"] - acc, 0) |
559 | counters["current color is 2"] = counters["current color is 2"] + acc * 1 |
560 | return true |
561 | elseif counters["current color is 2"] > 0 and counters["next color"] > 0 then |
562 | local acc = huge |
563 | acc = min(acc, counters["current color is 2"]) |
564 | acc = min(acc, counters["next color"]) |
565 | counters["current color is 2"] = max(counters["current color is 2"] - acc, 0) |
566 | counters["next color"] = max(counters["next color"] - acc, 0) |
567 | counters["current color is 3"] = counters["current color is 3"] + acc * 1 |
568 | return true |
569 | elseif counters["current color is 3"] > 0 and counters["next color"] > 0 then |
570 | local acc = huge |
571 | acc = min(acc, counters["current color is 3"]) |
572 | acc = min(acc, counters["next color"]) |
573 | counters["current color is 3"] = max(counters["current color is 3"] - acc, 0) |
574 | counters["next color"] = max(counters["next color"] - acc, 0) |
575 | counters["current color is 4"] = counters["current color is 4"] + acc * 1 |
576 | return true |
577 | elseif counters["current color is 4"] > 0 and counters["next color"] > 0 then |
578 | local acc = huge |
579 | acc = min(acc, counters["next color"]) |
580 | acc = min(acc, counters["current color is 4"]) |
581 | counters["current color is 4"] = max(counters["current color is 4"] - acc, 0) |
582 | counters["next color"] = max(counters["next color"] - acc, 0) |
583 | counters["current color is 1"] = counters["current color is 1"] + acc * 1 |
584 | return true |
585 | elseif counters["current color is 1"] > 0 and counters["previous color"] > 0 then |
586 | local acc = huge |
587 | acc = min(acc, counters["current color is 1"]) |
588 | acc = min(acc, counters["previous color"]) |
589 | counters["current color is 1"] = max(counters["current color is 1"] - acc, 0) |
590 | counters["previous color"] = max(counters["previous color"] - acc, 0) |
591 | counters["current color is 4"] = counters["current color is 4"] + acc * 1 |
592 | return true |
593 | elseif counters["current color is 2"] > 0 and counters["previous color"] > 0 then |
594 | local acc = huge |
595 | acc = min(acc, counters["current color is 2"]) |
596 | acc = min(acc, counters["previous color"]) |
597 | counters["current color is 2"] = max(counters["current color is 2"] - acc, 0) |
598 | counters["previous color"] = max(counters["previous color"] - acc, 0) |
599 | counters["current color is 1"] = counters["current color is 1"] + acc * 1 |
600 | return true |
601 | elseif counters["current color is 3"] > 0 and counters["previous color"] > 0 then |
602 | local acc = huge |
603 | acc = min(acc, counters["current color is 3"]) |
604 | acc = min(acc, counters["previous color"]) |
605 | counters["current color is 3"] = max(counters["current color is 3"] - acc, 0) |
606 | counters["previous color"] = max(counters["previous color"] - acc, 0) |
607 | counters["current color is 2"] = counters["current color is 2"] + acc * 1 |
608 | return true |
609 | elseif counters["current color is 4"] > 0 and counters["previous color"] > 0 then |
610 | local acc = huge |
611 | acc = min(acc, counters["previous color"]) |
612 | acc = min(acc, counters["current color is 4"]) |
613 | counters["current color is 4"] = max(counters["current color is 4"] - acc, 0) |
614 | counters["previous color"] = max(counters["previous color"] - acc, 0) |
615 | counters["current color is 3"] = counters["current color is 3"] + acc * 1 |
616 | return true |
617 | elseif counters["@mouse wheel +y"] > 0 then |
618 | acc = counters["@mouse wheel +y"] |
619 | counters["@mouse wheel +y"] = max(counters["@mouse wheel +y"] - acc, 0) |
620 | return true |
621 | elseif counters["@mouse wheel -y"] > 0 then |
622 | acc = counters["@mouse wheel -y"] |
623 | counters["@mouse wheel -y"] = max(counters["@mouse wheel -y"] - acc, 0) |
624 | return true |
625 | elseif counters["update"] > 0 then |
626 | acc = counters["update"] |
627 | counters["update"] = max(counters["update"] - acc, 0) |
628 | counters["draw a line"] = counters["draw a line"] + acc * 1 |
629 | counters["check if mouse button is down"] = counters["check if mouse button is down"] + acc * 1 |
630 | counters["update mouse position"] = counters["update mouse position"] + acc * 1 |
631 | return true |
632 | elseif counters["poll inputs"] > 0 then |
633 | acc = counters["poll inputs"] |
634 | counters["poll inputs"] = max(counters["poll inputs"] - acc, 0) |
635 | counters["@poll inputs"] = counters["@poll inputs"] + acc * 1 |
636 | return true |
637 | elseif counters["draw brush color"] > 0 then |
638 | acc = counters["draw brush color"] |
639 | counters["draw brush color"] = max(counters["draw brush color"] - acc, 0) |
640 | counters["@line x2:30"] = counters["@line x2:30"] + acc * 1 |
641 | counters["@line y1:10"] = counters["@line y1:10"] + acc * 1 |
642 | counters["@line y2:10"] = counters["@line y2:10"] + acc * 1 |
643 | counters["draw the line"] = counters["draw the line"] + acc * 1 |
644 | counters["@line x1:10"] = counters["@line x1:10"] + acc * 1 |
645 | counters["set line color"] = counters["set line color"] + acc * 1 |
646 | return true |
647 | elseif counters["display"] > 0 then |
648 | acc = counters["display"] |
649 | counters["display"] = max(counters["display"] - acc, 0) |
650 | counters["@display"] = counters["@display"] + acc * 1 |
651 | return true |
652 | elseif counters["sleep"] > 0 then |
653 | acc = counters["sleep"] |
654 | counters["sleep"] = max(counters["sleep"] - acc, 0) |
655 | counters["@sleep:16"] = counters["@sleep:16"] + acc * 1 |
656 | return true |
657 | elseif counters["main loop"] > 0 then |
658 | acc = counters["main loop"] |
659 | counters["main loop"] = max(counters["main loop"] - acc, 0) |
660 | counters["sleep"] = counters["sleep"] + acc * 1 |
661 | counters["display"] = counters["display"] + acc * 1 |
662 | counters["main loop"] = counters["main loop"] + acc * 1 |
663 | counters["check for color change"] = counters["check for color change"] + acc * 1 |
664 | counters["poll inputs"] = counters["poll inputs"] + acc * 1 |
665 | counters["draw brush color"] = counters["draw brush color"] + acc * 1 |
666 | counters["update"] = counters["update"] + acc * 1 |
667 | return true |
668 | end |
669 | return false |
670 | end |
671 |