added automatic registration for non-builtin gate datablocks
This commit is contained in:
parent
b7b366b412
commit
5f58a531a8
@ -60,18 +60,18 @@ textbrick_idxToPrint = textbrick_idxToPrint or {
|
|||||||
[0x35] = "apostrophe2",
|
[0x35] = "apostrophe2",
|
||||||
[0x36] = "colon",
|
[0x36] = "colon",
|
||||||
[0x37] = "comma",
|
[0x37] = "comma",
|
||||||
[0x38] = "curlybracketleft",
|
[0x38] = "curlybracketright",
|
||||||
[0x39] = "curlybracketright",
|
[0x39] = "curlybracketleft",
|
||||||
[0x3A] = "currencysign",
|
[0x3A] = "currencysign",
|
||||||
[0x3B] = "euro",
|
[0x3B] = "euro",
|
||||||
[0x3C] = "onehalf",
|
[0x3C] = "onehalf",
|
||||||
[0x3D] = "poundsymbol",
|
[0x3D] = "poundsymbol",
|
||||||
[0x3E] = "roundbracketleft",
|
[0x3E] = "roundbracketright",
|
||||||
[0x3F] = "roundbracketright",
|
[0x3F] = "roundbracketleft",
|
||||||
[0x40] = "slashleft",
|
[0x40] = "slashleft",
|
||||||
[0x41] = "slashright",
|
[0x41] = "slashright",
|
||||||
[0x42] = "squarebracketleft",
|
[0x42] = "squarebracketright",
|
||||||
[0x43] = "squarebracketright",
|
[0x43] = "squarebracketleft",
|
||||||
[0x44] = "tilde",
|
[0x44] = "tilde",
|
||||||
[0x45] = "umlaut",
|
[0x45] = "umlaut",
|
||||||
[0x46] = "underscore",
|
[0x46] = "underscore",
|
||||||
|
@ -119,6 +119,6 @@ activatePackage("LuaLogic");
|
|||||||
function llr(){
|
function llr(){
|
||||||
deleteVariables("$LuaLogic*");
|
deleteVariables("$LuaLogic*");
|
||||||
resetAllOpCallFunc();
|
resetAllOpCallFunc();
|
||||||
exec("./server.cs");
|
exec("./lualogic.cs");
|
||||||
schedule(3000, 0, lualogic_connect, 25000);
|
schedule(3000, 0, lualogic_connect, 25000);
|
||||||
}
|
}
|
||||||
|
@ -10,10 +10,18 @@ function lualogic_escapelogicfunction(%text){
|
|||||||
return %text;
|
return %text;
|
||||||
}
|
}
|
||||||
|
|
||||||
function lualogic_registergatedefinition(%data)
|
function lualogic_registergatedefinition(%data){
|
||||||
|
lualogic_registergatedefinition_auto(%data);
|
||||||
|
}
|
||||||
|
|
||||||
|
function lualogic_registergatedefinition_auto(%data)
|
||||||
{
|
{
|
||||||
if(!isObject(%data))
|
if(!isObject(%data))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if(%data.luaLogic_isRegistered)
|
||||||
|
return;
|
||||||
|
|
||||||
%id = %data.getID();
|
%id = %data.getID();
|
||||||
|
|
||||||
if((%idx = $LuaLogic::GateDefinitionIDX[%id]) $= "")
|
if((%idx = $LuaLogic::GateDefinitionIDX[%id]) $= "")
|
||||||
@ -39,8 +47,21 @@ function lualogic_registergatedefinition(%data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
$LuaLogic::GateDefintion[%idx] = %def;
|
$LuaLogic::GateDefintion[%idx] = %def;
|
||||||
|
|
||||||
|
%data.luaLogic_isRegistered = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function lualogic_registerAllGateDefinitions(){
|
||||||
|
for(%dbidx=0; %dbidx<DatablockGroup.getCount(); %dbidx++){
|
||||||
|
%db = DatablockGroup.getObject(%dbidx);
|
||||||
|
if(%db.isLogic && %db.isLogicGate){
|
||||||
|
lualogic_registergatedefinition_auto(%db);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
lualogic_registerAllGateDefinitions();
|
||||||
|
|
||||||
function lualogic_print(%text)
|
function lualogic_print(%text)
|
||||||
{
|
{
|
||||||
echo("LuaLogic -> ", %text);
|
echo("LuaLogic -> ", %text);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user