added escape sequences for brick uinames and descriptions
This commit is contained in:
parent
cc0a770c81
commit
59dd5171b6
@ -8,6 +8,14 @@ GateDefinition = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function GateDefinition:new(objref, name, description, init, logic, input, global, ports)
|
function GateDefinition:new(objref, name, description, init, logic, input, global, ports)
|
||||||
|
|
||||||
|
name = collapseescape(name)
|
||||||
|
init = collapseescape(init)
|
||||||
|
logic = collapseescape(logic)
|
||||||
|
input = collapseescape(input)
|
||||||
|
global = collapseescape(global)
|
||||||
|
description = collapseescape(description)
|
||||||
|
|
||||||
local o = {
|
local o = {
|
||||||
objref = objref,
|
objref = objref,
|
||||||
name = name,
|
name = name,
|
||||||
@ -15,11 +23,6 @@ function GateDefinition:new(objref, name, description, init, logic, input, globa
|
|||||||
ports = ports or {}
|
ports = ports or {}
|
||||||
}
|
}
|
||||||
|
|
||||||
init = collapseescape(init)
|
|
||||||
logic = collapseescape(logic)
|
|
||||||
input = collapseescape(input)
|
|
||||||
global = collapseescape(global)
|
|
||||||
|
|
||||||
local initfunc = loadstring(tostring(init))
|
local initfunc = loadstring(tostring(init))
|
||||||
if initfunc~=nil then
|
if initfunc~=nil then
|
||||||
o.init = initfunc() or function()end
|
o.init = initfunc() or function()end
|
||||||
|
23
sim/main.lua
23
sim/main.lua
@ -15,7 +15,8 @@ OPT_TICK_ENABLED = true
|
|||||||
OPT_TICK_TIME = 0.001
|
OPT_TICK_TIME = 0.001
|
||||||
OPT_FX_UPDATES = true
|
OPT_FX_UPDATES = true
|
||||||
OPT_FX_TIME = 0.03
|
OPT_FX_TIME = 0.03
|
||||||
OPT_TICK_INF = 13
|
OPT_TICK_INF = 29
|
||||||
|
OPT_TICK_MULT = 1
|
||||||
|
|
||||||
local tickdelay = 0
|
local tickdelay = 0
|
||||||
local ticksperinterval = 0
|
local ticksperinterval = 0
|
||||||
@ -156,7 +157,9 @@ while 1 do
|
|||||||
sim:removegate(tonumber(data[i+1]))
|
sim:removegate(tonumber(data[i+1]))
|
||||||
i = i + 1
|
i = i + 1
|
||||||
elseif data[i] == "GD" then
|
elseif data[i] == "GD" then
|
||||||
--print(table.concat(data, "\n", i, math.min(#data, i+100)))
|
--print("---------------------------------------[[[[")
|
||||||
|
--print(table.concat(data, "]]]]\n[[[[", i, math.min(#data, i+100)))
|
||||||
|
--print("]]]]---------------------------------------")
|
||||||
local objref = tonumber(data[i+1])
|
local objref = tonumber(data[i+1])
|
||||||
local name = data[i+2]
|
local name = data[i+2]
|
||||||
local desc = data[i+3]
|
local desc = data[i+3]
|
||||||
@ -215,6 +218,7 @@ while 1 do
|
|||||||
if value < 0 or value > 999999 then
|
if value < 0 or value > 999999 then
|
||||||
value = 0
|
value = 0
|
||||||
end
|
end
|
||||||
|
if value<=0.001 then value = 0.0001 end
|
||||||
OPT_TICK_TIME = value
|
OPT_TICK_TIME = value
|
||||||
elseif option == "FX_UPDATES" then
|
elseif option == "FX_UPDATES" then
|
||||||
OPT_FX_UPDATES = toboolean(value)
|
OPT_FX_UPDATES = toboolean(value)
|
||||||
@ -223,6 +227,8 @@ while 1 do
|
|||||||
value = 0
|
value = 0
|
||||||
end
|
end
|
||||||
OPT_FX_TIME = value
|
OPT_FX_TIME = value
|
||||||
|
elseif option=="TICK_MULT" then
|
||||||
|
OPT_TICK_MULT = value
|
||||||
end
|
end
|
||||||
|
|
||||||
i = i + 2
|
i = i + 2
|
||||||
@ -302,11 +308,18 @@ while 1 do
|
|||||||
end
|
end
|
||||||
ticks = ticks+OPT_TICK_INF
|
ticks = ticks+OPT_TICK_INF
|
||||||
else
|
else
|
||||||
sim:tick()
|
for i = 1, OPT_TICK_MULT do
|
||||||
ticks = ticks+1
|
sim:tick()
|
||||||
|
ticks = ticks+1
|
||||||
|
|
||||||
|
local elapsed = os.clock()-time
|
||||||
|
if elapsed>0.1 then
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local sleeptime = time+OPT_TICK_TIME-os.clock()-0.03
|
local sleeptime = time+OPT_TICK_TIME-os.clock()-0.005
|
||||||
if sleeptime>0 then socket.sleep(sleeptime) end
|
if sleeptime>0 then socket.sleep(sleeptime) end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user