add io brick, misc fixes
This commit is contained in:
@ -14,7 +14,7 @@ datablock fxDTSBrickData(LogicGate_TextBrick2_Data){
|
||||
isLogicInput = false;
|
||||
|
||||
logicUIName = "Text Brick";
|
||||
logicUIDesc = "Takes 9-bit serial input of format 1cxxxxxxxx10. If c==0, x = 8-bit ascii code. If c==1, lower 6 bits of x = color ID, top bit = invert character. MSB first.";
|
||||
logicUIDesc = "Takes 9-bit serial input of format 1cxxxxxxxx10. If c==0, x = 8-bit ascii code. If c==1, lower 6 bits of x = color ID, bit 6 = fx glow, top bit = invert character. MSB first.";
|
||||
|
||||
logicInit = lualogic_readfile($LuaLogic::Path @ "bricks/outputs/text2-init.lua" );
|
||||
logicUpdate = lualogic_readfile($LuaLogic::Path @ "bricks/outputs/text2-update.lua");
|
||||
|
9
bricks/outputs/pixel2x2-update.lua
Normal file
9
bricks/outputs/pixel2x2-update.lua
Normal file
@ -0,0 +1,9 @@
|
||||
|
||||
return function(gate)
|
||||
Gate.cb(gate,
|
||||
Gate.getportstate(gate, 1) +
|
||||
Gate.getportstate(gate, 2)*2 +
|
||||
Gate.getportstate(gate, 3)*4 +
|
||||
Gate.getportstate(gate, 4)*8
|
||||
)
|
||||
end
|
69
bricks/outputs/pixel2x2.cs
Normal file
69
bricks/outputs/pixel2x2.cs
Normal file
@ -0,0 +1,69 @@
|
||||
//bls 3
|
||||
|
||||
datablock fxDTSBrickData(LogicGate_Pixel2x2_Data){
|
||||
brickFile = $LuaLogic::Path @ "bricks/blb/2x2pixelbrick.blb";
|
||||
category = "Logic Bricks";
|
||||
subCategory = "Outputs";
|
||||
uiName = "Pixel 2x2";
|
||||
iconName = $LuaLogic::Path @ "icons/Pixel 2x2";
|
||||
hasPrint = 1;
|
||||
printAspectRatio = "Logic";
|
||||
orientationFix = 0;
|
||||
|
||||
isLogic = true;
|
||||
isLogicGate = true;
|
||||
isLogicInput = false;
|
||||
|
||||
logicUIName = "Pixel 2x2";
|
||||
logicUIDesc = "4 Pixels glued together with one print, for better ghosting performance and brickcount.";
|
||||
|
||||
logicUpdate = lualogic_readfile($LuaLogic::Path @ "bricks/outputs/pixel2x2-update.lua");
|
||||
|
||||
numLogicPorts = 4;
|
||||
|
||||
logicPortType [0] = 1;
|
||||
logicPortPos [0] = "0 -1 -3";
|
||||
logicPortDir [0] = 2;
|
||||
logicPortCauseUpdate[0] = true;
|
||||
logicPortUIName [0] = "BR";
|
||||
|
||||
logicPortType [1] = 1;
|
||||
logicPortPos [1] = "0 1 -3";
|
||||
logicPortDir [1] = 2;
|
||||
logicPortCauseUpdate[1] = true;
|
||||
logicPortUIName [1] = "BL";
|
||||
|
||||
logicPortType [2] = 1;
|
||||
logicPortPos [2] = "0 -1 1";
|
||||
logicPortDir [2] = 2;
|
||||
logicPortCauseUpdate[2] = true;
|
||||
logicPortUIName [2] = "TR";
|
||||
|
||||
logicPortType [3] = 1;
|
||||
logicPortPos [3] = "0 1 1";
|
||||
logicPortDir [3] = 2;
|
||||
logicPortCauseUpdate[3] = true;
|
||||
logicPortUIName [3] = "TL";
|
||||
};
|
||||
lualogic_registergatedefinition("LogicGate_Pixel3_Data");
|
||||
|
||||
function LogicGate_Pixel2x2_Data::LuaLogic_Callback(%data, %brick, %state) {
|
||||
switch(%state) {
|
||||
case 0x0: %brick.setPrint(lualogic_getprint("color000"));
|
||||
case 0x1: %brick.setPrint(lualogic_getprint("pixel2x2_1"));
|
||||
case 0x2: %brick.setPrint(lualogic_getprint("pixel2x2_2"));
|
||||
case 0x3: %brick.setPrint(lualogic_getprint("pixel2x2_3"));
|
||||
case 0x4: %brick.setPrint(lualogic_getprint("pixel2x2_4"));
|
||||
case 0x5: %brick.setPrint(lualogic_getprint("pixel2x2_5"));
|
||||
case 0x6: %brick.setPrint(lualogic_getprint("pixel2x2_6"));
|
||||
case 0x7: %brick.setPrint(lualogic_getprint("pixel2x2_7"));
|
||||
case 0x8: %brick.setPrint(lualogic_getprint("pixel2x2_8"));
|
||||
case 0x9: %brick.setPrint(lualogic_getprint("pixel2x2_9"));
|
||||
case 0xA: %brick.setPrint(lualogic_getprint("pixel2x2_A"));
|
||||
case 0xB: %brick.setPrint(lualogic_getprint("pixel2x2_B"));
|
||||
case 0xC: %brick.setPrint(lualogic_getprint("pixel2x2_C"));
|
||||
case 0xD: %brick.setPrint(lualogic_getprint("pixel2x2_D"));
|
||||
case 0xE: %brick.setPrint(lualogic_getprint("pixel2x2_E"));
|
||||
case 0xF: %brick.setPrint(lualogic_getprint("space"));
|
||||
}
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
//bls 3
|
||||
|
||||
datablock fxDTSBrickData(LogicGate_Pixel3_Data){
|
||||
brickFile = $LuaLogic::Path @ "bricks/blb/TextBrick.blb";
|
||||
|
@ -1,4 +1,4 @@
|
||||
|
||||
--bls 3
|
||||
textbrick2_bitsNeeded = 9
|
||||
|
||||
textbrick2_idxToPrint = {
|
||||
@ -44,8 +44,8 @@ textbrick2_idxToPrint = {
|
||||
[0x25] = "percent",
|
||||
[0x26] = "and",
|
||||
[0x27] = "apostrophe",
|
||||
[0x28] = "roundbracketright",
|
||||
[0x29] = "roundbracketleft",
|
||||
[0x28] = "roundbracketleft",
|
||||
[0x29] = "roundbracketright",
|
||||
[0x2A] = "asterisk",
|
||||
[0x2B] = "plus",
|
||||
[0x2C] = "comma",
|
||||
@ -138,22 +138,22 @@ textbrick2_idxToPrint = {
|
||||
[0x7E] = "tilde",
|
||||
[0x7F] = "space",
|
||||
|
||||
[0x80] = "space",
|
||||
[0x81] = "space",
|
||||
[0x82] = "space",
|
||||
[0x83] = "space",
|
||||
[0x84] = "space",
|
||||
[0x85] = "space",
|
||||
[0x86] = "space",
|
||||
[0x87] = "space",
|
||||
[0x88] = "space",
|
||||
[0x89] = "space",
|
||||
[0x8A] = "space",
|
||||
[0x8B] = "space",
|
||||
[0x8C] = "space",
|
||||
[0x8D] = "space",
|
||||
[0x8E] = "space",
|
||||
[0x8F] = "space",
|
||||
[0x80] = "color000",
|
||||
[0x81] = "pixel2x2_1",
|
||||
[0x82] = "pixel2x2_2",
|
||||
[0x83] = "pixel2x2_3",
|
||||
[0x84] = "pixel2x2_4",
|
||||
[0x85] = "pixel2x2_5",
|
||||
[0x86] = "pixel2x2_6",
|
||||
[0x87] = "pixel2x2_7",
|
||||
[0x88] = "pixel2x2_8",
|
||||
[0x89] = "pixel2x2_9",
|
||||
[0x8A] = "pixel2x2_A",
|
||||
[0x8B] = "pixel2x2_B",
|
||||
[0x8C] = "pixel2x2_C",
|
||||
[0x8D] = "pixel2x2_D",
|
||||
[0x8E] = "pixel2x2_E",
|
||||
[0x8F] = "color111",
|
||||
|
||||
[0x90] = "space",
|
||||
[0x91] = "space",
|
||||
|
Reference in New Issue
Block a user