Browse Source

added lochkartengenerator

master
Victor Giers 4 years ago
parent
commit
fa316ec443
12 changed files with 1093 additions and 132 deletions
  1. BIN
      qubeenee.bin
  2. BIN
      qubeenee.bin.xz
  3. BIN
      qubeenee.blend
  4. 32
    17
      qubeenee.css
  5. BIN
      qubeenee.glb
  6. 631
    72
      qubeenee.gltf
  7. BIN
      qubeenee.gltf.xz
  8. 15
    7
      qubeenee.html
  9. 47
    18
      qubeenee.js
  10. 1
    1
      v3d.js
  11. 53
    6
      visual_logic.js
  12. 314
    11
      visual_logic.xml

BIN
qubeenee.bin View File


BIN
qubeenee.bin.xz View File


BIN
qubeenee.blend View File


+ 32
- 17
qubeenee.css View File

body { body {
margin: 0px;
overflow: hidden;
margin: 0px;
overflow: hidden;
} }


#container { #container {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;

}
#lochkarte {
position: absolute;
top: 0; bottom: 0; right: 0; left: 0;
}

.dot {
height: 35px;
width: 35px;
padding: 7px;
margin: 7px;
background-color: #bbb;
border-radius: 50%;
display: inline-block;
} }


div#fullscreen_button { div#fullscreen_button {
position: absolute;
top: 10px;
right: 10px;
width: 50px;
height: 50px;
cursor: pointer;
background-size: 100% 100%;
display: none;
position: absolute;
top: 10px;
right: 10px;
width: 50px;
height: 50px;
cursor: pointer;
background-size: 100% 100%;
display: none;
} }


.fullscreen-open { .fullscreen-open {
background-image: url('media/fullscreen-open.png');
background-image: url('media/fullscreen-open.png');
} }


.fullscreen-close { .fullscreen-close {
background-image: url('media/fullscreen-close.png');
background-image: url('media/fullscreen-close.png');
} }


/* removes tap blinking on ios devices */ /* removes tap blinking on ios devices */

BIN
qubeenee.glb View File


+ 631
- 72
qubeenee.gltf
File diff suppressed because it is too large
View File


BIN
qubeenee.gltf.xz View File


+ 15
- 7
qubeenee.html View File

<!DOCTYPE html> <!DOCTYPE html>
<!-- __V3D_PUZZLES__ - enable Puzzles button in the App Manager --> <!-- __V3D_PUZZLES__ - enable Puzzles button in the App Manager -->
<!-- __V3D_TEMPLATE__ - template-based file; delete this line to prevent this file from being updated -->
<html lang="en"> <html lang="en">
<head> <head>
<title>Qubeenee</title> <title>Qubeenee</title>
<meta name="theme-color" content="#ffffff"> <meta name="theme-color" content="#ffffff">


<meta http-equiv="origin-trial" content="Aop1aS3O0LG/MKmDbfhMRdlXGxB1ETrJJScdLSaYLDCMJI5iOLQ0uwhBObewdZKbpu00Y+9f7YC5tALasZ7BOg0AAABoeyJvcmlnaW4iOiJodHRwczovL3NvZnQ4c29mdC5jb206NDQzIiwiZmVhdHVyZSI6IldlYlhSRGV2aWNlTTY5IiwiZXhwaXJ5IjoxNTUxODMwMzk5LCJpc1N1YmRvbWFpbiI6dHJ1ZX0="> <meta http-equiv="origin-trial" content="Aop1aS3O0LG/MKmDbfhMRdlXGxB1ETrJJScdLSaYLDCMJI5iOLQ0uwhBObewdZKbpu00Y+9f7YC5tALasZ7BOg0AAABoeyJvcmlnaW4iOiJodHRwczovL3NvZnQ4c29mdC5jb206NDQzIiwiZmVhdHVyZSI6IldlYlhSRGV2aWNlTTY5IiwiZXhwaXJ5IjoxNTUxODMwMzk5LCJpc1N1YmRvbWFpbiI6dHJ1ZX0=">
-->
<script src="v3d.js"></script>
<script src="qubeenee.js"></script>

<link rel="stylesheet" type="text/css" href="qubeenee.css">
-->
<script src="v3d.js"></script>
<script src="jquery.js"></script>
<script src="qubeenee.js"></script>
<script>

