<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>[MinorHack] This Saturday?</title>
		<link>http://www.allegro.cc/forums/view/590090</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 18 Feb 2007 20:54:45 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Anybody up for a <a href="http://cgamesplay.com/minorhack/">Minorhack</a>?</p><p>I&#39;ve added the code to schedule competitions, automatically, every other week. If the time it schedules isn&#39;t good for you, you can propose one at a different time. Of course, whichever one gets 4 votes first will be scheduled, and if there&#39;s a conflict, the other one deleted.</p><p>[edit]<br />Changed link to homepage <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 16 Feb 2007 00:05:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ummmmmm, I see &quot;February 17th at 7:00 pm - 0 votes&quot; listed like ten times and no other times.  </p><p>Anyway, I&#39;m in.  I want to do some fun programming again.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Onewing)</author>
		<pubDate>Fri, 16 Feb 2007 13:43:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yes, the site seems a little freaked out right now.</p><p>Anyway, I&#39;m in too.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Fri, 16 Feb 2007 15:39:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m out of town on Saturday, so no luck this time <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" />.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jakub Wasilewski)</author>
		<pubDate>Fri, 16 Feb 2007 17:27:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ack! I guess it is proposing a new one every hour <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>I will fix later today <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 16 Feb 2007 17:51:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I have absolutely nothing for Saturday, so I am in.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Fri, 16 Feb 2007 19:29:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>That&#39;s... odd...</p><p>Something bad is happening to my site <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Something must have happened when it promoted the competition to &quot;scheduled&quot;, because it... didn&#39;t.</p><p>[append]<br />Site works, competition scheduled. Yay!</p><p>[append]<br />Just over an hour! Don&#39;t forget!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sat, 17 Feb 2007 23:58:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m in. At the time of writing this post, it is still 17minutes until it starts, I haven&#39;t used Allegro for over a year, haven&#39;t written C++ or C code for over half a year and I&#39;m currently setting up my VS2005.</p><p>I&#39;m armed with a copy of the manual and Allegro 4.2 and am currently writing just basic initialization code (which won&#39;t exceed 10 or 20 lines with loads of whitespace).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 00:44:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Yay for participation. I definitely need to code an email reminder (or SMS reminder) of competitions coming up.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 00:48:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Server Error</p><p>Sorry, but a server error has occurred. The site administrator has been notified.
</p></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Onewing)</author>
		<pubDate>Sun, 18 Feb 2007 01:01:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><s>I can&#39;t join. :&#39;(</s><br />I&#39;m in! <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 01:01:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nooooooooo!  I don&#39;t know what to do with the server error theme!</p><p>edit: goes away if I log in?  Or it was just fixed.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 01:02:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Was just fixed. I&#39;m still writing init code and have no idea yet, how to fit in the bonus rule into my non-existant game. <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 01:09:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Can&#39;t submit my entry. <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" /></p><p>CGames, I think your site is broken. It gives me a server error when I click submit. <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /></p><p>here is my entry: Rings.<br />The objective of the game is to rotate all of the red rings so the dots on them line up. However, when you move a ring, another ring will move as well. Which one moves which is random, at the beginning of each round. Use left and right to rotate, up and down to change rings. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include "math.h"</span></td></tr><tr><td class="number">3</td><td>&#160;</td></tr><tr><td class="number">4</td><td><span class="p">#define ALLEGRO_NO_FIX_CLASS</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="p">#define MODE GFX_AUTODETECT_WINDOWED</span></td></tr><tr><td class="number">7</td><td><span class="p">#define WIDTH 640</span></td></tr><tr><td class="number">8</td><td><span class="p">#define HEIGHT 480</span></td></tr><tr><td class="number">9</td><td><span class="p">#define COLOR_DEPTH 32</span></td></tr><tr><td class="number">10</td><td>&#160;</td></tr><tr><td class="number">11</td><td><span class="p">#define WHITE makecol(255, 255, 255)</span></td></tr><tr><td class="number">12</td><td><span class="p">#define RED makecol(255, 0, 0)</span></td></tr><tr><td class="number">13</td><td><span class="p">#define GOLD makecol(255, 255, 0)</span></td></tr><tr><td class="number">14</td><td><span class="p">#define BLACK makecol(0, 0, 0)</span></td></tr><tr><td class="number">15</td><td>&#160;</td></tr><tr><td class="number">16</td><td><span class="p">#define LOOP_TIME 30</span></td></tr><tr><td class="number">17</td><td>&#160;</td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buffer<span class="k2">;</span></td></tr><tr><td class="number">19</td><td><span class="k1">long</span> start_time<span class="k2">;</span></td></tr><tr><td class="number">20</td><td><span class="k1">long</span> <span class="k1">long</span> timer <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td><span class="k1">bool</span> end_game <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>&#160;</td></tr><tr><td class="number">23</td><td><span class="k1">class</span> ring</td></tr><tr><td class="number">24</td><td><span class="k2">{</span></td></tr><tr><td class="number">25</td><td>public:</td></tr><tr><td class="number">26</td><td><span class="k1">int</span> rot<span class="k2">;</span></td></tr><tr><td class="number">27</td><td><span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">28</td><td>&#160;</td></tr><tr><td class="number">29</td><td><span class="c">//update the timer</span></td></tr><tr><td class="number">30</td><td><span class="k1">void</span> update_time<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>timer<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">31</td><td>&#160;</td></tr><tr><td class="number">32</td><td>&#160;</td></tr><tr><td class="number">33</td><td><span class="c">//main function</span></td></tr><tr><td class="number">34</td><td><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">35</td><td><span class="k2">{</span></td></tr><tr><td class="number">36</td><td>    <span class="c">//setup allegro</span></td></tr><tr><td class="number">37</td><td>    <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">38</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td>    <a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">40</td><td>    <a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>    <a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span>COLOR_DEPTH<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td>    <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>MODE, WIDTH, HEIGHT, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">43</td><td>&#160;</td></tr><tr><td class="number">44</td><td>    <span class="c">//setup the timer</span></td></tr><tr><td class="number">45</td><td>    <a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>update_time, <span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">46</td><td>&#160;</td></tr><tr><td class="number">47</td><td>    <span class="c">//initialize the buffer</span></td></tr><tr><td class="number">48</td><td>    buffer <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span>WIDTH, HEIGHT<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">49</td><td>    </td></tr><tr><td class="number">50</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span>NULL<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">51</td><td>&#160;</td></tr><tr><td class="number">52</td><td>    <span class="k1">bool</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_688.html" target="_blank">select</a> <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">53</td><td>    <span class="k1">int</span> mode <span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">54</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"select difficulty:"</span>, <span class="n">320</span>, <span class="n">180</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">55</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F1 - easy"</span>, <span class="n">320</span>, <span class="n">200</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">56</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F2 - normal"</span>, <span class="n">320</span>, <span class="n">220</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">57</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F3 - hard"</span>, <span class="n">320</span>, <span class="n">240</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">58</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F4 - insane"</span>, <span class="n">320</span>, <span class="n">260</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">59</td><td>    <span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_688.html" target="_blank">select</a><span class="k2">)</span></td></tr><tr><td class="number">60</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">61</td><td>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> KEY_F1<span class="k2">;</span> i <span class="k3">&lt;</span> KEY_F5<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">62</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">63</td><td>            <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k3">&lt;</span>i&gt;<span class="k2">)</span></td></tr><tr><td class="number">64</td><td>            <span class="k2">{</span></td></tr><tr><td class="number">65</td><td>                <a href="http://www.delorie.com/djgpp/doc/libc/libc_688.html" target="_blank">select</a> <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">66</td><td>                mode <span class="k3">=</span> i-KEY_F1<span class="k2">;</span></td></tr><tr><td class="number">67</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">68</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">69</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">70</td><td>    </td></tr><tr><td class="number">71</td><td>    <span class="k1">int</span> num_rings <span class="k3">=</span> <span class="n">3</span><span class="k3">+</span><span class="k2">(</span>mode<span class="k3">*</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">72</td><td>    <span class="k1">int</span> iring <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">73</td><td>    <span class="k1">int</span> last_hit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">74</td><td>    ring band<span class="k2">[</span>num_rings<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">75</td><td>    <span class="k1">int</span> aring<span class="k2">[</span>num_rings<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">76</td><td>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> num_rings<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">77</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">78</td><td>        aring<span class="k3">&lt;</span>i&gt; <span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">79</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">80</td><td>    <span class="k1">int</span> n <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">81</td><td>    <span class="k1">while</span> <span class="k2">(</span>n <span class="k3">&lt;</span> num_rings<span class="k2">)</span></td></tr><tr><td class="number">82</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">83</td><td>        <span class="k1">int</span> aranda <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%num_rings<span class="k2">;</span></td></tr><tr><td class="number">84</td><td>        <span class="k1">while</span> <span class="k2">(</span><span class="k2">(</span>aranda <span class="k3">=</span><span class="k3">=</span> n<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>aring<span class="k2">[</span>aranda<span class="k2">]</span> <span class="k3">&gt;</span> <span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">85</td><td>            aranda <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%num_rings<span class="k2">;</span></td></tr><tr><td class="number">86</td><td>        aring<span class="k2">[</span>aranda<span class="k2">]</span> <span class="k3">=</span> n<span class="k2">;</span></td></tr><tr><td class="number">87</td><td>        n<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">88</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">89</td><td>    </td></tr><tr><td class="number">90</td><td>    </td></tr><tr><td class="number">91</td><td>    <span class="c">//main loop</span></td></tr><tr><td class="number">92</td><td>    <span class="k1">while</span> <span class="k2">(</span><span class="k3">!</span>end_game<span class="k2">)</span></td></tr><tr><td class="number">93</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">94</td><td>        <span class="c">//log the start time</span></td></tr><tr><td class="number">95</td><td>        start_time <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">96</td><td>        </td></tr><tr><td class="number">97</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">98</td><td>                end_game <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">99</td><td>&#160;</td></tr><tr><td class="number">100</td><td>        <span class="c">/*game goes here*/</span></td></tr><tr><td class="number">101</td><td>        <span class="k1">if</span> <span class="k2">(</span>timer <span class="k3">&gt;</span> last_hit<span class="k3">+</span><span class="n">100</span><span class="k2">)</span></td></tr><tr><td class="number">102</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">103</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">104</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">105</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">=</span> <span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">106</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">107</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">=</span> <span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">108</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">109</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">110</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">111</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">112</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">113</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">114</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">115</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">116</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">117</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">118</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">119</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_UP<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">120</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">121</td><td>                iring<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">122</td><td>                iring %<span class="k3">=</span> num_rings<span class="k2">;</span></td></tr><tr><td class="number">123</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">124</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">125</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_DOWN<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">126</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">127</td><td>                iring <span class="k3">+</span><span class="k3">=</span> num_rings-1<span class="k2">;</span></td></tr><tr><td class="number">128</td><td>                iring %<span class="k3">=</span> num_rings<span class="k2">;</span></td></tr><tr><td class="number">129</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">130</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">131</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">132</td><td>        <span class="k1">int</span> num_good <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">133</td><td>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span> i <span class="k3">&lt;</span> num_rings<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">134</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">135</td><td>                <span class="k1">if</span> <span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot <span class="k3">=</span><span class="k3">=</span> band<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.rot<span class="k2">)</span></td></tr><tr><td class="number">136</td><td>                        num_good<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">137</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">138</td><td>        </td></tr><tr><td class="number">139</td><td>        <span class="c">/*drawing goes here*/</span></td></tr><tr><td class="number">140</td><td>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> num_rings<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">141</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">142</td><td>                <a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>buffer, WIDTH<span class="k3">/</span><span class="n">2</span>, HEIGHT<span class="k3">/</span><span class="n">2</span>, <span class="k2">(</span>i<span class="k3">*</span><span class="n">20</span><span class="k2">)</span><span class="k3">+</span><span class="n">20</span>, RED<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">143</td><td>                <span class="k1">if</span> <span class="k2">(</span>i <span class="k3">=</span><span class="k3">=</span> iring<span class="k2">)</span></td></tr><tr><td class="number">144</td><td>                        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buffer, WIDTH<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, HEIGHT<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, <span class="n">3</span>, GOLD<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">145</td><td>                <span class="k1">else</span></td></tr><tr><td class="number">146</td><td>                        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buffer, WIDTH<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, HEIGHT<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, <span class="n">3</span>, RED<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">147</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">148</td><td>        </td></tr><tr><td class="number">149</td><td>        <span class="c">//draw to the screen</span></td></tr><tr><td class="number">150</td><td>        <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer, <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, WIDTH, HEIGHT<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">151</td><td>        </td></tr><tr><td class="number">152</td><td>        <span class="c">//victory!</span></td></tr><tr><td class="number">153</td><td>        <span class="k1">if</span> <span class="k2">(</span>num_good <span class="k3">&gt;</span><span class="k3">=</span> num_rings<span class="k2">)</span></td></tr><tr><td class="number">154</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">155</td><td>                <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"You Win!"</span>, <span class="n">320</span>, <span class="n">50</span>, WHITE, <span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">156</td><td>                <span class="k1">while</span> <span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">157</td><td>                <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">158</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">159</td><td>        </td></tr><tr><td class="number">160</td><td>        <span class="c">//clear the buffer</span></td></tr><tr><td class="number">161</td><td>        <a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>buffer, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">162</td><td>&#160;</td></tr><tr><td class="number">163</td><td>        <span class="c">//wait</span></td></tr><tr><td class="number">164</td><td>        <span class="k1">while</span> <span class="k2">(</span>timer <span class="k3">&lt;</span> start_time <span class="k3">+</span> LOOP_TIME<span class="k2">)</span></td></tr><tr><td class="number">165</td><td>        <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">166</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">167</td><td>    <a href="http://www.allegro.cc/manual/remove_int" target="_blank"><span class="a">remove_int</span></a><span class="k2">(</span>update_time<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">168</td><td>    <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>buffer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">169</td><td>    <span class="k1">return</span><span class="k2">;</span></td></tr><tr><td class="number">170</td><td><span class="k2">}</span></td></tr><tr><td class="number">171</td><td><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span></td></tr></tbody></table></div></div><p>
