From 718c9ba725d071664951ef79a488356b959926c0 Mon Sep 17 00:00:00 2001 From: Redo Date: Fri, 28 Oct 2022 01:08:12 -0600 Subject: [PATCH] start robot, fix bug in keyboard --- bricks/big/cpu1.cs | 220 --- bricks/big/ram8x12.cs | 190 --- bricks/blb/RobotController.blb | 2626 ++++++++++++++++++++++++++++++ bricks/execall.cs | 3 - bricks/inputs/keyboard-input.lua | 2 +- bricks/special/cube.dts | Bin 0 -> 2134 bytes bricks/special/robot.cs | 269 +++ 7 files changed, 2896 insertions(+), 414 deletions(-) delete mode 100644 bricks/big/cpu1.cs delete mode 100644 bricks/big/ram8x12.cs create mode 100644 bricks/blb/RobotController.blb create mode 100644 bricks/special/cube.dts create mode 100644 bricks/special/robot.cs diff --git a/bricks/big/cpu1.cs b/bricks/big/cpu1.cs deleted file mode 100644 index 3087fe0..0000000 --- a/bricks/big/cpu1.cs +++ /dev/null @@ -1,220 +0,0 @@ -datablock fxDTSBrickData(LogicGate_cpu1_Data) -{ - brickFile = $LuaLogic::Path @ "bricks/blb/cpu1.blb"; - category = "Logic Bricks"; - subCategory = "Big"; - uiName = "cpu1"; - iconName = ""; - hasPrint = 1; - printAspectRatio = "Logic"; - orientationFix = 3; - - isLogic = true; - isLogicGate = true; - isLogicInput = false; - - logicUIName = "cpu1"; - logicUIDesc = ""; - - numLogicPorts = 37; - - logicPortType[0] = 1; - logicPortPos[0] = "27 7 -3"; - logicPortDir[0] = 1; - logicPortUIName[0] = ""; - - logicPortType[1] = 1; - logicPortPos[1] = "25 7 -3"; - logicPortDir[1] = 1; - logicPortUIName[1] = ""; - - logicPortType[2] = 1; - logicPortPos[2] = "23 7 -3"; - logicPortDir[2] = 1; - logicPortUIName[2] = ""; - - logicPortType[3] = 1; - logicPortPos[3] = "21 7 -3"; - logicPortDir[3] = 1; - logicPortUIName[3] = ""; - - logicPortType[4] = 1; - logicPortPos[4] = "19 7 -3"; - logicPortDir[4] = 1; - logicPortUIName[4] = ""; - - logicPortType[5] = 1; - logicPortPos[5] = "17 7 -3"; - logicPortDir[5] = 1; - logicPortUIName[5] = ""; - - logicPortType[6] = 1; - logicPortPos[6] = "15 7 -3"; - logicPortDir[6] = 1; - logicPortUIName[6] = ""; - - logicPortType[7] = 1; - logicPortPos[7] = "13 7 -3"; - logicPortDir[7] = 1; - logicPortUIName[7] = ""; - - logicPortType[8] = 0; - logicPortPos[8] = "27 7 -2"; - logicPortDir[8] = 1; - logicPortUIName[8] = ""; - - logicPortType[9] = 0; - logicPortPos[9] = "25 7 -2"; - logicPortDir[9] = 1; - logicPortUIName[9] = ""; - - logicPortType[10] = 0; - logicPortPos[10] = "23 7 -2"; - logicPortDir[10] = 1; - logicPortUIName[10] = ""; - - logicPortType[11] = 0; - logicPortPos[11] = "21 7 -2"; - logicPortDir[11] = 1; - logicPortUIName[11] = ""; - - logicPortType[12] = 0; - logicPortPos[12] = "19 7 -2"; - logicPortDir[12] = 1; - logicPortUIName[12] = ""; - - logicPortType[13] = 0; - logicPortPos[13] = "17 7 -2"; - logicPortDir[13] = 1; - logicPortUIName[13] = ""; - - logicPortType[14] = 0; - logicPortPos[14] = "15 7 -2"; - logicPortDir[14] = 1; - logicPortUIName[14] = ""; - - logicPortType[15] = 0; - logicPortPos[15] = "13 7 -2"; - logicPortDir[15] = 1; - logicPortUIName[15] = ""; - - logicPortType[16] = 0; - logicPortPos[16] = "7 7 -3"; - logicPortDir[16] = 1; - logicPortUIName[16] = ""; - - logicPortType[17] = 0; - logicPortPos[17] = "5 7 -3"; - logicPortDir[17] = 1; - logicPortUIName[17] = ""; - - logicPortType[18] = 0; - logicPortPos[18] = "3 7 -3"; - logicPortDir[18] = 1; - logicPortUIName[18] = ""; - - logicPortType[19] = 0; - logicPortPos[19] = "1 7 -3"; - logicPortDir[19] = 1; - logicPortUIName[19] = ""; - - logicPortType[20] = 0; - logicPortPos[20] = "-1 7 -3"; - logicPortDir[20] = 1; - logicPortUIName[20] = ""; - - logicPortType[21] = 0; - logicPortPos[21] = "-3 7 -3"; - logicPortDir[21] = 1; - logicPortUIName[21] = ""; - - logicPortType[22] = 0; - logicPortPos[22] = "-5 7 -3"; - logicPortDir[22] = 1; - logicPortUIName[22] = ""; - - logicPortType[23] = 0; - logicPortPos[23] = "-7 7 -3"; - logicPortDir[23] = 1; - logicPortUIName[23] = ""; - - logicPortType[24] = 0; - logicPortPos[24] = "-9 7 -3"; - logicPortDir[24] = 1; - logicPortUIName[24] = ""; - - logicPortType[25] = 0; - logicPortPos[25] = "-11 7 -3"; - logicPortDir[25] = 1; - logicPortUIName[25] = ""; - - logicPortType[26] = 0; - logicPortPos[26] = "-13 7 -3"; - logicPortDir[26] = 1; - logicPortUIName[26] = ""; - - logicPortType[27] = 0; - logicPortPos[27] = "-15 7 -3"; - logicPortDir[27] = 1; - logicPortUIName[27] = ""; - - logicPortType[28] = 0; - logicPortPos[28] = "-17 7 -3"; - logicPortDir[28] = 1; - logicPortUIName[28] = ""; - - logicPortType[29] = 0; - logicPortPos[29] = "-19 7 -3"; - logicPortDir[29] = 1; - logicPortUIName[29] = ""; - - logicPortType[30] = 0; - logicPortPos[30] = "-21 7 -3"; - logicPortDir[30] = 1; - logicPortUIName[30] = ""; - - logicPortType[31] = 0; - logicPortPos[31] = "-23 7 -3"; - logicPortDir[31] = 1; - logicPortUIName[31] = ""; - - logicPortType[32] = 0; - logicPortPos[32] = "-27 7 -3"; - logicPortDir[32] = 1; - logicPortUIName[32] = ""; - - logicPortType[33] = 0; - logicPortPos[33] = "-29 7 -3"; - logicPortDir[33] = 1; - logicPortUIName[33] = ""; - - logicPortType[34] = 1; - logicPortPos[34] = "27 -7 -3"; - logicPortDir[34] = 3; - logicPortUIName[34] = ""; - - logicPortType[35] = 1; - logicPortPos[35] = "23 -7 -3"; - logicPortDir[35] = 3; - logicPortUIName[35] = ""; - - logicPortType[36] = 1; - logicPortPos[36] = "19 -7 -3"; - logicPortDir[36] = 3; - logicPortUIName[36] = ""; -}; - -function LogicGate_cpu1_Data::doLogic(%this, %obj) -{ - -} - -function LogicGate_cpu1_Data::Logic_onGateAdded(%this, %obj) -{ - -} - -function LogicGate_cpu1_Data::Logic_onInput(%this, %obj, %pos, %norm) -{ - -} diff --git a/bricks/big/ram8x12.cs b/bricks/big/ram8x12.cs deleted file mode 100644 index 7e8635a..0000000 --- a/bricks/big/ram8x12.cs +++ /dev/null @@ -1,190 +0,0 @@ -datablock fxDTSBrickData(LogicGate_ram8x12_Data) -{ - brickFile = $LuaLogic::Path @ "bricks/blb/ram8x12.blb"; - category = "Logic Bricks"; - subCategory = "Big"; - uiName = "ram8x12"; - iconName = ""; - hasPrint = 1; - printAspectRatio = "Logic"; - orientationFix = 3; - - isLogic = true; - isLogicGate = true; - isLogicInput = false; - - logicUIName = "ram8x12"; - logicUIDesc = ""; - - numLogicPorts = 31; - - logicPortType[0] = 1; - logicPortPos[0] = "7 -11 -3"; - logicPortDir[0] = 3; - logicPortUIName[0] = ""; - - logicPortType[1] = 1; - logicPortPos[1] = "5 -11 -3"; - logicPortDir[1] = 3; - logicPortUIName[1] = ""; - - logicPortType[2] = 1; - logicPortPos[2] = "3 -11 -3"; - logicPortDir[2] = 3; - logicPortUIName[2] = ""; - - logicPortType[3] = 1; - logicPortPos[3] = "1 -11 -3"; - logicPortDir[3] = 3; - logicPortUIName[3] = ""; - - logicPortType[4] = 1; - logicPortPos[4] = "-1 -11 -3"; - logicPortDir[4] = 3; - logicPortUIName[4] = ""; - - logicPortType[5] = 1; - logicPortPos[5] = "-3 -11 -3"; - logicPortDir[5] = 3; - logicPortUIName[5] = ""; - - logicPortType[6] = 1; - logicPortPos[6] = "-5 -11 -3"; - logicPortDir[6] = 3; - logicPortUIName[6] = ""; - - logicPortType[7] = 1; - logicPortPos[7] = "-7 -11 -3"; - logicPortDir[7] = 3; - logicPortUIName[7] = ""; - - logicPortType[8] = 0; - logicPortPos[8] = "7 -11 -2"; - logicPortDir[8] = 3; - logicPortUIName[8] = ""; - - logicPortType[9] = 0; - logicPortPos[9] = "5 -11 -2"; - logicPortDir[9] = 3; - logicPortUIName[9] = ""; - - logicPortType[10] = 0; - logicPortPos[10] = "3 -11 -2"; - logicPortDir[10] = 3; - logicPortUIName[10] = ""; - - logicPortType[11] = 0; - logicPortPos[11] = "1 -11 -2"; - logicPortDir[11] = 3; - logicPortUIName[11] = ""; - - logicPortType[12] = 0; - logicPortPos[12] = "-1 -11 -2"; - logicPortDir[12] = 3; - logicPortUIName[12] = ""; - - logicPortType[13] = 0; - logicPortPos[13] = "-3 -11 -2"; - logicPortDir[13] = 3; - logicPortUIName[13] = ""; - - logicPortType[14] = 0; - logicPortPos[14] = "-5 -11 -2"; - logicPortDir[14] = 3; - logicPortUIName[14] = ""; - - logicPortType[15] = 0; - logicPortPos[15] = "-7 -11 -2"; - logicPortDir[15] = 3; - logicPortUIName[15] = ""; - - logicPortType[16] = 1; - logicPortPos[16] = "7 11 -3"; - logicPortDir[16] = 2; - logicPortUIName[16] = ""; - - logicPortType[17] = 1; - logicPortPos[17] = "7 9 -3"; - logicPortDir[17] = 2; - logicPortUIName[17] = ""; - - logicPortType[18] = 1; - logicPortPos[18] = "7 7 -3"; - logicPortDir[18] = 2; - logicPortUIName[18] = ""; - - logicPortType[19] = 1; - logicPortPos[19] = "7 5 -3"; - logicPortDir[19] = 2; - logicPortUIName[19] = ""; - - logicPortType[20] = 1; - logicPortPos[20] = "7 3 -3"; - logicPortDir[20] = 2; - logicPortUIName[20] = ""; - - logicPortType[21] = 1; - logicPortPos[21] = "7 1 -3"; - logicPortDir[21] = 2; - logicPortUIName[21] = ""; - - logicPortType[22] = 1; - logicPortPos[22] = "7 -1 -3"; - logicPortDir[22] = 2; - logicPortUIName[22] = ""; - - logicPortType[23] = 1; - logicPortPos[23] = "7 -3 -3"; - logicPortDir[23] = 2; - logicPortUIName[23] = ""; - - logicPortType[24] = 1; - logicPortPos[24] = "7 -5 -3"; - logicPortDir[24] = 2; - logicPortUIName[24] = ""; - - logicPortType[25] = 1; - logicPortPos[25] = "7 -7 -3"; - logicPortDir[25] = 2; - logicPortUIName[25] = ""; - - logicPortType[26] = 1; - logicPortPos[26] = "7 -9 -3"; - logicPortDir[26] = 2; - logicPortUIName[26] = ""; - - logicPortType[27] = 1; - logicPortPos[27] = "7 -11 -3"; - logicPortDir[27] = 2; - logicPortUIName[27] = ""; - - logicPortType[28] = 1; - logicPortPos[28] = "-7 -9 -3"; - logicPortDir[28] = 0; - logicPortUIName[28] = ""; - - logicPortType[29] = 1; - logicPortPos[29] = "-7 -7 -3"; - logicPortDir[29] = 0; - logicPortUIName[29] = ""; - - logicPortType[30] = 1; - logicPortPos[30] = "-7 -5 -3"; - logicPortDir[30] = 0; - logicPortUIName[30] = ""; -}; - -function LogicGate_ram8x12_Data::doLogic(%this, %obj) -{ - -} - -function LogicGate_ram8x12_Data::Logic_onGateAdded(%this, %obj) -{ - -} - -function LogicGate_ram8x12_Data::Logic_onInput(%this, %obj, %pos, %norm) -{ - -} diff --git a/bricks/blb/RobotController.blb b/bricks/blb/RobotController.blb new file mode 100644 index 0000000..bd361b5 --- /dev/null +++ b/bricks/blb/RobotController.blb @@ -0,0 +1,2626 @@ +16 4 1 +SPECIAL + +bbbbbbbbbbbbbbbb + +bbbbbbbbbbbbbbbb + +bbbbbbbbbbbbbbbb + +bbbbbbbbbbbbbbbb + +1 + +0 0 0 +16 4 1 +COVERAGE: +1 : 64 +1 : 64 +1 : 16 +1 : 4 +1 : 16 +1 : 4 +----------------top quads: +1 + +TEX:PRINT +POSITION: +8 2 0.5 +8 -2 0.5 +-8 -2 0.5 +-8 2 0.5 +UV COORDS: +1 0 +1 1 +0 1 +0 0 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 +----------------bottom quads: +5 + +TEX:BOTTOMLOOP +POSITION: +7.5 -1.5 -0.5 +7.5 1.5 -0.5 +-7.5 1.5 -0.5 +-7.5 -1.5 -0.5 +UV COORDS: +0 0 +0 3 +15 3 +15 0 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:BOTTOMEDGE +POSITION: +-8 -2 -0.5 +8 -2 -0.5 +7.5 -1.5 -0.5 +-7.5 -1.5 -0.5 +UV COORDS: +-0.5 0 +15.5 0 +15 0.5 +0 0.5 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:BOTTOMEDGE +POSITION: +8 2 -0.5 +-8 2 -0.5 +-7.5 1.5 -0.5 +7.5 1.5 -0.5 +UV COORDS: +-0.5 0 +15.5 0 +15 0.5 +0 0.5 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:BOTTOMEDGE +POSITION: +8 -2 -0.5 +8 2 -0.5 +7.5 1.5 -0.5 +7.5 -1.5 -0.5 +UV COORDS: +-0.5 0 +3.5 0 +3 0.5 +0 0.5 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:BOTTOMEDGE +POSITION: +-8 2 -0.5 +-8 -2 -0.5 +-7.5 -1.5 -0.5 +-7.5 1.5 -0.5 +UV COORDS: +-0.5 0 +3.5 0 +3 0.5 +0 0.5 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 +----------------north quads: +41 + +TEX:SIDE +POSITION: +-8 2 0.5 +-8 2 -0.5 +8 2 -0.5 +8 2 0.5 +UV COORDS: +0.981201 -0.0859375 +0.981201 1.08594 +0.0187988 1.08594 +0.0187988 -0.0859375 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +7.82 2.25 -0.24 +7.18 2.25 -0.24 +7.1 2 -0.3 +7.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +7.82 2.25 -0.24 +7.82 2.25 0.24 +7.18 2.25 0.24 +7.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +7.18 2.25 0.24 +7.82 2.25 0.24 +7.9 2 0.3 +7.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +7.18 2.25 -0.24 +7.18 2.25 0.24 +7.1 2 0.3 +7.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +7.82 2.25 0.24 +7.82 2.25 -0.24 +7.9 2 -0.3 +7.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +6.82 2.25 -0.24 +6.18 2.25 -0.24 +6.1 2 -0.3 +6.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +6.82 2.25 -0.24 +6.82 2.25 0.24 +6.18 2.25 0.24 +6.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +6.18 2.25 0.24 +6.82 2.25 0.24 +6.9 2 0.3 +6.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +6.18 2.25 -0.24 +6.18 2.25 0.24 +6.1 2 0.3 +6.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +6.82 2.25 0.24 +6.82 2.25 -0.24 +6.9 2 -0.3 +6.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +5.82 2.25 -0.24 +5.18 2.25 -0.24 +5.1 2 -0.3 +5.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +5.82 2.25 -0.24 +5.82 2.25 0.24 +5.18 2.25 0.24 +5.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +5.18 2.25 0.24 +5.82 2.25 0.24 +5.9 2 0.3 +5.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +5.18 2.25 -0.24 +5.18 2.25 0.24 +5.1 2 0.3 +5.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +5.82 2.25 0.24 +5.82 2.25 -0.24 +5.9 2 -0.3 +5.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +4.82 2.25 -0.24 +4.18 2.25 -0.24 +4.1 2 -0.3 +4.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +4.82 2.25 -0.24 +4.82 2.25 0.24 +4.18 2.25 0.24 +4.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +4.18 2.25 0.24 +4.82 2.25 0.24 +4.9 2 0.3 +4.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +4.18 2.25 -0.24 +4.18 2.25 0.24 +4.1 2 0.3 +4.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +4.82 2.25 0.24 +4.82 2.25 -0.24 +4.9 2 -0.3 +4.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +3.82 2.25 -0.24 +3.18 2.25 -0.24 +3.1 2 -0.3 +3.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +3.82 2.25 -0.24 +3.82 2.25 0.24 +3.18 2.25 0.24 +3.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +3.18 2.25 0.24 +3.82 2.25 0.24 +3.9 2 0.3 +3.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +3.18 2.25 -0.24 +3.18 2.25 0.24 +3.1 2 0.3 +3.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +3.82 2.25 0.24 +3.82 2.25 -0.24 +3.9 2 -0.3 +3.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +2.82 2.25 -0.24 +2.18 2.25 -0.24 +2.1 2 -0.3 +2.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +2.82 2.25 -0.24 +2.82 2.25 0.24 +2.18 2.25 0.24 +2.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +2.18 2.25 0.24 +2.82 2.25 0.24 +2.9 2 0.3 +2.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +2.18 2.25 -0.24 +2.18 2.25 0.24 +2.1 2 0.3 +2.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +2.82 2.25 0.24 +2.82 2.25 -0.24 +2.9 2 -0.3 +2.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +0.82 2.25 -0.24 +0.18 2.25 -0.24 +0.1 2 -0.3 +0.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 +-0 0.095561 -0.995424 + +TEX:SIDE +POSITION: +0.82 2.25 -0.24 +0.82 2.25 0.24 +0.18 2.25 0.24 +0.18 2.25 -0.24 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +0.18 2.25 0.24 +0.82 2.25 0.24 +0.9 2 0.3 +0.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 +-0 0.095561 0.995424 + +TEX:SIDE +POSITION: +0.18 2.25 -0.24 +0.18 2.25 0.24 +0.1 2 0.3 +0.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 +-0.952424 0.304776 0 + +TEX:SIDE +POSITION: +0.82 2.25 0.24 +0.82 2.25 -0.24 +0.9 2 -0.3 +0.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 +0.952424 0.304776 0 + +TEX:SIDE +POSITION: +-0.1 2.14 -0.3 +-0.9 2.14 -0.3 +-0.9 2 -0.3 +-0.1 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-0.1 2.14 -0.3 +-0.1 2.14 0.3 +-0.9 2.14 0.3 +-0.9 2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 1 0 +0 1 0 +0 1 0 +0 1 0 + +TEX:SIDE +POSITION: +-0.9 2.14 0.3 +-0.1 2.14 0.3 +-0.1 2 0.3 +-0.9 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-0.9 2.14 -0.3 +-0.9 2.14 0.3 +-0.9 2 0.3 +-0.9 2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-0.1 2.14 0.3 +-0.1 2.14 -0.3 +-0.1 2 -0.3 +-0.1 2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 +----------------east quads: +1 + +TEX:SIDE +POSITION: +8 -2 0.5 +8 2 0.5 +8 2 -0.5 +8 -2 -0.5 +UV COORDS: +0.0107422 -0.0859375 +0.989258 -0.0859375 +0.989258 1.08594 +0.0107422 1.08594 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 +----------------south quads: +71 + +TEX:SIDE +POSITION: +8 -2 0.5 +8 -2 -0.5 +-8 -2 -0.5 +-8 -2 0.5 +UV COORDS: +0.981201 -0.0859375 +0.981201 1.08594 +0.0187988 1.08594 +0.0187988 -0.0859375 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +7.1 -2.14 -0.3 +7.9 -2.14 -0.3 +7.9 -2 -0.3 +7.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +7.1 -2.14 -0.3 +7.1 -2.14 0.3 +7.9 -2.14 0.3 +7.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +7.9 -2.14 0.3 +7.1 -2.14 0.3 +7.1 -2 0.3 +7.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +7.9 -2.14 -0.3 +7.9 -2.14 0.3 +7.9 -2 0.3 +7.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +7.1 -2.14 0.3 +7.1 -2.14 -0.3 +7.1 -2 -0.3 +7.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +6.1 -2.14 -0.3 +6.9 -2.14 -0.3 +6.9 -2 -0.3 +6.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +6.1 -2.14 -0.3 +6.1 -2.14 0.3 +6.9 -2.14 0.3 +6.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +6.9 -2.14 0.3 +6.1 -2.14 0.3 +6.1 -2 0.3 +6.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +6.9 -2.14 -0.3 +6.9 -2.14 0.3 +6.9 -2 0.3 +6.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +6.1 -2.14 0.3 +6.1 -2.14 -0.3 +6.1 -2 -0.3 +6.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +5.1 -2.14 -0.3 +5.9 -2.14 -0.3 +5.9 -2 -0.3 +5.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +5.1 -2.14 -0.3 +5.1 -2.14 0.3 +5.9 -2.14 0.3 +5.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +5.9 -2.14 0.3 +5.1 -2.14 0.3 +5.1 -2 0.3 +5.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +5.9 -2.14 -0.3 +5.9 -2.14 0.3 +5.9 -2 0.3 +5.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +5.1 -2.14 0.3 +5.1 -2.14 -0.3 +5.1 -2 -0.3 +5.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +4.1 -2.14 -0.3 +4.9 -2.14 -0.3 +4.9 -2 -0.3 +4.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +4.1 -2.14 -0.3 +4.1 -2.14 0.3 +4.9 -2.14 0.3 +4.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +4.9 -2.14 0.3 +4.1 -2.14 0.3 +4.1 -2 0.3 +4.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +4.9 -2.14 -0.3 +4.9 -2.14 0.3 +4.9 -2 0.3 +4.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +4.1 -2.14 0.3 +4.1 -2.14 -0.3 +4.1 -2 -0.3 +4.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +3.1 -2.14 -0.3 +3.9 -2.14 -0.3 +3.9 -2 -0.3 +3.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +3.1 -2.14 -0.3 +3.1 -2.14 0.3 +3.9 -2.14 0.3 +3.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +3.9 -2.14 0.3 +3.1 -2.14 0.3 +3.1 -2 0.3 +3.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +3.9 -2.14 -0.3 +3.9 -2.14 0.3 +3.9 -2 0.3 +3.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +3.1 -2.14 0.3 +3.1 -2.14 -0.3 +3.1 -2 -0.3 +3.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +2.1 -2.14 -0.3 +2.9 -2.14 -0.3 +2.9 -2 -0.3 +2.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +2.1 -2.14 -0.3 +2.1 -2.14 0.3 +2.9 -2.14 0.3 +2.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +2.9 -2.14 0.3 +2.1 -2.14 0.3 +2.1 -2 0.3 +2.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +2.9 -2.14 -0.3 +2.9 -2.14 0.3 +2.9 -2 0.3 +2.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +2.1 -2.14 0.3 +2.1 -2.14 -0.3 +2.1 -2 -0.3 +2.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +0.1 -2.14 -0.3 +0.9 -2.14 -0.3 +0.9 -2 -0.3 +0.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +0.1 -2.14 -0.3 +0.1 -2.14 0.3 +0.9 -2.14 0.3 +0.9 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +0.9 -2.14 0.3 +0.1 -2.14 0.3 +0.1 -2 0.3 +0.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +0.9 -2.14 -0.3 +0.9 -2.14 0.3 +0.9 -2 0.3 +0.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +0.1 -2.14 0.3 +0.1 -2.14 -0.3 +0.1 -2 -0.3 +0.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-0.9 -2.14 -0.3 +-0.1 -2.14 -0.3 +-0.1 -2 -0.3 +-0.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-0.9 -2.14 -0.3 +-0.9 -2.14 0.3 +-0.1 -2.14 0.3 +-0.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-0.1 -2.14 0.3 +-0.9 -2.14 0.3 +-0.9 -2 0.3 +-0.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-0.1 -2.14 -0.3 +-0.1 -2.14 0.3 +-0.1 -2 0.3 +-0.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-0.9 -2.14 0.3 +-0.9 -2.14 -0.3 +-0.9 -2 -0.3 +-0.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-2.9 -2.14 -0.3 +-2.1 -2.14 -0.3 +-2.1 -2 -0.3 +-2.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-2.9 -2.14 -0.3 +-2.9 -2.14 0.3 +-2.1 -2.14 0.3 +-2.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-2.1 -2.14 0.3 +-2.9 -2.14 0.3 +-2.9 -2 0.3 +-2.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-2.1 -2.14 -0.3 +-2.1 -2.14 0.3 +-2.1 -2 0.3 +-2.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-2.9 -2.14 0.3 +-2.9 -2.14 -0.3 +-2.9 -2 -0.3 +-2.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-3.9 -2.14 -0.3 +-3.1 -2.14 -0.3 +-3.1 -2 -0.3 +-3.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-3.9 -2.14 -0.3 +-3.9 -2.14 0.3 +-3.1 -2.14 0.3 +-3.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-3.1 -2.14 0.3 +-3.9 -2.14 0.3 +-3.9 -2 0.3 +-3.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-3.1 -2.14 -0.3 +-3.1 -2.14 0.3 +-3.1 -2 0.3 +-3.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-3.9 -2.14 0.3 +-3.9 -2.14 -0.3 +-3.9 -2 -0.3 +-3.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-4.9 -2.14 -0.3 +-4.1 -2.14 -0.3 +-4.1 -2 -0.3 +-4.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-4.9 -2.14 -0.3 +-4.9 -2.14 0.3 +-4.1 -2.14 0.3 +-4.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-4.1 -2.14 0.3 +-4.9 -2.14 0.3 +-4.9 -2 0.3 +-4.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-4.1 -2.14 -0.3 +-4.1 -2.14 0.3 +-4.1 -2 0.3 +-4.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-4.9 -2.14 0.3 +-4.9 -2.14 -0.3 +-4.9 -2 -0.3 +-4.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-5.9 -2.14 -0.3 +-5.1 -2.14 -0.3 +-5.1 -2 -0.3 +-5.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-5.9 -2.14 -0.3 +-5.9 -2.14 0.3 +-5.1 -2.14 0.3 +-5.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-5.1 -2.14 0.3 +-5.9 -2.14 0.3 +-5.9 -2 0.3 +-5.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-5.1 -2.14 -0.3 +-5.1 -2.14 0.3 +-5.1 -2 0.3 +-5.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-5.9 -2.14 0.3 +-5.9 -2.14 -0.3 +-5.9 -2 -0.3 +-5.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-6.9 -2.14 -0.3 +-6.1 -2.14 -0.3 +-6.1 -2 -0.3 +-6.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-6.9 -2.14 -0.3 +-6.9 -2.14 0.3 +-6.1 -2.14 0.3 +-6.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-6.1 -2.14 0.3 +-6.9 -2.14 0.3 +-6.9 -2 0.3 +-6.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-6.1 -2.14 -0.3 +-6.1 -2.14 0.3 +-6.1 -2 0.3 +-6.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-6.9 -2.14 0.3 +-6.9 -2.14 -0.3 +-6.9 -2 -0.3 +-6.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 + +TEX:SIDE +POSITION: +-7.9 -2.14 -0.3 +-7.1 -2.14 -0.3 +-7.1 -2 -0.3 +-7.9 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 -1 +0 0 -1 +0 0 -1 +0 0 -1 + +TEX:SIDE +POSITION: +-7.9 -2.14 -0.3 +-7.9 -2.14 0.3 +-7.1 -2.14 0.3 +-7.1 -2.14 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 -1 0 +0 -1 0 +0 -1 0 +0 -1 0 + +TEX:SIDE +POSITION: +-7.1 -2.14 0.3 +-7.9 -2.14 0.3 +-7.9 -2 0.3 +-7.1 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +0 0 1 +0 0 1 +0 0 1 +0 0 1 + +TEX:SIDE +POSITION: +-7.1 -2.14 -0.3 +-7.1 -2.14 0.3 +-7.1 -2 0.3 +-7.1 -2 -0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +1 0 0 +1 0 0 +1 0 0 +1 0 0 + +TEX:SIDE +POSITION: +-7.9 -2.14 0.3 +-7.9 -2.14 -0.3 +-7.9 -2 -0.3 +-7.9 -2 0.3 +UV COORDS: +0.5 0.5 +0.5 0.5 +0.5 0.5 +0.5 0.5 +COLORS: +1 1 1 1 +1 1 1 1 +1 1 1 1 +1 1 1 1 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 +----------------west quads: +1 + +TEX:SIDE +POSITION: +-8 -2 -0.5 +-8 2 -0.5 +-8 2 0.5 +-8 -2 0.5 +UV COORDS: +0.989258 1.08594 +0.0107422 1.08594 +0.0107422 -0.0859375 +0.989258 -0.0859375 +NORMALS: +-1 0 0 +-1 0 0 +-1 0 0 +-1 0 0 +----------------omni quads: +0 diff --git a/bricks/execall.cs b/bricks/execall.cs index 91e85e7..48f2cc5 100644 --- a/bricks/execall.cs +++ b/bricks/execall.cs @@ -25,6 +25,3 @@ exec("./outputs/TextBrick2.cs"); exec("./special/EventGate.cs"); exec("./special/rom.cs"); - -//exec("./big/cpu1.cs"); -//exec("./big/ram8x12.cs"); diff --git a/bricks/inputs/keyboard-input.lua b/bricks/inputs/keyboard-input.lua index 7526fc2..500f7ef 100644 --- a/bricks/inputs/keyboard-input.lua +++ b/bricks/inputs/keyboard-input.lua @@ -11,7 +11,7 @@ return function(gate, argv) local code = keycode+(status and 128 or 0) - if #gate.queueBits > 1024 return end + if #gate.queueBits > 1024 then return end queueBit(gate, 1) for bitidx = 1, 8 do diff --git a/bricks/special/cube.dts b/bricks/special/cube.dts new file mode 100644 index 0000000000000000000000000000000000000000..f51389ee05ccbac632c92680cee76688b4127302 GIT binary patch literal 2134 zcmds2&2G~`5FRJCxl92ty0U0e)d4>1m*Z(F}OBeZ8sG1r@ABiF{! ze&iFhXBkAdEcf}XrV4=`5*N`^DonNp{E8O91w1-Qmk$QhgyoM&E?@t@J?&Ht#!>w*D~?-x;no0)tpSulN_|K=IH#ju5-xbHi^kS`hSG|V`U+IX76IJ zGWNlaCvQ$a#&TzfdwW%>?qJC~%4`?o4J zb9=h*aS_vn&6PT^0x%kHXGU`ok6r=%=v9H=vNXVL%BtJ~|2A}XMBe;-Jc~dDSOOZr zD$oM%0BgWKfZfBK`Hy7tc1`v^EDlzsy0yejzB9 z%9U!3e+@IG&Qy&wnvY){wL5$LgJ-O3Yq!aae-51^H YIdrqt4x8THkDk8nq;c#&v81=dFKTNNKL7v# literal 0 HcmV?d00001 diff --git a/bricks/special/robot.cs b/bricks/special/robot.cs new file mode 100644 index 0000000..0209c0a --- /dev/null +++ b/bricks/special/robot.cs @@ -0,0 +1,269 @@ +if(!isObject(LuaLogic_RobotBrickGroup)) { + new SimGroup(LuaLogic_RobotBrickGroup) + { + bl_id = 12345678; + name = "\c1Robot"; + QuotaObject = GlobalQuota; + }; + mainBrickGroup.add(LuaLogic_RobotBrickGroup); +} + +datablock StaticShapeData(LuaLogic_RobotShapeData) { + shapeFile = "./cube.dts"; +}; + +datablock fxDTSBrickData(LogicGate_RobotController_Data) { + brickFile = $LuaLogic::Path @ "bricks/blb/RobotController.blb"; + category = "Logic Bricks"; + subCategory = "Special"; + uiName = "Robot Controller"; + iconName = $LuaLogic::Path @ "icons/Robot Controller"; + hasPrint = 1; + printAspectRatio = "Logic"; + orientationFix = 3; + + isLogic = true; + isLogicGate = true; + isLogicInput = true; + + logicInit = lualogic_readfile($LuaLogic::Path @ "bricks/special/robot-init.lua" ); + logicUpdate = lualogic_readfile($LuaLogic::Path @ "bricks/special/robot-update.lua"); + logicGlobal = lualogic_readfile($LuaLogic::Path @ "bricks/special/robot-global.lua"); + + logicUIName = "Robot Controller"; + logicUIDesc = "Creates and controls a mobile robot that can detect and place bricks"; + + numLogicPorts = 22; + + logicPortType[0] = 1; + logicPortPos[0] = "15 -3 0"; + logicPortDir[0] = 3; + logicPortUIName[0] = "ColorIn0"; + + logicPortType[1] = 1; + logicPortPos[1] = "13 -3 0"; + logicPortDir[1] = 3; + logicPortUIName[1] = "ColorIn1"; + + logicPortType[2] = 1; + logicPortPos[2] = "11 -3 0"; + logicPortDir[2] = 3; + logicPortUIName[2] = "ColorIn2"; + + logicPortType[3] = 1; + logicPortPos[3] = "9 -3 0"; + logicPortDir[3] = 3; + logicPortUIName[3] = "ColorIn3"; + + logicPortType[4] = 1; + logicPortPos[4] = "7 -3 0"; + logicPortDir[4] = 3; + logicPortUIName[4] = "ColorIn4"; + + logicPortType[5] = 1; + logicPortPos[5] = "5 -3 0"; + logicPortDir[5] = 3; + logicPortUIName[5] = "ColorIn5"; + + logicPortType[6] = 1; + logicPortPos[6] = "1 -3 0"; + logicPortDir[6] = 3; + logicPortUIName[6] = "Destroy Brick"; + + logicPortType[7] = 1; + logicPortPos[7] = "-1 -3 0"; + logicPortDir[7] = 3; + logicPortUIName[7] = "Plant Brick"; + + logicPortType[8] = 1; + logicPortPos[8] = "-5 -3 0"; + logicPortDir[8] = 3; + logicPortUIName[8] = "Move Down"; + + logicPortType[9] = 1; + logicPortPos[9] = "-7 -3 0"; + logicPortDir[9] = 3; + logicPortUIName[9] = "Move Up"; + + logicPortType[10] = 1; + logicPortPos[10] = "-9 -3 0"; + logicPortDir[10] = 3; + logicPortUIName[10] = "Move Right"; + + logicPortType[11] = 1; + logicPortPos[11] = "-11 -3 0"; + logicPortDir[11] = 3; + logicPortUIName[11] = "Move Left"; + + logicPortType[12] = 1; + logicPortPos[12] = "-13 -3 0"; + logicPortDir[12] = 3; + logicPortUIName[12] = "Move Backward"; + + logicPortType[13] = 1; + logicPortPos[13] = "-15 -3 0"; + logicPortDir[13] = 3; + logicPortUIName[13] = "Move Forward"; + + logicPortType[14] = 0; + logicPortPos[14] = "15 3 0"; + logicPortDir[14] = 1; + logicPortUIName[14] = "ColorOut0"; + + logicPortType[15] = 0; + logicPortPos[15] = "13 3 0"; + logicPortDir[15] = 1; + logicPortUIName[15] = "ColorOut1"; + + logicPortType[16] = 0; + logicPortPos[16] = "11 3 0"; + logicPortDir[16] = 1; + logicPortUIName[16] = "ColorOut2"; + + logicPortType[17] = 0; + logicPortPos[17] = "9 3 0"; + logicPortDir[17] = 1; + logicPortUIName[17] = "ColorOut3"; + + logicPortType[18] = 0; + logicPortPos[18] = "7 3 0"; + logicPortDir[18] = 1; + logicPortUIName[18] = "ColorOut4"; + + logicPortType[19] = 0; + logicPortPos[19] = "5 3 0"; + logicPortDir[19] = 1; + logicPortUIName[19] = "ColorOut5"; + + logicPortType[20] = 0; + logicPortPos[20] = "1 3 0"; + logicPortDir[20] = 1; + logicPortUIName[20] = "Brick Detected"; + + logicPortType[21] = 1; + logicPortPos[21] = "-1 3 0"; + logicPortDir[21] = 1; + logicPortUIName[21] = "Detect Brick"; +}; + +function LogicGate_RobotController_Data::getRelativeVector(%this, %obj, %vec) +{ + %rot = %obj.angleID; + %x = getWord(%vec, 0); + %y = getWord(%vec, 1); + %z = getWord(%vec, 2); + %ax = %x; + switch(%rot) + { + case 1: + %x = %y; + %y = -%ax; + case 2: + %x = -%x; + %y = -%y; + case 3: + %x = -%y; + %y = %ax; + } + + return %x SPC %y SPC %z; +} + +function LogicGate_RobotController_Data::onDeath(%this, %obj) +{ + if(isObject(%obj.illogicRobot)) + %obj.illogicRobot.delete(); +} + +function LogicGate_RobotController_Data::onRemove(%this, %obj) +{ + if(isObject(%obj.illogicRobot)) + %obj.illogicRobot.delete(); +} + +function LogicGate_RobotController_Data::doLogic(%this, %obj) +{ + %x = (!$LBC::Ports::LastBrickState[%obj, 10] && $LBC::Ports::BrickState[%obj, 10]) - (!$LBC::Ports::LastBrickState[%obj, 11] && $LBC::Ports::BrickState[%obj, 11]); + %y = (!$LBC::Ports::LastBrickState[%obj, 13] && $LBC::Ports::BrickState[%obj, 13]) - (!$LBC::Ports::LastBrickState[%obj, 12] && $LBC::Ports::BrickState[%obj, 12]); + %z = (!$LBC::Ports::LastBrickState[%obj, 9] && $LBC::Ports::BrickState[%obj, 9]) - (!$LBC::Ports::LastBrickState[%obj, 8] && $LBC::Ports::BrickState[%obj, 8]); + %vec = %this.getRelativeVector(%obj, %x*0.5 SPC %y*0.5 SPC %z*0.2); + + %robot = %obj.illogicRobot; + + if(%vec !$= "0 0 0") + %robot.setTransform(vectorAdd(%robot.getPosition(), %vec)); + + %pos = %robot.getPosition(); + + if(!$LBC::Ports::LastBrickState[%obj, 21] && $LBC::Ports::BrickState[%obj, 21]) + { + initContainerBoxSearch(%pos, "0.49 0.49 0.19", $TypeMasks::FxBrickObjectType); + if(isObject(%sobj = containerSearchNext())) + { + %obj.Logic_SetOutput(20, true); + + %color = %sobj.getColorID(); + for(%i = 0; %i < 6; %i++) + %obj.Logic_SetOutput(14+%i, (%color >> %i) & 1); + + %obj.illogicRobotBrick = %sobj; + } + else + { + %obj.Logic_SetOutput(20, false); + + for(%i = 0; %i < 6; %i++) + %obj.Logic_SetOutput(14+%i, false); + + %obj.illogicRobotBrick = 0; + } + } + + if(!$LBC::Ports::LastBrickState[%obj, 6] && $LBC::Ports::BrickState[%obj, 6]) + { + initContainerBoxSearch(%pos, "0.49 0.49 0.19", $TypeMasks::FxBrickObjectType); + if(isObject(%sobj = containerSearchNext()) && %sobj.getGroup() == nameToID(LuaLogic_RobotBrickGroup)) + %sobj.delete(); + } + + if(!$LBC::Ports::LastBrickState[%obj, 7] && $LBC::Ports::BrickState[%obj, 7]) + { + for(%i = 0; %i < 6; %i++) + %color += mPow(2, %i) * $LBC::Ports::BrickState[%obj, %i]; + + %brick = new fxDTSBrick() + { + datablock = brick1x1fData; + position = %pos; + colorID = %color; + isPlanted = 1; + }; + + %err = %brick.plant(); + if(%err != 0 && %err != 2) + %brick.delete(); + else + { + LuaLogic_RobotBrickGroup.add(%brick); + %brick.setTrusted(true); + } + } +} + +function LogicGate_RobotController_Data::Logic_onGateAdded(%this, %obj) +{ + if(isObject(%obj.illogicRobot)) + %obj.illogicRobot.delete(); + + %pos = %obj.getPosition(); + %rpos = vectorAdd(%pos, %this.getRelativeVector(%obj, "0.25 7.75 0")); + %robot = new StaticShape() + { + datablock = LuaLogic_BrickData; + position = %rpos; + }; + %robot.setNodeColor("ALL", "1 1 1 1"); + missionCleanup.add(%robot); + + %obj.illogicRobot = %robot; +}