</script>
<link rel="stylesheet" type="text/css" href="qubeenee.css">
</head> </head>


<body> <body>
<div id="container"></div>

<div id="lochkarte">
</div>
<div id="container">
</div>

<div id="fullscreen_button" class="fullscreen-open" title="Toggle fullscreen mode"></div> <div id="fullscreen_button" class="fullscreen-open" title="Toggle fullscreen mode"></div>
</body> </body>



+ 47
- 18
qubeenee.js View File

'use strict'; 'use strict';


/* __V3D_TEMPLATE__ - template-based file; delete this line to prevent this file from being updated */

window.addEventListener('load', function() { window.addEventListener('load', function() {


(function() { (function() {
} }


function prepareExternalInterface(app) { function prepareExternalInterface(app) {

app.ExternalInterface.HSVtoRGB = function(h, s, v) { app.ExternalInterface.HSVtoRGB = function(h, s, v) {
var r, g, b, i, f, p, q, t;
i = Math.floor(h * 6);
f = h * 6 - i;
p = v * (1 - s);
q = v * (1 - f * s);
t = v * (1 - (1 - f) * s);
switch (i % 6) {
case 0: r = v, g = t, b = p; break;
case 1: r = q, g = v, b = p; break;
case 2: r = p, g = v, b = t; break;
case 3: r = p, g = q, b = v; break;
case 4: r = t, g = p, b = v; break;
case 5: r = v, g = p, b = q; break;
}
app.ExternalInterface.setRGB(r, g, b);
var r, g, b, i, f, p, q, t;
i = Math.floor(h * 6);
f = h * 6 - i;
p = v * (1 - s);
q = v * (1 - f * s);
t = v * (1 - (1 - f) * s);
switch (i % 6) {
case 0: r = v, g = t, b = p; break;
case 1: r = q, g = v, b = p; break;
case 2: r = p, g = v, b = t; break;
case 3: r = p, g = q, b = v; break;
case 4: r = t, g = p, b = v; break;
case 5: r = v, g = p, b = q; break;
} }
app.ExternalInterface.setRGB(r, g, b);
}

let bid = 0;
let qid = 0;
app.ExternalInterface.addBit = function(state) {
$("#lochkarte").append("<span class='dot' id='b"+ bid +"'></span>");
$("#b" + bid).css("background-color","rgb("+255*state+", "+255*state+", "+255*state+")")
bid++;
}


app.ExternalInterface.addQubit = function(stateR, stateG, stateB) {
$("#lochkarte").append("<span class='dot' id='q"+ qid +"'></span>");
$("#q" + qid).css("background-color","rgb("+255*stateR+", "+255*stateG+", "+255*stateB+")")
qid++;
}





/*


app.ExternalInterface.setDivWidth = function(d) {
console.log(d);
$( "#lochkarte" ).width = d;
}

function reportWindowSize() {
app.ExternalInterface.rs();
}


window.onresize = reportWindowSize;
*/
} }



function runCode(app) { function runCode(app) {
// add your code here, e.g. console.log('Hello, World!');
//window.onresize = app.ExternalInterface.setDivWidth;
} }


}); });

+ 1
- 1
v3d.js
File diff suppressed because it is too large
View File


+ 53
- 6
visual_logic.js View File

/** /**
* Generated by Verge3D Puzzles v.2.12.5 * Generated by Verge3D Puzzles v.2.12.5
* Sat Jun 08 2019 04:01:26 GMT+0200 (Mitteleuropäische Sommerzeit)
* Sat Jun 08 2019 17:55:33 GMT+0200 (Mitteleuropäische Sommerzeit)
* Do not edit this file - your changes may get overridden when Puzzles are saved. * Do not edit this file - your changes may get overridden when Puzzles are saved.
* Refer to https://www.soft8soft.com/docs/manual/en/introduction/Using-JavaScript.html * Refer to https://www.soft8soft.com/docs/manual/en/introduction/Using-JavaScript.html
* for information on how to add your own JavaScript to Verge3D apps. * for information on how to add your own JavaScript to Verge3D apps.
if ('fadeAnnotations' in initOptions) { if ('fadeAnnotations' in initOptions) {
_pGlob.fadeAnnotations = initOptions.fadeAnnotations; _pGlob.fadeAnnotations = initOptions.fadeAnnotations;
} }
var distZ, r, g, b, distY, dragging, distX, inboundStepper, r_, maxDist, bitState, stepY, hue, g_, sat, b_, value;
var distZ, r, g, b, distY, dragging, distX, inboundStepper, r_, maxDist, bitstate, recordqubitstate, recordbitstate, g_, stepY, hue, b_, sat, value;




// utility function envoked by almost all V3D-specific puzzles // utility function envoked by almost all V3D-specific puzzles
} }




function rs() {
console.log('I\'m here!!!');
getJSFunction('setDivWidth')(String(getDistanceBetweenObjects("div-left", "div-right")));
}
appInstance.ExternalInterface["rs"] = rs;




// getObjectMaterial puzzle // getObjectMaterial puzzle
function getObjectMaterial(objNames) { function getObjectMaterial(objNames) {






// setInterval puzzle
function registerInterval(timeout, callback) {
window.setInterval(callback, 1000 * timeout);
}



function matGetColors(matName) { function matGetColors(matName) {


var mat = v3d.SceneUtils.getMaterialByName(appInstance, matName); var mat = v3d.SceneUtils.getMaterialByName(appInstance, matName);
* Describe this function... * Describe this function...
*/ */
function printStates() { function printStates() {
console.log(['Bit [',bitState,'] Qubit: [',toNumber(r_, 3),'] [',toNumber(g_, 3),'] [',toNumber(b_, 3),']'].join(''));
console.log(['Bit [',bitstate,'] Qubit: [',toNumber(r_, 3),'] [',toNumber(g_, 3),'] [',toNumber(b_, 3),']'].join(''));
} }




distX = getObjTransform("qubit", "position", "x") - getObjTransform("qubit_controller", "position", "x"); distX = getObjTransform("qubit", "position", "x") - getObjTransform("qubit_controller", "position", "x");
maxDist = 2.3; maxDist = 2.3;
stepY = 0.1; stepY = 0.1;
bitState = 0;
bitstate = 0;
r_ = 0; r_ = 0;
g_ = 0; g_ = 0;
b_ = 0; b_ = 0;
registerOnClick("bit", function() { registerOnClick("bit", function() {
if (getObjectMaterial("bit") == "white") { if (getObjectMaterial("bit") == "white") {
assignMat("bit", "black"); assignMat("bit", "black");
bitState = 0;
bitstate = 0;
} else { } else {
assignMat("bit", "white"); assignMat("bit", "white");
bitState = 1;
bitstate = 1;
} }
printStates(); printStates();
}, function() {}); }, function() {});


registerOnClick("recordqubit", function() {
if (getObjectMaterial("recordqubit") == "on") {
assignMat("recordqubit", "black");
recordqubitstate = 0;
} else {
assignMat("recordqubit", "on");
recordqubitstate = 1;
}
}, function() {});

registerOnClick("recordbit", function() {
if (getObjectMaterial("recordbit") == "on") {
assignMat("recordbit", "black");
recordbitstate = 0;
} else {
assignMat("recordbit", "on");
recordbitstate = 1;
}
}, function() {});

registerInterval(1, function() {
if (recordbitstate == 1) {
getJSFunction('addBit')(bitstate);
}
if (recordqubitstate == 1) {
getJSFunction('addQubit')(r_, g_, b_);
}
});

printStates();

printStates();

eventHTMLElem('wheel', ["DOCUMENT"], false, function(event) { eventHTMLElem('wheel', ["DOCUMENT"], false, function(event) {
if (getEventProperty('deltaY', event) < 0) { if (getEventProperty('deltaY', event) < 0) {
applyObjLocalTransform("qubit_controller", "position", 0, stepY, 0); applyObjLocalTransform("qubit_controller", "position", 0, stepY, 0);

+ 314
- 11
visual_logic.xml View File

<xml xmlns="http://www.w3.org/1999/xhtml"> <xml xmlns="http://www.w3.org/1999/xhtml">
<tab name="Init" type="InitTab" active="false" scrollx="201.48344373616317" scrolly="246.25754234419952" scale="0.7462349768006044">
<tab name="Init" type="InitTab" active="false" scrollx="201.4834437361635" scrolly="246.25754234419952" scale="0.7462349768006044">
<variables> <variables>
<variable type="" id=";D?T^;K0%2HHlr__^(^G">cinitx</variable> <variable type="" id=";D?T^;K0%2HHlr__^(^G">cinitx</variable>
<variable type="" id="A70x?DA^cBEdQM}CSBbn">cinity</variable> <variable type="" id="A70x?DA^cBEdQM}CSBbn">cinity</variable>
</next> </next>
</block> </block>
</tab> </tab>
<tab name="Main" type="MainTab" active="true" scrollx="274.3921508789062" scrolly="114.03294754028332" scale="0.4800918543492923">
<tab name="Main" type="MainTab" active="true" scrollx="-113.62881469726551" scrolly="91.53881072998047" scale="0.6841615272489737">
<variables> <variables>
<variable type="" id="JjHAX,fgz)6.fPl8`pav">distZ</variable> <variable type="" id="JjHAX,fgz)6.fPl8`pav">distZ</variable>
<variable type="" id="OZm(1S+UK~jxq[i=;gvy">r</variable> <variable type="" id="OZm(1S+UK~jxq[i=;gvy">r</variable>
<variable type="" id="y`}^nMMYi2(=a@$1Rji}">inboundStepper</variable> <variable type="" id="y`}^nMMYi2(=a@$1Rji}">inboundStepper</variable>
<variable type="" id="R^!o,`,R1kG4gy[5$Umr">r_</variable> <variable type="" id="R^!o,`,R1kG4gy[5$Umr">r_</variable>
<variable type="" id="2Zu0]gb$+5H;Luc?anOJ">maxDist</variable> <variable type="" id="2Zu0]gb$+5H;Luc?anOJ">maxDist</variable>
<variable type="" id="~%UHnBD.$/u9=5~G/:mO">bitState</variable>
<variable type="" id="~%UHnBD.$/u9=5~G/:mO">bitstate</variable>
<variable type="" id=";2#~%D)|8Bx;*UKl_i;X">recordqubitstate</variable>
<variable type="" id="{uv)e`R|4v.*a0z+kFHL">recordbitstate</variable>
<variable type="" id="R@[s;p*6^1oQOeV.nM5w">g_</variable>
<variable type="" id="GKERIN}`~rk0$MWnY3aS">stepY</variable> <variable type="" id="GKERIN}`~rk0$MWnY3aS">stepY</variable>
<variable type="" id="S`ib|8a9}oYR22qe`UUI">hue</variable> <variable type="" id="S`ib|8a9}oYR22qe`UUI">hue</variable>
<variable type="" id="R@[s;p*6^1oQOeV.nM5w">g_</variable>
<variable type="" id="YfcA/U/M4Db,!/u8lx*r">sat</variable>
<variable type="" id="W7{,OY@Y_QTKJ!C2%fx(">b_</variable> <variable type="" id="W7{,OY@Y_QTKJ!C2%fx(">b_</variable>
<variable type="" id="YfcA/U/M4Db,!/u8lx*r">sat</variable>
<variable type="" id="rAlwiT?%pA#CG+i+x-1G">value</variable> <variable type="" id="rAlwiT?%pA#CG+i+x-1G">value</variable>
</variables> </variables>
<block type="variables_set" id="`dwC`Z,Jf0#0u/hYw%ew" x="-210" y="-690"> <block type="variables_set" id="`dwC`Z,Jf0#0u/hYw%ew" x="-210" y="-690">
</value> </value>
<next> <next>
<block type="variables_set" id="(bid[#n`8W,l[gWAL*^B"> <block type="variables_set" id="(bid[#n`8W,l[gWAL*^B">
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitState</field>
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitstate</field>
<value name="VALUE"> <value name="VALUE">
<block type="math_number" id="K6x_`7.zPae3n_QLR]i-"> <block type="math_number" id="K6x_`7.zPae3n_QLR]i-">
<field name="NUM">0</field> <field name="NUM">0</field>
</block> </block>
</next> </next>
</block> </block>
<block type="bindHTMLObject" id="9!xyRzrc}9d.;y%8d[?e" disabled="true" x="770" y="-350">
<field name="PARENT">TRUE</field>
<value name="ID">
<block type="text" id="yVuZW6Vin0:%$-D|ncbl">
<field name="TEXT">lochkarte</field>
</block>
</value>
<value name="OBJECTINPUT">
<block type="objectList" id="vM[NJTc,Sj8{q(1pGMP[">
<field name="FIELDNAME">div-left</field>
</block>
</value>
</block>
<block type="whenDraggedOver" id="x7;j`9Tr6$fIW]tXfLwm" x="-230" y="-290"> <block type="whenDraggedOver" id="x7;j`9Tr6$fIW]tXfLwm" x="-230" y="-290">
<mutation do_start="true" do_drop="true"></mutation> <mutation do_start="true" do_drop="true"></mutation>
<value name="VALUE"> <value name="VALUE">
</block> </block>
</statement> </statement>
</block> </block>
<block type="whenClicked" id="VqdFSAMNy2s9dV;DeF8R" x="890" y="30">
<block type="externalCall" id="W?ejqfSp?_Y4W^E{QY|/" x="1110" y="-170">
<field name="NAME">rs</field>
<statement name="STACK">
<block type="console.log" id="pYKj(442ZYF3FUCZ^J$b">
<value name="VALUE">
<shadow type="text" id="2WYz++OSo6^Qz)|Df]nV">
<field name="TEXT">I'm here!!!</field>
</shadow>
</value>
<next>
<block type="callJSFunction" id="Tc1Ya}N`$+9P=mFTO]0Q">
<mutation name="setDivWidth">
<arg name="x"></arg>
</mutation>
<field name="NAME">setDivWidth</field>
<value name="ARG0">
<block type="text_join" id="i)!sJ~g{`,qXm/:zC|pD">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="distanceBetweenObjects" id="oxIsA5jogB+Bhx0NVHr@">
<value name="OBJECT1">
<block type="objectList" id="#nRZj4c$e?1yzojXxxUp">
<field name="FIELDNAME">div-left</field>
</block>
</value>
<value name="OBJECT2">
<block type="objectList" id="T0DS,Gu;mIM@*-=fzJ8,">
<field name="FIELDNAME">div-right</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
<block type="whenClicked" id="VqdFSAMNy2s9dV;DeF8R" x="890" y="10">
<mutation enableifmissed="false"></mutation> <mutation enableifmissed="false"></mutation>
<value name="VALUE"> <value name="VALUE">
<block type="objectList" id="PH*#jp%0:0P`YjJL[ku%"> <block type="objectList" id="PH*#jp%0:0P`YjJL[ku%">
</value> </value>
<next> <next>
<block type="variables_set" id="MTnVQr]WeOc8_7W9Qs{a"> <block type="variables_set" id="MTnVQr]WeOc8_7W9Qs{a">
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitState</field>
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitstate</field>
<value name="VALUE"> <value name="VALUE">
<block type="math_number" id="rM8Wc)y]{c$^Mf+hN9^9"> <block type="math_number" id="rM8Wc)y]{c$^Mf+hN9^9">
<field name="NUM">0</field> <field name="NUM">0</field>
</value> </value>
<next> <next>
<block type="variables_set" id="Z?-)K)YG50^+:[x}12o$"> <block type="variables_set" id="Z?-)K)YG50^+:[x}12o$">
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitState</field>
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitstate</field>
<value name="VALUE"> <value name="VALUE">
<block type="math_number" id="Txg:@f6`-QuMueETEp:,"> <block type="math_number" id="Txg:@f6`-QuMueETEp:,">
<field name="NUM">1</field> <field name="NUM">1</field>
</block> </block>
</statement> </statement>
</block> </block>
<block type="whenClicked" id="c4FYX]Inh`#-sjA`(f4V" x="1810" y="-10">
<mutation enableifmissed="false"></mutation>
<value name="VALUE">
<block type="objectList" id="bsXie5wj6SJ{1UO[@Ti0">
<field name="FIELDNAME">recordqubit</field>
</block>
</value>
<statement name="DO">
<block type="controls_if" id=",og{XXko#pgOA:c8ixfN">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="T!G@rc4D7Xd|D!gfHi4B">
<field name="OP">EQ</field>
<value name="A">
<block type="getObjectMaterial" id="kc6@F_q;=hJZg8ceH=E^">
<value name="VALUE">
<block type="objectList" id="@k)wrAJw7F1LRgbh15:9">
<field name="FIELDNAME">recordqubit</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="materialList" id="j=$Ys;Wx^cFj3pxYXaY`">
<field name="FIELDNAME">on</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="assignMaterial" id="q8$6Clmfwb$tqqvQ$9+@">
<value name="VALUE2">
<block type="materialList" id="y)@qk)8;U7$SeHu@$jc(">
<field name="FIELDNAME">black</field>
</block>
</value>
<value name="VALUE1">
<block type="objectList" id="FFInsU#^P6NkhiFhQlMZ">
<field name="FIELDNAME">recordqubit</field>
</block>
</value>
<next>
<block type="variables_set" id="1$a^$EEjon7(%{3,+$%5">
<field name="VAR" id=";2#~%D)|8Bx;*UKl_i;X" variabletype="">recordqubitstate</field>
<value name="VALUE">
<block type="math_number" id="QFbQsj=9dk(jliQ.$r#}">
<field name="NUM">0</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<statement name="ELSE">
<block type="assignMaterial" id=")V+R26uKzzAm97Ldnq^8">
<value name="VALUE2">
<block type="materialList" id="$yUv/w@Rnc.@:(w*0NnH">
<field name="FIELDNAME">on</field>
</block>
</value>
<value name="VALUE1">
<block type="objectList" id="+i0Dzb5=|xeL2eD-Gr@n">
<field name="FIELDNAME">recordqubit</field>
</block>
</value>
<next>
<block type="variables_set" id="CF2dEw8EkumZ03}D6{LW">
<field name="VAR" id=";2#~%D)|8Bx;*UKl_i;X" variabletype="">recordqubitstate</field>
<value name="VALUE">
<block type="math_number" id=")W[;2qF`hF?$^R=PGVJR">
<field name="NUM">1</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
<block type="whenClicked" id=",K9aNvARk)E/hrdDD[z4" x="1270" y="230">
<mutation enableifmissed="false"></mutation>
<value name="VALUE">
<block type="objectList" id="^TCV7NVje3z`,Xr{,Rzx">
<field name="FIELDNAME">recordbit</field>
</block>
</value>
<statement name="DO">
<block type="controls_if" id="aRE)~4We]n~W-y6dgVQ=">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="qY+QrD=Qiw)g,+V2@Ov0">
<field name="OP">EQ</field>
<value name="A">
<block type="getObjectMaterial" id="5z2efN$X$|$gbouU)-cY">
<value name="VALUE">
<block type="objectList" id="a#p`e;PVG(#R6_|I:sq-">
<field name="FIELDNAME">recordbit</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="materialList" id="|M`6u5)t7Tg./g;0WtIU">
<field name="FIELDNAME">on</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="assignMaterial" id="Sjsdz!*{UX?$:F;~lXr(">
<value name="VALUE2">
<block type="materialList" id="CvMdE|,_7^iG(=06=fe/">
<field name="FIELDNAME">black</field>
</block>
</value>
<value name="VALUE1">
<block type="objectList" id="qG[PS^1po:p#~clI_deM">
<field name="FIELDNAME">recordbit</field>
</block>
</value>
<next>
<block type="variables_set" id="h7L[s9:5$UnsmAqJjYT%">
<field name="VAR" id="{uv)e`R|4v.*a0z+kFHL" variabletype="">recordbitstate</field>
<value name="VALUE">
<block type="math_number" id="bDjGDv](?Mn/FL];@wnW">
<field name="NUM">0</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<statement name="ELSE">
<block type="assignMaterial" id="T*~FmcuT#4j=qrl4:MrA">
<value name="VALUE2">
<block type="materialList" id="2s%hE%phs1|eavVkt0GS">
<field name="FIELDNAME">on</field>
</block>
</value>
<value name="VALUE1">
<block type="objectList" id="Ki._fvz1-#]3}JnExZpc">
<field name="FIELDNAME">recordbit</field>
</block>
</value>
<next>
<block type="variables_set" id="42}zXIBwbRR4PI:tE:.g">
<field name="VAR" id="{uv)e`R|4v.*a0z+kFHL" variabletype="">recordbitstate</field>
<value name="VALUE">
<block type="math_number" id="Zp-2?zDx%rH]$ATs}fV+">
<field name="NUM">1</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
<block type="setInterval" id="q2(c$](o,X?7XyLKeLrT" x="290" y="390">
<value name="VALUE">
<shadow type="math_number" id="E%*$s`^w?p#ARgT)=2?[">
<field name="NUM">1</field>
</shadow>
</value>
<statement name="DO">
<block type="controls_if" id="[+k^]8d?$;.,J4[ha65Y">
<value name="IF0">
<block type="logic_compare" id="Z09VMcd:|_xe1pGk1iEr">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="g)^y*j$tF;qhjL]=zUbv">
<field name="VAR" id="{uv)e`R|4v.*a0z+kFHL" variabletype="">recordbitstate</field>
</block>
</value>
<value name="B">
<block type="math_number" id="9U^sV_xYH:A1Q-er$f96">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="callJSFunction" id="^Beo2gOEMk(PU186#-iW">
<mutation name="addBit">
<arg name="bitstate"></arg>
</mutation>
<field name="NAME">addBit</field>
<value name="ARG0">
<block type="variables_get" id="y;#4JeBh_uNb++@iG8.l">
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitstate</field>
</block>
</value>
</block>
</statement>
<next>
<block type="controls_if" id=";AG7k[.VfCwG@|+ht/n~">
<value name="IF0">
<block type="logic_compare" id="v*g#m0$E!],_al(r3v[t">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="HK_tYmL~uW^I:cnlDOvP">
<field name="VAR" id=";2#~%D)|8Bx;*UKl_i;X" variabletype="">recordqubitstate</field>
</block>
</value>
<value name="B">
<block type="math_number" id="vrUZ5iHh%kwqQ}8@1qmm">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="callJSFunction" id="_3e_NUTvl|JV~Z6y-!PH">
<mutation name="addQubit">
<arg name="qubitstateR"></arg>
<arg name="qubitstateG"></arg>
<arg name="qubitstateB"></arg>
</mutation>
<field name="NAME">addQubit</field>
<value name="ARG0">
<block type="variables_get" id="x,[;`5{QV6%lyY:#H-7C">
<field name="VAR" id="R^!o,`,R1kG4gy[5$Umr" variabletype="">r_</field>
</block>
</value>
<value name="ARG1">
<block type="variables_get" id="jFM_erly,h$m)[]P@?Qh">
<field name="VAR" id="R@[s;p*6^1oQOeV.nM5w" variabletype="">g_</field>
</block>
</value>
<value name="ARG2">
<block type="variables_get" id="+5(,zR,4feF;3Y2P^~iX">
<field name="VAR" id="W7{,OY@Y_QTKJ!C2%fx(" variabletype="">b_</field>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</statement>
</block>
<block type="procedures_callnoreturn" id="ar)*._jF`jU0FIa0,lnB" x="1910" y="370">
<mutation name="printStates"></mutation>
</block>
<block type="procedures_callnoreturn" id="P3M5!lU.j3{HXbl3:BM7" x="2030" y="430">
<mutation name="printStates"></mutation>
</block>
<block type="externalCall" id="Vpc9v!mZHQ0;V(+:ON#u" x="750" y="510"> <block type="externalCall" id="Vpc9v!mZHQ0;V(+:ON#u" x="750" y="510">
<mutation> <mutation>
<arg name="r" varid="OZm(1S+UK~jxq[i=;gvy"></arg> <arg name="r" varid="OZm(1S+UK~jxq[i=;gvy"></arg>
</value> </value>
<value name="ADD1"> <value name="ADD1">
<block type="variables_get" id="!F$.sJg@KwTKrQ@Q3)~l"> <block type="variables_get" id="!F$.sJg@KwTKrQ@Q3)~l">
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitState</field>
<field name="VAR" id="~%UHnBD.$/u9=5~G/:mO" variabletype="">bitstate</field>
</block> </block>
</value> </value>
<value name="ADD2"> <value name="ADD2">
</statement> </statement>
</block> </block>
</tab> </tab>
<editorsettings width="1018" height="511"></editorsettings>
<editorsettings width="1704" height="684"></editorsettings>
</xml> </xml>

Loading…
Cancel
Save