Found a bug with the ring-linking. Sometimes makes it impossible to win. <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 01:51:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Not planning on submitting my entry.  <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Onewing)</author>
		<pubDate>Sun, 18 Feb 2007 01:56:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I can&#39;t submit either -- my entry&#39;s below.  Didn&#39;t turn out to be so much fun, but oh well.  You&#39;re a little blue ball jumping between planets.  You can&#39;t go off screen or fall in to the sun, or you die.<br />edit: hmm, submit seemed to work now, although adding notes didn&#39;t.
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;cmath&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#include &lt;list&gt;</span></td></tr><tr><td class="number">4</td><td><span class="p">#include &lt;iostream&gt;</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="k1">using</span> <span class="k1">namespace</span> std<span class="k2">;</span></td></tr><tr><td class="number">7</td><td>&#160;</td></tr><tr><td class="number">8</td><td><span class="k1">int</span> lt <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">void</span> timer<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">10</td><td>    <span class="k2">{</span>lt <span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">11</td><td><span class="k2">}</span> <a href="http://www.allegro.cc/manual/END_OF_FUNCTION" target="_blank"><span class="a">END_OF_FUNCTION</span></a><span class="k2">(</span>timer<span class="k2">)</span></td></tr><tr><td class="number">12</td><td>&#160;</td></tr><tr><td class="number">13</td><td><span class="k1">int</span> cx, cy<span class="k2">;</span></td></tr><tr><td class="number">14</td><td>&#160;</td></tr><tr><td class="number">15</td><td><span class="k1">struct</span> circ <span class="k2">{</span></td></tr><tr><td class="number">16</td><td>    <span class="k1">float</span> r, theta<span class="k2">;</span></td></tr><tr><td class="number">17</td><td>    <span class="k1">float</span> rad<span class="k2">;</span></td></tr><tr><td class="number">18</td><td>    <span class="k1">int</span> col<span class="k2">;</span></td></tr><tr><td class="number">19</td><td>    </td></tr><tr><td class="number">20</td><td>    circ<span class="k2">(</span><span class="k1">float</span> r, <span class="k1">float</span> theta, <span class="k1">float</span> rad, <span class="k1">int</span> col<span class="k2">)</span> <span class="k2">:</span> r<span class="k2">(</span>r<span class="k2">)</span>, theta<span class="k2">(</span>theta<span class="k2">)</span>, rad<span class="k2">(</span>rad<span class="k2">)</span>, col<span class="k2">(</span>col<span class="k2">)</span> <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">21</td><td>        </td></tr><tr><td class="number">22</td><td>    <span class="k1">void</span> draw<span class="k2">(</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buf<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">23</td><td>        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buf, cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>theta<span class="k2">)</span><span class="k3">*</span>r, cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>theta<span class="k2">)</span><span class="k3">*</span>r, rad, col<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">25</td><td><span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">26</td><td>&#160;</td></tr><tr><td class="number">27</td><td>&#160;</td></tr><tr><td class="number">28</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">29</td><td>    <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">30</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">31</td><td>    <a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">32</td><td>    <a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">33</td><td>    <a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>lt<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">34</td><td>    <a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>timer, BPS_TO_TIMER<span class="k2">(</span><span class="n">30</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">35</td><td>    </td></tr><tr><td class="number">36</td><td>    <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT_WINDOWED, <span class="n">640</span>, <span class="n">480</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">37</td><td>    </td></tr><tr><td class="number">38</td><td>    <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buf <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td>    </td></tr><tr><td class="number">40</td><td>    cx <span class="k3">=</span> <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a> <span class="k3">/</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>    cy <span class="k3">=</span> <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a> <span class="k3">+</span> <span class="n">100</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td>    </td></tr><tr><td class="number">43</td><td>    circ sun<span class="k2">(</span><span class="n">0</span>, <span class="n">0</span>, <span class="n">300</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">200</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">44</td><td>    list<span class="k3">&lt;</span>circ&gt; planets<span class="k2">;</span></td></tr><tr><td class="number">45</td><td>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> <span class="n">10</span><span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">46</td><td>        <span class="k1">float</span> r <span class="k3">=</span> <span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">21</span> <span class="k3">-</span> <span class="n">10</span><span class="k2">)</span> <span class="k3">/</span> <span class="n">10</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">47</td><td>        planets.push_back<span class="k2">(</span>circ<span class="k2">(</span><span class="n">350</span> <span class="k3">+</span> <span class="n">20</span><span class="k3">*</span>r, .<span class="n">628</span> <span class="k3">*</span> i <span class="k3">+</span> .<span class="n">2</span><span class="k3">*</span>r <span class="k3">-</span> <span class="k2">(</span><span class="n">3</span>.<span class="n">14</span><span class="k3">/</span><span class="n">2</span>.<span class="n">0</span><span class="k2">)</span>, <span class="n">20</span> <span class="k3">+</span> <span class="n">5</span><span class="k3">*</span>r, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span>r<span class="k3">*</span><span class="n">100</span>,<span class="n">255</span>,r<span class="k3">*</span><span class="n">100</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">48</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">49</td><td>    circ me<span class="k2">(</span><span class="n">0</span>, <span class="n">0</span>, <span class="n">10</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">50</td><td>    list<span class="k3">&lt;</span>circ&gt;::iterator mine <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">51</td><td>    me.r <span class="k3">=</span> mine-&gt;rad <span class="k3">+</span> me.rad<span class="k2">;</span></td></tr><tr><td class="number">52</td><td>    <span class="k1">float</span> racc <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">53</td><td>    </td></tr><tr><td class="number">54</td><td>    <span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">55</td><td>        <span class="k1">while</span> <span class="k2">(</span>lt&gt; <span class="n">0</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">56</td><td>&#160;</td></tr><tr><td class="number">57</td><td>            <span class="k1">if</span> <span class="k2">(</span>me.r <span class="k3">&gt;</span> mine-&gt;rad <span class="k3">+</span> me.rad<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">58</td><td>                me.r <span class="k3">-</span><span class="k3">=</span> racc<span class="k2">;</span></td></tr><tr><td class="number">59</td><td>                racc<span class="k3">+</span><span class="k3">=</span>.<span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">60</td><td>            <span class="k2">}</span> <span class="k1">else</span> <span class="k2">{</span></td></tr><tr><td class="number">61</td><td>                racc <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">62</td><td>                me.r <span class="k3">=</span> mine-&gt;rad <span class="k3">+</span> me.rad<span class="k2">;</span></td></tr><tr><td class="number">63</td><td>                me.theta <span class="k3">-</span><span class="k3">=</span> <span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span> <span class="k3">-</span> <span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k2">)</span> <span class="k3">*</span> .<span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">64</td><td>                <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_SPACE<span class="k2">]</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">65</td><td>                    me.r <span class="k3">+</span><span class="k3">=</span> <span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">66</td><td>                    racc <span class="k3">=</span> <span class="k3">-</span><span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">67</td><td>                <span class="k2">}</span></td></tr><tr><td class="number">68</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">69</td><td>            </td></tr><tr><td class="number">70</td><td>            <span class="k1">float</span> distToMine <span class="k3">=</span> me.r<span class="k2">;</span></td></tr><tr><td class="number">71</td><td>            <span class="k1">float</span> mex <span class="k3">=</span> cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r<span class="k2">;</span></td></tr><tr><td class="number">72</td><td>            <span class="k1">float</span> mey <span class="k3">=</span> cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r<span class="k3">+</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r<span class="k2">;</span></td></tr><tr><td class="number">73</td><td>            </td></tr><tr><td class="number">74</td><td>            <span class="k1">if</span> <span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span> <span class="k2">(</span>mex <span class="k3">-</span> cx<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>mex <span class="k3">-</span>cx<span class="k2">)</span> <span class="k3">+</span> <span class="k2">(</span>mey <span class="k3">-</span>cy<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>mey <span class="k3">-</span>cy<span class="k2">)</span> <span class="k2">)</span> <span class="k3">&lt;</span> sun.rad <span class="k3">+</span> me.rad<span class="k2">)</span></td></tr><tr><td class="number">75</td><td>            <span class="k2">{</span></td></tr><tr><td class="number">76</td><td>                <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">77</td><td>            <span class="k2">}</span> <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mex <span class="k3">&gt;</span> <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a> <span class="k3">|</span><span class="k3">|</span> mex <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">78</td><td>                <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">79</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">80</td><td>            </td></tr><tr><td class="number">81</td><td>                <span class="k1">for</span> <span class="k2">(</span>list<span class="k3">&lt;</span>circ&gt;::iterator i <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i <span class="k3">!</span><span class="k3">=</span> planets.end<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">82</td><td>                    <span class="k1">if</span> <span class="k2">(</span>i <span class="k3">!</span><span class="k3">=</span> mine<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">83</td><td>                        <span class="k1">float</span> youx <span class="k3">=</span> cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>i-&gt;theta<span class="k2">)</span><span class="k3">*</span>i-&gt;r<span class="k2">;</span></td></tr><tr><td class="number">84</td><td>                        <span class="k1">float</span> youy <span class="k3">=</span> cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>i-&gt;theta<span class="k2">)</span><span class="k3">*</span>i-&gt;r<span class="k2">;</span></td></tr><tr><td class="number">85</td><td>                        <span class="k1">float</span> dist <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span> <span class="k2">(</span>youx <span class="k3">-</span> mex<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>youx <span class="k3">-</span> mex<span class="k2">)</span> <span class="k3">+</span> <span class="k2">(</span>youy <span class="k3">-</span> mey<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>youy <span class="k3">-</span> mey<span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">86</td><td>                        <span class="k1">if</span> <span class="k2">(</span>dist <span class="k3">&lt;</span> distToMine<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">87</td><td>                            distToMine <span class="k3">=</span> dist<span class="k2">;</span></td></tr><tr><td class="number">88</td><td>                            mine <span class="k3">=</span> i<span class="k2">;</span></td></tr><tr><td class="number">89</td><td>                            me.r <span class="k3">=</span> dist<span class="k2">;</span></td></tr><tr><td class="number">90</td><td>                            me.theta <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>mey <span class="k3">-</span> youy, mex <span class="k3">-</span> youx<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">91</td><td>                            racc <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">92</td><td>                        <span class="k2">}</span></td></tr><tr><td class="number">93</td><td>                    <span class="k2">}</span></td></tr><tr><td class="number">94</td><td>                <span class="k2">}</span></td></tr><tr><td class="number">95</td><td>                </td></tr><tr><td class="number">96</td><td>                <span class="k1">for</span> <span class="k2">(</span>list<span class="k3">&lt;</span>circ&gt;::iterator i <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i <span class="k3">!</span><span class="k3">=</span> planets.end<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">97</td><td>                    i-&gt;theta <span class="k3">+</span><span class="k3">=</span> .<span class="n">005</span><span class="k2">;</span></td></tr><tr><td class="number">98</td><td>                <span class="k2">}</span></td></tr><tr><td class="number">99</td><td>                </td></tr><tr><td class="number">100</td><td>                </td></tr><tr><td class="number">101</td><td>            lt--<span class="k2">;</span></td></tr><tr><td class="number">102</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">103</td><td>    </td></tr><tr><td class="number">104</td><td>        <span class="k1">for</span> <span class="k2">(</span>list<span class="k3">&lt;</span>circ&gt;::iterator i <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i <span class="k3">!</span><span class="k3">=</span> planets.end<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">105</td><td>            i-&gt;draw<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">106</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">107</td><td>        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buf, cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r, </td></tr><tr><td class="number">108</td><td>                    cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r<span class="k3">+</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r, me.rad, me.col<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">109</td><td>        sun.draw<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">110</td><td>        <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buf, <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">111</td><td>        clear<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">112</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">113</td><td>    </td></tr><tr><td class="number">114</td><td>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">115</td><td><span class="k2">}</span> <a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 02:01:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sorry for the bugs. I&#39;ve recently switched to a new database backend and a much more pedantic error reporting system. So you can imagine the inconsistencies that come up. Anyways, I&#39;ve got Kikaru&#39;s entry manually added, and Zaphos got his in, as well as Dennis.</p><p>Looks like the &quot;entry notes&quot; page won&#39;t work either, right now, and that seems to be cause by code that isn&#39;t mine, so it will take longer to fix.</p><p>In the mean time, let the judging begin!</p><p>I&#39;m quite happy with my entry this time around. I had a bunch of spare time, so I added an instructions screen <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 02:08:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I submitted my entry though you can&#39;t do much besides rotating the players paddle and the collision detection and game logic of the enemy isn&#39;t working.<br />So it&#39;s basically a useless piece of crap code. <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 02:10:41 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Fixed Kikaru&#39;s entry... I copied too much from my error log <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>[append]<br />I had to change line 49 in Zaphos&#39; entry to be this:<br /><span class="source-code">planets.push_back<span class="k2">(</span>circ<span class="k2">(</span><span class="n">350</span> <span class="k3">+</span> <span class="n">20</span><span class="k3">*</span>r, .<span class="n">628</span> <span class="k3">*</span> i <span class="k3">+</span> .<span class="n">2</span><span class="k3">*</span>r <span class="k3">-</span> <span class="k2">(</span><span class="n">3</span>.<span class="n">14</span><span class="k3">/</span><span class="n">2</span>.<span class="n">0</span><span class="k2">)</span>, <span class="n">20</span> <span class="k3">+</span> <span class="n">5</span><span class="k3">*</span>r, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span><span class="n">10</span><span class="k3">+</span>r<span class="k2">)</span><span class="k3">*</span><span class="n">100</span><span class="k2">)</span>%<span class="n">255</span>,<span class="n">255</span>,<span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span><span class="n">10</span><span class="k3">+</span>r<span class="k2">)</span><span class="k3">*</span><span class="n">100</span><span class="k2">)</span>%<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></span></p><p>In my game, change line 207 to:<br /><span class="source-code"><a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>timer_tick, BPS_TO_TIMER<span class="k2">(</span><span class="n">30</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></span></p><p>Dennis: Cute game. I think it would have been cool if the ball bounced off the screen like normal pong but you hit it from the center.</p><p>Kikaru: Cool concept, but too often it&#39;s impossible to win <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" /></p><p>Zaphos: Slick. I like the way everything moves. With a little more time, you could probably make something really interesting out of this <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> The graphics put this one ahead of Kikaru&#39;s for me, because both games have innovative ideas.</p><p>My ranking: Zaphos, Kikaru, Dennis.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 02:12:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, I fixed the bugs and added some flare. For people who like it better.</p><p>CGames: the only time you can&#39;t win is when 2 rings connect with each other. Fix that by adding <span class="source-code"><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>aring<span class="k2">[</span>n<span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> aranda<span class="k2">)</span></span> to the <tt>while</tt> loop that sets the ring links, I think it&#39;s line 84. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>My <b><i>updated</i></b> entry:
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include "math.h"</span></td></tr><tr><td class="number">3</td><td>&#160;</td></tr><tr><td class="number">4</td><td><span class="p">#define ALLEGRO_NO_FIX_CLASS</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="p">#define MODE GFX_AUTODETECT_WINDOWED</span></td></tr><tr><td class="number">7</td><td><span class="p">#define WIDTH 640</span></td></tr><tr><td class="number">8</td><td><span class="p">#define HEIGHT 480</span></td></tr><tr><td class="number">9</td><td><span class="p">#define COLOR_DEPTH 32</span></td></tr><tr><td class="number">10</td><td>&#160;</td></tr><tr><td class="number">11</td><td><span class="p">#define WHITE makecol(255, 255, 255)</span></td></tr><tr><td class="number">12</td><td><span class="p">#define RED makecol(255, 0, 0)</span></td></tr><tr><td class="number">13</td><td><span class="p">#define GOLD makecol(255, 255, 0)</span></td></tr><tr><td class="number">14</td><td><span class="p">#define BLACK makecol(0, 0, 0)</span></td></tr><tr><td class="number">15</td><td>&#160;</td></tr><tr><td class="number">16</td><td><span class="p">#define LOOP_TIME 30</span></td></tr><tr><td class="number">17</td><td>&#160;</td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buffer<span class="k2">;</span></td></tr><tr><td class="number">19</td><td><span class="k1">long</span> start_time<span class="k2">;</span></td></tr><tr><td class="number">20</td><td><span class="k1">long</span> <span class="k1">long</span> timer <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td><span class="k1">bool</span> end_game <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>&#160;</td></tr><tr><td class="number">23</td><td><span class="k1">class</span> ring</td></tr><tr><td class="number">24</td><td><span class="k2">{</span></td></tr><tr><td class="number">25</td><td>public:</td></tr><tr><td class="number">26</td><td><span class="k1">int</span> rot<span class="k2">;</span></td></tr><tr><td class="number">27</td><td><span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">28</td><td>&#160;</td></tr><tr><td class="number">29</td><td><span class="c">//update the timer</span></td></tr><tr><td class="number">30</td><td><span class="k1">void</span> update_time<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>timer<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">31</td><td>&#160;</td></tr><tr><td class="number">32</td><td>&#160;</td></tr><tr><td class="number">33</td><td><span class="c">//main function</span></td></tr><tr><td class="number">34</td><td><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">35</td><td><span class="k2">{</span></td></tr><tr><td class="number">36</td><td>    <span class="c">//setup allegro</span></td></tr><tr><td class="number">37</td><td>    <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">38</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td>    <a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">40</td><td>    <a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>    <a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span>COLOR_DEPTH<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td>    <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>MODE, WIDTH, HEIGHT, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">43</td><td>&#160;</td></tr><tr><td class="number">44</td><td>    <span class="c">//setup the timer</span></td></tr><tr><td class="number">45</td><td>    <a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>update_time, <span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">46</td><td>&#160;</td></tr><tr><td class="number">47</td><td>    <span class="c">//initialize the buffer</span></td></tr><tr><td class="number">48</td><td>    buffer <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span>WIDTH, HEIGHT<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">49</td><td>    </td></tr><tr><td class="number">50</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span>NULL<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">51</td><td>&#160;</td></tr><tr><td class="number">52</td><td>    <span class="k1">bool</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_688.html" target="_blank">select</a> <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">53</td><td>    <span class="k1">int</span> mode <span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">54</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"select difficulty:"</span>, <span class="n">320</span>, <span class="n">180</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">55</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F1 - easy"</span>, <span class="n">320</span>, <span class="n">200</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">56</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F2 - normal"</span>, <span class="n">320</span>, <span class="n">220</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">57</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F3 - hard"</span>, <span class="n">320</span>, <span class="n">240</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">58</td><td>    <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"F4 - insane"</span>, <span class="n">320</span>, <span class="n">260</span>, WHITE, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">59</td><td>    <span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_688.html" target="_blank">select</a><span class="k2">)</span></td></tr><tr><td class="number">60</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">61</td><td>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> KEY_F1<span class="k2">;</span> i <span class="k3">&lt;</span> KEY_F5<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">62</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">63</td><td>            <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k3">&lt;</span>i&gt;<span class="k2">)</span></td></tr><tr><td class="number">64</td><td>            <span class="k2">{</span></td></tr><tr><td class="number">65</td><td>                <a href="http://www.delorie.com/djgpp/doc/libc/libc_688.html" target="_blank">select</a> <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">66</td><td>                mode <span class="k3">=</span> i-KEY_F1<span class="k2">;</span></td></tr><tr><td class="number">67</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">68</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">69</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">70</td><td>    </td></tr><tr><td class="number">71</td><td>    <span class="k1">int</span> num_rings <span class="k3">=</span> <span class="n">3</span><span class="k3">+</span><span class="k2">(</span>mode<span class="k3">*</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">72</td><td>    <span class="k1">int</span> iring <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">73</td><td>    <span class="k1">int</span> last_hit <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">74</td><td>    ring band<span class="k2">[</span>num_rings<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">75</td><td>    <span class="k1">int</span> aring<span class="k2">[</span>num_rings<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">76</td><td>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> num_rings<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">77</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">78</td><td>        aring<span class="k3">&lt;</span>i&gt; <span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">79</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">80</td><td>    <span class="k1">int</span> n <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">81</td><td>    <span class="k1">while</span> <span class="k2">(</span>n <span class="k3">&lt;</span> num_rings<span class="k2">)</span></td></tr><tr><td class="number">82</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">83</td><td>        <span class="k1">int</span> aranda <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%num_rings<span class="k2">;</span></td></tr><tr><td class="number">84</td><td>        <span class="k1">while</span> <span class="k2">(</span><span class="k2">(</span>aranda <span class="k3">=</span><span class="k3">=</span> n<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>aring<span class="k2">[</span>aranda<span class="k2">]</span> <span class="k3">&gt;</span> <span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>aring<span class="k2">[</span>n<span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> aranda<span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">85</td><td>            aranda <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%num_rings<span class="k2">;</span></td></tr><tr><td class="number">86</td><td>        aring<span class="k2">[</span>aranda<span class="k2">]</span> <span class="k3">=</span> n<span class="k2">;</span></td></tr><tr><td class="number">87</td><td>        n<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">88</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">89</td><td>    </td></tr><tr><td class="number">90</td><td>    </td></tr><tr><td class="number">91</td><td>    <span class="c">//main loop</span></td></tr><tr><td class="number">92</td><td>    <span class="k1">while</span> <span class="k2">(</span><span class="k3">!</span>end_game<span class="k2">)</span></td></tr><tr><td class="number">93</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">94</td><td>        <span class="c">//log the start time</span></td></tr><tr><td class="number">95</td><td>        start_time <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">96</td><td>        </td></tr><tr><td class="number">97</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">98</td><td>                end_game <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">99</td><td>&#160;</td></tr><tr><td class="number">100</td><td>        <span class="c">/*game goes here*/</span></td></tr><tr><td class="number">101</td><td>        <span class="k1">if</span> <span class="k2">(</span>timer <span class="k3">&gt;</span> last_hit<span class="k3">+</span><span class="n">100</span><span class="k2">)</span></td></tr><tr><td class="number">102</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">103</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">104</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">105</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">=</span> <span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">106</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">107</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">=</span> <span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">108</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">109</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">110</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">111</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">112</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">113</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">114</td><td>                band<span class="k2">[</span>iring<span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">115</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot <span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">116</td><td>                band<span class="k2">[</span>aring<span class="k2">[</span>iring<span class="k2">]</span><span class="k2">]</span>.rot %<span class="k3">=</span> <span class="n">6</span><span class="k2">;</span></td></tr><tr><td class="number">117</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">118</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">119</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_UP<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">120</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">121</td><td>                iring<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">122</td><td>                iring %<span class="k3">=</span> num_rings<span class="k2">;</span></td></tr><tr><td class="number">123</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">124</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">125</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_DOWN<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">126</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">127</td><td>                iring <span class="k3">+</span><span class="k3">=</span> num_rings-1<span class="k2">;</span></td></tr><tr><td class="number">128</td><td>                iring %<span class="k3">=</span> num_rings<span class="k2">;</span></td></tr><tr><td class="number">129</td><td>                last_hit <span class="k3">=</span> timer<span class="k2">;</span></td></tr><tr><td class="number">130</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">131</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">132</td><td>        <span class="k1">int</span> num_good <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">133</td><td>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span> i <span class="k3">&lt;</span> num_rings<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">134</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">135</td><td>                <span class="k1">if</span> <span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot <span class="k3">=</span><span class="k3">=</span> band<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.rot<span class="k2">)</span></td></tr><tr><td class="number">136</td><td>                        num_good<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">137</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">138</td><td>        </td></tr><tr><td class="number">139</td><td>        <span class="c">/*drawing goes here*/</span></td></tr><tr><td class="number">140</td><td>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> num_rings<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">141</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">142</td><td>                <a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>buffer, WIDTH<span class="k3">/</span><span class="n">2</span>, HEIGHT<span class="k3">/</span><span class="n">2</span>, <span class="k2">(</span>i<span class="k3">*</span><span class="n">20</span><span class="k2">)</span><span class="k3">+</span><span class="n">20</span>, RED<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">143</td><td>                <span class="k1">if</span> <span class="k2">(</span>num_good <span class="k3">&gt;</span><span class="k3">=</span> num_rings<span class="k2">)</span></td></tr><tr><td class="number">144</td><td>                        iring <span class="k3">=</span> i<span class="k2">;</span></td></tr><tr><td class="number">145</td><td>                <span class="k1">if</span> <span class="k2">(</span>i <span class="k3">=</span><span class="k3">=</span> iring<span class="k2">)</span></td></tr><tr><td class="number">146</td><td>                        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buffer, WIDTH<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, HEIGHT<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, <span class="n">3</span>, GOLD<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">147</td><td>                <span class="k1">else</span></td></tr><tr><td class="number">148</td><td>                        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buffer, WIDTH<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, HEIGHT<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>band<span class="k3">&lt;</span>i&gt;.rot<span class="k2">)</span><span class="k2">)</span>, <span class="n">3</span>, RED<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">149</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">150</td><td>        </td></tr><tr><td class="number">151</td><td>        <span class="c">//draw to the screen</span></td></tr><tr><td class="number">152</td><td>        <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer, <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, WIDTH, HEIGHT<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">153</td><td>        </td></tr><tr><td class="number">154</td><td>        <span class="c">//victory!</span></td></tr><tr><td class="number">155</td><td>        <span class="k1">if</span> <span class="k2">(</span>num_good <span class="k3">&gt;</span><span class="k3">=</span> num_rings<span class="k2">)</span></td></tr><tr><td class="number">156</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">157</td><td>                <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, WIDTH<span class="k3">/</span><span class="n">2</span>, HEIGHT<span class="k3">/</span><span class="n">2</span>, <span class="n">10</span>, GOLD<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">158</td><td>                <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, WIDTH<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span>WIDTH<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>band<span class="k2">[</span>num_rings-1<span class="k2">]</span>.rot<span class="k2">)</span><span class="k2">)</span>, HEIGHT<span class="k3">/</span><span class="n">2</span><span class="k3">+</span><span class="k1">int</span><span class="k2">(</span>WIDTH<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>band<span class="k2">[</span>num_rings-1<span class="k2">]</span>.rot<span class="k2">)</span><span class="k2">)</span>, WIDTH<span class="k3">/</span><span class="n">2</span>, HEIGHT<span class="k3">/</span><span class="n">2</span>, GOLD<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">159</td><td>                <a href="http://www.allegro.cc/manual/textout_centre_ex" target="_blank"><span class="a">textout_centre_ex</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="s">"You Win!"</span>, <span class="n">320</span>, <span class="n">50</span>, WHITE, <span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">160</td><td>                <span class="k1">while</span> <span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">161</td><td>                <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">162</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">163</td><td>        </td></tr><tr><td class="number">164</td><td>        <span class="c">//clear the buffer</span></td></tr><tr><td class="number">165</td><td>        <a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>buffer, BLACK<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">166</td><td>&#160;</td></tr><tr><td class="number">167</td><td>        <span class="c">//wait</span></td></tr><tr><td class="number">168</td><td>        <span class="k1">while</span> <span class="k2">(</span>timer <span class="k3">&lt;</span> start_time <span class="k3">+</span> LOOP_TIME<span class="k2">)</span></td></tr><tr><td class="number">169</td><td>        <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">170</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">171</td><td>    <a href="http://www.allegro.cc/manual/remove_int" target="_blank"><span class="a">remove_int</span></a><span class="k2">(</span>update_time<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">172</td><td>    <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>buffer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">173</td><td>    <span class="k1">return</span><span class="k2">;</span></td></tr><tr><td class="number">174</td><td><span class="k2">}</span></td></tr><tr><td class="number">175</td><td><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span></td></tr></tbody></table></div></div><p>

