<div dir="ltr"><div>Dear all,</div><div><br></div><div>out of curiosity I made a small animation ... see code below.</div><div><br></div><div>Note:<br></div><div>The part of the sound section is from a example where I generate different tones within one sound file.</div><div>Hence the intervalls....</div><div><br></div><div> </div><div></div><div>To the topic:</div><div><br></div><div>The animation runs in a while loop.</div><div></div><div>It is possible to stop the loop, by just closing the figure that displays the animation.</div><div></div><div>However this is kind of crashing the program.</div><div><br></div><div>Question: <br></div><div>Is it possible to have a function within the loop to check if a specific key is pressed?</div><div>And if this key is pressed, the control variable of the loop changes and the loop stops? <br></div><div><br></div><div>Thank you,</div><div>Philipp</div><div><br></div><div>Here the code (Scilab 6.0.2)</div><div><br></div><div><pre style="font-family:Monospaced;font-style:normal"><span style="color:rgb(50,185,185)">clc</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(50,185,185)">clear</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(50,185,185)">xdel</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// define the sound</span>
<span style="color:rgb(100,174,100);font-style:italic">//set bit rate</span>
<span style="color:rgb(0,0,0)">bitRate</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">22050</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// At first we create 0.05 seconds of sound parameters.</span>
<span style="color:rgb(0,0,0)">t</span><span style="color:rgb(92,92,92)">=</span><span style="color:rgb(0,0,0)">soundsec</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">0.05</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(0,0,0)">bitRate</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(74,85,219)">[</span><span style="color:rgb(0,0,0)">nr</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(0,0,0)">nc</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(92,92,92)">=</span><span style="color:rgb(50,185,185)">size</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">t</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// decide how many tones we have</span>
<span style="color:rgb(0,0,0)">nTones</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// get the intervall size..must be an integer</span>
<span style="color:rgb(0,0,0)">intervall</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">nc</span> <span style="color:rgb(92,92,92)">/</span> <span style="color:rgb(0,0,0)">nTones</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// Then we generate the sound.</span>
<span style="color:rgb(160,32,240)">for</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(255,170,0)">:</span><span style="color:rgb(0,0,0)">nTones</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">si</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(50,185,185)">sin</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">2</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(218,112,214)">%pi</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(188,143,143)">700</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">t</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">s1</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">si</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(160,32,240)">for</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(255,170,0)">:</span><span style="color:rgb(0,0,0)">nTones</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">si</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">0.5</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(50,185,185)">sin</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">2</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(218,112,214)">%pi</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(188,143,143)">800</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">t</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">s2</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">si</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(160,32,240)">for</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(255,170,0)">:</span><span style="color:rgb(0,0,0)">nTones</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">si</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">0.5</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(50,185,185)">sin</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">2</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(218,112,214)">%pi</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(188,143,143)">400</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">t</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">s3</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">si</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(160,32,240)">for</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(255,170,0)">:</span><span style="color:rgb(0,0,0)">nTones</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">si</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">0.5</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(50,185,185)">sin</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">2</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(218,112,214)">%pi</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(188,143,143)">600</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">t</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">s4</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span> <span style="color:rgb(255,170,0)">:</span> <span style="color:rgb(0,0,0)">i</span><span style="color:rgb(92,92,92)">*</span><span style="color:rgb(0,0,0)">intervall</span><span style="color:rgb(74,85,219)">)</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">si</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(100,174,100);font-style:italic">// create the scene</span>
<span style="color:rgb(0,0,0)">xRange</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">linspace</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">0</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">99</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">100</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">yRange</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">linspace</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">0</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">49</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">100</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">xMin</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(50,185,185)">min</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">xRange</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">xMax</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(50,185,185)">max</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">xRange</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">yMin</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(50,185,185)">min</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">yRange</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">yMax</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(50,185,185)">max</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">yRange</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">rectW</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">xMax</span> <span style="color:rgb(92,92,92)">-</span> <span style="color:rgb(0,0,0)">xMin</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">rectH</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">yMax</span> <span style="color:rgb(92,92,92)">-</span> <span style="color:rgb(0,0,0)">yMin</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">//define the scene rectangle</span>
<span style="color:rgb(0,0,0)">rectScene</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(74,85,219)">[</span><span style="color:rgb(0,0,0)">xMin</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(0,0,0)">yMax</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(0,0,0)">rectW</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(0,0,0)">rectH</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// define a point center = start position</span>
<span style="color:rgb(0,0,0)">xc</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">rectW</span> <span style="color:rgb(92,92,92)">/</span> <span style="color:rgb(188,143,143)">2</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">yc</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">rectH</span> <span style="color:rgb(92,92,92)">/</span> <span style="color:rgb(188,143,143)">2</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// plot the scene</span>
<span style="color:rgb(0,0,0)">f</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(50,185,185)">figure</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">f</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">background</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">8</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// plot the rectangle (scene field)</span>
<span style="color:rgb(50,185,185)">xrect</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">rectScene</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// plot the center</span>
<span style="color:rgb(0,0,0)">plot</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">xc</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(0,0,0)">yc</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">'</span><span style="color:rgb(188,143,143)">o</span><span style="color:rgb(188,143,143)">'</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">a</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">gca</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">e</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">gce</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">a</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">axes_visible</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(74,85,219)">[</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(188,143,143)">off</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(188,143,143)">off</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(188,143,143)">off</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">a</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">data_bounds</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(74,85,219)">[</span><span style="color:rgb(0,0,0)">xMin</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(0,0,0)">yMin</span><span style="color:rgb(0,0,0)">;</span><span style="color:rgb(0,0,0)">xMax</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(0,0,0)">yMax</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">a</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">margins</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(74,85,219)">[</span><span style="color:rgb(188,143,143)">0.01</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(188,143,143)">0.01</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(188,143,143)">0.01</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(188,143,143)">0.01</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">a</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">tight_limits</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(74,85,219)">[</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(188,143,143)">on</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(188,143,143)">on</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(188,143,143)">off</span><span style="color:rgb(188,143,143)">"</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// animate the point as long as playGame = 1</span>
<span style="color:rgb(0,0,0)">playGame</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">xDir</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">0.5</span><span style="color:rgb(0,0,0)">;</span> <span style="color:rgb(100,174,100);font-style:italic">// xDir </span><span style="color:rgb(100,174,100);font-style:italic"><</span><span style="color:rgb(100,174,100);font-style:italic"> 0 = to the left; xDir </span><span style="color:rgb(100,174,100);font-style:italic">></span><span style="color:rgb(100,174,100);font-style:italic"> 0 = to the right</span>
<span style="color:rgb(0,0,0)">yDir</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span> <span style="color:rgb(100,174,100);font-style:italic">// yDir </span><span style="color:rgb(100,174,100);font-style:italic"><</span><span style="color:rgb(100,174,100);font-style:italic"> 0 = falling; yDir </span><span style="color:rgb(100,174,100);font-style:italic">></span><span style="color:rgb(100,174,100);font-style:italic">0 = raising</span>
<span style="color:rgb(0,0,0)">speed</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">while</span> <span style="color:rgb(0,0,0)">playGame</span> <span style="color:rgb(92,92,92)">==</span> <span style="color:rgb(188,143,143)">1</span>
<span style="color:rgb(160,32,240)">if</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">xDir</span> <span style="color:rgb(92,92,92)"><</span> <span style="color:rgb(188,143,143)">0</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">xc</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">xc</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(0,0,0)">speed</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">else</span>
<span style="color:rgb(0,0,0)">xc</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">xc</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(0,0,0)">speed</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(160,32,240)">if</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">yDir</span> <span style="color:rgb(92,92,92)"><</span> <span style="color:rgb(188,143,143)">0</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">yc</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">yc</span> <span style="color:rgb(92,92,92)">-</span> <span style="color:rgb(0,0,0)">speed</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">else</span>
<span style="color:rgb(0,0,0)">yc</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(0,0,0)">yc</span> <span style="color:rgb(92,92,92)">+</span> <span style="color:rgb(0,0,0)">speed</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(0,0,0)">e</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">children</span><span style="color:rgb(92,92,92)">.</span><span style="color:rgb(170,170,170)">data</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(74,85,219)">[</span><span style="color:rgb(0,0,0)">xc</span><span style="color:rgb(0,0,0)">,</span> <span style="color:rgb(0,0,0)">yc</span><span style="color:rgb(74,85,219)">]</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// this is what happens when we reach left border</span>
<span style="color:rgb(160,32,240)">if</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">xc</span><span style="color:rgb(92,92,92)"><=</span><span style="color:rgb(0,0,0)">xMin</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">playsnd</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">s1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">xDir</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(100,174,100);font-style:italic">// this is what happens when we reach right border</span>
<span style="color:rgb(160,32,240)">if</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">xc</span><span style="color:rgb(92,92,92)">>=</span><span style="color:rgb(0,0,0)">xMax</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">playsnd</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">s2</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">xDir</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(100,174,100);font-style:italic">// this is what happens when we reach lower border</span>
<span style="color:rgb(160,32,240)">if</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">yc</span><span style="color:rgb(92,92,92)"><=</span><span style="color:rgb(0,0,0)">yMin</span><span style="color:rgb(92,92,92)">+</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">playsnd</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">s3</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">yDir</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(100,174,100);font-style:italic">// this is what happens when we reach upper border</span>
<span style="color:rgb(160,32,240)">if</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">yc</span><span style="color:rgb(92,92,92)">>=</span><span style="color:rgb(0,0,0)">yMax</span><span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span>
<span style="color:rgb(0,0,0)">playsnd</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(0,0,0)">s4</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(0,0,0)">yDir</span> <span style="color:rgb(92,92,92)">=</span> <span style="color:rgb(92,92,92)">-</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(160,32,240)">end</span>
<span style="color:rgb(50,185,185)">sleep</span><span style="color:rgb(74,85,219)">(</span><span style="color:rgb(188,143,143)">1</span><span style="color:rgb(74,85,219)">)</span><span style="color:rgb(0,0,0)">;</span>
<span style="color:rgb(100,174,100);font-style:italic">// implement a event handle function ?</span>
<span style="color:rgb(100,174,100);font-style:italic">// to check if (and if yes which) key has been pressed</span>
<span style="color:rgb(100,174,100);font-style:italic">// eg.: if return value of event handle function = 0 </span>
<span style="color:rgb(100,174,100);font-style:italic">// --</span><span style="color:rgb(100,174,100);font-style:italic">></span><span style="color:rgb(100,174,100);font-style:italic"> set playGame = 0;</span>
<span style="color:rgb(100,174,100);font-style:italic">// --</span><span style="color:rgb(100,174,100);font-style:italic">></span><span style="color:rgb(100,174,100);font-style:italic"> thus stops the while - loop</span>
<span style="color:rgb(160,32,240)">end</span></pre></div></div>