Time to try out the others now! <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" /></p><p>[EDIT]<br />Played the others, here is my vote:<br />CGamesPlay, Zaphos, Dennis Busch
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 02:34:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here are my rankings (ordered from most favourite to least favourite).</p><p>Zaphos/CGamesPlay/Kikaru/Dennis</p><p>Zaphos: 5 of 5 stars<br />Nice animations and cool concept. It&#39;s challenging and has great replayability value.</p><p>CGamesPlay: 4 of 5 stars<br />-1 one because of two compiler errors, which I had to fix, one was a missing M_PI and the other was no return value in main. <br />Well, nice graphics and most important of all: it&#39;s playable.</p><p>Kikaru: 3 of 5 stars<br />Too bad I couldn&#39;t play the game, it always immediately says &quot;You win!&quot; for me. Also I had to fix some ambiguous calls to cos and sin which my compiler didn&#39;t like, so maybe I messed up there. But I like the idea of the game.</p><p>Dennis: 0 of 5 stars<br />Better luck next time. Your game isn&#39;t even playable. Maybe you should spend some more time practicing speed coding. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 02:38:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Okay, adding revised entries and entry notes will work on the site now.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 02:39:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Dennis: 0 of 5 stars<br />Better luck next time. Your game isn&#39;t even playable. Maybe you should spend some more time practicing speed coding.
</p></div></div><p>

Onewing:  -1 of 5 Stars (Take one star off next minor hack)<br />I had basically the same thing as Dennis, only no ball (just a circular paddle which was going to be the cross hair).  The game was going to be a bad ripoff of Tempest.  Unfortunately, my trig-fu is sloppy and I should&#39;ve been using atan2 instead of atan.  </p><p>Sigh...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Onewing)</author>
		<pubDate>Sun, 18 Feb 2007 02:42:05 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What were the &quot;ambiguous sin/cos calls?&quot; <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" /></p><p>The problem with the instant &quot;you win!&quot; is that I forgot to randomize the rotations of the rings. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 02:50:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Kikaru: My compiler said that there were calls to sin and cos which were overloaded and that more than one overloaded version of them would fit, so I casted everything inside these calls to doubles so that the compiler knew to take the cos/sin version that take a double.<br />Ah, so the instant &quot;you win!&quot; wasn&#39;t caused by changing that.</p><p>Anyway, I&#39;ll probably bugfix my entry tomorrow and add some more game logic to it, but now I have to attend to silly-joy anniversary festivities.:)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 02:57:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Okay, here&#39;s my updated version -- the planets bounce, and you have a very erratic flight path.  The premise is that you are some sort of space fly, I guess.
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;cmath&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#include &lt;list&gt;</span></td></tr><tr><td class="number">4</td><td><span class="p">#include &lt;iostream&gt;</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="k1">using</span> <span class="k1">namespace</span> std<span class="k2">;</span></td></tr><tr><td class="number">7</td><td>&#160;</td></tr><tr><td class="number">8</td><td><span class="k1">int</span> lt <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">void</span> timer<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">10</td><td>    <span class="k2">{</span>lt <span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">11</td><td><span class="k2">}</span> <a href="http://www.allegro.cc/manual/END_OF_FUNCTION" target="_blank"><span class="a">END_OF_FUNCTION</span></a><span class="k2">(</span>timer<span class="k2">)</span></td></tr><tr><td class="number">12</td><td>&#160;</td></tr><tr><td class="number">13</td><td><span class="k1">int</span> cx, cy<span class="k2">;</span></td></tr><tr><td class="number">14</td><td>&#160;</td></tr><tr><td class="number">15</td><td><span class="k1">struct</span> circ <span class="k2">{</span></td></tr><tr><td class="number">16</td><td>    <span class="k1">float</span> r, theta<span class="k2">;</span></td></tr><tr><td class="number">17</td><td>    <span class="k1">float</span> rate<span class="k2">;</span></td></tr><tr><td class="number">18</td><td>    <span class="k1">float</span> rad<span class="k2">;</span></td></tr><tr><td class="number">19</td><td>    <span class="k1">int</span> col<span class="k2">;</span></td></tr><tr><td class="number">20</td><td>    <span class="k1">float</span> rvel<span class="k2">;</span></td></tr><tr><td class="number">21</td><td>    </td></tr><tr><td class="number">22</td><td>    circ<span class="k2">(</span><span class="k1">float</span> r, <span class="k1">float</span> theta, <span class="k1">float</span> rate, <span class="k1">float</span> rad, <span class="k1">int</span> col<span class="k2">)</span> <span class="k2">:</span> r<span class="k2">(</span>r<span class="k2">)</span>, theta<span class="k2">(</span>theta<span class="k2">)</span>, rate<span class="k2">(</span>rate<span class="k2">)</span>, rad<span class="k2">(</span>rad<span class="k2">)</span>, col<span class="k2">(</span>col<span class="k2">)</span>, rvel<span class="k2">(</span><span class="n">0</span><span class="k2">)</span> <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">23</td><td>        </td></tr><tr><td class="number">24</td><td>    <span class="k1">void</span> draw<span class="k2">(</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buf<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">25</td><td>        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buf, cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>theta<span class="k2">)</span><span class="k3">*</span>r, cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>theta<span class="k2">)</span><span class="k3">*</span>r, rad, col<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">26</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">27</td><td><span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">28</td><td>&#160;</td></tr><tr><td class="number">29</td><td>&#160;</td></tr><tr><td class="number">30</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">31</td><td>    <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">32</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">33</td><td>    <a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">34</td><td>    <a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">35</td><td>    <a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>lt<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">36</td><td>    <a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>timer, BPS_TO_TIMER<span class="k2">(</span><span class="n">30</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">37</td><td>    </td></tr><tr><td class="number">38</td><td>    <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT_WINDOWED, <span class="n">640</span>, <span class="n">480</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td>    </td></tr><tr><td class="number">40</td><td>    <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buf <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>    </td></tr><tr><td class="number">42</td><td>    cx <span class="k3">=</span> <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a> <span class="k3">/</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">43</td><td>    cy <span class="k3">=</span> <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a> <span class="k3">+</span> <span class="n">100</span><span class="k2">;</span></td></tr><tr><td class="number">44</td><td>    </td></tr><tr><td class="number">45</td><td>    circ sun<span class="k2">(</span><span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">300</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">200</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">46</td><td>    list<span class="k3">&lt;</span>circ&gt; planets<span class="k2">;</span></td></tr><tr><td class="number">47</td><td>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> <span class="n">20</span><span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">48</td><td>        <span class="k1">float</span> r <span class="k3">=</span> <span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">21</span> <span class="k3">-</span> <span class="n">10</span><span class="k2">)</span> <span class="k3">/</span> <span class="n">10</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">49</td><td>        planets.push_back<span class="k2">(</span>circ<span class="k2">(</span><span class="n">350</span> <span class="k3">+</span> <span class="n">20</span><span class="k3">*</span>r, .<span class="n">314</span> <span class="k3">*</span> i <span class="k3">+</span> .<span class="n">15</span><span class="k3">*</span>r <span class="k3">-</span> <span class="k2">(</span><span class="n">3</span>.<span class="n">5</span><span class="k3">/</span><span class="n">2</span>.<span class="n">0</span><span class="k2">)</span>, .<span class="n">01</span> <span class="k3">+</span> .<span class="n">003</span><span class="k3">*</span>r, <span class="n">20</span> <span class="k3">+</span> <span class="n">5</span><span class="k3">*</span>r, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">51</span><span class="k3">+</span>r<span class="k3">*</span><span class="n">50</span>,<span class="n">255</span>,<span class="n">51</span><span class="k3">+</span>r<span class="k3">*</span><span class="n">50</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">50</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">51</td><td>    circ me<span class="k2">(</span><span class="n">0</span>, <span class="k3">-</span><span class="n">3</span>.<span class="n">14</span><span class="k3">/</span><span class="n">2</span>.<span class="n">0</span>, <span class="n">3</span>.<span class="n">14</span><span class="k3">/</span><span class="n">2</span>.<span class="n">0</span>, <span class="n">10</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">52</td><td>    list<span class="k3">&lt;</span>circ&gt;::iterator mine <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">53</td><td>    me.r <span class="k3">=</span> mine-&gt;rad <span class="k3">+</span> me.rad<span class="k2">;</span></td></tr><tr><td class="number">54</td><td>    <span class="k1">float</span> racc <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">55</td><td>    <span class="k1">int</span> beats <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">56</td><td>    </td></tr><tr><td class="number">57</td><td>    <span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">58</td><td>        <span class="k1">while</span> <span class="k2">(</span>lt&gt; <span class="n">0</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">59</td><td>            me.theta <span class="k3">-</span><span class="k3">=</span> <span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span> <span class="k3">-</span> <span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k2">)</span> <span class="k3">*</span> .<span class="n">06</span><span class="k2">;</span></td></tr><tr><td class="number">60</td><td>&#160;</td></tr><tr><td class="number">61</td><td>            <span class="k1">if</span> <span class="k2">(</span>me.r <span class="k3">&gt;</span> mine-&gt;rad <span class="k3">+</span> me.rad<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">62</td><td>                me.r <span class="k3">-</span><span class="k3">=</span> racc<span class="k2">;</span></td></tr><tr><td class="number">63</td><td>                racc<span class="k3">+</span><span class="k3">=</span>.<span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">64</td><td>                beats <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">65</td><td>            <span class="k2">}</span> <span class="k1">else</span> <span class="k2">{</span></td></tr><tr><td class="number">66</td><td>                racc <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">67</td><td>                me.r <span class="k3">=</span> mine-&gt;rad <span class="k3">+</span> me.rad<span class="k2">;</span></td></tr><tr><td class="number">68</td><td>                me.theta <span class="k3">-</span><span class="k3">=</span> <span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span> <span class="k3">-</span> <span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k2">)</span> <span class="k3">*</span> .<span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">69</td><td>                beats<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">70</td><td>                <span class="k1">if</span> <span class="k2">(</span><span class="c">/*beats &gt; 5 || */</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_SPACE<span class="k2">]</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">71</td><td>                    me.r <span class="k3">+</span><span class="k3">=</span> <span class="n">10</span><span class="k2">;</span></td></tr><tr><td class="number">72</td><td>                    racc <span class="k3">=</span> <span class="k3">-</span><span class="n">10</span><span class="k2">;</span></td></tr><tr><td class="number">73</td><td>                <span class="k2">}</span></td></tr><tr><td class="number">74</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">75</td><td>            </td></tr><tr><td class="number">76</td><td>            <span class="k1">float</span> distToMine <span class="k3">=</span> me.r<span class="k2">;</span></td></tr><tr><td class="number">77</td><td>            <span class="k1">float</span> mex <span class="k3">=</span> cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r<span class="k2">;</span></td></tr><tr><td class="number">78</td><td>            <span class="k1">float</span> mey <span class="k3">=</span> cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r<span class="k3">+</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r<span class="k2">;</span></td></tr><tr><td class="number">79</td><td>            </td></tr><tr><td class="number">80</td><td>            <span class="k1">if</span> <span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span> <span class="k2">(</span>mex <span class="k3">-</span> cx<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>mex <span class="k3">-</span>cx<span class="k2">)</span> <span class="k3">+</span> <span class="k2">(</span>mey <span class="k3">-</span>cy<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>mey <span class="k3">-</span>cy<span class="k2">)</span> <span class="k2">)</span> <span class="k3">&lt;</span> sun.rad <span class="k3">+</span> me.rad<span class="k2">)</span></td></tr><tr><td class="number">81</td><td>            <span class="k2">{</span></td></tr><tr><td class="number">82</td><td>                <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">83</td><td>            <span class="k2">}</span> <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mex <span class="k3">&gt;</span> <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a> <span class="k3">|</span><span class="k3">|</span> mex <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">84</td><td>                <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">85</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">86</td><td>            </td></tr><tr><td class="number">87</td><td>                <span class="k1">for</span> <span class="k2">(</span>list<span class="k3">&lt;</span>circ&gt;::iterator i <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i <span class="k3">!</span><span class="k3">=</span> planets.end<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">88</td><td>                    <span class="k1">if</span> <span class="k2">(</span>i <span class="k3">!</span><span class="k3">=</span> mine<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">89</td><td>                        <span class="k1">float</span> youx <span class="k3">=</span> cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>i-&gt;theta<span class="k2">)</span><span class="k3">*</span>i-&gt;r<span class="k2">;</span></td></tr><tr><td class="number">90</td><td>                        <span class="k1">float</span> youy <span class="k3">=</span> cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>i-&gt;theta<span class="k2">)</span><span class="k3">*</span>i-&gt;r<span class="k2">;</span></td></tr><tr><td class="number">91</td><td>                        <span class="k1">float</span> dist <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span> <span class="k2">(</span>youx <span class="k3">-</span> mex<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>youx <span class="k3">-</span> mex<span class="k2">)</span> <span class="k3">+</span> <span class="k2">(</span>youy <span class="k3">-</span> mey<span class="k2">)</span> <span class="k3">*</span> <span class="k2">(</span>youy <span class="k3">-</span> mey<span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">92</td><td>                        <span class="k1">if</span> <span class="k2">(</span>dist <span class="k3">&lt;</span> distToMine<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">93</td><td>                            distToMine <span class="k3">=</span> dist<span class="k2">;</span></td></tr><tr><td class="number">94</td><td>                            mine <span class="k3">=</span> i<span class="k2">;</span></td></tr><tr><td class="number">95</td><td>                            me.r <span class="k3">=</span> dist<span class="k2">;</span></td></tr><tr><td class="number">96</td><td>                            me.theta <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>mey <span class="k3">-</span> youy, mex <span class="k3">-</span> youx<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">97</td><td>                            <span class="k1">if</span> <span class="k2">(</span>racc <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">98</td><td>                                racc <span class="k3">=</span> <span class="k3">-</span>racc<span class="k2">;</span></td></tr><tr><td class="number">99</td><td>                        <span class="k2">}</span></td></tr><tr><td class="number">100</td><td>                    <span class="k2">}</span></td></tr><tr><td class="number">101</td><td>                <span class="k2">}</span></td></tr><tr><td class="number">102</td><td>                </td></tr><tr><td class="number">103</td><td>                <span class="k1">for</span> <span class="k2">(</span>list<span class="k3">&lt;</span>circ&gt;::iterator i <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i <span class="k3">!</span><span class="k3">=</span> planets.end<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">104</td><td>                    i-&gt;theta <span class="k3">+</span><span class="k3">=</span> i-&gt;rate<span class="k2">;</span></td></tr><tr><td class="number">105</td><td>                    </td></tr><tr><td class="number">106</td><td>                    i-&gt;rvel <span class="k3">-</span><span class="k3">=</span> .<span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">107</td><td>                    i-&gt;r <span class="k3">+</span><span class="k3">=</span> i-&gt;rvel<span class="k2">;</span></td></tr><tr><td class="number">108</td><td>                    <span class="k1">if</span> <span class="k2">(</span>i-&gt;r <span class="k3">&lt;</span> <span class="n">290</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">109</td><td>                        i-&gt;r <span class="k3">=</span> <span class="n">290</span><span class="k2">;</span></td></tr><tr><td class="number">110</td><td>                        <span class="k1">float</span> r <span class="k3">=</span> <span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">21</span> <span class="k3">-</span> <span class="n">10</span><span class="k2">)</span> <span class="k3">/</span> <span class="n">10</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">111</td><td>                        i-&gt;rvel <span class="k3">=</span> <span class="n">7</span> <span class="k3">*</span> r<span class="k3">*</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">112</td><td>                    <span class="k2">}</span></td></tr><tr><td class="number">113</td><td>                <span class="k2">}</span></td></tr><tr><td class="number">114</td><td>                </td></tr><tr><td class="number">115</td><td>                </td></tr><tr><td class="number">116</td><td>            lt--<span class="k2">;</span></td></tr><tr><td class="number">117</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">118</td><td>    </td></tr><tr><td class="number">119</td><td>        <span class="k1">for</span> <span class="k2">(</span>list<span class="k3">&lt;</span>circ&gt;::iterator i <span class="k3">=</span> planets.begin<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i <span class="k3">!</span><span class="k3">=</span> planets.end<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">120</td><td>            i-&gt;draw<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">121</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">122</td><td>        <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buf, cx <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r, </td></tr><tr><td class="number">123</td><td>                    cy <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>mine-&gt;theta<span class="k2">)</span><span class="k3">*</span>mine-&gt;r<span class="k3">+</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>me.theta<span class="k2">)</span><span class="k3">*</span>me.r, me.rad, me.col<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">124</td><td>        sun.draw<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">125</td><td>        <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buf, <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span>, <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>, <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">126</td><td>        clear<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">127</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">128</td><td>    </td></tr><tr><td class="number">129</td><td>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">130</td><td><span class="k2">}</span> <a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span></td></tr></tbody></table></div></div><p>

edit: And for ranking, I&#39;ll go with Kikaru, CGames, Dennis<br />Kikaru and CGames are both really strong entries imo (I&#39;m impressed you both had time to add intro text things ...) but Kikaru&#39;s was more surprising.  Dennis&#39;s looked like it would have been interesting -- looking forward to the revised entry! <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>edit2: changed the starting theta to -PI/2 like CGames suggested (below)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 03:02:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ugh, the revision (the one on the site at least) makes it impossible <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Much harder, and I tend to die in the first half second. I change the initial player theta to -pi/2, which helped some, but staying alive 5 seconds is a good record for me <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 03:14:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, everyone has voted, so here are the results:<br />Zaphos: 7 pts.<br />Kikaru: 5 pts.<br />Dennis: 3 pts.<br />CGamesPlay: 7 pts.</p><p>It&#39;s a tie between Zaphos and CGames. Good games everyone! <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 03:37:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ohmigosh! This is like the second time I&#39;ve come close to winning <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /> I think last time I wasn&#39;t tied, though <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>FYI, the next bi-weekly competition has been scheduled. I won&#39;t be able to attend, because I will be in London.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 03:43:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Woo!</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Much harder, and I tend to die in the first half second. I change the initial player theta to -pi/2, which helped some, but staying alive 5 seconds is a good record for me <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div></div><p>
Ah, the rand() I was getting managed to hide some of the problems (and difficulty!) -- note to self: test with different srand()s!</p><p>I think I&#39;ll go back and mess with the entry some more later.  The way the blue guy exists in polar coordinates makes him control <b>really</b> oddly; I think I want to see how it plays if he moves more normally.</p><p>edit: also -- hope we can make this a semi-regular event again.  Everybody come back to play again in 2 weeks!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 03:53:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I am adding the email support right now, as we speak. I just finished the &quot;send me emails when a competition is proposed.&quot; <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>[append]<br />The top 3 options on <a href="http://www.allegro.cc/account/login/http://cgamesplay.com/minorhack/admin/email">this page</a> work!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 03:58:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I would love to start doing this again. What&#39;s funny is that I joined late, finished early, and still had a good game... <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" /></p><p>Now, to work some more on it! <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 04:25:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>All of the email options except one are now working.</p><p>If I added SMS support, how many of you would use it? (i.e. SMS me 1 hour before competition begins, and SMS me when a competition begins)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 04:33:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I fixed my collision logic and made the paddle shrink after each hit.<br />There is still no game over condition though, as the only thing bugging me was the collision bug and since that&#39;s fixed, I can sleep well now.</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="c">// Title: My 1st Minorhack participation</span></td></tr><tr><td class="number">2</td><td><span class="c">// Author: Dennis Busch</span></td></tr><tr><td class="number">3</td><td><span class="c">// Date: 17th of February 2007</span></td></tr><tr><td class="number">4</td><td><span class="c">// Time spent: 1h + 1h bugfixing the faulty collision logic :P</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="c">// didn't finish in time!</span></td></tr><tr><td class="number">7</td><td><span class="c">// collision bug fixed, paddle shrinks after every hit</span></td></tr><tr><td class="number">8</td><td><span class="c">// (only the center pixel of the enemy is checked for collision)</span></td></tr><tr><td class="number">9</td><td><span class="c">// still no game over condition</span></td></tr><tr><td class="number">10</td><td>&#160;</td></tr><tr><td class="number">11</td><td><span class="c">// Rule: 1 source file, game has to use polar coordinates instead of rect. coords.</span></td></tr><tr><td class="number">12</td><td>&#160;</td></tr><tr><td class="number">13</td><td><span class="c">// this is quick and dirty code without too much(if any at all) error checking</span></td></tr><tr><td class="number">14</td><td>&#160;</td></tr><tr><td class="number">15</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">16</td><td><span class="p">#include &lt;math.h&gt;</span></td></tr><tr><td class="number">17</td><td>&#160;</td></tr><tr><td class="number">18</td><td><span class="c">// variables</span></td></tr><tr><td class="number">19</td><td><span class="k1">bool</span> debug_info <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td><span class="k1">bool</span> game_over <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td><span class="k1">bool</span> use_screen <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>back <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">23</td><td><span class="k1">const</span> <span class="k1">int</span> W <span class="k3">=</span> <span class="n">640</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td><span class="k1">const</span> <span class="k1">int</span> H <span class="k3">=</span> <span class="n">480</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td><span class="k1">const</span> <span class="k1">int</span> timing <span class="k3">=</span> <span class="n">60</span><span class="k2">;</span></td></tr><tr><td class="number">26</td><td><span class="k1">const</span> <span class="k1">float</span> PI <span class="k3">=</span> <span class="n">3</span>.<span class="n">14159</span><span class="k2">;</span></td></tr><tr><td class="number">27</td><td>&#160;</td></tr><tr><td class="number">28</td><td><span class="k1">const</span> <span class="k1">float</span> to_fix <span class="k3">=</span> <span class="n">128</span>.<span class="n">0</span><span class="k3">/</span><span class="n">180</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">29</td><td><span class="k1">const</span> <span class="k1">float</span> to_rad <span class="k3">=</span> PI<span class="k3">/</span><span class="n">180</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">30</td><td>&#160;</td></tr><tr><td class="number">31</td><td><span class="k1">float</span> ply_angle <span class="k3">=</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">;</span> <span class="c">// :P</span></td></tr><tr><td class="number">32</td><td><span class="k1">float</span> ply_angle_step <span class="k3">=</span> <span class="n">3</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">33</td><td><span class="k1">float</span> ply_length <span class="k3">=</span> W<span class="k3">/</span><span class="n">6</span>.<span class="n">0</span><span class="k2">;</span> <span class="c">// distance to center</span></td></tr><tr><td class="number">34</td><td><span class="k1">float</span> ply_size <span class="k3">=</span> <span class="n">60</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">35</td><td><span class="k1">float</span> ply_size_min <span class="k3">=</span> <span class="n">5</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">36</td><td><span class="k1">float</span> ply_size_step <span class="k3">=</span> <span class="n">5</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">37</td><td><span class="k1">float</span> ply_arc_end <span class="k3">=</span> ply_angle <span class="k3">+</span> ply_size<span class="k2">;</span></td></tr><tr><td class="number">38</td><td><span class="k1">float</span> center_x <span class="k3">=</span> W<span class="k3">/</span><span class="n">2</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td><span class="k1">float</span> center_y <span class="k3">=</span> H<span class="k3">/</span><span class="n">2</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">40</td><td>&#160;</td></tr><tr><td class="number">41</td><td><span class="k1">float</span> enemy_angle <span class="k3">=</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td><span class="k1">float</span> enemy_length <span class="k3">=</span> W<span class="k3">/</span><span class="n">2</span><span class="k2">;</span> <span class="c">// distance to center</span></td></tr><tr><td class="number">43</td><td><span class="k1">float</span> enemy_size <span class="k3">=</span> W <span class="k3">/</span> <span class="n">100</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">44</td><td><span class="k1">float</span> enemy_step <span class="k3">=</span> W <span class="k3">/</span> <span class="n">320</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">45</td><td><span class="k1">int</span> enemy_state <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> <span class="c">// 0 incoming, 1 offgoing</span></td></tr><tr><td class="number">46</td><td><span class="k1">int</span> enemy_reset_delay <span class="k3">=</span> <span class="n">240</span><span class="k2">;</span></td></tr><tr><td class="number">47</td><td><span class="k1">int</span> enemy_delay <span class="k3">=</span> enemy_reset_delay<span class="k2">;</span></td></tr><tr><td class="number">48</td><td>&#160;</td></tr><tr><td class="number">49</td><td><span class="k1">void</span> update_display<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">50</td><td><span class="k2">{</span></td></tr><tr><td class="number">51</td><td>  <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>drawto <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">52</td><td>&#160;</td></tr><tr><td class="number">53</td><td>  <span class="k1">if</span><span class="k2">(</span>use_screen<span class="k2">)</span></td></tr><tr><td class="number">54</td><td>    drawto <span class="k3">=</span> <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a><span class="k2">;</span></td></tr><tr><td class="number">55</td><td>  <span class="k1">else</span></td></tr><tr><td class="number">56</td><td>    drawto <span class="k3">=</span> back<span class="k2">;</span></td></tr><tr><td class="number">57</td><td>    </td></tr><tr><td class="number">58</td><td>  <span class="c">// drawing</span></td></tr><tr><td class="number">59</td><td>  <a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>drawto<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">60</td><td>  </td></tr><tr><td class="number">61</td><td>  <span class="c">// draw debug info</span></td></tr><tr><td class="number">62</td><td>  <span class="k1">if</span><span class="k2">(</span>debug_info<span class="k2">)</span></td></tr><tr><td class="number">63</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">64</td><td>    <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>drawto, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span>, <span class="n">0</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"player_angle: %f / player_angle+player_size: %f"</span>, ply_angle, ply_arc_end<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">65</td><td>    <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>drawto, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span>,<span class="n">10</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"enemy_angle: %f / enemy_length: %f"</span>, enemy_angle, enemy_length<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">66</td><td>    </td></tr><tr><td class="number">67</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">68</td><td>  </td></tr><tr><td class="number">69</td><td>  <span class="c">// draw the player</span></td></tr><tr><td class="number">70</td><td>  <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>drawto, center_x, center_y, ply_length <span class="k3">/</span> <span class="n">2</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">71</td><td>  <a href="http://www.allegro.cc/manual/arc" target="_blank"><span class="a">arc</span></a><span class="k2">(</span>drawto, center_x,center_y,<a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span><span class="k1">int</span><span class="k2">(</span>ply_angle<span class="k3">*</span>to_fix<span class="k2">)</span><span class="k2">)</span>,<a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span><span class="k1">int</span><span class="k2">(</span>ply_angle<span class="k3">*</span>to_fix<span class="k3">+</span>ply_size<span class="k3">*</span>to_fix<span class="k2">)</span><span class="k2">)</span>,ply_length, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">72</td><td>    </td></tr><tr><td class="number">73</td><td>  <span class="c">// draw the enemy</span></td></tr><tr><td class="number">74</td><td>  <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>drawto, center_x <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>enemy_angle<span class="k3">*</span>to_rad<span class="k2">)</span><span class="k3">*</span>enemy_length</td></tr><tr><td class="number">75</td><td>                   , center_y <span class="k3">-</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>enemy_angle<span class="k3">*</span>to_rad<span class="k2">)</span><span class="k3">*</span>enemy_length</td></tr><tr><td class="number">76</td><td>                   , enemy_size, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">77</td><td>  <a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>drawto, center_x <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>enemy_angle<span class="k3">*</span>to_rad<span class="k2">)</span><span class="k3">*</span>enemy_length</td></tr><tr><td class="number">78</td><td>                 , center_y <span class="k3">-</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>enemy_angle<span class="k3">*</span>to_rad<span class="k2">)</span><span class="k3">*</span>enemy_length</td></tr><tr><td class="number">79</td><td>                 , <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>                   </td></tr><tr><td class="number">80</td><td>    </td></tr><tr><td class="number">81</td><td>  <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>use_screen<span class="k2">)</span></td></tr><tr><td class="number">82</td><td>    <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>back, <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,W,H<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">83</td><td><span class="k2">}</span></td></tr><tr><td class="number">84</td><td>&#160;</td></tr><tr><td class="number">85</td><td><span class="k1">void</span> update_game_logic<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">86</td><td><span class="k2">{</span></td></tr><tr><td class="number">87</td><td>  <span class="c">// read input</span></td></tr><tr><td class="number">88</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">89</td><td>    game_over <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">90</td><td>&#160;</td></tr><tr><td class="number">91</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_UP<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">92</td><td>    ply_angle <span class="k3">+</span><span class="k3">=</span> ply_angle_step<span class="k2">;</span></td></tr><tr><td class="number">93</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span><span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_DOWN<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">94</td><td>    ply_angle <span class="k3">-</span><span class="k3">=</span> ply_angle_step<span class="k2">;</span></td></tr><tr><td class="number">95</td><td>&#160;</td></tr><tr><td class="number">96</td><td>  <span class="k1">if</span> <span class="k2">(</span>ply_angle <span class="k3">&gt;</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">97</td><td>    ply_angle <span class="k3">-</span><span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">98</td><td>  <span class="k1">if</span> <span class="k2">(</span>ply_angle <span class="k3">&lt;</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">99</td><td>    ply_angle <span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span> <span class="k3">+</span> ply_angle<span class="k2">;</span></td></tr><tr><td class="number">100</td><td>&#160;</td></tr><tr><td class="number">101</td><td>  <span class="k1">if</span><span class="k2">(</span>ply_angle <span class="k3">=</span><span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">102</td><td>    ply_angle <span class="k3">=</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">103</td><td>&#160;</td></tr><tr><td class="number">104</td><td>  ply_arc_end <span class="k3">=</span> ply_angle <span class="k3">+</span> ply_size<span class="k2">;</span></td></tr><tr><td class="number">105</td><td>  <span class="k1">if</span> <span class="k2">(</span>ply_arc_end <span class="k3">&gt;</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">106</td><td>    ply_arc_end <span class="k3">-</span><span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">107</td><td>  <span class="k1">if</span> <span class="k2">(</span>ply_arc_end <span class="k3">&lt;</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">108</td><td>    ply_arc_end <span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span> <span class="k3">+</span> ply_arc_end<span class="k2">;</span></td></tr><tr><td class="number">109</td><td>&#160;</td></tr><tr><td class="number">110</td><td>  <span class="k1">if</span><span class="k2">(</span>ply_arc_end <span class="k3">=</span><span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">111</td><td>    ply_arc_end <span class="k3">=</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">112</td><td>&#160;</td></tr><tr><td class="number">113</td><td>  <span class="c">// update enemy</span></td></tr><tr><td class="number">114</td><td>  <span class="k1">switch</span><span class="k2">(</span>enemy_state<span class="k2">)</span></td></tr><tr><td class="number">115</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">116</td><td>    <span class="k1">case</span> <span class="n">0</span><span class="k2">:</span></td></tr><tr><td class="number">117</td><td>      enemy_length <span class="k3">-</span><span class="k3">=</span> enemy_step<span class="k2">;</span></td></tr><tr><td class="number">118</td><td>      <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>enemy_length<span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> <span class="k2">(</span>ply_length <span class="k3">+</span> enemy_size<span class="k2">)</span><span class="k2">)</span> <span class="c">// in player paddle radius?</span></td></tr><tr><td class="number">119</td><td>         <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>enemy_length<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> <span class="k2">(</span>ply_length <span class="k3">-</span> enemy_size<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">120</td><td>      <span class="k2">{</span></td></tr><tr><td class="number">121</td><td>        <span class="k1">bool</span> hit <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">122</td><td>      </td></tr><tr><td class="number">123</td><td>        <span class="k1">if</span><span class="k2">(</span>ply_angle <span class="k3">&lt;</span> ply_arc_end<span class="k2">)</span></td></tr><tr><td class="number">124</td><td>          <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>enemy_angle <span class="k3">&gt;</span><span class="k3">=</span> ply_angle<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>enemy_angle <span class="k3">&lt;</span><span class="k3">=</span> <span class="k2">(</span>ply_arc_end<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">125</td><td>            hit <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">126</td><td>            </td></tr><tr><td class="number">127</td><td>        <span class="k1">if</span><span class="k2">(</span>ply_angle <span class="k3">&gt;</span> ply_arc_end<span class="k2">)</span></td></tr><tr><td class="number">128</td><td>          <span class="k1">if</span><span class="k2">(</span>    <span class="k2">(</span><span class="k2">(</span>enemy_angle <span class="k3">&gt;</span><span class="k3">=</span> <span class="n">0</span>.<span class="n">0</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>enemy_angle<span class="k3">&lt;</span><span class="k3">=</span>ply_arc_end<span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">129</td><td>               <span class="k3">|</span><span class="k3">|</span><span class="k2">(</span><span class="k2">(</span>enemy_angle <span class="k3">&gt;</span><span class="k3">=</span> ply_angle<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>enemy_angle <span class="k3">&lt;</span><span class="k3">=</span> <span class="n">360</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">130</td><td>            hit <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">131</td><td>            </td></tr><tr><td class="number">132</td><td>        <span class="k1">if</span><span class="k2">(</span>hit<span class="k2">)</span></td></tr><tr><td class="number">133</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">134</td><td>          <span class="k1">if</span><span class="k2">(</span>ply_size <span class="k3">&gt;</span> ply_size_min<span class="k2">)</span></td></tr><tr><td class="number">135</td><td>          <span class="k2">{</span></td></tr><tr><td class="number">136</td><td>            ply_size <span class="k3">-</span><span class="k3">=</span> ply_size_step<span class="k2">;</span></td></tr><tr><td class="number">137</td><td>            ply_angle <span class="k3">+</span><span class="k3">=</span> ply_size_step <span class="k3">/</span> <span class="n">2</span>.<span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">138</td><td>          <span class="k2">}</span></td></tr><tr><td class="number">139</td><td>          enemy_state <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">140</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">141</td><td>      <span class="k2">}</span></td></tr><tr><td class="number">142</td><td>      </td></tr><tr><td class="number">143</td><td>      <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>enemy_length<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> W<span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>enemy_length<span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> ply_length<span class="k3">/</span><span class="n">2</span> <span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">144</td><td>      <span class="k2">{</span></td></tr><tr><td class="number">145</td><td>        <span class="c">// reset enemy</span></td></tr><tr><td class="number">146</td><td>        enemy_angle <span class="k3">=</span> <span class="k1">float</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">360</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">147</td><td>        enemy_length <span class="k3">=</span> W<span class="k3">/</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">148</td><td>      <span class="k2">}</span></td></tr><tr><td class="number">149</td><td>    <span class="k1">break</span><span class="k2">;</span></td></tr><tr><td class="number">150</td><td>    <span class="k1">case</span> <span class="n">1</span><span class="k2">:</span></td></tr><tr><td class="number">151</td><td>      enemy_length <span class="k3">+</span><span class="k3">=</span> enemy_step<span class="k2">;</span></td></tr><tr><td class="number">152</td><td>      </td></tr><tr><td class="number">153</td><td>      <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>enemy_length<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> W<span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>enemy_length<span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> ply_length<span class="k3">/</span><span class="n">2</span> <span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">154</td><td>      <span class="k2">{</span></td></tr><tr><td class="number">155</td><td>        <span class="c">// reset enemy</span></td></tr><tr><td class="number">156</td><td>        enemy_angle <span class="k3">=</span> <span class="k1">float</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">360</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">157</td><td>        enemy_length <span class="k3">=</span> W<span class="k3">/</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">158</td><td>        enemy_state <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">159</td><td>      <span class="k2">}</span></td></tr><tr><td class="number">160</td><td>    <span class="k1">break</span><span class="k2">;</span></td></tr><tr><td class="number">161</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">162</td><td>&#160;</td></tr><tr><td class="number">163</td><td><span class="k2">}</span></td></tr><tr><td class="number">164</td><td>&#160;</td></tr><tr><td class="number">165</td><td><span class="c">// copy/pasted from the FAQ</span></td></tr><tr><td class="number">166</td><td><span class="k1">volatile</span> <span class="k1">int</span> speed_counter <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">167</td><td><span class="k1">void</span> increment_speed_counter<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">168</td><td><span class="k2">{</span>speed_counter<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">169</td><td><a href="http://www.allegro.cc/manual/END_OF_FUNCTION" target="_blank"><span class="a">END_OF_FUNCTION</span></a><span class="k2">(</span>increment_speed_counter<span class="k2">)</span></td></tr><tr><td class="number">170</td><td>&#160;</td></tr><tr><td class="number">171</td><td><span class="k1">void</span> play_the_game<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">172</td><td><span class="k2">{</span></td></tr><tr><td class="number">173</td><td>&#160;</td></tr><tr><td class="number">174</td><td>  <a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>speed_counter<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">175</td><td>  <a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>increment_speed_counter<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">176</td><td>&#160;</td></tr><tr><td class="number">177</td><td>  <a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>increment_speed_counter, BPS_TO_TIMER<span class="k2">(</span>timing<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">178</td><td>&#160;</td></tr><tr><td class="number">179</td><td>  <span class="k1">while</span><span class="k2">(</span><span class="k3">!</span>game_over<span class="k2">)</span></td></tr><tr><td class="number">180</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">181</td><td>    <span class="k1">while</span> <span class="k2">(</span>speed_counter <span class="k3">&gt;</span> <span class="n">0</span><span class="k2">)</span> </td></tr><tr><td class="number">182</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">183</td><td>      update_game_logic<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">184</td><td>      speed_counter--<span class="k2">;</span></td></tr><tr><td class="number">185</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">186</td><td>    update_display<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">187</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">188</td><td><span class="k2">}</span></td></tr><tr><td class="number">189</td><td><span class="c">// END OF copy/pasted from the FAQ</span></td></tr><tr><td class="number">190</td><td>&#160;</td></tr><tr><td class="number">191</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span></td></tr><tr><td class="number">192</td><td><span class="k2">{</span></td></tr><tr><td class="number">193</td><td>  <span class="k1">bool</span> failed <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">194</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span> <span class="k3">!</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span>failed <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">195</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span> <span class="k3">!</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span>failed <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">196</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span> <span class="k3">!</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span>failed <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">197</td><td>  <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span> <span class="k3">=</span><span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">)</span>failed <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">198</td><td>  </td></tr><tr><td class="number">199</td><td>  <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>failed<span class="k2">)</span></td></tr><tr><td class="number">200</td><td>  <span class="k2">{</span>      </td></tr><tr><td class="number">201</td><td>    <a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span><span class="n">32</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">202</td><td>    <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT_WINDOWED,W,H,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">203</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">204</td><td>      back <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span>W,H<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">205</td><td>      <span class="k1">if</span><span class="k2">(</span>back<span class="k3">=</span><span class="k3">=</span>NULL<span class="k2">)</span></td></tr><tr><td class="number">206</td><td>        use_screen <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">207</td><td>        </td></tr><tr><td class="number">208</td><td>      play_the_game<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">209</td><td>      </td></tr><tr><td class="number">210</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">211</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">212</td><td>  <a href="http://www.allegro.cc/manual/allegro_exit" target="_blank"><span class="a">allegro_exit</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">213</td><td>  <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">214</td><td><span class="k2">}</span></td></tr><tr><td class="number">215</td><td><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 04:37:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Zaphos: 7 pts.<br />Kikaru: 5 pts.<br />Dennis: 3 pts.<br />CGamesPlay: 7 pts.
</p></div></div><p>
Wait ... how did you calculate that?  It adds to 22, but 4 * (3+2+1) is 24 ...</p><p>edit: Hmm -- also, in admin on the webpage, we can set the &quot;Minimum players for competition&quot;?  I thought that was something global, not per user?</p><p>Dennis -- nice to see it working!  It&#39;d be cool if the same ball bounced around the screen edges and came back, but I guess that&#39;s rather hard to do with polar coordinates.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 05:00:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What do you mean? I gave 3 points for first, 2 points for second, and 1 point for third. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 05:04:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I mean that if you have 4 people voting, and each gives out 3 points for first, 2 points for second, and 1 point for third, then the total number of points given out should be 4*(3+2+1) = 24.  But 7+5+3+7 = 22.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 05:06:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Zaphos: 8<br />CGamesPlay: 7<br />Kikaru: 6<br />Dennis: 3</p><p>I&#39;ll get you one day!</p><p>[append]<br />The minimum is 3. He can&#39;t give points to himself.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 05:07:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
The minimum is 3. He can&#39;t give points to himself.
</p></div></div><p>Yeah -- that&#39;s referring to an edit that I put in and then quickly removed.  Momentary brain failure.</p><p>edit: also, hooray!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 05:09:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Maybe you could make it not reuse rules for a certain number of events? Like, 6 or 7? We have enough rules for that. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 06:53:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Maybe you could make it not reuse rules for a certain number of events? Like, 6 or 7? We have enough rules for that. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div></div><p>
Does it re-use rules at all?  It doesn&#39;t seem like it&#39;s been a problem, yet, at any rate ...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sun, 18 Feb 2007 09:44:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The rule we just did was... Oh, wait, it was different. Hehe. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 18 Feb 2007 09:54:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Since this was my first participation, I can&#39;t judge about the previous rules but this one certainly was challenging.</p><p>Anyway, I&#39;m not going to revise my entry again, because it <a href="http://www.allegro.cc/forums/thread/590127">inspired me to something else</a>, which I hope I&#39;ll have the time and motivation to start working on someday.:)</p><p>For me, this MinorHack turned out to be the most cool thing I did in a while. I will surely participate in the next one as well. <b>It&#39;s fun!</b><img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Dennis)</author>
		<pubDate>Sun, 18 Feb 2007 16:13:53 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Good thing you IRC, or else you wouldn&#39;t have heard about it! <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sun, 18 Feb 2007 20:54:45 +0000</pubDate>
	</item>
</rss>
