<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>2007 Allegro ScreenHack, 80x25 compo</title>
		<link>http://www.allegro.cc/forums/view/596137</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Wed, 21 May 2008 11:51:47 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It&#39;s Friday night and I don&#39;t have a party to go to... <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /> And it seems TINS isn&#39;t happening anytime soon.</p><p>So, what to do during these most dire circumstances? A game coding competition of course! Following in the footsteps of the most excellent 2004 Allegro ScreenHack (<a href="http://www.allegro.cc/forums/thread/331094">thread</a>), I suggest another 80x25 programming contest.</p><p><b>Rules</b> (same as back in 2004)<br />Post some C or C++ source code that will completely fit into an 80-character by 25-character screen (the standard DOS prompt size) and that will compile on its own (along with a full complement of Allegro/system headers, that is). The best entry (I&#39;m talking games here) will be chosen by vote sometime in the near future. You are allowed to submit as many entries as you like.</p><p>I&#39;m going to start coding my entry now, and will be delighted if anyone decides to join in.</p><p>Good luck! <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Per Larsson)</author>
		<pubDate>Fri, 25 Apr 2008 23:28:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Set a deadline, and I&#39;ll try for something.<br />Other clarifications:
</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
will compile on its own (along with a full complement of Allegro/system headers, that is).
</p></div></div><p>
Does this mean &quot;no libraries but Allegro&quot; or something of the sort? If so, then are standard C++ libs like <tt>vector</tt> okay?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Fri, 25 Apr 2008 23:48:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yep, vector will be fine. You can use all standard C and C++ stuff and allegro, but no other libraries.</p><p>Deadline is, umm, whenever people loose interest in this thread. It took about a month in the 2004 competition. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Per Larsson)</author>
		<pubDate>Fri, 25 Apr 2008 23:59:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sweet! I remember wanting to add syntax highlighting to my previous entry, but never getting around to it. Also it is 2008.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sat, 26 Apr 2008 00:12:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><b>checks watch</b></p><p>Holy <span class="cuss"><span><span class="cuss"><span>shit</span></span></span></span>, you&#39;re right!</p><p>EDIT:<br />My entry, version 1. I&#39;ll try to add some sound tomorrow <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>(Edit: Newer version below)
</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;//////////////////////////////////////////////Untangle v1.0</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;math.h&gt;////////////////////////////////////////////////By Per Larsson</span></td></tr><tr><td class="number">3</td><td><span class="p">#define p(i) x&lt;i&gt;,y&lt;i&gt;/////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">4</td><td>x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,e<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,w<span class="k3">=</span><span class="n">457</span><span class="k2">;</span><span class="k3">*</span>c<span class="k2">(</span>a,b<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> a<span class="k3">&lt;</span>b?e<span class="k2">[</span>a<span class="k2">]</span><span class="k3">+</span>b:e<span class="k3">&lt;</span>b&gt;<span class="k3">+</span>a<span class="k2">;</span><span class="k2">}</span>_<span class="k2">(</span>a,b,c<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> b</td></tr><tr><td class="number">5</td><td><span class="k3">&lt;</span>c?a&gt;<span class="k3">=</span>b<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span><span class="k3">=</span>c:a&gt;<span class="k3">=</span>c<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span><span class="k3">=</span>b<span class="k2">;</span><span class="k2">}</span>q<span class="k2">(</span>w,e,r,t,y,u,i,o<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> A<span class="k3">=</span>t-e,B<span class="k3">=</span>w-r,C<span class="k3">=</span>A<span class="k3">*</span>w<span class="k3">+</span>B<span class="k3">*</span>e,D<span class="k3">=</span>o-u,E<span class="k3">=</span></td></tr><tr><td class="number">6</td><td>y-i,F<span class="k3">=</span>D<span class="k3">*</span>y<span class="k3">+</span>E<span class="k3">*</span>u,d<span class="k3">=</span>A<span class="k3">*</span>E-D<span class="k3">*</span>B,X<span class="k3">=</span><span class="k2">(</span>E<span class="k3">*</span>C-B<span class="k3">*</span>F<span class="k2">)</span>,Y<span class="k3">=</span><span class="k2">(</span>A<span class="k3">*</span>F-D<span class="k3">*</span>C<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> d?_<span class="k2">(</span>X<span class="k3">/</span>d,w,r<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>Y<span class="k3">/</span>d,e,t<span class="k2">)</span></td></tr><tr><td class="number">7</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>X<span class="k3">/</span>d,y,i<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>Y<span class="k3">/</span>d,u,o<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> l,i,I,j,J,f,F,a,b,s<span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,X,Y,H,h<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>B<span class="k2">;</span></td></tr><tr><td class="number">8</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><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_SAFE,w,w,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<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,w<span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">1</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">2</span></td></tr><tr><td class="number">9</td><td>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span><span class="n">1</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="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="k2">;</span>text_mode<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">0</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">0</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">0</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span></td></tr><tr><td class="number">10</td><td><span class="k3">*</span>c<span class="k2">(</span><span class="n">1</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>l<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>l<span class="k3">&lt;</span><span class="n">99</span><span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">double</span> a<span class="k3">=</span><span class="k2">(</span>i<span class="k3">*</span><span class="n">6</span>.<span class="n">3</span><span class="k3">/</span>l<span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>a<span class="k2">)</span><span class="k3">*</span>w</td></tr><tr><td class="number">11</td><td><span class="k3">/</span><span class="n">3</span><span class="k3">+</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>a<span class="k2">)</span><span class="k3">*</span>w<span class="k3">/</span><span class="n">3</span><span class="k3">+</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">do</span><span class="k2">{</span>F<span class="k3">=</span><span class="n">0</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>?<a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>B,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span>l<span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>c<span class="k2">(</span>j,i<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>I<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>I<span class="k3">&lt;</span>l<span class="k2">;</span>I<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>J<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>J<span class="k3">&lt;</span>l<span class="k2">;</span>J</td></tr><tr><td class="number">13</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>f<span class="k3">|</span><span class="k3">=</span>j<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>j<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">*</span>c<span class="k2">(</span>I,J<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>q<span class="k2">(</span>p<span class="k2">(</span>i<span class="k2">)</span>,p<span class="k2">(</span>j<span class="k2">)</span>,p<span class="k2">(</span>I<span class="k2">)</span>,p<span class="k2">(</span>J<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span> <span class="k2">(</span>a<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>a<span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>a<span class="k3">+</span><span class="k3">+</span></td></tr><tr><td class="number">14</td><td><span class="k2">)</span><span class="k1">for</span> <span class="k2">(</span>b<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>b<span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>b<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>B,a<span class="k3">+</span>p<span class="k2">(</span>i<span class="k2">)</span><span class="k3">+</span>b,a<span class="k3">+</span>p<span class="k2">(</span>j<span class="k2">)</span><span class="k3">+</span>b,f?<span class="n">12</span><span class="k2">:</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>F<span class="k3">|</span><span class="k3">=</span>f<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<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">15</td><td><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,p<span class="k2">(</span>i<span class="k2">)</span>,<span class="n">8</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,p<span class="k2">(</span>i<span class="k2">)</span>,<span class="n">6</span>,s<span class="k3">=</span><span class="k3">=</span>i?<span class="n">7</span><span class="k2">:</span><span class="n">8</span><span class="k2">)</span><span class="k2">;</span>s <span class="k3">=</span> <a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a>?s:-1<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>mouse\</td></tr><tr><td class="number">16</td><td>_b<span class="k3">&amp;</span><span class="k3">&amp;</span>s <span class="k3">&lt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> _<span class="k2">(</span>mouse_x-x<span class="k3">&lt;</span>i&gt;,<span class="k3">-</span><span class="n">7</span>,<span class="n">7</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> _<span class="k2">(</span>mouse_y-y<span class="k3">&lt;</span>i&gt;,<span class="k3">-</span><span class="n">7</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">)</span>s <span class="k3">=</span> i<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>s&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span>s<span class="k2">]</span><span class="k3">=</span></td></tr><tr><td class="number">17</td><td><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k2">;</span>y<span class="k2">[</span>s<span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">;</span><span class="k2">}</span>textprintf<span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">10</span>,<span class="n">0</span>,<span class="s">"Level %d"</span>,l-3<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>B,</td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/mouse_sprite" target="_blank"><span class="a">mouse_sprite</span></a>,<a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a>,<a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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,w<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>F<span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k2">)</span><span class="k2">;</span>H<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">19</td><td><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">2000</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k2">[</span>l<span class="k2">]</span><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>%w<span class="k3">*</span><span class="n">2</span><span class="k3">-</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k2">[</span>l<span class="k2">]</span><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>%w<span class="k3">*</span><span class="n">2</span><span class="k3">-</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span></td></tr><tr><td class="number">20</td><td>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>I<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>I<span class="k3">&lt;</span>l<span class="k2">;</span>I<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>J<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>J<span class="k3">&lt;</span>l<span class="k2">;</span>J<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>f<span class="k3">|</span><span class="k3">=</span>l<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>l<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">*</span>c<span class="k2">(</span>I,J<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>q<span class="k2">(</span></td></tr><tr><td class="number">21</td><td>p<span class="k2">(</span>i<span class="k2">)</span>,p<span class="k2">(</span>l<span class="k2">)</span>,p<span class="k2">(</span>I<span class="k2">)</span>,p<span class="k2">(</span>J<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>h<span class="k3">+</span><span class="k3">=</span><span class="n">1</span><span class="k3">-</span>f<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span> <span class="k2">(</span>h&gt;H<span class="k2">)</span><span class="k2">{</span>H<span class="k3">=</span>h<span class="k2">;</span>X<span class="k3">=</span>x<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>x<span class="k2">[</span>l<span class="k2">]</span><span class="k3">=</span>X<span class="k2">;</span>y<span class="k2">[</span>l<span class="k2">]</span><span class="k3">=</span>Y<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">22</td><td><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>I<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>I<span class="k3">&lt;</span>l<span class="k2">;</span>I<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>J<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>J<span class="k3">&lt;</span>l<span class="k2">;</span>J<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>f<span class="k3">|</span><span class="k3">=</span>l<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>l<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">*</span>c<span class="k2">(</span>I,J</td></tr><tr><td class="number">23</td><td><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>q<span class="k2">(</span>p<span class="k2">(</span>i<span class="k2">)</span>,p<span class="k2">(</span>l<span class="k2">)</span>,p<span class="k2">(</span>I<span class="k2">)</span>,p<span class="k2">(</span>J<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>c<span class="k2">(</span>i,l<span class="k2">)</span><span class="k3">=</span><span class="n">1</span><span class="k3">-</span>f<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="k2">;</span><span class="c">/*What?? Wasted space?*/</span></td></tr><tr><td class="number">24</td><td><span class="c">///////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Per Larsson)</author>
		<pubDate>Sat, 26 Apr 2008 00:39:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>That&#39;s hilarious. Now make is scroll and you got matrix codes. <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (blargmob)</author>
		<pubDate>Sat, 26 Apr 2008 04:51:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Untangle v1.0 By Per Larsson is crashing here...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Sat, 26 Apr 2008 05:54:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>2007?</p><p>[edit]<br />Erm, it was already mentioned.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Sat, 26 Apr 2008 09:05:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;ve only been able to get to <s>Level 5</s> <b>EDIT2:</b><a href="http://www.allegro.cc/files/attachment/595095"><s>Level 6</s></a> <b>EDIT3:</b><a href="http://www.allegro.cc/files/attachment/595096">Level 7</a>.  Where did you get this game (or game idea) from, Per?</p><p><b>EDIT1:</b> And I was able to compile (and run) it right out of the box:<br /><span class="source-code">gcc game.c <span class="k3">-</span>o game.exe</span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (OnlineCop)</author>
		<pubDate>Sat, 26 Apr 2008 13:30:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I remember seeing it briefly at the end of this <a href="http://www.youtube.com/watch?v=8u4BYqKLW1g">little clip</a>, and i thought it would be small enough to squeeze into a screenhack. It&#39;s also quite fun... and frustrating. I got to level 11 yesterday <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Per Larsson)</author>
		<pubDate>Sat, 26 Apr 2008 14:12:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Cool game! Fun and addictive. Made it till <a href="http://www.allegro.cc/files/attachment/595098">level 12</a>.</p><p>I first misunderstood the idea of this competition and wondered why this game is using real graphic instead of ASCII art on SCREEN 1 or so... OK, i got it. It&#39;s not the graphic to fit into 80x25 but the code. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Seppl)</author>
		<pubDate>Sat, 26 Apr 2008 15:15:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Okay, version 2.0 is ready. </p><p>I&#39;ve added a (crappy) sound effect and tweaked the difficulty a bit by randomly removing a few edges before each level which makes the game more interesting, and a bit easier.</p><p>This version uses DIGI_DIRECTX(0) as an audio driver, since I for some reason got choppy playback with DIGI_AUTODETECT. If you&#39;re not on windows you might want to change this. You should be able to find it even in this mess.</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;///////////////////////////////////////////////Untangle v2.0</span></td></tr><tr><td class="number">2</td><td><span class="p">#define p(i) x&lt;i&gt;,y&lt;i&gt;////////////////////////////////////////////By Per Larsson</span></td></tr><tr><td class="number">3</td><td>x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,e<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,w<span class="k3">=</span><span class="n">600</span>,l<span class="k2">;</span><span class="k3">*</span>c<span class="k2">(</span>a,b<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> a<span class="k3">&lt;</span>b?e<span class="k2">[</span>a<span class="k2">]</span><span class="k3">+</span>b:e<span class="k3">&lt;</span>b&gt;<span class="k3">+</span>a<span class="k2">;</span><span class="k2">}</span>_<span class="k2">(</span>a,b,c<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span></td></tr><tr><td class="number">4</td><td>b<span class="k3">&lt;</span>c?a&gt;<span class="k3">=</span>b<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span><span class="k3">=</span>c:a&gt;<span class="k3">=</span>c<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span><span class="k3">=</span>b<span class="k2">;</span><span class="k2">}</span>q<span class="k2">(</span>w,e,r,t,y,u,i,o<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> A<span class="k3">=</span>t-e,B<span class="k3">=</span>w-r,C<span class="k3">=</span>A<span class="k3">*</span>w<span class="k3">+</span>B<span class="k3">*</span>e,D<span class="k3">=</span>o-u,E<span class="k3">=</span></td></tr><tr><td class="number">5</td><td>y-i,F<span class="k3">=</span>D<span class="k3">*</span>y<span class="k3">+</span>E<span class="k3">*</span>u,d<span class="k3">=</span>A<span class="k3">*</span>E-D<span class="k3">*</span>B,X<span class="k3">=</span><span class="k2">(</span>E<span class="k3">*</span>C-B<span class="k3">*</span>F<span class="k2">)</span>,Y<span class="k3">=</span><span class="k2">(</span>A<span class="k3">*</span>F-D<span class="k3">*</span>C<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> d?_<span class="k2">(</span>X<span class="k3">/</span>d,w,r<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>Y<span class="k3">/</span>d,e,t<span class="k2">)</span></td></tr><tr><td class="number">6</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>X<span class="k3">/</span>d,y,i<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>Y<span class="k3">/</span>d,u,o<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>M<span class="k2">(</span>i,j<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> I,J,f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>I<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>I<span class="k3">&lt;</span>l<span class="k2">;</span>I<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>J<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>J<span class="k3">&lt;</span>l<span class="k2">;</span>J<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>f</td></tr><tr><td class="number">7</td><td><span class="k3">+</span><span class="k3">=</span>j<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">!</span><span class="k3">=</span>I<span class="k3">&amp;</span><span class="k3">&amp;</span>j<span class="k3">!</span><span class="k3">=</span>J<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">*</span>c<span class="k2">(</span>I,J<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>q<span class="k2">(</span>p<span class="k2">(</span>i<span class="k2">)</span>,p<span class="k2">(</span>j<span class="k2">)</span>,p<span class="k2">(</span>I<span class="k2">)</span>,p<span class="k2">(</span>J<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> f<span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> i</td></tr><tr><td class="number">8</td><td>,I,j,J,f,F,a,b,s<span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,X,Y,H,h<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>B<span class="k2">;</span><a href="http://www.allegro.cc/manual/SAMPLE" target="_blank"><span class="a">SAMPLE</span></a><span class="k3">*</span>S<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="k2">;</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">0</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">0</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>c<span class="k2">(</span></td></tr><tr><td class="number">9</td><td><span class="n">0</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span><span class="n">1</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,w,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_sound" target="_blank"><span class="a">install_sound</span></a><span class="k2">(</span>DIGI_DIRECTX<span class="k2">(</span></td></tr><tr><td class="number">10</td><td><span class="n">0</span><span class="k2">)</span>,MIDI_NONE,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<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,w<span class="k2">)</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="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="k2">;</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">2</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span></td></tr><tr><td class="number">11</td><td><span class="k3">*</span>c<span class="k2">(</span><span class="n">1</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>c<span class="k2">(</span><span class="n">1</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>text_mode<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>S<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_sample" target="_blank"><span class="a">create_sample</span></a><span class="k2">(</span><span class="n">8</span>,<span class="n">0</span>,<span class="n">9999</span>,<span class="n">9999</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">9999</span><span class="k2">;</span>i</td></tr><tr><td class="number">12</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k2">(</span><span class="k2">(</span><span class="k1">unsigned</span> <span class="k1">char</span><span class="k3">*</span><span class="k2">)</span>S-&gt;data<span class="k2">)</span><span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">+</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/fixsin" target="_blank"><span class="a">fixsin</span></a><span class="k2">(</span>i<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">13</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">13</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">100</span><span class="k3">+</span><span class="k2">(</span>i<span class="k2">)</span>%<span class="n">152</span><span class="k2">)</span><span class="k3">*</span>i<span class="k2">)</span><span class="k3">/</span><span class="n">9000</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>l<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>l<span class="k3">&lt;</span><span class="n">99</span><span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/play_sample" target="_blank"><span class="a">play_sample</span></a><span class="k2">(</span>S,<span class="n">255</span>,<span class="n">55</span>,<span class="n">1600</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/play_sample" target="_blank"><span class="a">play_sample</span></a><span class="k2">(</span>S,<span class="n">255</span>,<span class="n">200</span>,<span class="n">1604</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k2">(</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/fixcos" target="_blank"><span class="a">fixcos</span></a><span class="k2">(</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">24</span><span class="k2">)</span><span class="k3">/</span>l<span class="k2">)</span><span class="k3">*</span>w<span class="k3">/</span><span class="n">3</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">16</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k2">(</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/fixsin" target="_blank"><span class="a">fixsin</span></a><span class="k2">(</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">24</span><span class="k2">)</span><span class="k3">/</span>l<span class="k2">)</span></td></tr><tr><td class="number">15</td><td><span class="k3">*</span>w<span class="k3">/</span><span class="n">3</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">16</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">do</span><span class="k2">{</span>F<span class="k3">=</span><span class="n">0</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>?<a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>B,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i</td></tr><tr><td class="number">16</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span>l<span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>c<span class="k2">(</span>j,i<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>f<span class="k3">=</span>M<span class="k2">(</span>i,j<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>a<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>a<span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>a<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>b<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>b<span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>b<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">17</td><td><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>B,a<span class="k3">+</span>p<span class="k2">(</span>i<span class="k2">)</span><span class="k3">+</span>b,a<span class="k3">+</span>p<span class="k2">(</span>j<span class="k2">)</span><span class="k3">+</span>b,f?<span class="n">12</span><span class="k2">:</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>F<span class="k3">|</span><span class="k3">=</span>f<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,p<span class="k2">(</span>i<span class="k2">)</span>,<span class="n">8</span>,<span class="n">0</span></td></tr><tr><td class="number">18</td><td><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,p<span class="k2">(</span>i<span class="k2">)</span>,<span class="n">6</span>,s<span class="k3">=</span><span class="k3">=</span>i?<span class="n">7</span><span class="k2">:</span><span class="n">8</span><span class="k2">)</span><span class="k2">;</span>s<span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a>?s:-1<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="k3">&amp;</span>s<span class="k3">&lt;</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>mouse_x-x<span class="k3">&lt;</span>i&gt;,<span class="k3">-</span></td></tr><tr><td class="number">19</td><td><span class="n">7</span>,<span class="n">7</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>_<span class="k2">(</span>mouse_y-y<span class="k3">&lt;</span>i&gt;,<span class="k3">-</span><span class="n">7</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">)</span>s<span class="k3">=</span>i<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>s&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span>s<span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k2">;</span>y<span class="k2">[</span>s<span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">;</span><span class="k2">}</span>textprintf<span class="k2">(</span>B</td></tr><tr><td class="number">20</td><td>,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">10</span>,<span class="n">0</span>,<span class="s">"Level %d"</span>,l-3<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/mouse_sprite" target="_blank"><span class="a">mouse_sprite</span></a>,<a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a>,<a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B</td></tr><tr><td class="number">21</td><td>,<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,w<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>F<span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k2">)</span><span class="k2">;</span>H<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">2000</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k2">[</span>l<span class="k2">]</span><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>%</td></tr><tr><td class="number">22</td><td>w<span class="k3">*</span><span class="n">2</span><span class="k3">-</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k2">[</span>l<span class="k2">]</span><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>%w<span class="k3">*</span><span class="n">2</span><span class="k3">-</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>h<span class="k3">+</span><span class="k3">=</span>M<span class="k2">(</span>i,l<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h&gt;H<span class="k2">)</span><span class="k2">{</span>H<span class="k3">=</span>h<span class="k2">;</span>X<span class="k3">=</span>x<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span></td></tr><tr><td class="number">23</td><td>y<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>x<span class="k2">[</span>l<span class="k2">]</span><span class="k3">=</span>X<span class="k2">;</span>y<span class="k2">[</span>l<span class="k2">]</span><span class="k3">=</span>Y<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>c<span class="k2">(</span>i,l<span class="k2">)</span><span class="k3">=</span>M<span class="k2">(</span>i,l<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">*</span>c<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>%l,<a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%l<span class="k2">)</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td><span class="k2">}</span><span class="k2">}</span><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><span class="k2">;</span><span class="c">///////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>

Is anyone else coding or am I the only one doing this? <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Anyway, I encourage everyone to try coding up a screenful of code, it&#39;s not as hard as it looks (and it&#39;s fun!).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Per Larsson)</author>
		<pubDate>Sat, 26 Apr 2008 18:51:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
EDIT1: And I was able to compile (and run) it right out of the box:<br />gcc game.c -o game.exe
</p></div></div><p>What?... not even <i>-lalleg</i>?...</p><p>Doesn&#39;t matter. Version 2 is working fine. I don&#39;t know what was wrong before.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Sun, 27 Apr 2008 03:39:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m trying to find time to do something. I also need an idea of what to do.</p><p>[edit]<br /><s>In my compiler, It needs some variable type definitions.</s><br />Heck, I can&#39;t make it compile at all right now. I included <tt>alleg.h</tt>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 27 Apr 2008 05:25:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><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><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>B<span class="k2">;</span><span class="k1">int</span> w,tt,i,ts<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">volatile</span> <span class="k1">int</span> t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> i_t<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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>i_t<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">3</td><td><span class="k2">)</span><span class="k1">class</span> C<span class="k2">{</span>public:double x,y,vx,vy<span class="k2">;</span><span class="k1">void</span> L<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">+</span><span class="k3">=</span>vx<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>vy<span class="k2">;</span>vy<span class="k3">*</span><span class="k3">=</span>.<span class="n">95</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">class</span> P:public</td></tr><tr><td class="number">4</td><td>C<span class="k2">{</span>public:double r<span class="k2">;</span><span class="k1">void</span> L<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>C::L<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>vx<span class="k3">*</span><span class="k3">=</span>.<span class="n">95</span><span class="k2">;</span><span class="k2">}</span>P<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>r<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">200</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">150</span><span class="k2">;</span>vx<span class="k3">=</span>vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> D<span class="k2">(</span></td></tr><tr><td class="number">5</td><td><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,x,y,r,w<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>p<span class="k2">;</span><span class="k1">class</span> E:public C<span class="k2">{</span>public:void L<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>C::L<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>vx<span class="k3">*</span><span class="k3">=</span>.<span class="n">98f</span><span class="k2">;</span><span class="k1">if</span></td></tr><tr><td class="number">6</td><td><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>vx&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x&gt;p.x<span class="k3">+</span>p.vx<span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">+</span>vx<span class="k3">&lt;</span>p.x<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x<span class="k3">+</span>vx&gt;p.x<span class="k3">+</span>p.vx<span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">&lt;</span>p.x<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>vx<span class="k3">&lt;</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x<span class="k3">&lt;</span>p.x<span class="k3">+</span>p.vx</td></tr><tr><td class="number">7</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">+</span>vx&gt;p.x<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x<span class="k3">+</span>vx<span class="k3">&lt;</span>p.x<span class="k3">+</span>p.vx<span class="k3">&amp;</span><span class="k3">&amp;</span>x&gt;p.x<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">&lt;</span>p.y<span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">+</span><span class="n">20</span><span class="k3">&gt;</span>p.y<span class="k2">)</span><span class="k2">{</span>p.x<span class="k3">=</span>x<span class="k3">+</span>vx<span class="k2">;</span>p.vx<span class="k3">=</span><span class="k3">-</span>p.vx<span class="k3">+</span>vx</td></tr><tr><td class="number">8</td><td><span class="k3">*</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x&gt;400<span class="k2">)</span><span class="k2">{</span>y<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>%<span class="n">280</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">400</span><span class="k2">;</span>vx<span class="k3">=</span><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">85</span><span class="k2">)</span><span class="k3">*</span>.<span class="n">1f</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>y<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>%<span class="n">280</span><span class="k2">;</span>x</td></tr><tr><td class="number">9</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>vx<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">85</span><span class="k2">)</span><span class="k3">*</span>.<span class="n">1f</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>E<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> D<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,x,y,x<span class="k3">+</span>vx,y<span class="k3">+</span><span class="n">20</span>,w<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>E e<span class="k2">[</span><span class="n">100</span><span class="k2">]</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="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="k2">;</span><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">11</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">400</span>,<span class="n">300</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span><span class="k1">bool</span> go<span class="k3">=</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td><a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>i_t<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>t<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>i_t,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>B<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><span class="n">400</span>,<span class="n">300</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k2">;</span>w<span class="k3">=</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>tt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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="k3">&amp;</span><span class="k3">&amp;</span>go<span class="k2">)</span><span class="k2">{</span>clear<span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span>p.D<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i</td></tr><tr><td class="number">14</td><td><span class="k3">&lt;</span>ts<span class="k2">;</span>e<span class="k2">[</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">]</span>.D<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>tt<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/textout_ex" target="_blank"><span class="a">textout_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"STAY ON SCREEN SUCKER!"</span>,<span class="n">20</span>,<span class="n">100</span>,w,<span class="k3">-</span><span class="n">1</span></td></tr><tr><td class="number">15</td><td><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">1</span>,<span class="n">1</span>,w,<span class="k3">-</span><span class="n">1</span>,<span class="s">"points: %i"</span>,tt<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">400</span></td></tr><tr><td class="number">16</td><td>,<span class="n">300</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>tt<span class="k3">&lt;</span>t<span class="k2">;</span>tt<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>p.L<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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>p.vy-<span class="k3">=</span>.<span class="n">5f</span><span class="k2">;</span><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>p.vy<span class="k3">+</span><span class="k3">=</span>.<span class="n">5f</span></td></tr><tr><td class="number">17</td><td><span class="k2">;</span><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>p.vx-<span class="k3">=</span>.<span class="n">5f</span><span class="k2">;</span><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>p.vx<span class="k3">+</span><span class="k3">=</span>.<span class="n">5f</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>ts<span class="k2">;</span>e<span class="k2">[</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">]</span>.L<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">18</td><td><span class="k2">)</span><span class="k2">;</span>ts<span class="k3">=</span>tt<span class="k3">/</span><span class="n">100</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p.x&gt;400<span class="k3">|</span><span class="k3">|</span>p.x<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p.y<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p.y&gt;300<span class="k2">)</span>go<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>clear<span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,</td></tr><tr><td class="number">19</td><td><a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">20</span>,<span class="n">50</span>,w,<span class="k3">-</span><span class="n">1</span>,<span class="s">"game over       score: %i"</span>,tt<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">400</span>,<span class="n">300</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td><a href="http://www.allegro.cc/manual/clear_keybuf" target="_blank"><span class="a">clear_keybuf</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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><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>
OK, now I&#39;ll really start preparing for A-levels...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Seppl)</author>
		<pubDate>Sun, 27 Apr 2008 06:00:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>80x25, eh? I&#39;ll put together something next weekend. I&#39;ve got exams this week.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jeff Bernard)</author>
		<pubDate>Sun, 27 Apr 2008 07:10:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Suggestion, put a suggested file name to use in the comment area
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (MiquelFire)</author>
		<pubDate>Sun, 27 Apr 2008 07:41:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I&#39;m still trying to think up an idea. This always takes a while. <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sun, 27 Apr 2008 18:49:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I am working on something, but its slow going, but I am definitely in for this. <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Timorg)</author>
		<pubDate>Sun, 27 Apr 2008 18:56:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Decided to try my hands at this.. The below code generates a random &quot;dungeon&quot; in which you can walk around and.. not much more. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /> Screenshot is attached.
</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">#define P(a,b) if(a&gt;1&amp;&amp;b&gt;1&amp;&amp;a&lt;79&amp;&amp;b&lt;24)</span></td></tr><tr><td class="number">3</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>bf<span class="k2">;</span><span class="k1">char</span> m<span class="k2">[</span><span class="n">25</span><span class="k2">]</span><span class="k2">[</span><span class="n">80</span><span class="k2">]</span><span class="k2">;</span><span class="k1">char</span> fog<span class="k2">[</span><span class="n">25</span><span class="k2">]</span><span class="k2">[</span><span class="n">80</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> px, py<span class="k2">;</span><span class="k1">void</span> a<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span></td></tr><tr><td class="number">4</td><td>w,<span class="k1">int</span> h<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> _x, _y<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>_y<span class="k3">=</span>y<span class="k2">;</span>_y<span class="k3">&lt;</span>y<span class="k3">+</span>h<span class="k2">;</span>_y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>_x<span class="k3">=</span>x<span class="k2">;</span>_x<span class="k3">&lt;</span>x<span class="k3">+</span>w<span class="k2">;</span>_x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>P<span class="k2">(</span>_x,_y<span class="k2">)</span>m<span class="k2">[</span>_y<span class="k2">]</span><span class="k2">[</span></td></tr><tr><td class="number">5</td><td>_x<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> b<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> l,<span class="k1">int</span> d<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> _x<span class="k3">=</span>x,_y<span class="k3">=</span>y<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>_x<span class="k3">=</span>x<span class="k2">;</span>_x<span class="k3">&lt;</span>x<span class="k3">+</span></td></tr><tr><td class="number">6</td><td>l<span class="k2">;</span>_x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>P<span class="k2">(</span>_x,_y<span class="k2">)</span>m<span class="k2">[</span>_y<span class="k2">]</span><span class="k2">[</span>_x<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>_y<span class="k3">=</span>y-l<span class="k2">;</span>_y<span class="k3">&lt;</span>y<span class="k2">;</span>_y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>P<span class="k2">(</span>_x,_y<span class="k2">)</span>m<span class="k2">[</span>_y<span class="k2">]</span></td></tr><tr><td class="number">7</td><td><span class="k2">[</span>_x<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>_x<span class="k3">=</span>x-l<span class="k2">;</span>_x<span class="k3">&lt;</span>x<span class="k2">;</span>_x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>P<span class="k2">(</span>_x,_y<span class="k2">)</span>m<span class="k2">[</span>_y<span class="k2">]</span><span class="k2">[</span>_x<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">3</span></td></tr><tr><td class="number">8</td><td><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>_y<span class="k3">=</span>y<span class="k2">;</span>_y<span class="k3">&lt;</span>y<span class="k3">+</span>l<span class="k2">;</span>_y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>P<span class="k2">(</span>_x,_y<span class="k2">)</span>m<span class="k2">[</span>_y<span class="k2">]</span><span class="k2">[</span>_x<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> g<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> r<span class="k3">=</span><span class="n">10</span><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>%<span class="n">10</span><span class="k2">;</span><span class="k1">int</span></td></tr><tr><td class="number">9</td><td>n<span class="k2">;</span><span class="k1">int</span> x<span class="k3">=</span><span class="n">1</span><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>%<span class="n">79</span><span class="k2">;</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">1</span><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>%<span class="n">24</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span>r<span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> w<span class="k3">=</span><span class="n">4</span><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>%<span class="n">4</span><span class="k2">;</span><span class="k1">int</span> </td></tr><tr><td class="number">10</td><td>h<span class="k3">=</span><span class="n">4</span><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>%<span class="n">4</span><span class="k2">;</span><span class="k1">int</span> d<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>%<span class="n">4</span><span class="k2">;</span><span class="k1">int</span> l<span class="k3">=</span><span class="n">4</span><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>%<span class="n">12</span><span class="k2">;</span>a<span class="k2">(</span>x,y,w,h<span class="k2">)</span><span class="k2">;</span>b<span class="k2">(</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span>?x<span class="k3">+</span>w:<span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>?x</td></tr><tr><td class="number">11</td><td><span class="k2">:</span>x<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>%w,<span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>?y:<span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>?y<span class="k3">+</span>h:y<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>%h,l,d<span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> lx<span class="k3">=</span>x<span class="k2">;</span><span class="k1">int</span> ly<span class="k3">=</span>y<span class="k2">;</span>x<span class="k3">=</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span>?x<span class="k3">+</span>l</td></tr><tr><td class="number">12</td><td><span class="k2">:</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>?x-l:x-rand<span class="k2">(</span><span class="k2">)</span>%w<span class="k2">;</span>y<span class="k3">=</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>?y<span class="k3">+</span>l:<span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>?y-l:y-rand<span class="k2">(</span><span class="k2">)</span>%h<span class="k2">;</span><span class="k1">if</span> <span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">1</span><span class="k3">|</span><span class="k3">|</span>x&gt;79<span class="k3">|</span><span class="k3">|</span>y<span class="k3">&lt;</span><span class="n">1</span></td></tr><tr><td class="number">13</td><td><span class="k3">|</span><span class="k3">|</span>y&gt;24<span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="n">1</span><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>%<span class="n">79</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">1</span><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>%<span class="n">24</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>lx<span class="k3">!</span><span class="k3">=</span>x<span class="k2">)</span><span class="k2">{</span>lx<span class="k3">=</span><span class="k2">(</span>lx<span class="k3">&lt;</span>x<span class="k2">)</span>?lx<span class="k3">+</span><span class="n">1</span><span class="k2">:</span>lx-1<span class="k2">;</span>m<span class="k2">[</span>ly<span class="k2">]</span><span class="k2">[</span></td></tr><tr><td class="number">14</td><td>lx<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>ly<span class="k3">!</span><span class="k3">=</span>y<span class="k2">)</span><span class="k2">{</span>ly<span class="k3">=</span><span class="k2">(</span>ly<span class="k3">&lt;</span>y<span class="k2">)</span>?ly<span class="k3">+</span><span class="n">1</span><span class="k2">:</span>ly-1<span class="k2">;</span>m<span class="k2">[</span>ly<span class="k2">]</span><span class="k2">[</span>lx<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">do</span><span class="k2">{</span>px<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>%<span class="n">80</span><span class="k2">;</span>py<span class="k3">=</span>r\</td></tr><tr><td class="number">15</td><td><span class="k1">and</span><span class="k2">(</span><span class="k2">)</span><span class="k3">&amp;</span><span class="n">25</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>m<span class="k2">[</span>py<span class="k2">]</span><span class="k2">[</span>px<span class="k2">]</span><span class="k3">!</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> c<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>bf<span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> x,y<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span></td></tr><tr><td class="number">16</td><td><span class="n">25</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">&lt;</span><span class="n">80</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>fog<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/textout_ex" target="_blank"><span class="a">textout_ex</span></a><span class="k2">(</span>bf,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="k2">(</span><span class="k2">(</span>m<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>?<span class="s">"."</span><span class="k2">:</span></td></tr><tr><td class="number">17</td><td><span class="s">"#"</span><span class="k2">)</span>,x<span class="k3">*</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span>,<span class="k2">(</span>fog<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>?<span class="n">24</span><span class="k2">:</span><span class="n">18</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textout_ex" target="_blank"><span class="a">textout_ex</span></a><span class="k2">(</span>bf,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"@"</span>,px<span class="k3">*</span><span class="n">8</span>,py<span class="k3">*</span><span class="n">8</span>,<span class="n">14</span>,<span class="k3">-</span><span class="n">1</span></td></tr><tr><td class="number">18</td><td><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>bf,<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>,<span class="n">640</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="k2">;</span><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">19</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_569.html" target="_blank">memset</a><span class="k2">(</span>m,<span class="n">0</span>,<span class="n">2000</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_569.html" target="_blank">memset</a><span class="k2">(</span>fog,<span class="n">0</span>,<span class="n">2000</span><span class="k2">)</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="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_AUT\</td></tr><tr><td class="number">20</td><td>ODETECT_WINDOWED,<span class="n">640</span>,<span class="n">240</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>bf<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><span class="n">640</span>, <span class="n">240</span><span class="k2">)</span><span class="k2">;</span>g<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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\</td></tr><tr><td class="number">21</td><td>_ESC<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> x,y<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">25</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">&lt;</span><span class="n">80</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>fog<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>fog<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="n">2</span></td></tr><tr><td class="number">22</td><td><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span>py-6<span class="k2">;</span>y<span class="k3">&lt;</span><span class="k3">=</span>py<span class="k3">+</span><span class="n">6</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span>px-6<span class="k2">;</span>x<span class="k3">&lt;</span><span class="k3">=</span>px<span class="k3">+</span><span class="n">6</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x&gt;<span class="k3">=</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">&lt;</span><span class="n">80</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y&gt;<span class="k3">=</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">&lt;</span><span class="n">25</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">23</td><td><span class="k2">(</span>px-x<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>px-x<span class="k2">)</span><span class="k3">+</span><span class="k2">(</span>py-y<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>py-y<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span>fog<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>c<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> tx<span class="k3">=</span>px,ty<span class="k3">=</span>py<span class="k2">;</span><span class="k1">int</span> k<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a></td></tr><tr><td class="number">24</td><td><span class="k2">(</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span>KEY_RIGHT<span class="k2">)</span>px<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span>KEY_LEFT<span class="k2">)</span>px--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span>KEY_DOWN<span class="k2">)</span>py<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span>KE\</td></tr><tr><td class="number">25</td><td>Y_UP<span class="k2">)</span>py--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>m<span class="k2">[</span>py<span class="k2">]</span><span class="k2">[</span>px<span class="k2">]</span><span class="k3">!</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>px<span class="k3">=</span>tx<span class="k2">;</span>py<span class="k3">=</span>ty<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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 (netcat)</author>
		<pubDate>Mon, 28 Apr 2008 04:32:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I decided to take my shot on this. It&#39;s my first time and I thought I could manage to get a working Tetris clone on a 80x25 code file, so I dedicated an afternoon to work on it, but turns out I was wrong.</p><p>It seems I can&#39;t get it under 34 lines without sacrificing gameplay and leaving it heavily crippled.</p><p>I&#39;m taking a rest on it. Maybe I&#39;ll come back later and try to strip it down.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Tue, 29 Apr 2008 09:25:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I still need a game idea before I start coding.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Tue, 29 Apr 2008 19:03:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>you don&#39;t. look at me
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Seppl)</author>
		<pubDate>Tue, 29 Apr 2008 19:34:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>OK, here it is. I had never coded a Tetris before &#39;cause I&#39;ve always believed that the world doesn&#39;t need yet another Tetris clone, but a 80x25 compo seemed like a perfect excuse.</p><p>I had to sacrifice the <i>blinking for removing completed lines</i> <b>and</b> the <i>next piece preview</i> which was a terrible lost, but I decided to rather sacrifice that than messing with the controls.</p><p>I don&#39;t think I&#39;m going to try to do something like this again. It was a pain to make it fit and I don&#39;t think it can be pushed much more further.</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;                            // SHTetris.c</span></td></tr><tr><td class="number">2</td><td><span class="p">#define B() blit(off,screen,0,0,0,0,640,480)    ///////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define RF(xo,yo,x,y,c) rectfill(off,xo+x*16,yo+y*16,xo+x*16+16,yo+y*16+16,c)</span></td></tr><tr><td class="number">4</td><td><span class="k1">int</span> F<span class="k2">[</span><span class="n">25</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> ps<span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">241</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">241</span>,<span class="n">0</span>,<span class="n">32</span>,<span class="n">39</span>,<span class="n">52</span>,<span class="n">0</span>,<span class="n">48</span>,<span class="n">17</span>,<span class="n">23</span>,<span class="n">0</span>,<span class="n">16</span>,<span class="n">20</span>,<span class="n">55</span>,<span class="n">0</span>,</td></tr><tr><td class="number">5</td><td><span class="n">48</span>,<span class="n">39</span>,<span class="n">33</span>,<span class="n">0</span>,<span class="n">16</span>,<span class="n">54</span>,<span class="n">35</span>,<span class="n">0</span>,<span class="n">16</span>,<span class="n">54</span>,<span class="n">35</span>,<span class="n">0</span>,<span class="n">32</span>,<span class="n">51</span>,<span class="n">22</span>,<span class="n">0</span>,<span class="n">32</span>,<span class="n">51</span>,<span class="n">22</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">35</span>,<span class="n">114</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">115</span>,<span class="n">33</span>,<span class="n">0</span>,<span class="n">0</span>,</td></tr><tr><td class="number">6</td><td><span class="n">51</span>,<span class="n">51</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">51</span>,<span class="n">51</span><span class="k2">}</span><span class="k2">;</span><span class="k1">int</span> i,j,p,np<span class="k3">=</span><span class="n">0</span>,m<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,xcm<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,x,y,nx,lk,pa<span class="k3">=</span>FALSE,o,no<span class="k3">=</span><span class="n">0</span>,ct,lx,lv,</td></tr><tr><td class="number">7</td><td>c<span class="k3">=</span><span class="n">0</span>,xc<span class="k3">=</span><span class="n">0</span>,oc<span class="k3">=</span><span class="n">0</span>,cl,ctl,ksp,kl,kr,kap,lt,rt,ltl,rtl<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>off<span class="k2">;</span><span class="k1">int</span> uF<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">23</span><span class="k2">;</span></td></tr><tr><td class="number">8</td><td>i&gt;0<span class="k2">;</span>i--<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">&amp;</span><span class="n">0xFFFF</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0xFFFF</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span>i<span class="k2">;</span>j&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>j--<span class="k2">)</span>F<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>F<span class="k2">[</span>j-1<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span> <span class="k1">int</span> DP<span class="k2">(</span><span class="k1">int</span> xo</td></tr><tr><td class="number">9</td><td>,<span class="k1">int</span> yo<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>m<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&amp;</span><span class="k2">(</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>i<span class="k2">)</span><span class="k2">)</span>RF<span class="k2">(</span>xo,yo,i,<span class="k2">(</span>y-j-1<span class="k2">)</span>,</td></tr><tr><td class="number">10</td><td><span class="n">0x0000FF</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span> <span class="k1">int</span> DF<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">25</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>F<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&amp;</span><span class="k2">(</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>i<span class="k2">)</span><span class="k2">)</span>RF<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span></td></tr><tr><td class="number">11</td><td>,i,j,<span class="n">0xFF0000</span><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> RF<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,i,j,<span class="n">0xFFFF00</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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">12</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><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">24</span><span class="k2">)</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,<span class="n">640</span>,<span class="n">480</span></td></tr><tr><td class="number">13</td><td>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span>off<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">[</span><span class="n">24</span><span class="k2">]</span><span class="k3">=</span><span class="n">0xFFFFFFFF</span><span class="k2">;</span><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></td></tr><tr><td class="number">14</td><td><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>pa<span class="k2">)</span><span class="k2">{</span>p<span class="k3">=</span>np<span class="k2">;</span>np<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>%<span class="n">7</span><span class="k2">;</span>o<span class="k3">=</span>no<span class="k2">;</span>no<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>%<span class="n">4</span><span class="k2">;</span>ct<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>pa<span class="k3">=</span>TRUE<span class="k2">;</span>x<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>nx<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>cl<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>ctl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span>lv<span class="k3">=</span><span class="k2">(</span>o<span class="k3">&lt;</span><span class="n">2</span><span class="k2">)</span>?<span class="n">3</span><span class="k2">:</span><span class="n">7</span><span class="k2">;</span>lx<span class="k3">=</span><span class="k2">(</span>o%<span class="n">2</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>?<span class="n">0</span><span class="k2">:</span><span class="n">1</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>p<span class="k2">]</span><span class="k2">[</span>lv-i<span class="k2">]</span><span class="k2">;</span>m<span class="k2">[</span></td></tr><tr><td class="number">16</td><td>i<span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>lx<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>?<span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&amp;</span><span class="n">0xF0</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">4</span><span class="k2">:</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&amp;</span><span class="n">0x0F</span><span class="k2">;</span><span class="k2">}</span><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><span class="k2">{</span>lt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>lt&gt;ltl<span class="k2">)</span><span class="k2">{</span>lt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>nx<span class="k3">=</span></td></tr><tr><td class="number">17</td><td>x-1<span class="k2">;</span>ltl<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ltl<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>ltl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="k2">{</span>rt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span> <span class="k2">(</span>rt&gt;rtl<span class="k2">)</span><span class="k2">{</span>rt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>nx<span class="k3">=</span>x<span class="k3">+</span><span class="n">1</span><span class="k2">;</span>rtl</td></tr><tr><td class="number">18</td><td><span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rtl<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>rtl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>ksp<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="k2">(</span>o<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">;</span>ksp<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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></td></tr><tr><td class="number">19</td><td>KEY_SPACE<span class="k2">]</span><span class="k2">)</span>ksp<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</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_LEFT<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>ltl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>lt<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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="k2">)</span><span class="k2">{</span>rtl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>rt</td></tr><tr><td class="number">20</td><td><span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><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><span class="k2">{</span>cl<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>ctl<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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_DOWN<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>cl<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>ctl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">4</span></td></tr><tr><td class="number">21</td><td><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>xcm<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>nx<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-1<span class="k2">]</span><span class="k3">&amp;</span>xcm<span class="k2">[</span><span class="n">0</span><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><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-2<span class="k2">]</span><span class="k3">&amp;</span>xcm<span class="k2">[</span><span class="n">1</span><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><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-3<span class="k2">]</span><span class="k3">&amp;</span></td></tr><tr><td class="number">22</td><td>xcm<span class="k2">[</span><span class="n">2</span><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><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-4<span class="k2">]</span><span class="k3">&amp;</span>xcm<span class="k2">[</span><span class="n">3</span><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><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>nx<span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span></td></tr><tr><td class="number">23</td><td>y<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k2">[</span><span class="n">0</span><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><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-1<span class="k2">]</span> <span class="k3">&amp;</span> m<span class="k2">[</span><span class="n">1</span><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><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-2<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k2">[</span><span class="n">2</span><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><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-3<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k2">[</span><span class="n">3</span><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><span class="k2">)</span><span class="k2">{</span>ct<span class="k3">=</span></td></tr><tr><td class="number">24</td><td><span class="n">0</span><span class="k2">;</span>c<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>c&gt;cl<span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>ct<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>ct&gt;ctl<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>F<span class="k2">[</span>y-i-1<span class="k2">]</span><span class="k3">=</span>F<span class="k2">[</span>y-i-</td></tr><tr><td class="number">25</td><td><span class="n">1</span><span class="k2">]</span><span class="k3">|</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">;</span><span class="k2">}</span>pa<span class="k3">=</span>FALSE<span class="k2">;</span>ct<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>DF<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>DP<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>uF<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">15</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>

<b>KEYS:</b> LEFT, RIGHT, DOWN, SPACE</p><p>http://www.allegro.cc/files/attachment/595142</p><p>---------------------------------------<br />PS. The game has some flaws, I know it.</p><p>[EDIT]: Screenshot attached.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Tue, 29 Apr 2008 22:46:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
It seems I can&#39;t get it under 34 lines without sacrificing gameplay and leaving it heavily crippled.
</p></div></div><p> Didn&#39;t ML put together a working tetris game for the 20 lines of code contest?  IIRC, that contest only allowed 20 lines with one semi colon per line. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>Edit: I think someone even did Pac Man! <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Michael Jensen)</author>
		<pubDate>Wed, 30 Apr 2008 00:54:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, it was hard enough for me to make this 80x25 code. Anything under that is obviously out of my league.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Wed, 30 Apr 2008 01:20:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The 20 line competition was different because it went by semicolons. Some people cheated by using commas as semicolons, but I avoided that.</p><p><a href="http://www.matthewleverton.com/misc/20lines.html">http://www.matthewleverton.com/misc/20lines.html</a></p><p>I think 80x25 is a harder challenge simply because there is a finite limit to the number of characters you can use. (Compare that to my line 7, which is quite long.)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Wed, 30 Apr 2008 01:50:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>And here is my and Ted&#39;s entry for the competition. For you who haven&#39;t played Cursor*10 the game probably needs some instructions. The goal of the game is to get as high score as possible.
</p><ul><li><p> Blue boxes give score points when clicked and unlocks the door to the next level</p></li><li><p> Red boxes are closed doors</p></li><li><p> Green boxes are open doors</p></li><li><p> Yellow boxes are extra lives</p></li><li><p> Red circles open doors when pushed</p></li><li><p> Black boxes are openings to the previous level, however you can&#39;t use them to go back.</p></li></ul><p>

At most levels you need to click more than one blue box and/or push more than one red circle in order to unlock the door to the next level. It may seem tough at first, but you&#39;ll get help as the game progresses.</p><p>Oh, and one more thing, when the time is up you loose a life and have to restart from the first level.</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;/////////////////Cursor*n v1.2 By Olof Naessén and Ted Steen</span></td></tr><tr><td class="number">2</td><td><span class="p">#define F(i,j)for(i=0;i&lt;j;i++)//////////////////////////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define R(x,y,c)rectfill(B,x*f,y*f,x*f+f,y*f+f,c);//////////////////////////////</span></td></tr><tr><td class="number">4</td><td><span class="p">#define P(x,y,t,v)textprintf(B,font,x,y,0,t,v);/////////////////////////////////</span></td></tr><tr><td class="number">5</td><td><span class="k1">int</span><span class="k3">*</span>B,A<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">[</span><span class="n">99999</span><span class="k2">]</span><span class="k2">[</span><span class="n">5</span><span class="k2">]</span>,C<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,D<span class="k2">[</span><span class="n">49</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span>,E<span class="k2">[</span><span class="n">49</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span>,g<span class="k3">=</span><span class="n">1</span>,o,d,a,r,k,b,i,t,s</td></tr><tr><td class="number">6</td><td><span class="k3">=</span><span class="n">400</span>,l<span class="k3">=</span><span class="n">3</span>,w,q<span class="k3">=</span><span class="n">3000</span>,<span class="k3">*</span>u,<span class="k3">*</span>e,h<span class="k3">=</span><span class="n">1</span>,f<span class="k3">=</span><span class="n">40</span>,p<span class="k3">=</span><span class="n">10</span>,j<span class="k3">=</span><span class="n">49</span><span class="k2">;</span><span class="k1">void</span> Q<span class="k2">(</span><span class="k1">int</span> z,<span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> t,<span class="k1">int</span> s<span class="k2">)</span></td></tr><tr><td class="number">7</td><td><span class="k2">{</span>u<span class="k3">=</span>D<span class="k2">[</span>z<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>u<span class="k3">=</span>t<span class="k2">;</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>s<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><span class="n">6</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span>i,g<span class="k2">)</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>F<span class="k2">(</span>i,j<span class="k2">)</span>F<span class="k2">(</span>k,p</td></tr><tr><td class="number">8</td><td><span class="k2">)</span>F<span class="k2">(</span>r,p<span class="k2">)</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>F<span class="k2">(</span>i,j<span class="k2">)</span><span class="k2">{</span>r<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>%p<span class="k2">;</span>k<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">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</span>Q<span class="k2">(</span>i,r,k,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>D<span class="k2">[</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span>r<span class="k2">]</span></td></tr><tr><td class="number">9</td><td><span class="k2">[</span>k<span class="k2">]</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span>F<span class="k2">(</span>a,<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="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">+</span>i<span class="k3">/</span><span class="n">2</span><span class="k2">)</span>Q<span class="k2">(</span>i,<a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%p,<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">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span>,<span class="n">1</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="k2">(</span><span class="k2">(</span>i<span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k3">+</span><span class="n">2</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span>a, </td></tr><tr><td class="number">10</td><td><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">2</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>i&gt;5<span class="k2">)</span>Q<span class="k2">(</span>i,<a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%p,<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">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> v<span class="k2">(</span><span class="k1">int</span> c<span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span>i,j<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>F<span class="k2">(</span>k,p<span class="k2">)</span></td></tr><tr><td class="number">11</td><td><span class="k2">{</span>F<span class="k2">(</span>r,p<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span>r<span class="k2">;</span>b<span class="k3">=</span>k<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>R<span class="k2">(</span>r,k,<span class="n">4</span><span class="k2">)</span><span class="k1">else</span> R<span class="k2">(</span>r,k,p<span class="k2">)</span><span class="k2">}</span></td></tr><tr><td class="number">12</td><td><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k2">)</span><span class="k2">{</span>R<span class="k2">(</span>r,k,<span class="n">3</span><span class="k2">)</span>P<span class="k2">(</span>r<span class="k3">*</span>f<span class="k3">+</span><span class="n">18</span>,k<span class="k3">*</span>f<span class="k3">+</span><span class="n">18</span>,<span class="s">"%d"</span>,u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k3">&amp;</span>c</td></tr><tr><td class="number">13</td><td><span class="k3">=</span><span class="k3">=</span>i<span class="k2">)</span>R<span class="k2">(</span>r,k,<span class="n">0</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> w<span class="k3">=</span>p<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,r<span class="k3">*</span>f<span class="k3">+</span><span class="n">20</span>,</td></tr><tr><td class="number">14</td><td>k<span class="k3">*</span>f<span class="k3">+</span><span class="n">20</span>,<span class="n">20</span>,w<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k3">&amp;</span><span class="k3">&amp;</span>E<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>R<span class="k2">(</span>r,k,<span class="n">14</span><span class="k2">)</span><span class="k2">}</span><span class="k2">}</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>a<span class="k2">]</span><span class="k3">&lt;</span>b&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>o<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>S<span class="k2">(</span></td></tr><tr><td class="number">15</td><td><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span>i,j<span class="k2">)</span>E<span class="k3">&lt;</span>i&gt;<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>%p<span class="k2">]</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">9</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</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="k2">;</span>text_mode<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</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></td></tr><tr><td class="number">16</td><td><span class="k2">)</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="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><span class="n">2</span>,s,s,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<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>s,s<span class="k2">)</span><span class="k2">;</span>A<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">[</span>d<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">17</td><td><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>d&gt;q<span class="k2">)</span><span class="k2">{</span>l--<span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>P<span class="k2">(</span><span class="n">155</span>,<span class="n">200</span>,<span class="s">"Game Over"</span>,<span class="n">0</span><span class="k2">)</span>P<span class="k2">(</span><span class="n">100</span>,</td></tr><tr><td class="number">18</td><td><span class="n">209</span>,<span class="s">"Highest level reached %d"</span>,h<span class="k2">)</span><span class="k2">}</span><span class="k1">else</span> <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span>q<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>l<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>B,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>P<span class="k2">(</span></td></tr><tr><td class="number">19</td><td><span class="n">9</span>,<span class="n">19</span>,<span class="s">"Score %d"</span>,t<span class="k2">)</span>P<span class="k2">(</span><span class="n">9</span>,<span class="n">29</span>,<span class="s">"Lives %d"</span>,l<span class="k2">)</span>P<span class="k2">(</span><span class="n">150</span>,<span class="n">9</span>,<span class="s">"Time %d"</span>,q-d<span class="k2">)</span>e<span class="k3">=</span>A<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">[</span>d<span class="k2">]</span><span class="k2">;</span>v<span class="k2">(</span>C<span class="k2">[</span>g-1<span class="k2">]</span></td></tr><tr><td class="number">20</td><td><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>e<span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k2">;</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">;</span>e<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k2">)</span>e<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="k3">&amp;</span>A<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">[</span>d-1<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">21</td><td>e<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>e<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>F<span class="k2">(</span>i,j<span class="k2">)</span>F<span class="k2">(</span>r,p<span class="k2">)</span>F<span class="k2">(</span>k,p<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>F<span class="k2">(</span>i,g<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>A<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>d<span class="k2">]</span></td></tr><tr><td class="number">22</td><td><span class="k2">;</span>r<span class="k3">=</span><span class="k3">*</span>u<span class="k3">/</span>f<span class="k2">;</span>k<span class="k3">=</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span>f<span class="k2">;</span>o<span class="k3">=</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span>C<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/mouse_sprite" target="_blank"><span class="a">mouse_sprite</span></a>,<span class="k3">*</span>u,u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i</td></tr><tr><td class="number">23</td><td><span class="k3">=</span><span class="k3">=</span>g-1<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,<span class="k3">*</span>u,u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">4</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">=</span>D<span class="k2">[</span>o<span class="k2">]</span><span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>e<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k3">&amp;</span><span class="k3">&amp;</span>u<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span></td></tr><tr><td class="number">24</td><td>e<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>h<span class="k3">=</span>MAX<span class="k2">(</span>h,C<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>e<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span>u<span class="k3">=</span><span class="k3">&amp;</span>E<span class="k2">[</span>o<span class="k2">]</span><span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k</td></tr><tr><td class="number">25</td><td><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>u<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span>d<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,s,s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">9</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><span class="k2">;</span></td></tr></tbody></table></div></div><p>

Edit: We managed to squeeze in a small pause between rounds.<br />Edit: Yet another update. We now have a Game Over message where you can see the highest level reached.<br />Edit: Fixed a MinGW issue, the code should now compile with MinGW.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Næssén)</author>
		<pubDate>Wed, 30 Apr 2008 02:49:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>@kenmasters1976: Dude, that has maybe the most awesome bug/misfeature I have ever seen in a Tetris game! Don&#39;t like the piece you got, just toss it off to a side.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (MiquelFire)</author>
		<pubDate>Wed, 30 Apr 2008 07:21:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I am currently enjoying some sun in Croatia. <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" /> I already made something before I left, I&#39;ll post it when I come back in Saturday.</p><p>One question, must all of the 80x25 space be filled with code or can there be gaps in between? I&#39;m just wondering.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Vanneto)</author>
		<pubDate>Wed, 30 Apr 2008 12:23:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Use comments like this:
</p><div class="source-code snippet"><div class="inner"><pre>codecodeblah<span class="c">//comment!</span>
</pre></div></div><p>
or
</p><div class="source-code snippet"><div class="inner"><pre>codecodeblah<span class="c">/////////</span>
</pre></div></div><p>
to pad your lines. Ideally, the finished program&#39;s code will all be in a rectangle, 80 characters wide by 25 lines high. Or, if you wish, less than 25 lines high.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Wed, 30 Apr 2008 18:22:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
@kenmasters1976: Dude, that has maybe the most awesome bug/misfeature I have ever seen in a Tetris game! Don&#39;t like the piece you got, just toss it off to a side.
</p></div></div><p>
I know... I ran out of space for coding.</p><p>I may try to fix that later... maybe.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Wed, 30 Apr 2008 23:12:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;ve only managed to compile the tetris game, the rest give me errors.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Thu, 01 May 2008 01:23:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Now with deallocation of the buffer bitmap.<br />This should compile. As a cpp file btw.<br />Hmm... 5 lines left. Maybe I&#39;ll add a highscore list.</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;/////cpp file///////////////////////////by Seppl///////////</span></td></tr><tr><td class="number">2</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>B<span class="k2">;</span><span class="k1">int</span> w,tt,i,ts<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">volatile</span> <span class="k1">int</span> t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> i_t<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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>i_t<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">3</td><td><span class="k2">)</span><span class="k1">class</span> C<span class="k2">{</span>public:double x,y,vx,vy<span class="k2">;</span><span class="k1">void</span> L<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">+</span><span class="k3">=</span>vx<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>vy<span class="k2">;</span>vy<span class="k3">*</span><span class="k3">=</span>.<span class="n">95</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">class</span> P:public</td></tr><tr><td class="number">4</td><td>C<span class="k2">{</span>public:double r<span class="k2">;</span><span class="k1">void</span> L<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>C::L<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>vx<span class="k3">*</span><span class="k3">=</span>.<span class="n">95</span><span class="k2">;</span><span class="k2">}</span>P<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>r<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">200</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">150</span><span class="k2">;</span>vx<span class="k3">=</span>vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> D<span class="k2">(</span></td></tr><tr><td class="number">5</td><td><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,x,y,r,w<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>p<span class="k2">;</span><span class="k1">class</span> E:public C<span class="k2">{</span>public:void L<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>C::L<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>vx<span class="k3">*</span><span class="k3">=</span>.<span class="n">98f</span><span class="k2">;</span><span class="k1">if</span></td></tr><tr><td class="number">6</td><td><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>vx&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x&gt;p.x<span class="k3">+</span>p.vx<span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">+</span>vx<span class="k3">&lt;</span>p.x<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x<span class="k3">+</span>vx&gt;p.x<span class="k3">+</span>p.vx<span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">&lt;</span>p.x<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>vx<span class="k3">&lt;</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x<span class="k3">&lt;</span>p.x<span class="k3">+</span>p.vx</td></tr><tr><td class="number">7</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">+</span>vx&gt;p.x<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x<span class="k3">+</span>vx<span class="k3">&lt;</span>p.x<span class="k3">+</span>p.vx<span class="k3">&amp;</span><span class="k3">&amp;</span>x&gt;p.x<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">&lt;</span>p.y<span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">+</span><span class="n">20</span><span class="k3">&gt;</span>p.y<span class="k2">)</span><span class="k2">{</span>p.x<span class="k3">=</span>x<span class="k3">+</span>vx<span class="k2">;</span>p.vx<span class="k3">=</span><span class="k3">-</span>p.vx<span class="k3">+</span>vx</td></tr><tr><td class="number">8</td><td><span class="k3">*</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x&gt;400<span class="k2">)</span><span class="k2">{</span>y<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>%<span class="n">280</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">400</span><span class="k2">;</span>vx<span class="k3">=</span><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">85</span><span class="k2">)</span><span class="k3">*</span>.<span class="n">1f</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>y<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>%<span class="n">280</span><span class="k2">;</span>x</td></tr><tr><td class="number">9</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>vx<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">85</span><span class="k2">)</span><span class="k3">*</span>.<span class="n">1f</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>E<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> D<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,x,y,x<span class="k3">+</span>vx,y<span class="k3">+</span><span class="n">20</span>,w<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>E e<span class="k2">[</span><span class="n">100</span><span class="k2">]</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="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="k2">;</span><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="c">//</span></td></tr><tr><td class="number">11</td><td><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,<span class="n">400</span>,<span class="n">300</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span><span class="k1">bool</span> go<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="c">//</span></td></tr><tr><td class="number">12</td><td><a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>i_t<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>t<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>i_t,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>B<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><span class="n">400</span>,<span class="n">300</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k2">;</span>w<span class="k3">=</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>tt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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="k3">&amp;</span><span class="k3">&amp;</span>go<span class="k2">)</span><span class="k2">{</span>clear<span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span>p.D<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i</td></tr><tr><td class="number">14</td><td><span class="k3">&lt;</span>ts<span class="k2">;</span>e<span class="k2">[</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">]</span>.D<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>tt<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/textout_ex" target="_blank"><span class="a">textout_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"STAY ON SCREEN SUCKER!"</span>,<span class="n">20</span>,<span class="n">100</span>,w,<span class="k3">-</span><span class="n">1</span></td></tr><tr><td class="number">15</td><td><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">1</span>,<span class="n">1</span>,w,<span class="k3">-</span><span class="n">1</span>,<span class="s">"points: %i"</span>,tt<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">400</span></td></tr><tr><td class="number">16</td><td>,<span class="n">300</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>tt<span class="k3">&lt;</span>t<span class="k2">;</span>tt<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>p.L<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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>p.vy-<span class="k3">=</span>.<span class="n">5f</span><span class="k2">;</span><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>p.vy<span class="k3">+</span><span class="k3">=</span>.<span class="n">5f</span></td></tr><tr><td class="number">17</td><td><span class="k2">;</span><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>p.vx-<span class="k3">=</span>.<span class="n">5f</span><span class="k2">;</span><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>p.vx<span class="k3">+</span><span class="k3">=</span>.<span class="n">5f</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>ts<span class="k2">;</span>e<span class="k2">[</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">]</span>.L<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">18</td><td><span class="k2">)</span><span class="k2">;</span>ts<span class="k3">=</span>tt<span class="k3">/</span><span class="n">100</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p.x&gt;400<span class="k3">|</span><span class="k3">|</span>p.x<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p.y<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p.y&gt;300<span class="k2">)</span>go<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>clear<span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B<span class="c">//</span></td></tr><tr><td class="number">19</td><td>,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">20</span>,<span class="n">50</span>,w,<span class="k3">-</span><span class="n">1</span>,<span class="s">"game over       score: %i"</span>,tt<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">400</span>,<span class="n">300</span><span class="k2">)</span></td></tr><tr><td class="number">20</td><td><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_keybuf" target="_blank"><span class="a">clear_keybuf</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><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><span class="c">//////////</span></td></tr></tbody></table></div></div><p>

EDIT:<br />Every entry here compiles fine for me.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Seppl)</author>
		<pubDate>Thu, 01 May 2008 02:54:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>We didn&#39;t think we would be able to squeeze more stuff into our game, but we did! We added some eye candy in the form of a shake effect when clicking boxes.</p><p>Also, I&#39;ve attached a pre-compiled binary. See my previous post for game instructions.</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;/////////////////Cursor*n v1.3 By Olof Naessén and Ted Steen</span></td></tr><tr><td class="number">2</td><td><span class="p">#define F(i,j)for(i=0;i&lt;j;i++)//////////////////////////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="k1">int</span><span class="k3">*</span>B,A<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">[</span><span class="n">99999</span><span class="k2">]</span><span class="k2">[</span><span class="n">5</span><span class="k2">]</span>,C<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,D<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span>,E<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span>,g<span class="k3">=</span><span class="n">1</span>,o,d,a,r,k,b,i,t,s</td></tr><tr><td class="number">4</td><td><span class="k3">=</span><span class="n">400</span>,l<span class="k3">=</span><span class="n">3</span>,w,q<span class="k3">=</span><span class="n">3000</span>,<span class="k3">*</span>u,<span class="k3">*</span>e,<span class="k3">*</span>z,h<span class="k3">=</span><span class="n">1</span>,f<span class="k3">=</span><span class="n">40</span>,p<span class="k3">=</span><span class="n">10</span>,j<span class="k3">=</span><span class="n">99</span>,X<span class="k3">=</span><span class="n">0</span>,Y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">*</span>Q<span class="k2">(</span>z,x,y,t,s<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>D<span class="k2">[</span>z<span class="k2">]</span><span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span></td></tr><tr><td class="number">5</td><td><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>u<span class="k3">=</span>t<span class="k2">;</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>s<span class="k2">;</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">int</span> L<span class="k2">(</span><span class="k1">int</span> v<span class="k2">)</span><span class="k2">{</span><span class="k1">return</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>%v<span class="k2">;</span><span class="k2">}</span><span class="k3">*</span>R<span class="k2">(</span>x,y,v<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a></td></tr><tr><td class="number">6</td><td><span class="k2">(</span>B,x<span class="k3">*</span>f<span class="k3">+</span>X,y<span class="k3">*</span>f<span class="k3">+</span>Y,x<span class="k3">*</span>f<span class="k3">+</span>f<span class="k3">+</span>Y,y<span class="k3">*</span>f<span class="k3">+</span>f<span class="k3">+</span>Y,v<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k3">*</span>P<span class="k2">(</span>x,y,v<span class="k2">)</span><span class="k2">{</span>textprintf<span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,x<span class="k3">+</span>X,y<span class="k3">+</span>Y,<span class="n">0</span>,z,v<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k3">*</span></td></tr><tr><td class="number">7</td><td>v<span class="k2">(</span><span class="k1">int</span> c<span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span>i,j<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>F<span class="k2">(</span>k,p<span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span>r,p<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span>r<span class="k2">;</span>b<span class="k3">=</span>k<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span></td></tr><tr><td class="number">8</td><td><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>R<span class="k2">(</span>r,k,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> R<span class="k2">(</span>r,k,p<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span><span class="k3">-</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span></td></tr><tr><td class="number">9</td><td><span class="k3">+</span>L<span class="k2">(</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">*</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span>Y<span class="k3">=</span><span class="k3">-</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span>L<span class="k2">(</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">*</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span>u<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><span class="k2">}</span>R<span class="k2">(</span>r,k,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span>z<span class="k3">=</span><span class="s">"%d"</span><span class="k2">;</span>P<span class="k2">(</span>r<span class="k3">*</span>f<span class="k3">+</span><span class="n">18</span>,k<span class="k3">*</span>f<span class="k3">+</span><span class="n">18</span>,u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>X<span class="k3">=</span>Y<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">10</td><td><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> w<span class="k3">=</span>p<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,r<span class="k3">*</span>f<span class="k3">+</span><span class="n">20</span>,k<span class="k3">*</span>f<span class="k3">+</span><span class="n">20</span>,<span class="n">20</span></td></tr><tr><td class="number">11</td><td>,w<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k3">&amp;</span>c<span class="k3">=</span><span class="k3">=</span>i<span class="k2">)</span>R<span class="k2">(</span>r,k,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>c<span class="k3">&amp;</span><span class="k3">&amp;</span>E<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>R<span class="k2">(</span>r,k,<span class="n">14</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>a<span class="k2">]</span><span class="k3">&lt;</span>b&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>o<span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">12</td><td><span class="k2">}</span><span class="k3">*</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><span class="n">3</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span>i,j<span class="k2">)</span>F<span class="k2">(</span>k,p<span class="k2">)</span>F<span class="k2">(</span>r,p<span class="k2">)</span><span class="k3">*</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>F<span class="k2">(</span>i,j<span class="k2">)</span><span class="k2">{</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>r<span class="k3">=</span>L<span class="k2">(</span>p<span class="k2">)</span><span class="k2">;</span>k<span class="k3">=</span>L<span class="k2">(</span><span class="n">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</span>Q<span class="k2">(</span></td></tr><tr><td class="number">13</td><td>i,r,k,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>D<span class="k2">[</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span>F<span class="k2">(</span>a,L<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">+</span>i<span class="k3">/</span><span class="n">2</span><span class="k2">)</span>Q<span class="k2">(</span>i,L<span class="k2">(</span>p<span class="k2">)</span>,L<span class="k2">(</span><span class="n">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,L<span class="k2">(</span><span class="k2">(</span>i<span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k3">+</span><span class="n">2</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span>a,L<span class="k2">(</span></td></tr><tr><td class="number">14</td><td><span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>i&gt;5<span class="k2">)</span>Q<span class="k2">(</span>i,L<span class="k2">(</span>p<span class="k2">)</span>,L<span class="k2">(</span><span class="n">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k3">*</span>main<span class="k2">(</span><span class="k2">)</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="k2">;</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span>i,j<span class="k2">)</span>E<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>L<span class="k2">(</span>p<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>L<span class="k2">(</span><span class="n">9</span></td></tr><tr><td class="number">15</td><td><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>text_mode<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</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="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="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><span class="n">2</span>,s,s,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>B<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>s,s<span class="k2">)</span><span class="k2">;</span>A<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">[</span>d<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>d&gt;q<span class="k2">)</span><span class="k2">{</span>l--<span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>l</td></tr><tr><td class="number">17</td><td><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>z<span class="k3">=</span><span class="s">"Game Over"</span><span class="k2">;</span>P<span class="k2">(</span><span class="n">155</span>,<span class="n">200</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>z<span class="k3">=</span><span class="s">"Highest level reached %d"</span><span class="k2">;</span>P<span class="k2">(</span><span class="n">100</span>,<span class="n">209</span>,h<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> </td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span>q<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>l<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>B,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>z<span class="k3">=</span><span class="s">"Time %d"</span><span class="k2">;</span>P<span class="k2">(</span><span class="n">150</span>,<span class="n">9</span>,q-d<span class="k2">)</span><span class="k2">;</span>z<span class="k3">=</span><span class="s">"Score %d"</span><span class="k2">;</span>P<span class="k2">(</span><span class="n">9</span></td></tr><tr><td class="number">19</td><td>,<span class="n">19</span>,t<span class="k2">)</span><span class="k2">;</span>z<span class="k3">=</span><span class="s">"Lives %d"</span><span class="k2">;</span>P<span class="k2">(</span><span class="n">9</span>,<span class="n">29</span>,l<span class="k2">)</span><span class="k2">;</span>e<span class="k3">=</span>A<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">[</span>d<span class="k2">]</span><span class="k2">;</span>v<span class="k2">(</span>C<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>e<span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k2">;</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">;</span>e<span class="k2">[</span><span class="n">4</span><span class="k2">]</span></td></tr><tr><td class="number">20</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k2">)</span>e<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="k3">&amp;</span>A<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">[</span>d-1<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>e<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>F<span class="k2">(</span>i,j<span class="k2">)</span>F<span class="k2">(</span>r,p<span class="k2">)</span>F<span class="k2">(</span>k</td></tr><tr><td class="number">21</td><td>,p<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>D<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>F<span class="k2">(</span>i,g<span class="k2">)</span><span class="k2">{</span>u<span class="k3">=</span>A<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>d<span class="k2">]</span><span class="k2">;</span>r<span class="k3">=</span><span class="k3">*</span>u<span class="k3">/</span>f<span class="k2">;</span>k<span class="k3">=</span>u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span>f<span class="k2">;</span>o<span class="k3">=</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>i</td></tr><tr><td class="number">22</td><td><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span>C<span class="k2">[</span>g-1<span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/mouse_sprite" target="_blank"><span class="a">mouse_sprite</span></a>,<span class="k3">*</span>u,u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>g-1<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,<span class="k3">*</span>u,u<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">4</span>,<span class="n">4</span></td></tr><tr><td class="number">23</td><td><span class="k2">)</span><span class="k2">;</span>e<span class="k3">=</span>D<span class="k2">[</span>o<span class="k2">]</span><span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>e<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k3">&amp;</span><span class="k3">&amp;</span>u<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>e<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>h<span class="k3">=</span>MAX<span class="k2">(</span>h,</td></tr><tr><td class="number">24</td><td>C<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>e<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>e<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span>e<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">4</span><span class="k2">;</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span>u<span class="k3">=</span><span class="k3">&amp;</span>E<span class="k2">[</span>o<span class="k2">]</span><span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>k<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">*</span>u<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>u<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">25</td><td><span class="k2">}</span><span class="k2">}</span>d<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,s,s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">9</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><span class="c">/////tinyurl.com/6l3ay7</span></td></tr></tbody></table></div></div><p>

</p><div class="quote_container"><div class="title">Neil Black said:</div><div class="quote"><p>

I&#39;ve only managed to compile the tetris game, the rest give me errors.
</p></div></div><p>

What was your error with our entry? The game has to be compiled with C, not C++.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Næssén)</author>
		<pubDate>Thu, 01 May 2008 03:26:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Wow, I actually finished something and it was fun too!</p><p>Move left and right with arrowkeys, use X to jump and double-jump in midair and Z to boost yourself even higher up in the air. You get the boosts when collecting the coins. You win when all coins are collected and you lose if you fall off the screen. Should compile in both C and C++. Oh and press R to generate a new level.</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;///////////////////////////////////BoxJump v2.0 by arvidsson</span></td></tr><tr><td class="number">2</td><td><span class="p">#define P(x,y,t,a) textprintf_ex(B,font,x,y,makecol(255,255,255),-1,t,a);///////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define Q(m,n) ((rand()%((m+1)-n)+n))///////////////////////////////////////////</span></td></tr><tr><td class="number">4</td><td><span class="k1">int</span> w<span class="k3">=</span><span class="n">640</span>,t,x,y,b<span class="k2">[</span><span class="n">20</span><span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span>,c<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span>,n,i,j,k,m,q,o,p,z<span class="k2">;</span><span class="k1">float</span> g<span class="k2">;</span> <span class="k1">int</span> C<span class="k2">(</span><span class="k1">int</span> x1,<span class="k1">int</span> y1,</td></tr><tr><td class="number">5</td><td><span class="k1">int</span> w1,<span class="k1">int</span> h1,<span class="k1">int</span> x2,<span class="k1">int</span> y2,<span class="k1">int</span> w2,<span class="k1">int</span> h2<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x1&gt;x2<span class="k3">+</span>w2<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y1&gt;y2<span class="k3">+</span>h2<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x2&gt;x1<span class="k3">+</span>w1<span class="k2">)</span></td></tr><tr><td class="number">6</td><td><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y2&gt;y1<span class="k3">+</span>h1<span class="k2">)</span><span class="k2">)</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k1">return</span> <span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">;</span><span class="k1">void</span> G<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>n<span class="k3">=</span>j<span class="k3">=</span>g<span class="k3">=</span>z<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span>Q<span class="k2">(</span><span class="n">580</span>,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span>Q<span class="k2">(</span><span class="n">40</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span></td></tr><tr><td class="number">7</td><td><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>V:b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k2">(</span><span class="n">580</span>,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k2">(</span><span class="n">580</span>,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">do</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">!</span><span class="k3">=</span>i<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,b<span class="k2">[</span></td></tr><tr><td class="number">8</td><td>i<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">19</span>,<span class="n">19</span>,b<span class="k2">[</span>k<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,b<span class="k2">[</span>k<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">19</span>,<span class="n">19</span><span class="k2">)</span><span class="k2">)</span><span class="k1">goto</span> V<span class="k2">;</span>k<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>k<span class="k3">&lt;</span>i<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>J:c<span class="k2">[</span></td></tr><tr><td class="number">9</td><td>i<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k2">(</span><span class="n">580</span>,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k2">(</span><span class="n">580</span>,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span>c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>k<span class="k3">&lt;</span><span class="n">20</span><span class="k2">;</span>k<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>b<span class="k2">[</span>k<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,b<span class="k2">[</span>k<span class="k2">]</span><span class="k2">[</span></td></tr><tr><td class="number">10</td><td><span class="n">1</span><span class="k2">]</span>,<span class="n">19</span>,<span class="n">19</span>,c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="n">10</span>,c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="n">10</span>,<span class="n">10</span>,<span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k1">goto</span> J<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span></td></tr><tr><td class="number">11</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</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="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="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><span class="n">2</span>,w,w,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>T</td></tr><tr><td class="number">12</td><td>,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span> <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> B<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,w<span class="k2">)</span><span class="k2">;</span> <a href="http://www.allegro.cc/manual/set_keyboard_rate" target="_blank"><span class="a">set_keyboard_rate</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>G<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">13</td><td><span class="k1">while</span><span class="k2">(</span>t&gt;0<span class="k2">)</span><span class="k2">{</span>t--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>i<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">&amp;</span><span class="n">0xff</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="s">'x'</span><span class="k3">&amp;</span><span class="k3">&amp;</span>j<span class="k2">)</span><span class="k2">{</span>g<span class="k3">=</span><span class="k3">-</span><span class="n">2</span><span class="k2">;</span>j--<span class="k2">;</span><span class="k2">}</span> <span class="k1">else</span></td></tr><tr><td class="number">14</td><td><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">&amp;</span><span class="n">0xff</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="s">'z'</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">)</span><span class="k2">{</span>g<span class="k3">=</span><span class="k3">-</span><span class="n">5</span><span class="k2">;</span>z--<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x-<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>g&gt;6<span class="k2">)</span>g<span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i</td></tr><tr><td class="number">15</td><td><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><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>x,y,<span class="n">9</span>,<span class="n">9</span>,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">19</span>,<span class="n">19</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">=</span>MAX<span class="k2">(</span>x,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>q<span class="k3">=</span>MAX<span class="k2">(</span>y,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span></td></tr><tr><td class="number">16</td><td><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>o<span class="k3">=</span>MIN<span class="k2">(</span>x<span class="k3">+</span><span class="n">9</span>,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">19</span><span class="k2">)</span><span class="k2">;</span>p<span class="k3">=</span>MIN<span class="k2">(</span>y<span class="k3">+</span><span class="n">9</span>,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">19</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>o-m&gt;p-q<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>q<span class="k3">=</span><span class="k3">=</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span>b<span class="k2">[</span>i</td></tr><tr><td class="number">17</td><td><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="n">10</span><span class="k2">;</span>j<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>y<span class="k3">=</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">20</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>m<span class="k3">=</span><span class="k3">=</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>x<span class="k3">=</span>b<span class="k2">[</span></td></tr><tr><td class="number">18</td><td>i<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">20</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>x,y,<span class="n">9</span>,<span class="n">9</span>,c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="n">5</span>,c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="n">5</span>,<span class="n">9</span>,<span class="n">9</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span>c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>c<span class="k2">[</span>i</td></tr><tr><td class="number">19</td><td><span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>z<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>x&gt;640<span class="k3">|</span><span class="k3">|</span>y&gt;640<span class="k2">)</span><span class="k2">{</span>P<span class="k2">(</span><span class="n">300</span>,<span class="n">300</span>,<span class="s">"FAIL!"</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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></td></tr><tr><td class="number">20</td><td>,w,w<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>G<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>n&gt;<span class="k3">=</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span>P<span class="k2">(</span><span class="n">275</span>,<span class="n">300</span>,<span class="s">"YOU ARE WIN!"</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,</td></tr><tr><td class="number">21</td><td>w,w<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> G<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>g<span class="k3">+</span><span class="k3">=</span><span class="n">0</span>.<span class="n">1</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>g<span class="k2">;</span><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><span class="n">18</span><span class="k2">]</span><span class="k2">)</span>G<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>B,x,y,x<span class="k3">+</span><span class="n">9</span>,y<span class="k3">+</span><span class="n">9</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>,</td></tr><tr><td class="number">22</td><td><span class="n">255</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>P<span class="k2">(</span><span class="n">10</span>,<span class="n">10</span>,<span class="s">"Boost: %d"</span>,z<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span></td></tr><tr><td class="number">23</td><td>,c<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">5</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">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span> <span class="k1">for</span><span class="k2">(</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><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>B,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span></td></tr><tr><td class="number">24</td><td><span class="n">19</span>, b<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">19</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> <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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,w<span class="k2">)</span><span class="k2">;</span> <a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">25</td><td><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><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><span class="c">////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>

<span class="remote-thumbnail"><span class="json">{"name":"595181","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/e\/7\/e703b0e31767c4718ab280baa62362f5.png","w":323,"h":336,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/e\/7\/e703b0e31767c4718ab280baa62362f5"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/e/7/e703b0e31767c4718ab280baa62362f5-240.jpg" alt="595181" width="240" height="249" /></span></p><p>edit: Oops, seems my entry is 79x25. Scite fooled me.<br />edit2: Updated my entry. It is now in 80x25 format and destroys the buffer like a good little hack. Didn&#39;t add anything new gameplay wise, just optimized the use of space a little. Added screenshot too!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc ( Arvidsson)</author>
		<pubDate>Thu, 01 May 2008 03:52:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
It may seem tough at first, but you&#39;ll get help as the game progresses.
</p></div></div><p>
Is the help those other cursors that appear? At first I thought I had lagged the game really bad or something because the second cursor appeared to do exactly what I had done on the first level.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jeff Bernard)</author>
		<pubDate>Thu, 01 May 2008 03:56:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I need an idea for a game to write.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Thu, 01 May 2008 04:11:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Jeff Bernard said:</div><div class="quote"><p>

Is the help those other cursors that appear? At first I thought I had lagged the game really bad or something because the second cursor appeared to do exactly what I had done on the first level.
</p></div></div><p>

Yes, that&#39;s your mouse from the previous round helping you. You need to do some clever cooperation with yourself to get the high scores!</p><p><s>The current world</s> My record is 1510 points, I reached level 11. (see attachment)</p><p>Edit:<br />Now my best score is 2749. I didn&#39;t beat Jeff, but I beat Olof <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />http://www.allegro.cc/files/attachment/595182
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ted Steen)</author>
		<pubDate>Thu, 01 May 2008 05:02:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Ted Steen said:</div><div class="quote"><p>

The current world record is 1510 points, I reached level 11. (see attachment)
</p></div></div><p>

I beat your record Ted, 2720 points and I reached level 14!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Næssén)</author>
		<pubDate>Thu, 01 May 2008 05:27:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I beat your record Ted, 2720 points and I reached level 14!
</p></div></div><p>

pwned: 3139, level 15.<br /> http://www.allegro.cc/files/attachment/595179</p><p>It may just be a quick hack, but it&#39;s a really fun game.;D
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jeff Bernard)</author>
		<pubDate>Thu, 01 May 2008 05:57:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Updated mine too. Tweaked the drawing code, reduced almost all variable names to single letter ones and replaced all Allegro constants with numbers to save space and have room to improve it.</p><p>I made the playfield 10 blocks wide as usual in Tetris games - this also fixed the problem that MiquelFire mentioned (and likely created new ones). Also added the features I couldn&#39;t include in the previous one and reduced window size to fit just the game area.</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;                                              // SHTetris.c</span></td></tr><tr><td class="number">2</td><td><span class="p">#define f() for(i=0;i&lt;4;i++)                                      /////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define B() blit(O,screen,0,0,0,0,640,480)                                     </span></td></tr><tr><td class="number">4</td><td><span class="p">#define RF(c) rectfill(O,xo+j*16,yo+y*16,xo+j*16+16,yo+y*16+16,c)              </span></td></tr><tr><td class="number">5</td><td><span class="k1">int</span> F<span class="k2">[</span><span class="n">25</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> ps<span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span><span class="n">16</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">15</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">15</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">3</span>,</td></tr><tr><td class="number">6</td><td><span class="n">1</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">6</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">6</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">2</span></td></tr><tr><td class="number">7</td><td>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">6</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">6</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,</td></tr><tr><td class="number">8</td><td><span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span><span class="k2">}</span><span class="k2">;</span><span class="k1">int</span> i,j,p,q<span class="k3">=</span><span class="n">0</span>,m<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,x,y,w,a<span class="k3">=</span><span class="n">0</span>,o,no<span class="k3">=</span><span class="n">0</span>,d,e,g,k,lt,rt,ltl,rtl, cf,h,</td></tr><tr><td class="number">9</td><td>cm,rp,cr<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>O<span class="k2">;</span><span class="k1">int</span> UF<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">23</span><span class="k2">;</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i--<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span><span class="n">0xFFFF</span><span class="k2">)</span><span class="k2">{</span>DL<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,i,<span class="n">0xFFFF</span>,</td></tr><tr><td class="number">10</td><td><span class="n">0xFFFFFF</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span>DL<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,i,<span class="n">0xFFFF</span>,<span class="n">0x44A3FF</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">23</span><span class="k2">;</span>i</td></tr><tr><td class="number">11</td><td><span class="k3">&gt;</span><span class="n">0</span><span class="k2">;</span>i--<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span><span class="n">0xFFFF</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span>i<span class="k2">;</span>j&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>j--<span class="k2">)</span>F<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>F<span class="k2">[</span>j-1<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">int</span> DL<span class="k2">(</span><span class="k1">int</span> xo,<span class="k1">int</span> yo,<span class="k1">int</span></td></tr><tr><td class="number">12</td><td> y,<span class="k1">int</span> d,<span class="k1">int</span> c,<span class="k1">int</span> sc<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">&amp;</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>j<span class="k2">)</span>RF<span class="k2">(</span>c<span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>sc<span class="k2">)</span>RF<span class="k2">(</span>sc<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span> <span class="k1">int</span></td></tr><tr><td class="number">13</td><td> main<span class="k2">(</span><span class="k2">)</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="k2">;</span> <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">24</span><span class="k2">)</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><span class="n">2</span>, <span class="n">256</span>, <span class="n">400</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">14</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>O<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">[</span><span class="n">24</span><span class="k2">]</span><span class="k3">=</span><span class="n">0xFFFFFFFF</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">24</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>F</td></tr><tr><td class="number">15</td><td><span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0xE007</span><span class="k2">;</span><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><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>a<span class="k2">)</span><span class="k2">{</span>p<span class="k3">=</span>q<span class="k2">;</span>q<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>%<span class="n">7</span><span class="k2">;</span>o<span class="k3">=</span>no<span class="k2">;</span>no<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a></td></tr><tr><td class="number">16</td><td><span class="k2">(</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>w<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>e<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h&gt;e<span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>cm<span class="k2">)</span>x<span class="k3">=</span>w<span class="k2">;</span>rp<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">17</td><td><span class="k2">{</span>lt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>lt&gt;ltl<span class="k2">)</span><span class="k2">{</span>lt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">=</span>x-1<span class="k2">;</span>ltl<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ltl<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>ltl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>rt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rt&gt;rtl<span class="k2">)</span></td></tr><tr><td class="number">18</td><td><span class="k2">{</span>rt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">=</span>x<span class="k3">+</span><span class="n">1</span><span class="k2">;</span>rtl<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rtl<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>rtl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">75</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>k<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="k2">(</span>o<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">;</span>rp<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>k<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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></td></tr><tr><td class="number">19</td><td><span class="k2">[</span><span class="n">75</span><span class="k2">]</span><span class="k2">)</span>k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>ltl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>lt<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>rtl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>rt<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>g<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>rp<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span><span class="k2">)</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>p<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>o<span class="k2">)</span><span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>cr<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>f<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>cr<span class="k3">=</span>cr<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span></td></tr><tr><td class="number">21</td><td>y-i<span class="k2">]</span><span class="k3">&amp;</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>cr<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span>o<span class="k3">=</span><span class="k3">=</span><span class="n">0</span>?<span class="n">3</span><span class="k2">:</span>o-1<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>f<span class="k2">(</span><span class="k2">)</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>p<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>o<span class="k2">)</span><span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>cm<span class="k3">=</span><span class="n">1</span><span class="k2">;</span> f<span class="k2">(</span><span class="k2">)</span>cm<span class="k3">=</span></td></tr><tr><td class="number">22</td><td>cm<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>F<span class="k2">[</span>y-1-i<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>w<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>cf<span class="k3">=</span><span class="n">1</span><span class="k2">;</span> f<span class="k2">(</span><span class="k2">)</span>cf<span class="k3">=</span>cf<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>F<span class="k2">[</span>y-i<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span> <span class="k1">if</span><span class="k2">(</span>cf<span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>h<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">23</td><td><span class="k1">else</span> d<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d&gt;g<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span><span class="k2">)</span>F<span class="k2">[</span>y-i-1<span class="k2">]</span><span class="k3">|</span><span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">;</span>a<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>i <span class="k3">&lt;</span> <span class="n">25</span><span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>DL<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,i,F<span class="k3">&lt;</span>i&gt;,</td></tr><tr><td class="number">24</td><td><span class="n">0xFFA6A6</span>,<span class="n">0xFFFFA9</span><span class="k2">)</span><span class="k2">;</span>f<span class="k2">(</span><span class="k2">)</span>DL<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,y-1-i,m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x,<span class="n">0x44A3FF</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>UF<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>f<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>q<span class="k2">]</span><span class="k2">[</span>no<span class="k3">*</span><span class="n">4</span></td></tr><tr><td class="number">25</td><td><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>DL<span class="k2">(</span><span class="n">208</span>,<span class="n">100</span>,<span class="n">5</span><span class="k3">-</span>i,m<span class="k3">&lt;</span>i&gt;,<span class="n">0x44A3FF</span>,<span class="n">0xFFA6A6</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">15</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>

<span class="remote-thumbnail"><span class="json">{"name":"595180","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/7\/57c86258f645a0ce3fed379913e2afa0.gif","w":261,"h":431,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/7\/57c86258f645a0ce3fed379913e2afa0"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/5/7/57c86258f645a0ce3fed379913e2afa0-240.jpg" alt="595180" width="240" height="396" /></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Thu, 01 May 2008 06:33:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>kenmasters1976, your tetris game is really starting to shape up. The only thing I miss is a score counter.</p><div class="quote_container"><div class="title">Jeff Bernard said:</div><div class="quote"><p>

3139, level 15
</p></div></div><p>

I&#39;m impressed.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Næssén)</author>
		<pubDate>Thu, 01 May 2008 15:59:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><b>Kenmasters1976</b>, That is one squeezed game of tetris! but you could double the fun with a score counter!</p><p>My suggestion is to replace these defines with functions instead.
</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#define B() blit(O,screen,0,0,0,0,640,480)                                     </span>
<span class="p">#define RF(c) rectfill(O,xo+j*16,yo+y*16,xo+j*16+16,yo+y*16+16,c)</span>
</pre></div></div><p>
will turn into something like this
</p><div class="source-code snippet"><div class="inner"><pre><span class="k3">*</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>O,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>
<span class="k3">*</span>R<span class="k2">(</span>c<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>O,xo<span class="k3">+</span>j<span class="k3">*</span><span class="n">16</span>,yo<span class="k3">+</span>y<span class="k3">*</span><span class="n">16</span>,xo<span class="k3">+</span>j<span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">16</span>,yo<span class="k3">+</span>y<span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">16</span>,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>
</pre></div></div><p>
Now you can almost fit them into one line.</p><p>A few minor optimizations would be to replace<br /><span class="source-code"><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>O</span><br />with<br /><span class="source-code"><span class="k1">int</span><span class="k3">*</span>O</span><br />And replace
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> DL<span class="k2">(</span><span class="k1">int</span> xo,<span class="k1">int</span> yo,<span class="k1">int</span> y,<span class="k1">int</span> d,<span class="k1">int</span> c,<span class="k1">int</span> sc<span class="k2">)</span>
</pre></div></div><p>
with
</p><div class="source-code snippet"><div class="inner"><pre><span class="k3">*</span>DL<span class="k2">(</span>xo,yo,y,d,c,sc<span class="k2">)</span>
</pre></div></div><p>

Now... that should be enough for a score counter <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ted Steen)</author>
		<pubDate>Thu, 01 May 2008 18:17:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What the hell is wrong with me? Another entry, that is what&#39;s wrong with me.</p><p>ARE YOU UP TO THE TASK TO TAKE COMMAND AND DODGE FUNNY LOOKING ASTEROIDS?</p><p>Steer your spacecraft with arrowkeys. Reset with R. Quit with ESC. Every 15 seconds the difficulty level is increased which means more asteroids (or space balls if you&#39;d like) to dodge. The maximum level is 10 which means 50 asteroidballs onscreen at ALL times. I almost made it to level 5, level 10 must be hell I suppose (only hardcore gamers need apply <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" />). The blue box on the ship (aka the cockpit) is the hit area.</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;////////////////////////////////SpaceDodge v1.0 by arvidsson</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> w<span class="k3">=</span><span class="n">400</span>,i,j,x,y,c,l,q,z,t,u,k,s<span class="k2">[</span><span class="n">75</span><span class="k2">]</span><span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,e<span class="k2">[</span><span class="n">50</span><span class="k2">]</span><span class="k2">[</span><span class="n">6</span><span class="k2">]</span><span class="k2">;</span>R<span class="k2">(</span>m,n<span class="k2">)</span><span class="k2">{</span><span class="k1">return</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="k2">(</span>m<span class="k3">+</span><span class="n">1</span><span class="k3">-</span>n<span class="k2">)</span><span class="k2">)</span><span class="k3">+</span></td></tr><tr><td class="number">3</td><td>n<span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>x1,y1,w1,h1,x2,y2,w2,h2<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x1&gt;x2<span class="k3">+</span>w2<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y1&gt;y2<span class="k3">+</span>h2<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x2&gt;x1<span class="k3">+</span>w1<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y2&gt;y1<span class="k3">+</span>h1<span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">4</td><td><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k1">return</span> <span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>u<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span>N<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>c<span class="k3">=</span>u<span class="k3">=</span>q<span class="k3">=</span>k<span class="k3">=</span>z<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">75</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span></td></tr><tr><td class="number">5</td><td><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">400</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">400</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">5</span>,<span class="n">2</span><span class="k2">)</span><span class="k2">;</span>j<span class="k3">=</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">*</span><span class="n">51</span><span class="k2">;</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span>j,j,j<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">6</td><td><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">350</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="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><span class="n">2</span>,w,</td></tr><tr><td class="number">7</td><td>w,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>T,<span class="n">20</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>B<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,w<span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span></td></tr><tr><td class="number">8</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>N<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">while</span><span class="k2">(</span>t&gt;0<span class="k2">)</span><span class="k2">{</span>t--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>u&gt;<span class="k3">=</span><span class="n">50</span><span class="k2">)</span><span class="k2">{</span>k<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>q<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>q&gt;<span class="k3">=</span><span class="n">15</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span></td></tr><tr><td class="number">9</td><td><span class="k2">;</span>q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>l&gt;<span class="k3">=</span><span class="n">10</span><span class="k2">)</span>l<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">75</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&gt;</span>w<span class="k2">)</span><span class="k2">{</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>s</td></tr><tr><td class="number">10</td><td><span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">400</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">5</span>,<span class="n">2</span><span class="k2">)</span><span class="k2">;</span>j<span class="k3">=</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">*</span><span class="n">51</span><span class="k2">;</span>s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span>j,j,j<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i</td></tr><tr><td class="number">11</td><td><span class="k3">&lt;</span><span class="n">50</span><span class="k3">&amp;</span><span class="k3">&amp;</span>c<span class="k3">&lt;</span>l<span class="k3">*</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>c<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span>R<span class="k2">(</span><span class="n">255</span>,<span class="n">0</span><span class="k2">)</span>,R<span class="k2">(</span><span class="n">255</span>,<span class="n">0</span><span class="k2">)</span>,R<span class="k2">(</span><span class="n">255</span>,<span class="n">0</span></td></tr><tr><td class="number">12</td><td><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> d<span class="k3">=</span>R<span class="k2">(</span><span class="n">3</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span>w,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">10</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">2</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">5</span>,<span class="n">1</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">10</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">300</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">5</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">2</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span></td></tr><tr><td class="number">14</td><td><span class="k2">{</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">410</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">300</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span>R<span class="k2">(</span><span class="n">5</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">2</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">50</span></td></tr><tr><td class="number">15</td><td><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&lt;</span><span class="k3">-</span><span class="n">20</span><span class="k3">|</span><span class="k3">|</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">420</span></td></tr><tr><td class="number">16</td><td><span class="k3">|</span><span class="k3">|</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&lt;</span><span class="k3">-</span><span class="n">20</span><span class="k3">|</span><span class="k3">|</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">400</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>c--<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>x-</td></tr><tr><td class="number">17</td><td><span class="n">2</span>,y,<span class="n">4</span>,<span class="n">5</span>,e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="n">5</span>,e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="n">5</span>,<span class="n">5</span>,<span class="n">5</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>z<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x-<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">=</span></td></tr><tr><td class="number">18</td><td><span class="n">4</span><span class="k2">;</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>y-<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>y<span class="k3">+</span><span class="k3">=</span><span class="n">4</span><span class="k2">;</span><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><span class="n">18</span><span class="k2">]</span><span class="k2">)</span>N<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span>x<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x&gt;390<span class="k2">)</span>x<span class="k3">=</span><span class="n">390</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">19</td><td>y<span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span>y<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y&gt;390<span class="k2">)</span>y<span class="k3">=</span><span class="n">390</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span>t<span class="k2">)</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">75</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>B,s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,s</td></tr><tr><td class="number">20</td><td><span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,s<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">5</span>,e<span class="k3">&lt;</span>i&gt;<span class="k2">[</span></td></tr><tr><td class="number">21</td><td><span class="n">4</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>z<span class="k2">)</span><a href="http://www.allegro.cc/manual/textprintf_centre_ex" target="_blank"><span class="a">textprintf_centre_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,w<span class="k3">/</span><span class="n">2</span>,w<span class="k3">/</span><span class="n">2</span>,<span class="n">15</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"GAME OVER!"</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>z<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/triangle" target="_blank"><span class="a">triangle</span></a></td></tr><tr><td class="number">22</td><td><span class="k2">(</span>B,x,y-10,x<span class="k3">+</span><span class="n">10</span>,y<span class="k3">+</span><span class="n">10</span>,x-10,y<span class="k3">+</span><span class="n">10</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,x-2,y,x<span class="k3">+</span><span class="n">2</span>,y<span class="k3">+</span><span class="n">5</span>,<span class="n">32</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,</td></tr><tr><td class="number">23</td><td><a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">10</span>,<span class="n">15</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Level: %d Time: %d"</span>,l,k<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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,w<span class="k2">)</span><span class="k2">;</span><span class="c">//////woot</span></td></tr><tr><td class="number">24</td><td><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>z<span class="k2">)</span><span class="k2">{</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span>i<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_keybuf" target="_blank"><span class="a">clear_keybuf</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>j<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>j&gt;&gt;8<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span><span class="c">///</span></td></tr><tr><td class="number">25</td><td><span class="k1">return</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>j&gt;&gt;8<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">18</span><span class="k2">)</span><span class="k2">{</span>N<span class="k2">(</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="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><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><span class="c">/////////</span></td></tr></tbody></table></div></div><p>

<span class="remote-thumbnail"><span class="json">{"name":"595186","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/0\/90c88f30bfdf23fdcc43fd926665e9aa.png","w":403,"h":430,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/0\/90c88f30bfdf23fdcc43fd926665e9aa"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/9/0/90c88f30bfdf23fdcc43fd926665e9aa-240.jpg" alt="595186" width="240" height="256" /></span></p><p>This contest will be the end of me, I already have a new thingy I want to implement. Curses, programming is supposed to be boring, no? <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>edit: I actually got to level 7 and discovered a cheat which is fixed now.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc ( Arvidsson)</author>
		<pubDate>Thu, 01 May 2008 20:12:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
*B(){blit(O,screen,0,0,0,0,640,480);}<br />*R(c){rectfill(O,xo+j*16,yo+y*16,xo+j*16+16,yo+y*16+16,c);}
</p></div></div><p>

Why is everyone prefixing their K&amp;R-style default functions with a * ? I don&#39;t see the purpose... you&#39;re returning no value (especially not a pointer to int) and wasting a character in your code.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Paul Pridham)</author>
		<pubDate>Thu, 01 May 2008 22:00:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">ppridham said:</div><div class="quote"><p>

Why is everyone prefixing their K&amp;R-style default functions with a * ? I don&#39;t see the purpose... you&#39;re returning no value (especially not a pointer to int) and wasting a character in your code.
</p></div></div><p>

You are right, I just assumed that you needed to specify the return type, and * is smaller than void. C is not my &quot;native language&quot; <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>Yay! Now we have four more characters to play with!! Olof - let&#39;s add network support!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ted Steen)</author>
		<pubDate>Thu, 01 May 2008 23:12:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Urg, I had an idea, but it was really boring compared to these... I&#39;m starting over now. <img src="http://www.allegro.cc/forums/smileys/rolleyes.gif" alt="::)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Fri, 02 May 2008 02:28:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><b>Tetris</b></p><p><span class="remote-thumbnail"><span class="json">{"name":"595191","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/8\/9\/8975a23dbdf433e7ee0863aff039dacd.png","w":304,"h":388,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/8\/9\/8975a23dbdf433e7ee0863aff039dacd"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/8/9/8975a23dbdf433e7ee0863aff039dacd-240.jpg" alt="595191" width="240" height="306" /></span></p><p><b><a href="http://www.allegro.cc/files/attachment/595192">Download Windows Version</a></b></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; // Tetris, by Matthew Leverton</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> s<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0xcc00cc00</span>,<span class="n">0xcc00cc00</span>,<span class="n">0x4e004640</span>,<span class="n">0xe404c40</span>,<span class="n">0xe2044c0</span>,<span class="n">0x8e006440</span>,</td></tr><tr><td class="number">3</td><td><span class="n">0xe80c440</span>,<span class="n">0x2e004460</span>,<span class="n">0x6c008c40</span>,<span class="n">0x6c008c40</span>,<span class="n">0xc6004c80</span>,<span class="n">0xc6004c80</span>,<span class="n">0xf004444</span>,</td></tr><tr><td class="number">4</td><td><span class="n">0xf004444</span><span class="k2">}</span>,w<span class="k2">[</span><span class="n">24</span><span class="k2">]</span>,i,q,r,y,x,R,Y,X,c,d,e<span class="k3">=</span><span class="n">0</span>,f<span class="k3">=</span><span class="n">0</span>,g<span class="k2">;</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> s<span class="k2">[</span>q<span class="k3">*</span><span class="n">2</span><span class="k3">+</span>r<span class="k3">/</span><span class="n">2</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="k2">(</span><span class="n">1</span><span class="k3">-</span>r%<span class="n">2</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span></td></tr><tr><td class="number">5</td><td><span class="k2">;</span><span class="k2">}</span>D<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>d<span class="k3">=</span><span class="k2">(</span><span class="n">100</span><span class="k3">-</span>e<span class="k2">)</span><span class="k3">/</span><span class="n">10</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">2</span><span class="k2">)</span>d<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k2">;</span>p<span class="k2">(</span>A,B<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> s<span class="k3">=</span>c<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">16</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>s&gt;&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>B<span class="k3">=</span><span class="k2">(</span>s<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k3">&lt;</span><span class="k3">&lt;</span><span class="k2">(</span></td></tr><tr><td class="number">6</td><td>x<span class="k3">+</span>i%<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>A<span class="k2">)</span>w<span class="k2">[</span>y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">]</span><span class="k3">|</span><span class="k3">=</span>B<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>w<span class="k2">[</span>y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">]</span><span class="k3">&amp;</span>B<span class="k2">)</span><span class="k1">return</span> <span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">}</span>z<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">7</span><span class="k2">;</span>q<span class="k3">=</span></td></tr><tr><td class="number">7</td><td><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">7</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>D<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>c<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">;</span>main<span class="k2">(</span><span class="k2">)</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="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="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></td></tr><tr><td class="number">8</td><td>GFX_GDI,<span class="n">288</span>,<span class="n">352</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>b<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>z<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span><span class="n">24</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>i&gt;19?<span class="n">0x3ffff</span><span class="k2">:</span><span class="n">0x3c00f</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>retrace_count&gt;3<span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x,Y<span class="k3">=</span>y,</td></tr><tr><td class="number">10</td><td>R<span class="k3">=</span>r<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">-</span><span class="k3">-</span>d<span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span><span class="k2">{</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x--<span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>f<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><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></td></tr><tr><td class="number">11</td><td><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>r<span class="k3">=</span><span class="k2">(</span>r<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">;</span><span class="k2">}</span>c<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>X,y<span class="k3">=</span>Y,r<span class="k3">=</span>R,c<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span><span class="k2">{</span>p<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span><span class="n">20</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span></td></tr><tr><td class="number">12</td><td><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span><span class="n">0x3ffff</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_568.html" target="_blank">memmove</a><span class="k2">(</span>w<span class="k3">+</span><span class="n">1</span>,w,i<span class="k3">+</span><span class="k3">+</span><span class="k3">*</span><span class="n">4</span><span class="k2">)</span><span class="k2">;</span>w<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">0x3c00f</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>e<span class="k2">;</span>f<span class="k3">+</span><span class="k3">=</span>g<span class="k2">;</span>g<span class="k3">*</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>z<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p<span class="k2">(</span><span class="n">0</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">5000</span><span class="k2">)</span><span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>D<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">378</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,<span class="k2">(</span>i%</td></tr><tr><td class="number">14</td><td><span class="n">18</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="k2">(</span>i<span class="k3">/</span><span class="n">18</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="k2">(</span>i%<span class="n">18</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">15</span>,<span class="k2">(</span>i<span class="k3">/</span><span class="n">18</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">15</span>,w<span class="k2">[</span>i<span class="k3">/</span><span class="n">18</span><span class="k2">]</span><span class="k3">&amp;</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span><span class="k2">(</span>i%<span class="n">18</span><span class="k2">)</span>?<span class="k2">(</span><span class="k2">(</span>e<span class="k3">/</span><span class="n">10</span><span class="k2">)</span>%<span class="n">15</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span></td></tr><tr><td class="number">15</td><td><span class="n">16</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>c<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,<span class="k2">(</span>x<span class="k3">+</span>i%<span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="k2">(</span>y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="k2">(</span>x<span class="k3">+</span>i%<span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">15</span>,<span class="k2">(</span>y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k3">+</span></td></tr><tr><td class="number">16</td><td><span class="n">15</span>,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span>c&gt;&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">340</span>,<span class="n">15</span>,<span class="s">" Lines: %d Score: %d"</span>,e,f<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,</td></tr><tr><td class="number">17</td><td><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>,<span class="n">288</span>,<span class="n">352</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/retrace_count" target="_blank"><span class="a">retrace_count</span></a><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><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>

Controls are a bit sluggish and scoring for pressing the down key is generous (especially if you bump against the side), but it&#39;s good enough for demo #1.</p><p>Change GFX_GDI to the constant for windowed mode if you aren&#39;t on Windows. It also assumes integers are 4 bytes.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Fri, 02 May 2008 04:21:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Those of you making Tetris should figure out a way to use more color <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />.</p><p>I&#39;d love to try this, but I&#39;m not sure if I could come up with anything. Perhaps I&#39;ll give it a go anyway...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mokkan)</author>
		<pubDate>Fri, 02 May 2008 05:26:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>At last! My entry is done. Use left and right to move, press up to flap. If you hit the boxes or leave the screen, it&#39;s game over. I may add highscore records later.
</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">#define W makecol(255, 255, 255)///////////////////////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define G makecol(255, 255, 0)/////////////////////////////////////////////////</span></td></tr><tr><td class="number">4</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>b<span class="k2">;</span><span class="k1">int</span> u<span class="k3">=</span>KEY_UP,r<span class="k3">=</span>KEY_RIGHT,l<span class="k3">=</span>KEY_LEFT,sx<span class="k3">=</span><span class="n">4</span>,sy<span class="k3">=</span><span class="n">0</span>,bx<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,by<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,nb<span class="k3">=</span><span class="n">0</span>,hs<span class="k3">=</span><span class="n">0</span>,</td></tr><tr><td class="number">5</td><td>i<span class="k3">=</span><span class="n">0</span>,lt<span class="k3">=</span><span class="n">0</span>,t<span class="k3">=</span><span class="n">0</span>,ln<span class="k3">=</span><span class="n">0</span>,x<span class="k3">=</span><span class="n">320</span>,y<span class="k3">=</span><span class="n">240</span>,j<span class="k3">=</span><span class="n">0</span>,g_o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">int</span> J<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> j<span class="k3">/</span><span class="n">8</span><span class="k2">;</span><span class="k2">}</span><span class="k1">bool</span> H<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span></td></tr><tr><td class="number">6</td><td>nb<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">return</span><span class="k2">(</span><span class="k2">(</span>x&gt;bx<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;by<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>x<span class="k3">&lt;</span>bx<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">16</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y<span class="k3">&lt;</span>by<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">16</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">7</td><td><span class="k1">void</span> A<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>nb&gt;98<span class="k2">)</span><span class="k1">return</span><span class="k2">;</span>bx<span class="k2">[</span>nb<span class="k2">]</span><span class="k3">=</span><span class="n">640</span><span class="k2">;</span>by<span class="k2">[</span>nb<span class="k2">]</span><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>%<span class="n">480</span><span class="k2">;</span>nb<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> V<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">00</span><span class="k2">;</span>i</td></tr><tr><td class="number">8</td><td><span class="k3">&lt;</span>nb<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>bx<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>nb--<span class="k2">;</span>bx<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>bx<span class="k2">[</span>nb<span class="k2">]</span><span class="k2">;</span>by<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>by<span class="k2">[</span>nb<span class="k2">]</span><span class="k2">;</span>i--<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="c">////////</span></td></tr><tr><td class="number">9</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><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><span class="c">//////////////</span></td></tr><tr><td class="number">10</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><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><a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>T,MSEC_TO_TIMER<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><span class="c">///</span></td></tr><tr><td class="number">11</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>b<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><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>lt<span class="k3">=</span>t<span class="k2">;</span><span class="k1">if</span><span class="k2">(</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>u&gt;<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>j<span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span></td></tr><tr><td class="number">12</td><td><span class="k2">)</span>j<span class="k3">=</span><span class="n">70</span><span class="k2">;</span><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>r<span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span><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>l<span class="k2">]</span><span class="k2">)</span>x-<span class="k3">=</span><span class="n">5</span><span class="k2">;</span>j-<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>y-<span class="k3">=</span>J<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ln%<span class="n">8</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>A<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ln%<span class="n">150</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k2">{</span>sx<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>%<span class="n">4</span><span class="k3">+</span><span class="n">2</span><span class="k2">;</span>sy<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>%<span class="n">3</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>nb<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>bx<span class="k3">&lt;</span>i&gt;-<span class="k3">=</span>sx<span class="k2">;</span>by<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">=</span>sy<span class="k2">;</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,bx<span class="k2">[</span></td></tr><tr><td class="number">14</td><td>i<span class="k2">]</span>,by<span class="k3">&lt;</span>i&gt;,bx<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">16</span>,by<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">16</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>u&gt;<span class="k2">)</span><a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>b,x,y,y<span class="k3">+</span><span class="n">9</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> <a href="http://www.allegro.cc/manual/hline" target="_blank"><span class="a">hline</span></a><span class="k2">(</span>b,x-9,y,</td></tr><tr><td class="number">15</td><td>x<span class="k3">+</span><span class="n">9</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>j<span class="k3">&lt;</span><span class="k3">-</span><span class="n">60</span><span class="k2">)</span>j<span class="k3">=</span><span class="k3">-</span><span class="n">60</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,<span class="n">1</span>,<span class="n">1</span>,<span class="n">638</span>,<span class="n">478</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>ln&gt;hs<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k3">!</span>g_o<span class="k2">)</span><span class="k2">)</span>hs<span class="k3">=</span>ln<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>H<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span></td></tr><tr><td class="number">16</td><td><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>x&gt;640<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y&gt;480<span class="k2">)</span><span class="k2">)</span>g_o<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">10</span>,W,<span class="k3">-</span><span class="n">1</span>,<span class="s">"time: %i"</span></td></tr><tr><td class="number">17</td><td>,ln<span class="k3">/</span><span class="n">62</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">20</span>,G,<span class="k3">-</span><span class="n">1</span>,<span class="s">"best: %i"</span>, hs<span class="k3">/</span><span class="n">62</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>g_o<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span><span class="c">/////////</span></td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/textprintf_centre_ex" target="_blank"><span class="a">textprintf_centre_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">320</span>,<span class="n">240</span>,W,<span class="k3">-</span><span class="n">1</span>,<span class="s">"game over"</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="c">//</span></td></tr><tr><td class="number">19</td><td><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>b,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>t<span class="k3">&lt;</span>lt<span class="k3">+</span><span class="n">16</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>ln<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="c">////</span></td></tr><tr><td class="number">20</td><td><a href="http://www.allegro.cc/manual/remove_int" target="_blank"><span class="a">remove_int</span></a><span class="k2">(</span>T<span class="k2">)</span><span class="k2">;</span><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><span class="c">///////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Fri, 02 May 2008 05:43:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I can fly right through the boxes on yours Kikaru.</p><p>EDIT:</p><p>I made one!</p><p>Left and right turn, space fires. As you can see, there is a lot of room for improvement (both in adding more code and improving gameplay).</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;math.h&gt;///////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;allegro.h&gt;////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define F for(int i=0; i&lt;10; i++)///////////////////////////////////////////////</span></td></tr><tr><td class="number">4</td><td><span class="p">#define T textout_ex(buffer,font,"Lose",10,10,c,-1);////////////////////////////</span></td></tr><tr><td class="number">5</td><td><span class="p">#define CC clear_to_color(buffer,makecol(0,0,0));///////////////////////////////</span></td></tr><tr><td class="number">6</td><td><span class="k1">int</span> Square<span class="k2">(</span><span class="k1">int</span> a<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> a<span class="k3">*</span>a<span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</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="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="k2">;</span><span class="c">/////</span></td></tr><tr><td class="number">7</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">16</span><span class="k2">)</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,<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><span class="c">//////////</span></td></tr><tr><td class="number">8</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="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k1">double</span> ex<span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">;</span><span class="k1">double</span> ey<span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">;</span><span class="k1">bool</span> ea<span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">;</span><span class="c">//</span></td></tr><tr><td class="number">9</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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">double</span> MA<span class="k3">=</span><span class="n">2</span><span class="k3">*</span><span class="n">3</span>.<span class="n">14</span><span class="k2">;</span><span class="k1">double</span> A2<span class="k3">=</span>MA<span class="k3">/</span><span class="n">4</span><span class="k2">;</span><span class="k1">double</span> a<span class="k3">=</span><span class="n">4</span>.<span class="n">78</span><span class="k2">;</span><span class="k1">double</span> x<span class="k3">=</span><span class="n">320</span>.<span class="n">0</span><span class="k2">;</span><span class="c">////</span></td></tr><tr><td class="number">10</td><td><span class="k1">double</span> y<span class="k3">=</span><span class="n">440</span>.<span class="n">0</span><span class="k2">;</span><span class="k1">double</span> x2<span class="k3">=</span><span class="n">0</span>.<span class="n">0</span><span class="k2">;</span><span class="k1">double</span> y2<span class="k3">=</span><span class="n">0</span>.<span class="n">0</span><span class="k2">;</span><span class="k1">double</span> bx<span class="k3">=</span><span class="n">0</span>.<span class="n">0</span><span class="k2">;</span><span class="k1">double</span> by<span class="k3">=</span><span class="n">0</span>.<span class="n">0</span><span class="k2">;</span><span class="c">/////////</span></td></tr><tr><td class="number">11</td><td><span class="k1">double</span> bs<span class="k3">=</span><span class="n">0</span>.<span class="n">0</span><span class="k2">;</span><span class="k1">double</span> ba<span class="k3">=</span><span class="n">0</span>.<span class="n">0</span><span class="k2">;</span><span class="k1">bool</span> bal<span class="k3">=</span><span class="k1">false</span><span class="k2">;</span><span class="k1">int</span> bt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">int</span> c<span class="k3">=</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></td></tr><tr><td class="number">12</td><td><span class="k1">int</span> Score<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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>CC<span class="k2">;</span>F<span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>ea<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>ex<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span>x<span class="k2">)</span>ex<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><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>%<span class="n">3</span><span class="k3">+</span><span class="n">2</span><span class="k2">;</span><span class="c">///</span></td></tr><tr><td class="number">13</td><td><span class="k1">if</span><span class="k2">(</span>ex<span class="k3">&lt;</span>i&gt;&gt;x<span class="k2">)</span>ex<span class="k3">&lt;</span>i&gt;-<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>%<span class="n">3</span><span class="k3">+</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ey<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span>y<span class="k2">)</span>ey<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><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>%<span class="n">3</span><span class="k3">+</span><span class="n">2</span><span class="k2">;</span><span class="c">//////////////////////</span></td></tr><tr><td class="number">14</td><td><span class="k1">if</span><span class="k2">(</span>ey<span class="k3">&lt;</span>i&gt;&gt;y<span class="k2">)</span>ey<span class="k3">&lt;</span>i&gt;-<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>%<span class="n">3</span><span class="k3">+</span><span class="n">2</span><span class="k2">;</span><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>Square<span class="k2">(</span>x-ex<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">+</span>Square<span class="k2">(</span>y-ey<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">11</span><span class="k2">)</span><span class="k2">{</span>CC<span class="k2">;</span>T<span class="k2">;</span></td></tr><tr><td class="number">15</td><td><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span><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>Square<span class="k2">(</span>bx-ex<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">+</span>Square<span class="k2">(</span>by-ey<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">11</span><span class="k2">)</span><span class="k2">{</span>ea<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k1">false</span><span class="k2">;</span><span class="c">////</span></td></tr><tr><td class="number">16</td><td>bt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>bal<span class="k3">=</span><span class="k1">false</span><span class="k2">;</span>Score<span class="k3">+</span><span class="k3">=</span><span class="n">100</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>buffer,ex<span class="k3">&lt;</span>i&gt;,ey<span class="k3">&lt;</span>i&gt;,<span class="n">10</span>,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>ea<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">{</span><span class="c">/////////</span></td></tr><tr><td class="number">17</td><td>ex<span class="k3">&lt;</span>i&gt;<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>%<span class="n">640</span><span class="k2">;</span>ey<span class="k3">&lt;</span>i&gt;<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>%<span class="n">200</span><span class="k2">;</span>ea<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k1">true</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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>a<span class="k3">+</span><span class="k3">=</span>.<span class="n">1</span><span class="k2">;</span><span class="c">/////////</span></td></tr><tr><td class="number">18</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>a-<span class="k3">=</span>.<span class="n">1</span><span class="k2">;</span><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="k3">&amp;</span><span class="k3">&amp;</span>bal<span class="k3">=</span><span class="k3">=</span><span class="k1">false</span><span class="k2">)</span><span class="k2">{</span>bx<span class="k3">=</span>x<span class="k3">+</span><span class="n">7</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>a<span class="k2">)</span><span class="k2">;</span><span class="c">////////////</span></td></tr><tr><td class="number">19</td><td>by<span class="k3">=</span>y<span class="k3">+</span><span class="n">7</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>a<span class="k2">)</span><span class="k2">;</span>ba<span class="k3">=</span>a<span class="k2">;</span>bs<span class="k3">=</span><span class="n">15</span><span class="k2">;</span>bal<span class="k3">=</span><span class="k1">true</span><span class="k2">;</span>bt<span class="k3">=</span><span class="n">20</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>bal<span class="k2">)</span><span class="k2">{</span>bx<span class="k3">+</span><span class="k3">=</span>bs<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>ba<span class="k2">)</span><span class="k2">;</span>by<span class="k3">+</span><span class="k3">=</span>bs<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>ba<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>bt--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>bt<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>bal<span class="k3">=</span><span class="k1">false</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buffer,bx,by,<span class="n">2</span>,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>a&gt;MA<span class="k2">)</span>a-<span class="k3">=</span>MA<span class="k2">;</span><span class="c">////////////</span></td></tr><tr><td class="number">21</td><td><span class="k1">if</span><span class="k2">(</span>a<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>a<span class="k3">+</span><span class="k3">=</span>MA<span class="k2">;</span>x2<span class="k3">=</span>x<span class="k3">+</span><span class="n">7</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>a<span class="k2">)</span><span class="k2">;</span>y2<span class="k3">=</span>y<span class="k3">+</span><span class="n">7</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>a<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>buffer,x,y,x2,y2,c<span class="k2">)</span><span class="k2">;</span><span class="c">//////////////</span></td></tr><tr><td class="number">22</td><td><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>buffer,x,y,<span class="n">3</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">2</span>,<span class="n">2</span>,c,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Score: %d"</span>,<span class="c">//////</span></td></tr><tr><td class="number">23</td><td>Score<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,buffer,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><span class="c">//////////////////</span></td></tr><tr><td class="number">24</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">25</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Black)</author>
		<pubDate>Fri, 02 May 2008 06:29:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>&lt;quote name=&quot;&quot;Næssén&quot;&quot;&gt;<br />kenmasters1976, your tetris game is really starting to shape up. The only thing I miss is a score counter.<br />&lt;/quote&gt;<br />Thanks. I&#39;ll try to add a score counter next time.</p><p>&lt;quote name=&quot;&quot;Ted Steen&quot;&quot;&gt;<br />kenmasters1976, That is one squeezed game of tetris! but you could double the fun with a score counter!<br />My suggestion is to...<br />&lt;/quote&gt;<br />Thanks. I&#39;ll try to add a score counter next time... I mean, thanks, I&#39;ll consider your suggestions. They might help a lot.</p><p>Matthew Leverton&#39;s Tetris is only 17 lines long!. There must be something really wrong with mine. I might try to steal something from his code...</p><p>Now, today I watched a Saint Seiya marathon on TV, that means no activity today and no time to check the new entries. I&#39;ll get up to date tomorrow.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Fri, 02 May 2008 09:04:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Those of you making Tetris should figure out a way to use more color <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />.
</p></div></div><p>
Mine uses all 16 colors from the classic CGA palette. </p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Matthew Leverton&#39;s Tetris is only 17 lines long!. There must be something really wrong with mine. I might try to steal something from his code...
</p></div></div><p>
Mine is pretty minimalistic, although there are a couple things that I need to change up to save some space.</p><p>To make Tetris, all you need to do per frame is:
</p><ul><li><p>save position</p></li><li><p>process keys and move piece</p></li><li><p>check for collision, if true:</p></li><li><p>revert to old position</p></li><li><p>if it was a timed drop: lock the piece, check for complete lines, reset</p></li></ul><p>
[/list]<br />The collision check and piece set is similar logic and can easily be combined (my &#39;p&#39; function).</p><p>It&#39;s just about storing the data in as compact of a way without sacrificing ease of access. I used a bit field; I think with some creativity, it could be a lot simpler.</p><p>You never really need random access to the data. It&#39;s always done in a 4x4 loop, so I think one should optimize with that in mind.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Fri, 02 May 2008 10:43:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Kikaru: I can fly through the boxes and sometimes when I go offscreen I can continue flying even though it&#39;s game over. Nice idea though!</p><p>Neil: Hmm, when the game starts it&#39;s all black. When I press a key it says lose and when I shoot, the bullets seem to only update when I hold a key. And I don&#39;t see anything to shoot at.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc ( Arvidsson)</author>
		<pubDate>Fri, 02 May 2008 11:40:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><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; // Tetris by Matthew Leverton</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> j<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">5</span>,<span class="n">7</span>,<span class="n">8</span>,<span class="n">9</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span><span class="k2">}</span>,i,q,r,y,s<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0xcc00</span>,<span class="n">0x46404e00</span>,<span class="n">0x4c400e40</span>,</td></tr><tr><td class="number">3</td><td><span class="n">0x44c00e20</span>,<span class="n">0x64408e00</span>,<span class="n">0xc4400e80</span>,<span class="n">0x44602e00</span>,<span class="n">0x8c406c00</span>,<span class="n">0x4c80c600</span>,<span class="n">0x44440f00</span><span class="k2">}</span>,w<span class="k2">[</span></td></tr><tr><td class="number">4</td><td><span class="n">24</span><span class="k2">]</span>,x,R,Y,X,c,d,e<span class="k3">=</span><span class="n">0</span>,f<span class="k3">=</span><span class="n">0</span>,g,<span class="k3">*</span>b<span class="k2">;</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> s<span class="k2">[</span>j<span class="k2">[</span>q<span class="k2">]</span><span class="k3">+</span>r<span class="k3">/</span><span class="n">2</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="k2">(</span>r%<span class="n">2</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k2">;</span><span class="k2">}</span>F<span class="k2">(</span>A,B,C<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a></td></tr><tr><td class="number">5</td><td><span class="k2">(</span>b,A<span class="k3">*</span><span class="n">16</span>,B<span class="k3">*</span><span class="n">16</span>,A<span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">15</span>,B<span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">15</span>,C<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>z<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">7</span><span class="k2">;</span>q<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>%<span class="n">7</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>c<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>p<span class="k2">(</span>A,B,C<span class="k2">)</span></td></tr><tr><td class="number">6</td><td><span class="k2">{</span>C<span class="k3">=</span>c<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">16</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>C&gt;&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>B<span class="k3">=</span><span class="k2">(</span>C<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k3">&lt;</span><span class="k3">&lt;</span><span class="k2">(</span>x<span class="k3">+</span>i%<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>A<span class="k2">)</span>w<span class="k2">[</span>y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">]</span><span class="k3">|</span><span class="k3">=</span>B<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>w<span class="k2">[</span>y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">]</span><span class="k3">&amp;</span>B</td></tr><tr><td class="number">7</td><td><span class="k2">)</span><span class="k1">return</span> <span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span><span class="n">24</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="k2">;</span><a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span></td></tr><tr><td class="number">8</td><td><span class="k2">)</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_GDI,<span class="n">288</span>,<span class="n">352</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>b<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span>z<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">=</span></td></tr><tr><td class="number">9</td><td>i&gt;19?<span class="n">0x3ffff</span><span class="k2">:</span><span class="n">0x3c00f</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x,Y<span class="k3">=</span>y,R<span class="k3">=</span>r<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">-</span><span class="k3">-</span>d<span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span><span class="k2">{</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">+</span></td></tr><tr><td class="number">10</td><td><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x--<span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>f<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>r<span class="k3">=</span><span class="k2">(</span>r<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%j<span class="k2">[</span>q<span class="k3">+</span><span class="n">7</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span>c<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>x</td></tr><tr><td class="number">11</td><td><span class="k3">=</span>X,y<span class="k3">=</span>Y,r<span class="k3">=</span>R,c<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span><span class="k2">{</span>p<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span><span class="n">20</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span><span class="n">0x3ffff</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_568.html" target="_blank">memmove</a><span class="k2">(</span>w<span class="k3">+</span><span class="n">1</span>,w</td></tr><tr><td class="number">12</td><td>,i<span class="k3">+</span><span class="k3">+</span><span class="k3">*</span><span class="n">4</span><span class="k2">)</span><span class="k2">;</span>w<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">0x3c00f</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>e<span class="k2">;</span>f<span class="k3">+</span><span class="k3">=</span>g<span class="k2">;</span>g<span class="k3">*</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span>z<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>d<span class="k3">=</span><span class="k2">(</span></td></tr><tr><td class="number">13</td><td>d<span class="k3">=</span><span class="n">10</span><span class="k3">-</span>e<span class="k3">/</span><span class="n">10</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">2</span>?<span class="n">2</span><span class="k2">:</span>d<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">378</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>F<span class="k2">(</span>i%<span class="n">18</span>,i<span class="k3">/</span><span class="n">18</span>,w<span class="k2">[</span>i<span class="k3">/</span><span class="n">18</span><span class="k2">]</span><span class="k3">&amp;</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span><span class="k2">(</span>i%<span class="n">18</span><span class="k2">)</span>?<span class="k2">(</span><span class="k2">(</span>e<span class="k3">/</span><span class="n">10</span><span class="k2">)</span>%<span class="n">15</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">:</span><span class="n">0</span></td></tr><tr><td class="number">14</td><td><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">8</span>,<span class="n">340</span>,<span class="n">15</span>,<span class="s">"Lines: %d Score: %d"</span>,e,f<span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span><span class="n">16</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>c<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span>F</td></tr><tr><td class="number">15</td><td><span class="k2">(</span>x<span class="k3">+</span>i%<span class="n">4</span>,y<span class="k3">+</span>i<span class="k3">/</span><span class="n">4</span>,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span>c&gt;&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">288</span>,<span class="n">352</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>

Slightly more compact than my first version. I removed duplicate positions in the s[] array (e.g., the square only has one &quot;angle&quot;). But obviously that made the logic a bit more complex. Thus, I introduced j[] to point to the first position in s[] per block and to declare how many angles each piece has.</p><p>j[q+7] just equals j[q+1]-j[q], but it was slightly more compact to expand it since it simplified the math and let me store the square piece as 2 bytes.</p><p>I also created a F() shortcut for rectfill and replaced retrace_count with just a simple rest().
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Fri, 02 May 2008 11:55:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><b>Sokoban Clone!</b></p><p>You are the greyish block. Move and push with arrowkeys. Press R to restart level. Your goal is to push the orange blocks into the red ones. There are 5 levels. I hope they are beatable <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>The levels were made by <a href="http://www.ne.jp/asahi/ai/yoshio/sokoban/handmade/index.html">Yoshio Murase</a></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;///////////////////////////////////Sokoban v1.0 by arvidsson</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> w<span class="k3">=</span><span class="n">160</span>,i,j,k,<span class="k3">*</span>B,x,y,c<span class="k3">=</span><span class="n">0</span>,C<span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span><span class="n">8</span><span class="k2">]</span>,v<span class="k3">=</span><span class="n">1</span>,a,b,d,e<span class="k2">;</span><span class="k1">int</span> l<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">{</span><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span></td></tr><tr><td class="number">3</td><td><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">5</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span></td></tr><tr><td class="number">4</td><td>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</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="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span></td></tr><tr><td class="number">5</td><td>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">5</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span></td></tr><tr><td class="number">6</td><td>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</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="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">3</span></td></tr><tr><td class="number">7</td><td>,<span class="n">4</span>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">5</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span></td></tr><tr><td class="number">8</td><td><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span></td></tr><tr><td class="number">9</td><td>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">5</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span></td></tr><tr><td class="number">10</td><td>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">}</span>,<span class="k2">{</span><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">1</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,</td></tr><tr><td class="number">11</td><td><span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">3</span>,<span class="n">4</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">4</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">5</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</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><span class="k2">;</span>R<span class="k2">(</span>x,y,</td></tr><tr><td class="number">12</td><td>c<span class="k2">)</span><span class="k2">{</span>x<span class="k3">*</span><span class="k3">=</span><span class="n">20</span><span class="k2">;</span>y<span class="k3">*</span><span class="k3">=</span><span class="n">20</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,x,y,x<span class="k3">+</span><span class="n">19</span>,y<span class="k3">+</span><span class="n">19</span>,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="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><span class="n">2</span></td></tr><tr><td class="number">13</td><td>,w,w,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span><a href="http://www.allegro.cc/manual/set_keyboard_rate" target="_blank"><span class="a">set_keyboard_rate</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<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,w<span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span></td></tr><tr><td class="number">14</td><td><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>v<span class="k2">)</span> <span class="k2">{</span>v<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>c<span class="k3">&lt;</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>l<span class="k2">[</span>c<span class="k2">]</span><span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&gt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>j<span class="k2">;</span>y<span class="k3">=</span>i<span class="k2">;</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span>k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span></td></tr><tr><td class="number">16</td><td>j<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>k<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>k<span class="k2">)</span><span class="k2">{</span>c<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>v<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span></td></tr><tr><td class="number">17</td><td>j<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span>k<span class="k3">=</span><span class="n">15</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>k<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&lt;</span><span class="n">3</span><span class="k2">)</span>k<span class="k3">=</span><span class="n">42</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> k<span class="k3">=</span><span class="n">16</span><span class="k2">;</span> R<span class="k2">(</span>j,i,k<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>R<span class="k2">(</span>x,y,<span class="n">25</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td><span class="k1">if</span><span class="k2">(</span>c<span class="k3">&lt;</span><span class="n">5</span><span class="k2">)</span> <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">5</span>,<span class="n">5</span>,<span class="n">15</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Level: %d"</span>,c<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span> <span class="k1">else</span> <a href="http://www.allegro.cc/manual/textout_ex" target="_blank"><span class="a">textout_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,</td></tr><tr><td class="number">19</td><td><span class="s">"WINNER!"</span>,<span class="n">5</span>,<span class="n">5</span>,<span class="n">15</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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,w<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>v<span class="k2">)</span>k<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>a<span class="k3">=</span>b<span class="k3">=</span>d<span class="k3">=</span>e<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k</td></tr><tr><td class="number">20</td><td><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k3">=</span><span class="k3">=</span><span class="n">82</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>b<span class="k3">=</span><span class="k3">-</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>k&gt;&gt;8<span class="k3">=</span><span class="k3">=</span><span class="n">83</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>b<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>k&gt;&gt;8<span class="k3">=</span><span class="k3">=</span><span class="n">84</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>e<span class="k3">=</span><span class="k3">-</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>k&gt;&gt;8<span class="k3">=</span><span class="k3">=</span><span class="n">85</span><span class="k2">)</span><span class="k2">{</span>d</td></tr><tr><td class="number">21</td><td><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>e<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>k&gt;&gt;8<span class="k3">=</span><span class="k3">=</span><span class="n">18</span><span class="k2">)</span>v<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">&gt;</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">+</span><span class="k3">=</span>a<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y</td></tr><tr><td class="number">22</td><td><span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">=</span><span class="n">4</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">=</span>a<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>C</td></tr><tr><td class="number">23</td><td><span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">=</span><span class="n">4</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">=</span>a<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span> <span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">24</td><td><span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">=</span>a<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">4</span></td></tr><tr><td class="number">25</td><td><span class="k2">)</span><span class="k2">{</span>C<span class="k2">[</span>y<span class="k3">+</span>e<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>b<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>C<span class="k2">[</span>y<span class="k3">+</span>d<span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span>a<span class="k2">]</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">=</span>a<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><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><span class="c">////</span></td></tr></tbody></table></div></div><p>

<img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/8/f/8f3427b138469f5ce2b9571822e7f640.png" alt="595202" width="164" height="190" /></p><p>This will be my last entry. Life called.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc ( Arvidsson)</author>
		<pubDate>Fri, 02 May 2008 17:08:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The problem would be if you go through the boxes without triggering game over. Otherwise, it&#39;s just because I was low on codespace, and if I tried to stop movement when you die, it crashes. I&#39;ll figure it out a little later.</p><p>[EDIT]Grr... It&#39;s not working. Something seems to be wrong with H(), my collision function. It doesn&#39;t seem to be recognising collisions most of the time. Also, as of now, the &quot;leaving the screen&quot; code doesn&#39;t work either, but that should be easy to fix.
</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;stdio.h&gt;/////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define W makecol(255, 255, 255)///////////////////////////////////////////////</span></td></tr><tr><td class="number">4</td><td><span class="p">#define G makecol(255, 255, 0)/////////////////////////////////////////////////</span></td></tr><tr><td class="number">5</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>b<span class="k2">;</span><span class="k1">int</span> u<span class="k3">=</span>KEY_UP,r<span class="k3">=</span>KEY_RIGHT,l<span class="k3">=</span>KEY_LEFT,sx<span class="k3">=</span><span class="n">4</span>,sy<span class="k3">=</span><span class="n">0</span>,bx<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,by<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,nb<span class="k3">=</span><span class="n">0</span>,hs<span class="k3">=</span><span class="n">0</span>,</td></tr><tr><td class="number">6</td><td>i<span class="k3">=</span><span class="n">0</span>,lt<span class="k3">=</span><span class="n">0</span>,t<span class="k3">=</span><span class="n">0</span>,ln<span class="k3">=</span><span class="n">0</span>,x<span class="k3">=</span><span class="n">320</span>,y<span class="k3">=</span><span class="n">240</span>,j<span class="k3">=</span><span class="n">0</span>,g_o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">int</span> J<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> j<span class="k3">/</span><span class="n">8</span><span class="k2">;</span><span class="k2">}</span><span class="k1">bool</span> H<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span></td></tr><tr><td class="number">7</td><td>nb<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">return</span><span class="k2">(</span><span class="k2">(</span>x&gt;bx<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;by<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>x<span class="k3">&lt;</span>bx<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">24</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y<span class="k3">&lt;</span>by<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">24</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">8</td><td><span class="k1">void</span> A<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>nb&gt;98<span class="k2">)</span><span class="k1">return</span><span class="k2">;</span>bx<span class="k2">[</span>nb<span class="k2">]</span><span class="k3">=</span><span class="n">640</span><span class="k2">;</span>by<span class="k2">[</span>nb<span class="k2">]</span><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>%<span class="n">480</span><span class="k2">;</span>nb<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> V<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">00</span><span class="k2">;</span>i</td></tr><tr><td class="number">9</td><td><span class="k3">&lt;</span>nb<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>bx<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>nb--<span class="k2">;</span>bx<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>bx<span class="k2">[</span>nb<span class="k2">]</span><span class="k2">;</span>by<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>by<span class="k2">[</span>nb<span class="k2">]</span><span class="k2">;</span>i--<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="c">////////</span></td></tr><tr><td class="number">10</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><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><span class="c">//////////////</span></td></tr><tr><td class="number">11</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><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><a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>T,MSEC_TO_TIMER<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><span class="c">///</span></td></tr><tr><td class="number">12</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>b<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><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>lt<span class="k3">=</span>t<span class="k2">;</span><span class="k1">if</span><span class="k2">(</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>u&gt;<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>j<span class="k3">&lt;</span><span class="n">11</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span>j<span class="k3">=</span><span class="n">70</span><span class="k2">;</span><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>r<span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span><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>l<span class="k2">]</span><span class="k2">)</span>x-<span class="k3">=</span><span class="n">5</span><span class="k2">;</span>j-<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ln%<span class="n">9</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>A<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ln%<span class="n">150</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>sx<span class="k3">=</span><span class="c">//</span></td></tr><tr><td class="number">14</td><td><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">4</span><span class="k3">+</span><span class="n">2</span><span class="k2">;</span>sy<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>%<span class="n">3</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>nb<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>bx<span class="k3">&lt;</span>i&gt;-<span class="k3">=</span>sx<span class="k2">;</span>by<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">=</span>sy<span class="k2">;</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,bx<span class="k3">&lt;</span>i&gt;,by</td></tr><tr><td class="number">15</td><td><span class="k3">&lt;</span>i&gt;,bx<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">24</span>,by<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="n">24</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>j&gt;10<span class="k2">)</span><a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>b,x,y,y<span class="k3">+</span><span class="n">9</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> <a href="http://www.allegro.cc/manual/hline" target="_blank"><span class="a">hline</span></a><span class="k2">(</span>b,x-9,y,x<span class="k3">+</span><span class="n">9</span>,W<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td><span class="k1">if</span><span class="k2">(</span>j<span class="k3">&lt;</span><span class="k3">-</span><span class="n">60</span><span class="k2">)</span>j<span class="k3">=</span><span class="k3">-</span><span class="n">60</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,<span class="n">1</span>,<span class="n">1</span>,<span class="n">638</span>,<span class="n">478</span>,W<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>ln&gt;hs<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k3">!</span>g_o<span class="k2">)</span><span class="k2">)</span>hs<span class="k3">=</span>ln<span class="k2">;</span>y-<span class="k3">=</span>J<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>H<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>g_o</td></tr><tr><td class="number">17</td><td><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">10</span>,W,<span class="k3">-</span><span class="n">1</span>,<span class="s">"time: %i"</span>,t<span class="k3">/</span><span class="n">1000</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,</td></tr><tr><td class="number">18</td><td><span class="n">20</span>,G,<span class="k3">-</span><span class="n">1</span>,<span class="s">"best: %i"</span>,t<span class="k3">/</span><span class="n">1000</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>g_o<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/textprintf_centre_ex" target="_blank"><span class="a">textprintf_centre_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">320</span>,<span class="n">240</span>,W,<span class="k3">-</span><span class="n">1</span>,</td></tr><tr><td class="number">19</td><td><span class="s">"game over"</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>b,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>t<span class="k3">&lt;</span>lt<span class="k3">+</span><span class="n">16</span><span class="k2">)</span></td></tr><tr><td class="number">20</td><td><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>ln<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="n">0</span><span class="k3">&lt;</span>x<span class="k3">&lt;</span><span class="n">640</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="n">0</span><span class="k3">&lt;</span>y<span class="k3">&lt;</span><span class="n">480</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> g_o<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/remove_int" target="_blank"><span class="a">remove_int</span></a><span class="k2">(</span>T<span class="k2">)</span></td></tr><tr><td class="number">21</td><td><span class="k2">;</span><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><span class="c">////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
New code, which <i>still</i> doesn&#39;t work.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Fri, 02 May 2008 18:05:57 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>#define W makecol(255, 255, 255)///////////////////////////////////////////////<br />#define G makecol(255, 255, 0)/////////////////////////////////////////////////</p><p>Now that&#39;s what I call a huge waste...</p><p>You can also replace GFX_AUTODETECT_WINDOWED with 2.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Trezker)</author>
		<pubDate>Fri, 02 May 2008 21:40:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>oh, nice. I&#39;ll probably do another game, as I really didn&#39;t like this one very much. Probably a shooter of some kind. I&#39;m pretty good at making those.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Fri, 02 May 2008 21:59:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Macros are a waste of space unless they take up the entire line. Using functions is generally better if possible:
</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#define W makecol(255, 255, 255)///////////////////////////////////////////////</span>
<span class="p">#define G makecol(255, 255, 0)/////////////////////////////////////////////////</span>

W<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</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>G<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</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">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>

<span class="c">// but it's just as easy to do this in your main routine:</span>

<span class="k1">int</span> W<span class="k3">=</span><span class="n">0xffffff</span>,G<span class="k3">=</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">0</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

Use global variables to avoid passing function parameters. Also, this is an evil way to save some space:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">void</span> a<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> A<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>
a<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> A<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>
a<span class="k2">(</span>A<span class="k2">)</span><span class="k2">{</span>A<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>
</pre></div></div><p>

Stuff like this can really add up, giving you that extra line. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Fri, 02 May 2008 23:21:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think almost all of my functions were <tt>int</tt>, but I&#39;ll use that for my <tt>void</tt> functions.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Fri, 02 May 2008 23:25:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Mine uses all 16 colors from the classic CGA palette.
</p></div></div><p>
CGA only had 4 colors in 320 x 200, 2 colors in 640 x 200.  Maybe you meant EGA?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Arthur Kalliokoski)</author>
		<pubDate>Fri, 02 May 2008 23:35:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I cooked up this today. It&#39;s ugliest piece of code I&#39;ve made in years, and I haven&#39;t even tried to opimize space yet since there&#39;s plenty left.</p><p>Hmm, I wonder.. Isn&#39;t this the first time ever that I&#39;ve participated in a coding event?!</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; // Crimson by Anders Andersson</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> i,j,<span class="k3">*</span>b,a,e,k<span class="k3">=</span><span class="n">0</span>,h<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,t,d<span class="k2">;</span><span class="k1">float</span> x<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,v<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,w<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,X,Y<span class="k2">;</span>T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>t<span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">3</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>T<span class="k2">)</span><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>t<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>T<span class="k2">)</span><span class="k2">;</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span></td></tr><tr><td class="number">4</td><td><span class="n">400</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">300</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">99</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0</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="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="k2">;</span></td></tr><tr><td class="number">5</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><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><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>T,<span class="n">50</span><span class="k2">)</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><span class="n">2</span>,<span class="n">800</span>,<span class="n">600</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span></td></tr><tr><td class="number">6</td><td><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><span class="n">800</span>,<span class="n">600</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">-</span><span class="k3">-</span>t<span class="k2">)</span><span class="k1">continue</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">7</td><td><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>e<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span></td></tr><tr><td class="number">8</td><td><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="n">20</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>e<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">&lt;</span>i&gt;<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>%<span class="n">800</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span></td></tr><tr><td class="number">9</td><td> <span class="k1">if</span><span class="k2">(</span>i&gt;50<span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>a<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>v<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k2">(</span>mouse_x-x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">/</span><span class="n">100</span><span class="k2">;</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k2">(</span></td></tr><tr><td class="number">10</td><td>mouse_y-y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">/</span><span class="n">100</span><span class="k2">;</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span><span class="k2">{</span><span class="k1">float</span> a<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>y<span class="k3">&lt;</span>i&gt;,x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>x<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span>x<span class="k3">&lt;</span>i&gt;</td></tr><tr><td class="number">11</td><td><span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b, x<span class="k3">&lt;</span>i&gt;,y<span class="k3">&lt;</span>i&gt;,<span class="n">5</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><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">50</span><span class="k2">;</span> j<span class="k3">&lt;</span></td></tr><tr><td class="number">12</td><td><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>j<span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x<span class="k3">&lt;</span>i&gt;-x<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k3">&lt;</span>i&gt;-y<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">-</span><span class="k3">-</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k3">+</span><span class="k3">+</span>k<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>X<span class="k3">=</span>x<span class="k3">&lt;</span>i&gt;-x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k3">&lt;</span>i&gt;-y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k2">)</span><span class="k3">-</span><span class="k3">-</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>x<span class="k3">&lt;</span>i&gt;&gt;800<span class="k3">|</span><span class="k3">|</span></td></tr><tr><td class="number">14</td><td>y<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>y<span class="k3">&lt;</span>i&gt;&gt;600<span class="k2">)</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">=</span>v<span class="k3">&lt;</span>i&gt;<span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">=</span>w<span class="k3">&lt;</span>i&gt;<span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b,x<span class="k3">&lt;</span>i&gt;,y<span class="k3">&lt;</span>i&gt;,<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">0</span>,<span class="n">0</span>,</td></tr><tr><td class="number">15</td><td><span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b, x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,<span class="n">5</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">255</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b, <a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a>,<a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a>,<span class="n">5</span>,</td></tr><tr><td class="number">16</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">255</span>,<span class="n">255</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">8</span>,<span class="n">580</span>,<span class="n">15</span>,<span class="s">"Kills: %d Health: %d"</span>,k,h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">17</td><td><span class="k1">else</span><span class="k2">{</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">300</span>,<span class="n">300</span>,<span class="n">15</span>,<span class="s">"Game over: %d kills"</span>,k<span class="k2">)</span><span class="k2">;</span><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_ENTER<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">18</td><td>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">400</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">300</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">99</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">800</span>,</td></tr><tr><td class="number">19</td><td><span class="n">600</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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 (Trezker)</author>
		<pubDate>Fri, 02 May 2008 23:37:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I think almost all of my functions were int, but I&#39;ll use that for my void functions.
</p></div></div><p>
The functions default to int, but you can use them as if they were void. Best of both worlds.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
CGA only had 4 colors in 320 x 200, 2 colors in 640 x 200. Maybe you meant EGA?
</p></div></div><p>
I meant CGA. It has a 16 color palette; it&#39;s just that they aren&#39;t all simultaneously usable in graphics mode.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Fri, 02 May 2008 23:41:48 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><span class="source-code"><span class="k1">int</span> W<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span></span><img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sat, 03 May 2008 00:01:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Trezker: I can&#39;t get your code to compile. <tt>b</tt> isn&#39;t given a type, and you don&#39;t convert <tt>float</tt> to <tt>fix</tt>. Also, my compiler won&#39;t let you declare functions without types.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Sat, 03 May 2008 00:08:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Trezker: I can&#39;t get your code to compile. b isn&#39;t given a type, and you don&#39;t convert float to fix. Also, my compiler won&#39;t let you declare functions without types.
</p></div></div><p>

Try a C compiler instead of a C++ compiler.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LennyLen)</author>
		<pubDate>Sat, 03 May 2008 00:16:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here&#39;s my entry. I wrote it before I saw Matthew&#39;s comment on using functions over macros for the color. I still ended up saving space with the macro though.</p><p>Player 1 Controls:<br />Move Up - Up Arrow<br />Move Down - Down Arrow</p><p>Player 2 Controls: (if you have a player 2)<br />Move Up - W Key<br />Move Down - S Key</p><p><b>PONG, 1 or 2 players</b>
</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;// Pong, by Michael Swiger ////////////////////////////////</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;time.h&gt;//////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define W makecol(255,255,255)/////////////////////////////////////////////////</span></td></tr><tr><td class="number">4</td><td><span class="k1">volatile</span> <span class="k1">long</span> s<span class="k2">;</span><span class="k1">void</span> isc<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>s<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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>isc<span class="k2">)</span> <span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</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="k2">;</span></td></tr><tr><td class="number">5</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><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><a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/desktop_color_depth" target="_blank"><span class="a">desktop_color_depth</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="c">/////</span></td></tr><tr><td class="number">6</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><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span> b<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><span class="n">640</span>,</td></tr><tr><td class="number">7</td><td><span class="n">480</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>isc,BPS_TO_TIMER<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span> r: <span class="k1">int</span> p1s<span class="k3">=</span><span class="n">0</span>,p2s<span class="k3">=</span><span class="n">0</span>,p<span class="k2">;</span></td></tr><tr><td class="number">8</td><td><span class="k1">while</span><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span><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">"(1)1 Player, (2)2 Players, (ESC) Quit"</span>,</td></tr><tr><td class="number">9</td><td><span class="n">320</span>,<span class="n">240</span>,W,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> v<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>v&gt;&gt;8<span class="k3">=</span><span class="k3">=</span>KEY_1<span class="k2">)</span><span class="k2">{</span>p<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">goto</span> s<span class="k2">;</span><span class="k2">}</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>v&gt;&gt;8<span class="k3">=</span><span class="k3">=</span>KEY_2<span class="k2">)</span> <span class="k2">{</span>p<span class="k3">=</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td><span class="k1">goto</span> s<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>v&gt;&gt;8<span class="k3">=</span><span class="k3">=</span>KEY_ESC<span class="k2">)</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span> s: <span class="k1">float</span> bx<span class="k3">=</span><span class="n">310</span>,by<span class="k3">=</span><span class="n">230</span>,pbx,pby,vbx,vby,pvbx,</td></tr><tr><td class="number">11</td><td>pvby,i<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span>.<span class="n">5</span>,<span class="k3">-</span><span class="n">0</span>.<span class="n">5</span><span class="k2">}</span><span class="k2">;</span><span class="k1">int</span> p1x<span class="k3">=</span><span class="n">10</span>,p1y<span class="k3">=</span><span class="n">205</span>,p2x<span class="k3">=</span><span class="n">610</span>,p2y<span class="k3">=</span><span class="n">205</span>,t<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>%<span class="n">490</span><span class="k2">;</span>vbx<span class="k3">=</span>i</td></tr><tr><td class="number">12</td><td><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">4</span><span class="k2">]</span><span class="k2">;</span>vby<span class="k3">=</span>i<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">4</span><span class="k2">]</span><span class="k2">;</span> <span class="k1">while</span><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>bx<span class="k3">+</span><span class="k3">=</span>vbx<span class="k2">;</span>by<span class="k3">+</span><span class="k3">=</span>vby<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>bx<span class="k3">&lt;</span><span class="k3">=</span><span class="n">30</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p1y<span class="k3">+</span><span class="n">70</span><span class="k3">&gt;</span><span class="k3">=</span>by<span class="k3">&amp;</span><span class="k3">&amp;</span>p1y</td></tr><tr><td class="number">13</td><td><span class="k3">&lt;</span><span class="k3">=</span>by<span class="k3">&amp;</span><span class="k3">&amp;</span>p1x<span class="k3">&lt;</span><span class="k3">=</span>bx<span class="k3">&amp;</span><span class="k3">&amp;</span>p1x<span class="k3">+</span><span class="n">20</span><span class="k3">&gt;</span><span class="k3">=</span>bx<span class="k2">)</span><span class="k2">{</span>vbx<span class="k3">=</span><span class="k3">-</span>vbx<span class="k2">;</span>vbx<span class="k3">+</span><span class="k3">=</span>.<span class="n">15</span><span class="k2">;</span>bx<span class="k3">=</span>p1x<span class="k3">+</span><span class="n">20</span><span class="k2">;</span>t<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>%<span class="n">490</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>bx<span class="k3">+</span><span class="n">20</span><span class="k3">&gt;</span><span class="k3">=</span></td></tr><tr><td class="number">14</td><td><span class="n">610</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p2y<span class="k3">+</span><span class="n">70</span><span class="k3">&gt;</span><span class="k3">=</span> by<span class="k3">&amp;</span><span class="k3">&amp;</span>p2y<span class="k3">&lt;</span><span class="k3">=</span>by<span class="k3">&amp;</span><span class="k3">&amp;</span>p2x<span class="k3">&lt;</span><span class="k3">=</span>bx<span class="k3">+</span><span class="n">20</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p2x<span class="k3">+</span><span class="n">20</span><span class="k3">&gt;</span><span class="k3">=</span>bx<span class="k3">+</span><span class="n">20</span><span class="k2">)</span><span class="k2">{</span>vbx<span class="k3">=</span><span class="k3">-</span>vbx<span class="k2">;</span>vbx-<span class="k3">=</span><span class="n">0</span>.<span class="n">15</span><span class="k2">;</span>bx<span class="k3">=</span>p2x</td></tr><tr><td class="number">15</td><td><span class="k3">-</span><span class="n">20</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>bx<span class="k3">+</span><span class="n">20</span><span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>p2s<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">goto</span> s<span class="k2">;</span><span class="k2">}</span> <span class="k1">if</span><span class="k2">(</span>bx&gt;<span class="k3">=</span><span class="n">640</span><span class="k2">)</span><span class="k2">{</span>p1s<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">goto</span> s<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>by<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>vby<span class="k3">=</span><span class="k3">-</span>vby<span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">16</td><td><span class="k1">if</span><span class="k2">(</span>by&gt;<span class="k3">=</span><span class="n">460</span><span class="k2">)</span><span class="k2">{</span>vby<span class="k3">=</span><span class="k3">-</span>vby<span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>pbx<span class="k3">=</span>bx,pby<span class="k3">=</span>by,pvbx<span class="k3">=</span>vbx,pvby<span class="k3">=</span>vby<span class="k2">;</span>pbx<span class="k3">&lt;</span><span class="k3">=</span><span class="n">610</span><span class="k3">&amp;</span><span class="k3">&amp;</span>pbx&gt;<span class="k3">=</span><span class="n">30</span><span class="k2">;</span>pbx</td></tr><tr><td class="number">17</td><td><span class="k3">+</span><span class="k3">=</span>pvbx<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>pvby<span class="k3">&lt;</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>pby<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>pvby&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span>pby&gt;<span class="k3">=</span><span class="n">620</span><span class="k2">)</span><span class="k2">)</span>pvby<span class="k3">=</span><span class="k3">-</span>pvby<span class="k2">;</span>pby<span class="k3">+</span><span class="k3">=</span>pvby<span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>s&gt;0</td></tr><tr><td class="number">18</td><td><span class="k2">)</span><span class="k2">{</span><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="k3">&amp;</span><span class="k3">&amp;</span>p1y&gt;1<span class="k2">)</span>p1y-<span class="k3">=</span><span class="n">6</span><span class="k2">;</span><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="k3">&amp;</span><span class="k3">&amp;</span>p1y<span class="k3">&lt;</span><span class="n">409</span><span class="k2">)</span>p1y<span class="k3">+</span><span class="k3">=</span><span class="n">6</span><span class="k2">;</span><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_W<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">19</td><td>p2y&gt;1<span class="k3">&amp;</span><span class="k3">&amp;</span>p<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>p2y-<span class="k3">=</span><span class="n">6</span><span class="k2">;</span><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_S<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p2y<span class="k3">&lt;</span><span class="n">409</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>p2y<span class="k3">+</span><span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>vbx&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span>p<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span> <span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>p2y<span class="k3">+</span></td></tr><tr><td class="number">20</td><td><span class="n">35</span><span class="k3">&gt;</span>pby<span class="k3">&amp;</span><span class="k3">&amp;</span>p2y&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span>bx&gt;<span class="k3">=</span>t<span class="k2">)</span>p2y-<span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p2y<span class="k3">+</span><span class="n">35</span><span class="k3">&lt;</span>pby<span class="k3">&amp;</span><span class="k3">&amp;</span>p2y<span class="k3">&lt;</span><span class="n">410</span><span class="k3">&amp;</span><span class="k3">&amp;</span>bx&gt;<span class="k3">=</span>t<span class="k2">)</span>p2y<span class="k3">+</span><span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>p<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">21</td><td><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>p2y&gt;205<span class="k2">)</span>p2y-<span class="k3">=</span><span class="n">6</span><span class="k2">;</span> <span class="k1">if</span><span class="k2">(</span>p2y<span class="k3">&lt;</span><span class="n">205</span><span class="k2">)</span>p2y<span class="k3">+</span><span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k2">}</span> <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><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_keybuf" target="_blank"><span class="a">clear_keybuf</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> clear<span class="k2">(</span></td></tr><tr><td class="number">22</td><td><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a> <span class="k2">)</span><span class="k2">;</span> <span class="k1">goto</span> r<span class="k2">;</span> <span class="k2">}</span> s--<span class="k2">;</span><span class="k2">}</span> <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a> <span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">100</span>,<span class="n">2</span>,W,<span class="n">0</span>,<span class="s">"P1 Score: %d"</span>, p1s<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">23</td><td><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">450</span>,<span class="n">2</span>,W,<span class="n">0</span>,<span class="s">"P2 Score: %d"</span>,p2s<span class="k2">)</span><span class="k2">;</span> <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>b,p1x,p1y,p1x<span class="k3">+</span><span class="n">20</span>,</td></tr><tr><td class="number">24</td><td>p1y<span class="k3">+</span><span class="n">70</span>,W<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,p2x,p2y,p2x<span class="k3">+</span><span class="n">20</span>,p2y<span class="k3">+</span><span class="n">70</span>,W<span class="k2">)</span><span class="k2">;</span> <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,bx,by,bx<span class="k3">+</span><span class="n">20</span>,by<span class="k3">+</span><span class="n">20</span>,W<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><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>

Uses every available character <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mokkan)</author>
		<pubDate>Sat, 03 May 2008 00:50:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
LOCK_VARIABLE(t);LOCK_FUNCTION(T);main(){
</p></div></div><p>

Those should be in the main function, not after the end of the timer function. They only really apply to DOS anyway (IIRC).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Sat, 03 May 2008 00:57:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Some more tweaking due to applying almost every Ted Steen&#39;s suggestion. The underlying code remains the same. To improve it beyond this, I would need to fully revamp the logic to something more ala Matthew Leverton. I don&#39;t know if I have the will to do it.</p><p>What&#39;s new?, score counter at last and a new presentation. Also added a somewhat forced game over handling (the game will just rest() for 2 seconds and then exit).</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;                                              // SHTetris.c</span></td></tr><tr><td class="number">2</td><td><span class="p">#define f(i,x) for(i=0;i&lt;x;i++)                                   /////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define B(x) PS(); stretch_blit(O,screen,0,0,320,240,0,0,640,480); rest(x)</span></td></tr><tr><td class="number">4</td><td><span class="p">#define RF(a,b,c,w) rectfill(O,xo+a+j*8,yo+b+y*8,xo+a+j*8+w,yo+b+y*8+w,c)</span></td></tr><tr><td class="number">5</td><td><span class="k1">int</span> F<span class="k2">[</span><span class="n">25</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> ps<span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span><span class="n">16</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">15</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">15</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">3</span>,</td></tr><tr><td class="number">6</td><td><span class="n">1</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">6</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">6</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">2</span></td></tr><tr><td class="number">7</td><td>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">6</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">6</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,</td></tr><tr><td class="number">8</td><td><span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span><span class="k2">}</span><span class="k2">;</span><span class="k1">int</span> i,j,p,q<span class="k3">=</span><span class="n">0</span>,m<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,x,y,w,a<span class="k3">=</span><span class="n">0</span>,o,no<span class="k3">=</span><span class="n">0</span>,d,e,g,k,lt,rt,ltl,rtl, cf,h,</td></tr><tr><td class="number">9</td><td>cm,rp,cr,xo,yo,l,S<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>O<span class="k2">;</span>UF<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">24</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span><span class="n">0xFFFF</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>DL<span class="k2">(</span>i,<span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,</td></tr><tr><td class="number">10</td><td><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span>DL<span class="k2">(</span>i,<span class="k3">-</span><span class="n">1</span>,<span class="n">0x44A3FF</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>f<span class="k2">(</span>i,<span class="n">24</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span><span class="n">0xFFFF</span><span class="k2">)</span>f<span class="k2">(</span>j,i<span class="k2">)</span>F<span class="k2">[</span>i-j<span class="k2">]</span><span class="k3">=</span>F<span class="k2">[</span>i-j</td></tr><tr><td class="number">11</td><td><span class="k3">-</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span>S<span class="k3">+</span><span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span>l,<span class="n">2</span><span class="k2">)</span><span class="k3">*</span><span class="n">1024</span><span class="k2">;</span><span class="k2">}</span>DL<span class="k2">(</span>y,d,c,sc<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span>j,<span class="n">16</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">&amp;</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>j<span class="k2">)</span><span class="k2">{</span>RF<span class="k2">(</span><span class="n">1</span>,<span class="n">1</span>,c,<span class="n">6</span><span class="k2">)</span><span class="k2">;</span>RF<span class="k2">(</span><span class="n">3</span>,<span class="n">3</span>,c<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">4</span>,<span class="n">4</span><span class="k2">)</span></td></tr><tr><td class="number">12</td><td><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>sc<span class="k2">)</span>RF<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,sc,<span class="n">8</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>PS<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>O,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">17</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%10d"</span>,S<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> </td></tr><tr><td class="number">13</td><td>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>F<span class="k2">[</span><span class="n">24</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</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="k2">;</span><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">24</span><span class="k2">)</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><span class="n">2</span>,<span class="n">256</span>,<span class="n">400</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">14</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>O<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><span class="n">320</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">24</span><span class="k2">)</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0xF003</span><span class="k2">;</span><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></td></tr><tr><td class="number">15</td><td><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>a<span class="k2">)</span><span class="k2">{</span>p<span class="k3">=</span>q<span class="k2">;</span>q<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>%<span class="n">7</span><span class="k2">;</span>o<span class="k3">=</span>no<span class="k2">;</span>no<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>%<span class="n">4</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>w<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>e<span class="k3">=</span></td></tr><tr><td class="number">16</td><td><span class="n">10</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h&gt;e<span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>cm<span class="k2">)</span>x<span class="k3">=</span>w<span class="k2">;</span>rp<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>lt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>lt&gt;ltl<span class="k2">)</span><span class="k2">{</span>lt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">=</span>x-1</td></tr><tr><td class="number">17</td><td><span class="k2">;</span>ltl<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ltl<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>ltl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>rt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rt&gt;rtl<span class="k2">)</span><span class="k2">{</span>rt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">=</span>x<span class="k3">+</span><span class="n">1</span><span class="k2">;</span>rtl<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rtl<span class="k3">&lt;</span><span class="n">4</span></td></tr><tr><td class="number">18</td><td><span class="k2">)</span>rtl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">75</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>k<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="k2">(</span>o<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">;</span>rp<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>k<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">75</span><span class="k2">]</span><span class="k2">)</span>k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>ltl<span class="k3">=</span></td></tr><tr><td class="number">19</td><td><span class="n">32</span><span class="k2">;</span>lt<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>rtl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>rt<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span>S<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">85</span><span class="k2">]</span></td></tr><tr><td class="number">20</td><td><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>rp<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>p<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>o<span class="k2">)</span><span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>cr<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span><span class="k2">{</span>cr<span class="k3">=</span>cr<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>F<span class="k2">[</span>y-i<span class="k2">]</span><span class="k3">&amp;</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;</td></tr><tr><td class="number">21</td><td><span class="k2">)</span><span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>cr<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span>o<span class="k3">=</span><span class="k3">=</span><span class="n">0</span>?<span class="n">3</span><span class="k2">:</span>o-1<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>p<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>o<span class="k2">)</span><span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>cm<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>cm<span class="k3">=</span>cm<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span></td></tr><tr><td class="number">22</td><td>F<span class="k2">[</span>y-1-i<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>w<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>cf<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>cf<span class="k3">=</span>cf<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>F<span class="k2">[</span>y-i<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>cf<span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>h<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span></td></tr><tr><td class="number">23</td><td> d<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d&gt;g<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>F<span class="k2">[</span>y-i-1<span class="k2">]</span><span class="k3">|</span><span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">;</span>a<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">2000</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>xo<span class="k3">=</span>yo<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">24</td><td><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">25</span><span class="k2">)</span>DL<span class="k2">(</span>i,F<span class="k3">&lt;</span>i&gt;,<span class="n">0xFFA6A6</span>,<span class="n">0xFFFFA9</span><span class="k2">)</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>DL<span class="k2">(</span>y-1-i,m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x,<span class="n">0x44A3FF</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>UF<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>xo</td></tr><tr><td class="number">25</td><td><span class="k3">=</span><span class="n">96</span><span class="k2">;</span>yo<span class="k3">=</span><span class="n">72</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>q<span class="k2">]</span><span class="k2">[</span>no<span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>DL<span class="k2">(</span><span class="n">5</span><span class="k3">-</span>i,m<span class="k3">&lt;</span>i&gt;,<span class="n">0x8F</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>B<span class="k2">(</span><span class="n">15</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>

<span class="remote-thumbnail"><span class="json">{"name":"595211","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/f\/4\/f46ce186f9ea72a810719bde12796964.gif","w":264,"h":432,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/f\/4\/f46ce186f9ea72a810719bde12796964"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/f/4/f46ce186f9ea72a810719bde12796964-240.jpg" alt="595211" width="240" height="392" /></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Sat, 03 May 2008 03:20:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Another entry, a space invaderish game where you can only destroy the enemies the same colour as yourself. The player colour cycles through seven different, changing with each shot (Z to fire, space resets if you die).</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;math.h&gt;/************************************************************/</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;allegro.h&gt;/*********************************************************/</span></td></tr><tr><td class="number">3</td><td><span class="k1">int</span> t<span class="k2">;</span><span class="k1">void</span> it<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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>it<span class="k2">)</span><span class="k2">;</span><span class="k1">typedef</span> <span class="k1">struct</span><span class="k2">{</span><span class="k1">int</span> x,y,c,dd,dr,s,d<span class="k2">;</span><span class="k2">}</span>_e</td></tr><tr><td class="number">4</td><td><span class="k2">;</span><span class="k1">typedef</span> <span class="k1">struct</span><span class="k2">{</span><span class="k1">float</span> x,y,s,a,l<span class="k2">;</span><span class="k1">int</span> c<span class="k2">;</span><span class="k2">}</span>_p<span class="k2">;</span>_p p<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span>_e d<span class="k2">[</span><span class="n">36</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> np<span class="k3">=</span><span class="n">0</span>,h,e<span class="k3">=</span><span class="n">0</span>,g<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">5</td><td>,q<span class="k3">=</span><span class="n">160</span>,w<span class="k3">=</span><span class="n">228</span>,s<span class="k3">=</span><span class="n">0</span>,c<span class="k3">=</span><span class="n">1</span>,l<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>b<span class="k2">;</span>A<span class="k2">(</span><span class="k1">float</span> x,<span class="k1">float</span> y,<span class="k1">int</span> c<span class="k2">)</span><span class="k2">{</span>_p pa<span class="k3">=</span><span class="k2">{</span>x,y,<span class="n">3</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>%</td></tr><tr><td class="number">6</td><td><span class="n">360</span><span class="k3">*</span>M_PI<span class="k3">/</span><span class="n">180</span>,<span class="n">10</span>,c<span class="k2">}</span><span class="k2">;</span>p<span class="k2">[</span>np<span class="k2">]</span><span class="k3">=</span>pa<span class="k2">;</span>np<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span>D<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> n<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>l<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>b,q,w,q</td></tr><tr><td class="number">7</td><td><span class="k3">-</span><span class="n">8</span>,w<span class="k3">+</span><span class="n">8</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>b,q,w,q<span class="k3">+</span><span class="n">8</span>,w<span class="k3">+</span><span class="n">8</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>b,q-8,w<span class="k3">+</span><span class="n">8</span>,q<span class="k3">+</span><span class="n">8</span>,w<span class="k3">+</span><span class="n">8</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/floodfill" target="_blank"><span class="a">floodfill</span></a><span class="k2">(</span>b,q,w<span class="k3">+</span><span class="n">4</span>,c<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">8</td><td><span class="k1">if</span><span class="k2">(</span>s<span class="k2">)</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>b,e,g,e,g-4,<span class="k2">(</span>c&gt;1<span class="k2">)</span>?c-1:7<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">36</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">[</span>n<span class="k2">]</span>.dd<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>b,d<span class="k2">[</span></td></tr><tr><td class="number">9</td><td>n<span class="k2">]</span>.x,d<span class="k2">[</span>n<span class="k2">]</span>.y,<span class="n">8</span>,d<span class="k2">[</span>n<span class="k2">]</span>.c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">8</span>,<span class="n">8</span>,<span class="n">15</span>,<span class="n">0</span>,<span class="s">"Score: %i"</span>,h<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> texto\</td></tr><tr><td class="number">10</td><td>ut_centre_ex<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"Game over."</span>,<span class="n">160</span>,<span class="n">120</span>,<span class="n">15</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>n <span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span>np<span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>b,p</td></tr><tr><td class="number">11</td><td><span class="k2">[</span>n<span class="k2">]</span>.x,p<span class="k2">[</span>n<span class="k2">]</span>.y,<span class="n">2</span>,p<span class="k2">[</span>n<span class="k2">]</span>.c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">320</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> n,x<span class="k3">=</span><span class="n">0</span>,y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>q<span class="k3">=</span><span class="n">160</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td>w<span class="k3">=</span><span class="n">228</span><span class="k2">;</span>l<span class="k3">=</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">36</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>_e e<span class="k3">=</span><span class="k2">{</span><span class="n">96</span><span class="k3">+</span>x<span class="k3">*</span><span class="n">16</span>,<span class="k3">-</span><span class="n">64</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">16</span>,<span class="n">1</span><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>%<span class="n">7</span>,<span class="n">0</span>,y%<span class="n">2</span>,<span class="n">1</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">;</span>d<span class="k2">[</span>n<span class="k2">]</span></td></tr><tr><td class="number">13</td><td><span class="k3">=</span>e<span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x&gt;8<span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span>C<span class="k2">(</span>x,y,n<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span><span class="k2">(</span>x-d<span class="k2">[</span>n<span class="k2">]</span>.x<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>x-d<span class="k2">[</span>n<span class="k2">]</span>.x<span class="k2">)</span><span class="k3">+</span><span class="k2">(</span>y-d<span class="k2">[</span>n<span class="k2">]</span>.y<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>y-d<span class="k2">[</span></td></tr><tr><td class="number">14</td><td>n<span class="k2">]</span>.y<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">=</span><span class="n">64</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="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="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="k2">;</span>install_in\</td></tr><tr><td class="number">15</td><td>t_ex<span class="k2">(</span>it,BPS_TO_TIMER<span class="k2">(</span><span class="n">60</span><span class="k2">)</span><span class="k2">)</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><span class="n">2</span>,<span class="n">320</span>,<span class="n">240</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><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>b<span class="k3">=</span>crea\</td></tr><tr><td class="number">16</td><td>te_bitmap<span class="k2">(</span><span class="n">320</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">while</span><span class="k2">(</span>t&gt;0<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> n,i<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span>np<span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>p<span class="k2">[</span>n</td></tr><tr><td class="number">17</td><td><span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span>p<span class="k2">[</span>n<span class="k2">]</span>.s<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>p<span class="k2">[</span>n<span class="k2">]</span>.a<span class="k2">)</span><span class="k2">;</span>p<span class="k2">[</span>n<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span>p<span class="k2">[</span>n<span class="k2">]</span>.s<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>p<span class="k2">[</span>n<span class="k2">]</span>.a<span class="k2">)</span><span class="k2">;</span>p<span class="k2">[</span>n<span class="k2">]</span>.l--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p<span class="k2">[</span>n<span class="k2">]</span>.l<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p<span class="k2">[</span>n<span class="k2">]</span>.x</td></tr><tr><td class="number">18</td><td><span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p<span class="k2">[</span>n<span class="k2">]</span>.x&gt;320<span class="k3">|</span><span class="k3">|</span>p<span class="k2">[</span>n<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>p<span class="k2">[</span>n<span class="k2">]</span>.y&gt;240<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span>n<span class="k2">;</span>i<span class="k3">&lt;</span>np-1<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>p<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>p<span class="k2">[</span>i<span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span>np--<span class="k2">;</span>n--<span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">19</td><td><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>q<span class="k3">+</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>q-<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><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><span class="n">26</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>s<span class="k2">)</span><span class="k2">{</span>s<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>e<span class="k3">=</span>q<span class="k2">;</span>g<span class="k3">=</span>w<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>c<span class="k3">+</span><span class="k3">+</span></td></tr><tr><td class="number">20</td><td><span class="k3">&gt;</span><span class="n">7</span><span class="k2">)</span>c<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>s<span class="k2">)</span><span class="k2">{</span>g-<span class="k3">=</span><span class="n">5</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>g<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>e<span class="k3">=</span>g<span class="k3">=</span>s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">36</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>q,w,n<span class="k2">)</span><span class="k2">)</span>l<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">[</span>n<span class="k2">]</span></td></tr><tr><td class="number">21</td><td>.dd<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">[</span>n<span class="k2">]</span>.d<span class="k2">)</span><span class="k2">{</span>d<span class="k2">[</span>n<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>d<span class="k2">[</span>n<span class="k2">]</span>.dr<span class="k2">)</span>?d<span class="k2">[</span>n<span class="k2">]</span>.s:-d<span class="k2">[</span>n<span class="k2">]</span>.s<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k2">[</span>n<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="k3">=</span><span class="n">16</span><span class="k3">|</span><span class="k3">|</span>d<span class="k2">[</span>n<span class="k2">]</span>.x&gt;<span class="k3">=</span><span class="n">304</span><span class="k2">)</span>d<span class="k2">[</span></td></tr><tr><td class="number">22</td><td>n<span class="k2">]</span>.d<span class="k3">=</span><span class="n">16</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>d<span class="k2">[</span>n<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>d<span class="k2">[</span>n<span class="k2">]</span>.d--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">[</span>n<span class="k2">]</span>.d<span class="k2">)</span>d<span class="k2">[</span>n<span class="k2">]</span>.dr<span class="k3">=</span><span class="k3">!</span>d<span class="k2">[</span>n<span class="k2">]</span>.dr<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>e,g,n<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span>g<span class="k3">=</span>s</td></tr><tr><td class="number">23</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>h<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>d<span class="k2">[</span>n<span class="k2">]</span>.dd<span class="k3">=</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>c&gt;1<span class="k2">)</span>?c-1:7<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>d<span class="k2">[</span>n<span class="k2">]</span>.c<span class="k2">)</span>?<span class="n">1</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span>?<span class="n">10</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k2">[</span>n<span class="k2">]</span>.dd<span class="k2">)</span><span class="k1">for</span> <span class="k2">(</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>A</td></tr><tr><td class="number">24</td><td><span class="k2">(</span>d<span class="k2">[</span>n<span class="k2">]</span>.x,d<span class="k2">[</span>n<span class="k2">]</span>.y,d<span class="k2">[</span>n<span class="k2">]</span>.c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">int</span> dr<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>%<span class="n">2</span><span class="k2">;</span>_e e<span class="k3">=</span><span class="k2">{</span><span class="k2">(</span>dr<span class="k2">)</span>?<span class="n">96</span><span class="k2">:</span><span class="n">224</span>,<span class="k3">-</span><span class="n">64</span>,<span class="n">1</span><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>%<span class="n">7</span>,</td></tr><tr><td class="number">25</td><td><span class="n">0</span>,dr,<span class="n">1</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">;</span>d<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span>e<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <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><span class="n">75</span><span class="k2">]</span><span class="k2">)</span>S<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>t--<span class="k2">;</span><span class="k2">}</span>D<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><span class="c">/*****/</span></td></tr></tbody></table></div></div><p>

<span class="remote-thumbnail"><span class="json">{"name":"595212","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/3\/4\/34a98388b07634a25219a3d39043895e.png","w":319,"h":262,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/3\/4\/34a98388b07634a25219a3d39043895e"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/3/4/34a98388b07634a25219a3d39043895e-240.jpg" alt="595212" width="240" height="197" /></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (netcat)</author>
		<pubDate>Sat, 03 May 2008 03:34:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>[edited] - Added the minimum number of moves possible in finished message, and added penalty moves for viewing the maze.</p><p>Here&#39;s my entry. The objective is to find your way out of a randomly generated maze.
</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;///////HardTranceFan's Entry into Allegro ScreenHack 2008///</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> g<span class="k2">[</span><span class="n">64</span><span class="k2">]</span><span class="k2">[</span><span class="n">48</span><span class="k2">]</span>,r<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,i,j,n,o,x,y<span class="k2">;</span><span class="k1">int</span> w<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> a,<span class="k1">int</span> q<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>m<span class="k2">(</span></td></tr><tr><td class="number">3</td><td>x<span class="k3">+</span><span class="n">2</span><span class="k3">*</span>r<span class="k2">[</span>a<span class="k2">]</span>,y<span class="k3">+</span><span class="n">2</span><span class="k3">*</span>r<span class="k2">[</span>a<span class="k3">+</span><span class="n">1</span><span class="k2">]</span>,q<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>g<span class="k2">[</span>x<span class="k3">+</span>r<span class="k2">[</span>a<span class="k2">]</span><span class="k2">]</span><span class="k2">[</span>y<span class="k3">+</span>r<span class="k2">[</span>a<span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> c<span class="k2">(</span><span class="k1">int</span> d<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span>d,d,</td></tr><tr><td class="number">4</td><td>d<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> m<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> q<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> b<span class="k2">;</span><span class="k1">int</span> z<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>%<span class="n">4</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>o<span class="k3">=</span>q<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>g<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k3">|</span><span class="k3">|</span></td></tr><tr><td class="number">5</td><td>x<span class="k3">*</span>y<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>x&gt;62<span class="k3">|</span><span class="k3">|</span>y&gt;46<span class="k2">)</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>g<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>b<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>b<span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span>b<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>w<span class="k2">(</span>x,y,z,q<span class="k2">)</span><span class="k2">;</span>z<span class="k3">=</span><span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>z<span class="k2">)</span>%<span class="n">5</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">6</td><td><span class="k1">return</span> <span class="n">1</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="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,<span class="n">640</span>,<span class="n">480</span>,<span class="n">0</span>,<span class="n">0</span></td></tr><tr><td class="number">7</td><td><span class="k2">)</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="k2">;</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>b<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> f<span class="k3">=</span><span class="n">0</span>,t<span class="k2">;</span></td></tr><tr><td class="number">8</td><td><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">64</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">48</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>g<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>g<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">33</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">25</span><span class="k2">;</span>i<span class="k3">=</span>m<span class="k2">(</span>x,y,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span>f<span class="k3">&amp;</span><span class="k3">&amp;</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>n<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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">&amp;</span><span class="k3">&amp;</span>g<span class="k2">[</span>x<span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> <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></td></tr><tr><td class="number">10</td><td><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>g<span class="k2">[</span>x-1<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k2">)</span>x--<span class="k2">;</span><span class="k1">else</span> <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="k3">&amp;</span><span class="k3">&amp;</span>g<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> <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></td></tr><tr><td class="number">11</td><td><span class="k2">[</span>KEY_UP<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>g<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y-1<span class="k2">]</span><span class="k2">)</span>y--<span class="k2">;</span><span class="k1">else</span> n--<span class="k2">;</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">63</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">47</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">12</td><td><span class="k3">!</span>g<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><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><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,i<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">5</span>,j<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">5</span>,i<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">15</span>,j<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">15</span>,c<span class="k2">(</span><span class="n">125</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td><span class="k1">else</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">125</span><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>i-x<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>i-x<span class="k2">)</span><span class="k3">+</span><span class="k2">(</span>j-y<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>j-y<span class="k2">)</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t&gt;255<span class="k2">)</span>t<span class="k3">=</span><span class="n">255</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b</td></tr><tr><td class="number">14</td><td>,i<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">5</span>,j<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">5</span>,i<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">15</span>,j<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">15</span>,c<span class="k2">(</span>t<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">180</span>,<span class="n">465</span>,c<span class="k2">(</span><span class="n">125</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,</td></tr><tr><td class="number">15</td><td><span class="s">"Arrow keys - move, space - view whole maze."</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>b,x<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">10</span>,y<span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">10</span>,<span class="n">4</span>,</td></tr><tr><td class="number">16</td><td>c<span class="k2">(</span><span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><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>n<span class="k3">+</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span></td></tr><tr><td class="number">17</td><td><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>f<span class="k3">=</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>f<span class="k2">)</span><span class="k2">{</span>clear<span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span></td></tr><tr><td class="number">18</td><td><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="n">140</span>,<span class="n">230</span>,c<span class="k2">(</span><span class="n">200</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Well done, You escaped in %i moves out of %i."</span>,<span class="k2">(</span></td></tr><tr><td class="number">19</td><td>n<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">/</span><span class="n">2</span>,o<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><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>
http://www.allegro.cc/files/attachment/595219<br />http://www.allegro.cc/files/attachment/595220
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Sat, 03 May 2008 10:42:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[New version of my Crimson game. Color changes, weapon pickups (machine gun and laser), bullet speed no longer (mouse-player)/100.<br />
Ah, and enemies come from all edges.<br />
I think that&#39;s all I did. Hmm, enemy health higher too and they spawn at a fixed rate.<br />
I still have some lines left, what should I do now...<br />
<pre class="source-code"><span class="p">#include &lt;allegro.h&gt; // Crimson by Anders Andersson</span>
<span class="k1">int</span> i,j,<span class="k3">*</span>b,a,r<span class="k3">=</span><span class="n">10</span>,e,k<span class="k3">=</span><span class="n">0</span>,h<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,t,d<span class="k2">;</span><span class="k1">char</span> u<span class="k2">;</span><span class="k1">float</span> x<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,v<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,w<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,X,Y<span class="k2">;</span>
T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>t<span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>N,S,C<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b,x<span class="k2">[</span>N<span class="k2">]</span>,y<span class="k2">[</span>N<span class="k2">]</span>,S,C<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">400</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>
<span class="n">300</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">99</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span><span class="n">0</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="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="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="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="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>T,<span class="n">50</span><span class="k2">)</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><span class="n">2</span>,<span class="n">800</span>,<span class="n">600</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>b<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><span class="n">800</span>,<span class="n">600</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">-</span><span class="k3">-</span>t<span class="k2">)</span><span class="k1">continue</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>a<span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>e<span class="k2">;</span><span class="k1">for</span>
<span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">99</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e&gt;99<span class="k2">)</span><span class="k2">{</span>e-<span class="k3">=</span><span class="n">99</span><span class="k2">;</span>y<span class="k2">[</span>i<span class="k2">]</span><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>%<span class="n">2</span>?<span class="k3">-</span><span class="n">10</span><span class="k2">:</span><span class="n">610</span><span class="k2">;</span>x<span class="k2">[</span>i<span class="k2">]</span><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>%<span class="n">2</span>?<span class="k3">-</span><span class="n">10</span><span class="k2">:</span><span class="n">810</span><span class="k2">;</span><span class="k1">if</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">2</span><span class="k2">)</span>x<span class="k2">[</span>i<span class="k2">]</span><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>%<span class="n">800</span><span class="k2">;</span><span class="k1">else</span> y<span class="k2">[</span>i<span class="k2">]</span><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>%<span class="n">600</span><span class="k2">;</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>i&gt;
<span class="n">50</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="k3">&amp;</span>a&gt;r<span class="k2">)</span><span class="k2">{</span>a-<span class="k3">=</span>r<span class="k2">;</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">float</span> a<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>mouse_y-y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,mouse_x-
x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>v<span class="k2">[</span>i<span class="k2">]</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>a<span class="k2">)</span><span class="k2">;</span>w<span class="k2">[</span>i<span class="k2">]</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>a<span class="k2">)</span><span class="k2">;</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span><span class="k2">{</span><span class="k1">float</span> a<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>y<span class="k2">[</span>i<span class="k2">]</span>,
x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span>C<span class="k2">(</span>i,<span class="n">5</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">50</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">99</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>j<span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span>x<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>
y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">-</span><span class="k3">-</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>k<span class="k2">;</span>u<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>%<span class="n">2</span>?<span class="s">'M'</span><span class="k2">:</span><span class="s">'L'</span><span class="k2">;</span>
x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>X<span class="k3">=</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k2">)</span>
<span class="k3">-</span><span class="k3">-</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">&gt;</span><span class="n">800</span><span class="k3">|</span><span class="k3">|</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">&gt;</span><span class="n">600</span><span class="k2">)</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k2">[</span>i<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>v<span class="k2">[</span>i<span class="k2">]</span><span class="k2">;</span>y<span class="k2">[</span>i<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>w<span class="k2">[</span>i<span class="k2">]</span><span class="k2">;</span>
C<span class="k2">(</span>i,<span class="n">1</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">-</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">-</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>u<span class="k3">=</span><span class="k3">=</span><span class="s">'L'</span><span class="k2">)</span><span class="k2">{</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span>
<span class="n">0</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>u<span class="k3">=</span><span class="k3">=</span><span class="s">'M'</span><span class="k2">)</span><span class="k2">{</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,<span class="n">15</span>,<span class="s">"%c"</span>,u<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span><span class="n">0</span>,<span class="n">5</span>
,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a>,<a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a>,<span class="n">3</span>,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">8</span>,<span class="n">580</span>,<span class="n">15</span>,
<span class="s">"Kills: %d Health: %d"</span>,k,h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">300</span>,<span class="n">300</span>,<span class="n">15</span>,
<span class="s">"Game over: %d kills"</span>,k<span class="k2">)</span><span class="k2">;</span><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_ENTER<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">400</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">300</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">99</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span>
<span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>h<span class="k2">[</span>i<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">800</span>,<span class="n">600</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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></pre>]]>
		</description>
		<author>no-reply@allegro.cc (Trezker)</author>
		<pubDate>Sat, 03 May 2008 10:46:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here&#39;s my first draft, it should compile without any warnings/errors:
</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;///Jeff Bernard//////////////////////////Centipede.c////////</span></td></tr><tr><td class="number">2</td><td><span class="p">#define F(FF) for(i=0;i&lt;((FF)&lt;1?2816:(FF)&lt;2?32:(FF));i++)///////////////////////</span></td></tr><tr><td class="number">3</td><td><span class="k1">int</span> x<span class="k2">[</span><span class="n">6</span><span class="k2">]</span>,c,i,j,v<span class="k2">[</span><span class="n">64</span><span class="k2">]</span><span class="k2">[</span><span class="n">44</span><span class="k2">]</span>,m<span class="k2">[</span><span class="n">32</span><span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">;</span>S<span class="k2">(</span>M,L<span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span>M<span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>L?<span class="n">630</span><span class="k3">-</span>i<span class="k3">*</span><span class="n">10</span><span class="k2">:</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>m<span class="k2">[</span></td></tr><tr><td class="number">4</td><td>i<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>B<span class="k2">;</span>W<span class="k2">(</span>S,D,Y<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/textprintf_centre_ex" target="_blank"><span class="a">textprintf_centre_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">320</span>,Y,c%<span class="n">16</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%s %d"</span>,S</td></tr><tr><td class="number">5</td><td>,D<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>H<span class="k2">(</span>N<span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span><span class="n">10</span><span class="k3">+</span><span class="n">4</span><span class="k3">*</span><span class="k2">(</span>N<span class="k3">&lt;</span><span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>j<span class="k3">=</span>v<span class="k2">[</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k2">(</span><span class="k3">!</span>N?<span class="n">1</span><span class="k2">:</span>N<span class="k3">&lt;</span><span class="n">2</span>?<span class="k3">-</span><span class="n">11</span><span class="k2">:</span><span class="k3">-</span>i<span class="k2">)</span><span class="k2">)</span><span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">-</span><span class="n">20</span><span class="k3">-</span><span class="k2">(</span>N<span class="k3">&lt;</span><span class="n">2</span>?<span class="k3">-</span>i:N<span class="k3">&lt;</span><span class="n">3</span>?</td></tr><tr><td class="number">6</td><td><span class="n">1</span><span class="k2">:</span><span class="k3">-</span><span class="n">15</span><span class="k2">)</span><span class="k2">)</span><span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">)</span><span class="k1">return</span> j<span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">}</span>A<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="c">//////////</span></td></tr><tr><td class="number">7</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><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><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">8</span><span class="k2">)</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><span class="n">2</span>,<span class="n">640</span>,<span class="n">480</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">8</td><td><span class="k2">;</span>Q:c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">320</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">440</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">505</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>S<span class="k2">(</span><span class="n">32</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td>F<span class="k2">(</span><span class="n">0</span><span class="k2">)</span>v<span class="k2">[</span>i%<span class="n">64</span><span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">64</span><span class="k2">]</span><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>%<span class="n">15</span><span class="k3">/</span><span class="n">14</span><span class="k2">;</span>B<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><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k3">&amp;</span>x<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="c">///</span></td></tr><tr><td class="number">10</td><td><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span>W<span class="k2">(</span><span class="s">"Level:"</span>,c,<span class="n">6</span><span class="k2">)</span><span class="k2">;</span>W<span class="k2">(</span><span class="s">"Score:"</span>,x<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>,<span class="n">467</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span></td></tr><tr><td class="number">11</td><td><span class="n">10</span>,x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">14</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/hline" target="_blank"><span class="a">hline</span></a><span class="k2">(</span>B,<span class="n">0</span>,<span class="n">20</span>,<span class="n">639</span>,c%<span class="n">16</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/hline" target="_blank"><span class="a">hline</span></a><span class="k2">(</span>B,<span class="n">0</span>,<span class="n">460</span>,<span class="n">639</span>,c%<span class="n">16</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>B,x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>,x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,x</td></tr><tr><td class="number">12</td><td><span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">+</span><span class="n">3</span>,c%<span class="n">15</span><span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>v<span class="k2">[</span>i%<span class="n">64</span><span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">64</span><span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,i%<span class="n">64</span><span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">5</span>,i<span class="k3">/</span><span class="n">64</span><span class="k3">*</span><span class="n">10</span><span class="k3">+</span><span class="n">25</span>,<span class="n">5</span>,c%<span class="n">16</span><span class="k2">)</span><span class="k2">;</span>F<span class="k2">(</span><span class="n">1</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><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><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>B,m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span>,m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">25</span>,<span class="n">5</span>,c%<span class="n">15</span><span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>c<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k3">*</span><span class="k2">(</span>m<span class="k2">[</span></td></tr><tr><td class="number">14</td><td>i<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">*</span><span class="k3">=</span>j<span class="k3">=</span>v<span class="k2">[</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">/</span><span class="n">10</span><span class="k3">+</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span>?<span class="n">1</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k3">|</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">1</span><span class="k3">|</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">630</span>?<span class="k3">-</span><span class="n">1</span><span class="k2">:</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td><span class="k1">if</span><span class="k2">(</span>j<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&amp;</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">&lt;</span><span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">10</span><span class="k3">&amp;</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">-</span><span class="n">9</span><span class="k3">&gt;</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&amp;</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">-</span><span class="n">21</span><span class="k3">&lt;</span>m<span class="k3">&lt;</span>i&gt;</td></tr><tr><td class="number">16</td><td><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">50</span><span class="k2">;</span>v<span class="k2">[</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</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="k2">]</span><span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">420</span><span class="k3">|</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k3">&gt;</span><span class="k3">=</span>x<span class="k2">[</span></td></tr><tr><td class="number">17</td><td><span class="n">0</span><span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k3">&lt;</span><span class="k3">=</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">10</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">25</span><span class="k3">&gt;</span><span class="k3">=</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">25</span><span class="k3">&lt;</span><span class="k3">=</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">14</span><span class="k2">)</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>A<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>c<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>x<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">500</span><span class="k2">;</span>S<span class="k2">(</span><span class="n">10</span><span class="k3">+</span>c,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>x<span class="k2">[</span><span class="n">0</span><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><span class="n">82</span><span class="k2">]</span>?<span class="n">1</span><span class="k3">*</span><span class="k3">!</span>H<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</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><span class="n">83</span><span class="k2">]</span><span class="k3">*</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">629</span><span class="k2">)</span><span class="k3">*</span><span class="k3">!</span>H<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">1</span></td></tr><tr><td class="number">19</td><td><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><span class="n">84</span><span class="k2">]</span><span class="k3">*</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">20</span><span class="k2">)</span>?<span class="k3">!</span>H<span class="k2">(</span><span class="n">2</span><span class="k2">)</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><span class="n">85</span><span class="k2">]</span><span class="k3">*</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">445</span><span class="k2">)</span><span class="k3">*</span><span class="k3">!</span>H<span class="k2">(</span><span class="n">3</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">-</span><span class="k3">=</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k3">*</span><span class="n">10</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">20</span></td></tr><tr><td class="number">20</td><td><span class="k2">)</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><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><span class="n">75</span><span class="k2">]</span><span class="k3">&amp;</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span>x<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>v<span class="k2">[</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</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="k2">]</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">21</td><td>v<span class="k2">[</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>x<span class="k2">[</span><span class="n">4</span><span class="k2">]</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="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">640</span>,</td></tr><tr><td class="number">22</td><td><span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>x<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>c<span class="k3">=</span><span class="k2">(</span>j<span class="k3">=</span>c<span class="k2">)</span>%<span class="n">15</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</span>W<span class="k2">(</span><span class="s">"Game Over!     Score:"</span>,x<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>,<span class="n">237</span><span class="k2">)</span><span class="k2">;</span>W<span class="k2">(</span><span class="s">"Press 'Spac\</span></td></tr><tr><td class="number">23</td><td><span class="s">e' to restart.  Level:"</span>,j,<span class="n">251</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td><span class="k1">while</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><span class="n">75</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><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><span class="n">75</span><span class="k2">]</span><span class="k2">)</span><span class="k1">goto</span> Q<span class="k2">;</span><span class="k2">}</span><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><span class="c">/////////////////</span></td></tr><tr><td class="number">25</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
http://www.allegro.cc/files/attachment/595221http://www.allegro.cc/files/attachment/595223<br /><b>EDIT--</b>Instructions: Move with arrow keys, shoot with space bar, quit with escape.</p><p>Some parts are really unoptimized, because I realized that Centipede wasn&#39;t as complex as I had originally thought, so it can definitely be slimmed down. Sometime this weekend I&#39;ll probably add a reset (so you don&#39;t have to exit the game when you lose) and make it so you can still see the board after you lose.<br /><b>EDIT--</b>Added those two features.</p><p>Oh, and I may have to do something about the timing. Hopefully it&#39;ll run roughly the same on every computer, I just used a <tt>rest</tt> to slow it down. Maybe I&#39;ll put in an Allegro timer with all the extra space I&#39;ve got...</p><p>HardTranceFan: I really like the lighting effect, but it&#39;s kinda too easy, I think, since you view the entire maze. Also, it&#39;d be nice if it would generate another maze after get out.</p><p>Trezker: </p><p>netcat: Cool twist to Space Invaders.</p><p>kenmasters1976: Very nice, the current version is a vast improvement from the first on you posted.</p><p>Arvidsson (Sokoban): I can&#39;t beat level 2. <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" /></p><p>Matthew Leverton: Tetris?... I already played a Tetris entry... oh, and you can keep getting points by holding down, even after the piece has hit the bottom, I assume it&#39;s a glitch?</p><p>If I didn&#39;t comment on yours it&#39;s because I already have/will later or it didn&#39;t compile for me (exclusively C at the moment). I&#39;ll try the ones that didn&#39;t compile with another compiler later on.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jeff Bernard)</author>
		<pubDate>Sat, 03 May 2008 11:30:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What... No comment on me?<br />Well, here&#39;s version 0.3.<br />+Varying power on bullets<br />+Wimsy seeker bullet, really powerful but may take some time to find target</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; // Crimson by Anders Andersson</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> i,j,<span class="k3">*</span>b,a,r<span class="k3">=</span><span class="n">10</span>,e,k<span class="k3">=</span><span class="n">0</span>,h<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,t,s<span class="k3">=</span><span class="n">0</span>,m,p<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">char</span> u<span class="k2">;</span><span class="k1">float</span> x<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,v<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,</td></tr><tr><td class="number">3</td><td>w<span class="k2">[</span><span class="n">100</span><span class="k2">]</span>,X,Y<span class="k2">;</span>T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>t<span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>N,S,C<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b,x<span class="k2">[</span>N<span class="k2">]</span>,y<span class="k2">[</span>N<span class="k2">]</span>,S,C<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>R<span class="k2">(</span>N<span class="k2">)</span><span class="k2">{</span><span class="k1">return</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>%N<span class="k2">;</span><span class="k2">}</span>main</td></tr><tr><td class="number">4</td><td><span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">400</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">300</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">99</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">5</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><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><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><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><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>T,</td></tr><tr><td class="number">6</td><td><span class="n">50</span><span class="k2">)</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><span class="n">2</span>,<span class="n">800</span>,<span class="n">600</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>b<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><span class="n">800</span>,<span class="n">600</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">7</td><td><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">-</span><span class="k3">-</span>t<span class="k2">)</span><span class="k1">continue</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">8</td><td>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a>?<span class="k3">+</span><span class="k3">+</span>a:a<span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>e<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">99</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="n">50</span></td></tr><tr><td class="number">9</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span>e&gt;99<span class="k2">)</span><span class="k2">{</span>e-<span class="k3">=</span><span class="n">99</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>R<span class="k2">(</span><span class="n">2</span><span class="k2">)</span>?<span class="k3">-</span><span class="n">10</span><span class="k2">:</span><span class="n">610</span><span class="k2">;</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>R<span class="k2">(</span><span class="n">2</span><span class="k2">)</span>?<span class="k3">-</span><span class="n">10</span><span class="k2">:</span><span class="n">810</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>R<span class="k2">(</span><span class="n">2</span><span class="k2">)</span><span class="k2">)</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>R<span class="k2">(</span><span class="n">800</span><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span></td></tr><tr><td class="number">10</td><td>R<span class="k2">(</span><span class="n">600</span><span class="k2">)</span><span class="k2">;</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>i&gt;50<span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="k3">&amp;</span>a&gt;r<span class="k2">)</span><span class="k2">{</span>a-<span class="k3">=</span>r<span class="k2">;</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">float</span> a<span class="k3">=</span></td></tr><tr><td class="number">11</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>mouse_y-y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,mouse_x-x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>v<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>a<span class="k2">)</span><span class="k2">;</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>a<span class="k2">)</span><span class="k2">;</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>p<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">12</td><td><span class="k1">float</span> a<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>y<span class="k3">&lt;</span>i&gt;,x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>x<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span>C<span class="k2">(</span>i,<span class="n">5</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">50</span><span class="k2">;</span>j</td></tr><tr><td class="number">13</td><td><span class="k3">&lt;</span><span class="n">99</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>j<span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x<span class="k3">&lt;</span>i&gt;-x<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k3">&lt;</span>i&gt;-y<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>h<span class="k3">&lt;</span>i&gt;-<span class="k3">=</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">14</td><td>h<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>k<span class="k2">;</span>u<span class="k3">=</span>R<span class="k2">(</span><span class="n">2</span><span class="k2">)</span>?<span class="s">'M'</span><span class="k2">:</span>R<span class="k2">(</span><span class="n">2</span><span class="k2">)</span>?<span class="s">'L'</span><span class="k2">:</span><span class="s">'S'</span><span class="k2">;</span>x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span>x<span class="k3">&lt;</span>i&gt;<span class="k2">;</span>y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span>y<span class="k3">&lt;</span>i&gt;<span class="k2">;</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>X<span class="k3">=</span></td></tr><tr><td class="number">15</td><td>x<span class="k3">&lt;</span>i&gt;-x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>Y<span class="k3">=</span>y<span class="k3">&lt;</span>i&gt;-y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k2">)</span><span class="k3">-</span><span class="k3">-</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>x<span class="k3">&lt;</span>i&gt;&gt;800<span class="k3">|</span><span class="k3">|</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span></td></tr><tr><td class="number">16</td><td>y<span class="k3">&lt;</span>i&gt;&gt;600<span class="k2">)</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>m<span class="k3">=</span>R<span class="k2">(</span><span class="n">49</span><span class="k2">)</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>s<span class="k3">&amp;</span><span class="k3">&amp;</span>h<span class="k2">[</span>m<span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">float</span> a<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>y<span class="k2">[</span>m<span class="k2">]</span><span class="k3">-</span>y<span class="k3">&lt;</span>i&gt;,x<span class="k2">[</span>m<span class="k2">]</span><span class="k3">-</span>x<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span>v<span class="k3">&lt;</span>i&gt;</td></tr><tr><td class="number">17</td><td><span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span>w<span class="k3">&lt;</span>i&gt;<span class="k3">+</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>a<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>x<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">=</span>v<span class="k3">&lt;</span>i&gt;<span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">=</span>w<span class="k3">&lt;</span>i&gt;<span class="k2">;</span>C<span class="k2">(</span>i,<span class="n">1</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">-</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>Y<span class="k3">=</span>y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">-</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>X<span class="k3">*</span>X<span class="k3">+</span>Y<span class="k3">*</span>Y<span class="k3">&lt;</span><span class="n">99</span><span class="k2">)</span><span class="k2">{</span>s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>u<span class="k3">=</span><span class="k3">=</span><span class="s">'L'</span><span class="k2">)</span><span class="k2">{</span>r<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>p<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>u<span class="k3">=</span><span class="k3">=</span><span class="s">'M'</span><span class="k2">)</span><span class="k2">{</span>r<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>p<span class="k3">=</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>u<span class="k3">=</span><span class="k3">=</span><span class="s">'S'</span><span class="k2">)</span><span class="k2">{</span>s<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">25</span><span class="k2">;</span>p<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,x<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,y<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,<span class="n">15</span>,<span class="s">"%c"</span>,u<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span><span class="n">0</span>,<span class="n">5</span>,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a>,<a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a>,<span class="n">3</span>,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">8</span>,<span class="n">580</span>,<span class="n">15</span>,<span class="s">"Kills: %d Health: %d"</span>,</td></tr><tr><td class="number">21</td><td>k,h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">300</span>,<span class="n">300</span>,<span class="n">15</span>,<span class="s">"Game over: %d kills"</span>,k<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">22</td><td><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ENTER<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">400</span><span class="k2">;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">300</span><span class="k2">;</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">99</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">100</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,</td></tr><tr><td class="number">23</td><td><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>,<span class="n">800</span>,<span class="n">600</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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 (Trezker)</author>
		<pubDate>Sun, 04 May 2008 02:34:24 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Matthew Leverton: Tetris?... I already played a Tetris entry... oh, and you can keep getting points by holding down, even after the piece has hit the bottom, I assume it&#39;s a glitch?
</p></div></div><p>
</p><div class="quote_container"><div class="title">I said:</div><div class="quote"><p>
scoring for pressing the down key is generous (especially if you bump against the side), but it&#39;s good enough for demo #1.
</p></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Sun, 04 May 2008 03:23:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>There are some really fun entries. Well done everybody!.</p><p><i>Arvidsson</i>, great job on all your entries.<br />I find the first one actually quite fun. It would be nice if you could save boosts between levels.<br />In your second entry I think some asteroids are pretty hard to see. I made it to level 7, time 92... by simply staying in a corner almost all time.<br />I&#39;m no good at Sokoban. I tried level 2 twice and give up.</p><p><i>Neil Black</i>, all I see is a black screen and a shooter. Nothing to shot at. Yet scored 600 pts.</p><p><i>Mokkan</i>, your pong entry works fine. What else can I say?.</p><p><i>netcat</i>, your space invaders idea seems interesting but I can hardly see the shots.</p><p><i>HardTranceFan</i>, the maze seems too long. Perhaps that&#39;s the point?.</p><p><i>Jeff Bernard</i>, all I get is a black screen with the red square at the bottom.</p><p><i>Trezker</i>, nice game. Got 93 kills in version 0.3.</p><p><i>Kikaru</i>, you know... you can go trough boxes.</p><p><i>Matthew Leverton</i>, wow! 15 lines?.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Sun, 04 May 2008 05:26:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I added color (each piece is a different color that is &#39;remembered&#39; when placed) and now its up to 1,180 characters&mdash;almost 16 lines. <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" /> In order to accomplish that, I had to replace the bitfield system with a more traditional <tt>char W[y][x]</tt>.</p><p>So I have 740 characters to add the &quot;next&quot; indicator, sound effects, music, multiple modes of play including multiplayer (joystick, mouse, network, and artificial intelligence). <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Sun, 04 May 2008 06:25:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
What... No comment on me?
</p></div></div><p>
I forgot, I wasn&#39;t sure what to say, really. I just played the newest version though, and I like the homing weapon.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
all I get is a black screen with the red square at the bottom.
</p></div></div><p>
Hmmm... I wonder if it&#39;s possible that the default palette would have the colors in different orders on different machines in 8 bit mode? Speaking of color, I hope I remembered to ensure that the centipede is never black... I&#39;ll look into this.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
scoring for pressing the down key is generous (especially if you bump against the side), but it&#39;s good enough for demo #1.
</p></div></div><p>
So my assumption was essentially correct. Man, I don&#39;t need to read anyone&#39;s posts!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jeff Bernard)</author>
		<pubDate>Sun, 04 May 2008 08:14:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here&#39;s my &quot;final&quot; version:</p><p>http://www.allegro.cc/files/attachment/595225</p><p>Windows binary: <a href="http://www.allegro.cc/files/attachment/595226">tetris.exe</a>.</p><p>OS X binary: <a href="http://www.allegro.cc/files/attachment/595228">tetris.gz</a></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; // Tetris by Matthew Leverton</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> S,Y,x,R,j<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="n">1</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">4</span>,<span class="n">6</span>,<span class="n">8</span>,<span class="n">1</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">4</span><span class="k2">}</span>,D<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0x0145</span>,<span class="n">0x048C0123</span>,<span class="n">0x14580156</span>,</td></tr><tr><td class="number">3</td><td><span class="n">0x04591245</span>,<span class="n">0x15691456</span>,<span class="n">0x14594569</span>,<span class="n">0x159A2456</span>,<span class="n">0x126A4568</span>,<span class="n">0x12590456</span>,<span class="n">0x269A456A</span><span class="k2">}</span>,X,</td></tr><tr><td class="number">4</td><td>a,c,d,l<span class="k3">=</span><span class="n">0</span>,s<span class="k3">=</span><span class="n">0</span>,g,<span class="k3">*</span>b,i,p,q,r,y,u,v,h<span class="k3">=</span><span class="n">1</span>,z,_<span class="k3">=</span><span class="n">0</span>,k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/SAMPLE" target="_blank"><span class="a">SAMPLE</span></a> <span class="k3">*</span>e<span class="k2">;</span><span class="k1">float</span> m<span class="k3">=</span><span class="n">0</span>,n<span class="k2">;</span><span class="k1">char</span> W<span class="k2">[</span><span class="n">24</span><span class="k2">]</span><span class="k2">[</span></td></tr><tr><td class="number">5</td><td><span class="n">18</span><span class="k2">]</span>,<span class="k3">*</span>K,<span class="k3">*</span>J<span class="k2">;</span>G<span class="k2">(</span>A,B,C,D<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,A<span class="k3">*</span><span class="n">16</span>,B<span class="k3">*</span><span class="n">16</span>,A<span class="k3">*</span><span class="n">16</span><span class="k3">+</span>D,B<span class="k3">*</span><span class="n">16</span><span class="k3">+</span>D,C<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>F<span class="k2">(</span>A,B,C<span class="k2">)</span><span class="k2">{</span>G<span class="k2">(</span>A,B,C&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">6</td><td>C<span class="k3">&lt;</span><span class="n">16</span>?C<span class="k3">&lt;</span><span class="n">8</span>?<span class="n">0</span><span class="k2">:</span>C-8:C,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>G<span class="k2">(</span>A,B,C,<span class="n">13</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>H<span class="k2">(</span>A,B,C,D<span class="k2">)</span><span class="k2">{</span>i<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span><span class="k2">{</span>F<span class="k2">(</span>A<span class="k3">+</span><span class="k2">(</span>C<span class="k3">&amp;</span><span class="n">3</span><span class="k2">)</span>,B<span class="k3">+</span><span class="k2">(</span><span class="k2">(</span>C&gt;&gt;2<span class="k2">)</span><span class="k3">&amp;</span></td></tr><tr><td class="number">7</td><td><span class="n">3</span><span class="k2">)</span>,D<span class="k3">+</span><span class="n">9</span><span class="k2">)</span><span class="k2">;</span>C<span class="k3">/</span><span class="k3">=</span><span class="n">16</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">378</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span>F<span class="k2">(</span>i%<span class="n">18</span>,i<span class="k3">/</span><span class="n">18</span><span class="k3">+</span><span class="n">1</span>,W<span class="k2">[</span>i<span class="k3">/</span><span class="n">18</span><span class="k2">]</span><span class="k2">[</span>i%<span class="n">18</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>h<span class="k2">)</span>H<span class="k2">(</span>x,<span class="n">1</span><span class="k3">+</span>y,</td></tr><tr><td class="number">8</td><td>c,q<span class="k2">)</span>,H<span class="k2">(</span><span class="n">0</span>,<span class="n">1</span>,a,p<span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">15</span>,<span class="s">"Lines: %d Score: %d / %d"</span>,l,s,v<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span></td></tr><tr><td class="number">9</td><td>b,<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>,<span class="n">288</span>,<span class="n">352</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>A<span class="k2">)</span><span class="k2">{</span>c<span class="k3">=</span>D<span class="k2">[</span>j<span class="k2">[</span>A<span class="k2">]</span><span class="k3">+</span>r<span class="k3">/</span><span class="n">2</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="k2">(</span>r%<span class="n">2</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k2">;</span><span class="k2">}</span>Z<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">7</span><span class="k2">;</span>q<span class="k3">=</span></td></tr><tr><td class="number">10</td><td>p<span class="k2">;</span>p<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>%<span class="n">7</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>C<span class="k2">(</span>p<span class="k2">)</span><span class="k2">;</span>a<span class="k3">=</span>c<span class="k2">;</span>C<span class="k2">(</span>q<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>P<span class="k2">(</span>A<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> C<span class="k3">=</span>c,D<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span>C&gt;&gt;<span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span>J<span class="k3">=</span><span class="k3">&amp;</span>W<span class="k2">[</span></td></tr><tr><td class="number">11</td><td>y<span class="k3">+</span><span class="k2">(</span>C&gt;&gt;2<span class="k3">&amp;</span><span class="n">3</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>x<span class="k3">+</span><span class="k2">(</span>C<span class="k3">&amp;</span><span class="n">3</span><span class="k2">)</span><span class="k2">]</span><span class="k2">;</span>D<span class="k3">+</span><span class="k3">=</span>A?<span class="k3">*</span>J<span class="k3">=</span>q<span class="k3">+</span><span class="n">1</span><span class="k2">:</span><span class="k3">*</span>J<span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> D<span class="k2">;</span><span class="k2">}</span>M<span class="k2">(</span>A,B<span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_569.html" target="_blank">memset</a><span class="k2">(</span>W<span class="k2">[</span>A<span class="k2">]</span><span class="k3">+</span><span class="n">4</span>,B,<span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span></td></tr><tr><td class="number">12</td><td><span class="k2">)</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="k2">;</span><a href="http://www.allegro.cc/manual/install_sound" target="_blank"><span class="a">install_sound</span></a><span class="k2">(</span><span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>e<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_sample" target="_blank"><span class="a">create_sample</span></a><span class="k2">(</span><span class="n">8</span>,<span class="n">0</span>,<span class="n">22050</span></td></tr><tr><td class="number">13</td><td>,<span class="n">8192</span><span class="k2">)</span><span class="k2">;</span>J<span class="k3">=</span><span class="k2">(</span><span class="k1">char</span><span class="k3">*</span><span class="k2">)</span>e-&gt;data<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>e-&gt;len<span class="k2">;</span><span class="k2">)</span><span class="k2">{</span>n<span class="k3">=</span><span class="k2">(</span>e-&gt;len-i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k3">/</span><span class="k2">(</span><span class="k1">float</span><span class="k2">)</span>e-&gt;len<span class="k3">*</span><span class="n">255</span><span class="k2">;</span>m<span class="k3">=</span>m<span class="k3">*</span></td></tr><tr><td class="number">14</td><td><span class="n">0</span>.<span class="n">75</span><span class="k3">+</span><span class="k2">(</span><span class="k2">(</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="k3">&amp;</span><span class="n">255</span><span class="k2">)</span><span class="k3">/</span><span class="n">255</span>.<span class="n">0</span><span class="k2">)</span><span class="k3">-</span><span class="n">0</span>.<span class="n">5</span><span class="k2">)</span><span class="k3">/</span><span class="n">4</span>.<span class="n">0</span><span class="k2">;</span><span class="k3">*</span><span class="k2">(</span>J<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k3">=</span><span class="n">128</span><span class="k3">+</span>m<span class="k3">*</span>n<span class="k2">;</span><span class="k2">}</span>v<span class="k3">=</span><a href="http://www.allegro.cc/manual/get_config_int" target="_blank"><span class="a">get_config_int</span></a><span class="k2">(</span><span class="s">"s"</span>,<span class="s">"h"</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</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_GDI,<span class="n">288</span>,<span class="n">352</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span>b<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><span class="n">288</span>,<span class="n">352</span><span class="k2">)</span><span class="k2">;</span>Z<span class="k2">(</span></td></tr><tr><td class="number">16</td><td><span class="k2">)</span><span class="k2">;</span>Z<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_569.html" target="_blank">memset</a><span class="k2">(</span>W,<span class="n">8</span>,<span class="n">432</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">=</span><span class="n">20</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>i--<span class="k2">)</span>M<span class="k2">(</span>i,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>h<span class="k2">)</span><span class="k2">{</span>_<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span>X<span class="k3">=</span>x,Y<span class="k3">=</span>y,R<span class="k3">=</span>r,S<span class="k3">=</span></td></tr><tr><td class="number">17</td><td>s<span class="k2">;</span>h<span class="k3">=</span><span class="k2">(</span>K<span class="k3">=</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">)</span><span class="k2">[</span><span class="n">59</span><span class="k2">]</span>?<span class="n">0</span><span class="k2">:</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">-</span><span class="k3">-</span>d<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>_-k&gt;2<span class="k2">)</span><span class="k2">{</span>z<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>x--<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span></td></tr><tr><td class="number">18</td><td><span class="k2">(</span>K<span class="k2">[</span><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span>,s<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> z<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>k<span class="k3">=</span>z?<span class="n">0</span><span class="k2">:</span>k?k:_<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span><span class="n">84</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>u<span class="k2">)</span>r<span class="k3">=</span><span class="k2">(</span>r<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%j<span class="k2">[</span>q<span class="k3">+</span><span class="n">7</span><span class="k2">]</span>,u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> u<span class="k3">=</span></td></tr><tr><td class="number">19</td><td><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>C<span class="k2">(</span>q<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>P<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>X,y<span class="k3">=</span>Y,r<span class="k3">=</span>R,s<span class="k3">=</span>S,C<span class="k2">(</span>q<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span><span class="k2">{</span>P<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>Z<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>S<span class="k3">=</span><span class="n">20</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>S</td></tr><tr><td class="number">20</td><td><span class="k3">-</span><span class="k3">-</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_564.html" target="_blank">memchr</a><span class="k2">(</span><span class="k3">&amp;</span>W<span class="k2">[</span>S<span class="k2">]</span><span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,<span class="n">0</span>,<span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_568.html" target="_blank">memmove</a><span class="k2">(</span><span class="k3">&amp;</span>W<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,W,S<span class="k3">+</span><span class="k3">+</span><span class="k3">*</span><span class="n">18</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/play_sample" target="_blank"><span class="a">play_sample</span></a><span class="k2">(</span>e,<span class="n">255</span>,<span class="n">55</span>,<span class="n">1600</span>,</td></tr><tr><td class="number">21</td><td><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>M<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>l<span class="k2">;</span>s<span class="k3">+</span><span class="k3">=</span>g<span class="k2">;</span>g<span class="k3">*</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>P<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span>d<span class="k3">=</span><span class="k2">(</span>d<span class="k3">=</span><span class="n">10</span><span class="k3">-</span>l<span class="k3">/</span><span class="n">10</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">2</span>?</td></tr><tr><td class="number">22</td><td><span class="n">2</span><span class="k2">:</span>d<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>s&gt;v<span class="k2">)</span>v<span class="k3">=</span>s<span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>x<span class="k3">=</span><span class="n">20</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>x--<span class="k2">)</span><span class="k2">{</span>M<span class="k2">(</span>x,<span class="n">8</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>textout<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">"Game Over"</span>,</td></tr><tr><td class="number">23</td><td><span class="n">108</span>,<span class="n">172</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_keybuf" target="_blank"><span class="a">clear_keybuf</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/set_config_int" target="_blank"><span class="a">set_config_int</span></a><span class="k2">(</span><span class="s">"s"</span>,<span class="s">"h"</span>,v<span class="k2">)</span><span class="k2">;</span><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>

I still have two lines left, but I don&#39;t really feel like adding anything else. So it appears that I can write 23 lines of code before getting tired of the project.</p><p>The game features awesome Tetris gameplay, sound effects*, and a high score.<br /> </p><p><sup>* What a waste of a couple lines of code.</sup>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Sun, 04 May 2008 09:17:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;ll try to come up with a more original entry in the next couple days. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mokkan)</author>
		<pubDate>Sun, 04 May 2008 11:54:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I find it great that there has been quite a few neat little game ideas programmed, and I&#39;m quite surprised at what can be achieved with the limitations set.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Sun, 04 May 2008 12:55:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You guys might find <a href="http://survex.com/~olly/dsm_rheolism/">this</a> interesting, if you haven&#39;t seen it before.  A basic version of Tetris in one line of BASIC (six or seven screen-lines, though, when wrapped at 80 col).</p><p>Here&#39;s code, just cause it&#39;s fun to look at:
</p><div class="source-code snippet"><div class="inner"><pre>    <span class="n">0d</span><span class="k3">=</span>d:IFdVDUd:a<span class="k3">=</span>POINT<span class="k2">(</span><span class="n">32</span><span class="k3">*</span>POS,<span class="n">31</span><span class="k3">-</span>VPOS<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">5</span><span class="k2">)</span><span class="k2">:</span>RETURNELSEMODE9:GCOL-9:CLG:O
FF:d<span class="k3">=</span><span class="n">9</span><span class="k2">:</span>REPEATVDU30:REPEATGOSUBFALSE:IFPOS<span class="k3">=</span><span class="n">28</span>VDUPOS,<span class="n">15</span>,VPOS,<span class="n">24</span><span class="k2">;</span><span class="n">11</span>,<span class="n">26</span><span class="k2">:</span>IF0E
LSEIFa<span class="k3">=</span><span class="n">0</span>PRINT:UNTIL0ELSEUNTILVPOS<span class="k3">=</span><span class="n">25</span><span class="k2">:</span>v<span class="k3">=</span>ABSRNDMOD7:i<span class="k3">=</span><span class="n">0</span><span class="k2">:</span>VDU4895<span class="k2">;</span><span class="n">3</span><span class="k2">:</span>REPEATm<span class="k3">=</span>
<span class="n">9</span><span class="k3">-</span>INKEY6MOD3:FORr<span class="k3">=</span>TRUETO1:t<span class="k3">=</span>rANDSGNt:IFt<span class="k3">=</span>rCOLOURv-15:VDUrEORm:i<span class="k3">+</span><span class="k3">=</span>m<span class="k3">=</span><span class="n">7A</span>ND9
<span class="k3">-</span><span class="n">6</span><span class="k3">*</span>r:IF0ELSEFORn<span class="k3">=</span><span class="n">0</span>TO11:d<span class="k3">=</span>n<span class="k3">/</span><span class="n">3</span>OR2EORd:GOSUBFALSE:IF1<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="k2">(</span>n<span class="k3">+</span>i<span class="k2">)</span>MOD12AND975AND<span class="k3">&amp;</span>
C2590EC<span class="k3">/</span><span class="n">8</span>^vVDU2080<span class="k3">*</span>ABSr<span class="k2">;</span><span class="k2">:</span>t<span class="k3">+</span><span class="k3">=</span>a:IF0ELSENEXT,<span class="k2">:</span>VDU20:UNTILt<span class="k3">*</span>LOGm:UNTILVPOS<span class="k3">=</span><span class="n">3</span>
</pre></div></div><p>

I like Matthew&#39;s a whole lot more (totally awesome), but that&#39;s as small as I&#39;ve ever seen the basic gameplay represented.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Anomie)</author>
		<pubDate>Sun, 04 May 2008 23:59:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The clever part of Rheolism is how all seven shapes are encoded into a single 32-bit integer. If you can do that in a way that&#39;s easy to access, then the hard part is done. </p><p>I didn&#39;t try to do that because given 25 lines, it&#39;s not needed. For my final version, I just used a simple system:
</p><pre>
0 1 2 3 
4 5 6 7
8 9 A B
C D E F
</pre><p>
So the square would be 0x0145. This works nicely because it actually represents the offsets:</p><pre>
      y  x
0 =&gt; 00 00 =&gt; 0,0
1 =&gt; 00 01 =&gt; 0,1
4 =&gt; 01 00 =&gt; 1,0
5 =&gt; 01 01 =&gt; 1,1
</pre><p>

When I need to test against a shape, I just read the right four bits as (y,x) then bit shift to get the next block.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Mon, 05 May 2008 01:25:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yes, I know my game doesn&#39;t work. No matter how hard I try, I can&#39;t get the collision code to register consistently.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kikaru)</author>
		<pubDate>Mon, 05 May 2008 05:18:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Alright, I gave it a shot.  Unfortunately, I&#39;m not elite enough, because my code fits in a 80x31.  <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" />  If I have time to cut out 400 characters somewhere, I might, but I probably won&#39;t as I have more important things to do.  Still, doesn&#39;t mean I&#39;m not going to do anything with the work I did (as it is a pretty solid game)!  Wa-lah:</p><p>http://www.allegro.cc/files/attachment/595239</p><p>How to Play:<br />Water starts from the pipe on the green square.  Place pipes without leaving any holes and connect a path to the blue square.  You earn points for every second (more depending on which level you are on).</p><p>BUG Note:  Make sure you don&#39;t have the cursor (red box) near where the water is filling.  I becomes erratic and you will lose.  <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" /></p><p>Commands:<br />Arrows:  Move the current pipe, red square shows position<br />Space Bar:  Place the pipe at that point.<br />F Key:  Hurry the water along (gives you extra points!)</p><p>The break in the code below is where I went over the limit.
</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;  /* Line Dreams by Onewing //////////////////////////////*/</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> st,ti<span class="k2">;</span><span class="k1">void</span> t<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>st<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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>t<span class="k2">)</span><span class="k2">;</span>db<span class="k2">(</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>p<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>p<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">3</td><td>main<span class="k2">(</span><span class="k2">)</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="k2">;</span><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">8</span><span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> bs<span class="k3">=</span><span class="n">91</span>,ex,ey,ft<span class="k3">=</span><span class="n">0</span>,go<span class="k3">=</span><span class="n">0</span>,h<span class="k3">=</span><span class="n">200</span>,c<span class="k3">=</span><span class="n">15</span>,i,</td></tr><tr><td class="number">4</td><td>it<span class="k3">=</span><span class="n">0</span>,j,l<span class="k3">=</span><span class="n">0</span>,next,sc<span class="k3">=</span><span class="n">0</span>,sct<span class="k3">=</span><span class="n">0</span>,sx,sy,w<span class="k3">=</span><span class="n">300</span>,wd,wt<span class="k3">=</span><span class="n">0</span>,wx,wy,x<span class="k3">=</span><span class="n">0</span>,y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>g<span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span><span class="k2">]</span>,</td></tr><tr><td class="number">5</td><td><span class="k3">*</span>b<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>bs,bs<span class="k2">)</span>,<span class="k3">*</span>b2<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>bs,bs<span class="k2">)</span>,<span class="k3">*</span>b3<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="k3">+</span><span class="n">10</span><span class="k2">)</span>,<span class="k3">*</span>p<span class="k2">[</span><span class="n">8</span><span class="k2">]</span></td></tr><tr><td class="number">6</td><td><span class="k2">;</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_sound" target="_blank"><span class="a">install_sound</span></a><span class="k2">(</span><span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</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="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_GDI,w</td></tr><tr><td class="number">7</td><td>,h<span class="k3">+</span><span class="n">10</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>p<span class="k3">&lt;</span>i&gt;<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><span class="n">9</span>,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>p<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>p<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">4</span></td></tr><tr><td class="number">8</td><td>,<span class="n">9</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>cur<span class="k3">=</span>p<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">6</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span>,<span class="k3">*</span>n<span class="k3">=</span>p<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">6</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">9</span>,<span class="n">4</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>p<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>,</td></tr><tr><td class="number">9</td><td><span class="n">4</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">4</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>p<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>,<span class="n">4</span>,<span class="n">4</span>,<span class="n">9</span>,<span class="n">4</span>,c<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>t,BPS_TO_TIMER<span class="k2">(</span><span class="n">60</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">4</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/rotate_sprite" target="_blank"><span class="a">rotate_sprite</span></a><span class="k2">(</span>p<span class="k2">[</span>i<span class="k3">+</span><span class="n">3</span><span class="k2">]</span>,p<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>,<span class="n">0</span>,<span class="n">0</span>,<a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span>i<span class="k3">*</span><span class="n">64</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>p<span class="k2">[</span><span class="n">7</span><span class="k2">]</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">9</span>,<span class="n">9</span>,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span></td></tr><tr><td class="number">11</td><td><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">59</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>go<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</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="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">10</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>g<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>p<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>l<span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>g<span class="k2">[</span></td></tr><tr><td class="number">12</td><td><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">8</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</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">8</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>p<span class="k2">[</span><span class="n">7</span><span class="k2">]</span><span class="k2">;</span>g<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">8</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</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">8</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>p<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">6</span><span class="k3">+</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span>sx<span class="k3">=</span>sy<span class="k3">=</span>ex<span class="k3">=</span></td></tr><tr><td class="number">13</td><td>ey<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>sx<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>sy<span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>sx<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>%<span class="n">9</span><span class="k2">;</span>sy<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>%<span class="n">9</span><span class="k2">;</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>ex<span class="k3">!</span><span class="k3">=</span><span class="n">9</span><span class="k3">&amp;</span><span class="k3">&amp;</span>ey<span class="k3">!</span><span class="k3">=</span><span class="n">9</span><span class="k2">)</span><span class="k2">{</span>ex<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>%</td></tr><tr><td class="number">14</td><td><span class="n">10</span><span class="k2">;</span>ey<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>%<span class="n">10</span><span class="k2">;</span><span class="k2">}</span>wx<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>wy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>sx<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>g<span class="k2">[</span>sx<span class="k2">]</span><span class="k2">[</span>sy<span class="k2">]</span><span class="k3">=</span>p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span>wy<span class="k3">=</span>sy<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>g<span class="k2">[</span>sx<span class="k2">]</span><span class="k2">[</span>sy<span class="k2">]</span><span class="k3">=</span>p<span class="k2">[</span></td></tr><tr><td class="number">15</td><td><span class="n">1</span><span class="k2">]</span><span class="k2">;</span>wx<span class="k3">=</span>sx<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>ex<span class="k3">=</span><span class="k3">=</span><span class="n">9</span><span class="k2">)</span>g<span class="k2">[</span>ex<span class="k2">]</span><span class="k2">[</span>ey<span class="k2">]</span><span class="k3">=</span>p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span><span class="k1">else</span> g<span class="k2">[</span>ex<span class="k2">]</span><span class="k2">[</span>ey<span class="k2">]</span><span class="k3">=</span>p<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span>wd<span class="k3">=</span><span class="n">1000</span><span class="k3">-</span><span class="k2">(</span>l<span class="k3">*</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>wd<span class="k3">&lt;</span></td></tr><tr><td class="number">16</td><td><span class="n">200</span><span class="k2">)</span>wd<span class="k3">=</span><span class="n">200</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b2,<span class="n">0</span>,<span class="n">0</span>,bs,bs,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</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><span class="n">6</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k2">}</span>next<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>next<span class="k2">)</span></td></tr><tr><td class="number">17</td><td><span class="k2">{</span><span class="k1">while</span><span class="k2">(</span>st<span class="k2">)</span><span class="k2">{</span>st--<span class="k2">;</span>ti<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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><span class="n">75</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>g<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span>p<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>g<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span>y<span class="k2">]</span><span class="k3">=</span>cur<span class="k2">;</span>cur<span class="k3">=</span>n<span class="k2">;</span>n<span class="k3">=</span>p<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">6</span><span class="k3">+</span><span class="n">1</span></td></tr><tr><td class="number">18</td><td><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><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><span class="n">6</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>wd<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>sc<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>ti-it&gt;4<span class="k2">)</span><span class="k2">{</span>it<span class="k3">=</span>ti<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">9</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">82</span><span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">19</td><td>x--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="n">9</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>y--<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>ti-sct&gt;60<span class="k2">)</span><span class="k2">{</span>sct<span class="k3">=</span>ti<span class="k2">;</span>sc<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>l<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span><span class="n">5</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">20</td><td><span class="k1">if</span><span class="k2">(</span>ti-wt&gt;wd<span class="k2">)</span><span class="k2">{</span>wd<span class="k3">=</span><span class="n">35</span><span class="k2">;</span>wt<span class="k3">=</span>ti<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,wx-1,wy<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">15</span><span class="k2">)</span>wx--<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="n">15</span><span class="k3">=</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,</td></tr><tr><td class="number">21</td><td>wx<span class="k3">+</span><span class="n">1</span>,wy<span class="k2">)</span><span class="k2">)</span>wx<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,wx,wy-1<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">15</span><span class="k2">)</span>wy--<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,wx,wy<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span></td></tr><tr><td class="number">22</td><td><span class="n">15</span><span class="k2">)</span>wy<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>wx&gt;ex<span class="k3">*</span><span class="n">9</span><span class="k3">&amp;</span><span class="k3">&amp;</span>wx<span class="k3">&lt;</span>ex<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">9</span><span class="k3">&amp;</span><span class="k3">&amp;</span>wy&gt;ey<span class="k3">*</span><span class="n">9</span><span class="k3">&amp;</span><span class="k3">&amp;</span>wy<span class="k3">&lt;</span>ey<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">9</span><span class="k2">)</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span><span class="k2">{</span>textprintf<span class="k2">(</span></td></tr><tr><td class="number">23</td><td><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="n">10</span>,<span class="n">90</span>,<span class="n">15</span>,<span class="s">"Fin! N: New, Q: Quit"</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">14</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</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><span class="n">17</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k2">}</span><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></td></tr><tr><td class="number">24</td><td><span class="n">14</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>sc<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>ti<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>st<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>sct<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><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><span class="n">17</span><span class="k2">]</span><span class="k2">)</span>go<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>next<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>b3<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,sx<span class="k3">*</span><span class="n">9</span>,sy<span class="k3">*</span><span class="n">9</span>,sx<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">8</span>,sy<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">8</span>,<span class="n">10</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,ex<span class="k3">*</span><span class="n">9</span>,ey<span class="k3">*</span><span class="n">9</span>,ex<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">8</span>,ey<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">8</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span></td></tr><tr><td class="number">26</td><td>&#160;</td></tr><tr><td class="number">27</td><td><span class="k2">(</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="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">10</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,i<span class="k3">*</span><span class="n">9</span>,j<span class="k3">*</span><span class="n">9</span>,i<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">9</span>,j<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">9</span>,<span class="n">3</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,x<span class="k3">*</span><span class="n">9</span>,y<span class="k3">*</span><span class="n">9</span>,x<span class="k3">*</span><span class="n">9</span><span class="k3">+</span></td></tr><tr><td class="number">28</td><td><span class="n">9</span>,y<span class="k3">*</span><span class="n">9</span><span class="k3">+</span><span class="n">9</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>b,cur,x<span class="k3">*</span><span class="n">9</span>,y<span class="k3">*</span><span class="n">9</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</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="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">10</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">29</td><td><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>b,g<span class="k3">&lt;</span>i&gt;<span class="k2">[</span>j<span class="k2">]</span>,i<span class="k3">*</span><span class="n">9</span>,j<span class="k3">*</span><span class="n">9</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>b2,wx,wy,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>b,b2,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">30</td><td>textprintf_right<span class="k2">(</span>b3,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,w-20,<span class="n">0</span>,<span class="n">14</span>,<span class="s">"Lvl:%d Score:%d Next:"</span>,l<span class="k3">+</span><span class="n">1</span>,sc<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span></td></tr><tr><td class="number">31</td><td>b3,n,w-15,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/stretch_blit" target="_blank"><span class="a">stretch_blit</span></a><span class="k2">(</span>b,b3,<span class="n">0</span>,<span class="n">0</span>,bs,bs,<span class="n">0</span>,<span class="n">10</span>,w,h<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b3,<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="k3">+</span><span class="n">10</span></td></tr><tr><td class="number">32</td><td><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>db<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span>db<span class="k2">(</span>b2<span class="k2">)</span><span class="k2">;</span>db<span class="k2">(</span>b3<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>db<span class="k2">(</span>p<span class="k3">&lt;</span>i&gt;<span class="k2">)</span><span class="k2">;</span><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 (Onewing)</author>
		<pubDate>Mon, 05 May 2008 13:49:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The full size game I am writing is 11,000 lines of code now.  <br />Seeing all of these 80x25 games makes my code feel bloated now hehe.  <br />If I ever need to conserve space in future work, I will have to reference some of these small games.<br />The coding reminds me of optimized sorting routines and how they do so much with so little.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Frank Griffin)</author>
		<pubDate>Tue, 06 May 2008 19:00:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><i>Updated version</i>. This is likely the last version of my Tetris and the end of my activity in this ScreenHack since I won&#39;t be writing another entry.</p><p>I did&#39;t feel like rewriting all the underlying code so I just <i>patched</i> it to have different colors, even though I&#39;m not actually sure if it looks better or worse. Maybe it&#39;s just that I couldn&#39;t find a color combination that can be created on-the-fly and yet look good. Luckily I can revert it to the previous look by simply changing a few parameters.</p><p>Now the pieces fall slower and the velocity increases every 10 lines.</p><p>Also, hopefully all gameplay issues must be fixed 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="p">#include &lt;allegro.h&gt;                                          // SHTetris.c v.4</span></td></tr><tr><td class="number">2</td><td><span class="p">#define f(i,x) for(i=0;i&lt;x;i++)                               /////////////////</span></td></tr><tr><td class="number">3</td><td><span class="p">#define B(x) PS(); stretch_blit(O,screen,0,0,128,200,0,0,256,400); rest(x)</span></td></tr><tr><td class="number">4</td><td><span class="p">#define RF(a,b,c,w) rectfill(O,xo+a+j*8,yo+b+y*8,xo+a+j*8+w,yo+b+y*8+w,c)</span></td></tr><tr><td class="number">5</td><td><span class="k1">char</span> ps<span class="k2">[</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span><span class="n">16</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="n">15</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">15</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">4</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">7</span>,<span class="n">0</span></td></tr><tr><td class="number">6</td><td>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">4</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">6</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">6</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">6</span>,</td></tr><tr><td class="number">7</td><td><span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">6</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">7</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span>,<span class="n">3</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">7</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">2</span>,<span class="n">3</span>,<span class="n">2</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">3</span>,<span class="n">3</span></td></tr><tr><td class="number">8</td><td>,<span class="n">0</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">;</span><span class="k1">int</span> F<span class="k2">[</span><span class="n">25</span><span class="k2">]</span>,cF<span class="k2">[</span><span class="n">25</span><span class="k2">]</span><span class="k2">[</span><span class="n">16</span><span class="k2">]</span>,i,j,p,q<span class="k3">=</span><span class="n">0</span>,m<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,x,y,w,a<span class="k3">=</span><span class="n">0</span>,o,no<span class="k3">=</span><span class="n">0</span>,d,e,g,k,rt,rtl,cf,h,</td></tr><tr><td class="number">9</td><td>cm,rp,cr,xo,yo,l,S<span class="k3">=</span><span class="n">0</span>,tl<span class="k3">=</span><span class="n">0</span>,ll<span class="k3">=</span><span class="n">0</span>,P1<span class="k3">=</span><span class="n">0xFFFF</span>,is<span class="k3">=</span><span class="n">64</span>,cc<span class="k3">=</span><span class="n">0x1FF4d4</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>O<span class="k2">;</span>UF<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>f</td></tr><tr><td class="number">10</td><td><span class="k2">(</span>i,<span class="n">24</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span>P1<span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>DL<span class="k2">(</span>i,<span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span>DL<span class="k2">(</span>i,<span class="k3">-</span><span class="n">1</span>,cc<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">4</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>f<span class="k2">(</span>i,<span class="n">24</span></td></tr><tr><td class="number">11</td><td><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="k3">=</span>P1<span class="k2">)</span>f<span class="k2">(</span>j,i<span class="k2">)</span><span class="k2">{</span>F<span class="k2">[</span>i-j<span class="k2">]</span><span class="k3">=</span>F<span class="k2">[</span>i-j-1<span class="k2">]</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_566.html" target="_blank">memcpy</a><span class="k2">(</span>cF<span class="k2">[</span>i-j<span class="k2">]</span>,cF<span class="k2">[</span>i-j-1<span class="k2">]</span>,<span class="n">64</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>S<span class="k3">+</span><span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_618.html" target="_blank">pow</a><span class="k2">(</span>l,<span class="n">2</span><span class="k2">)</span><span class="k3">*</span></td></tr><tr><td class="number">12</td><td><span class="n">1024</span><span class="k2">;</span>tl<span class="k3">+</span><span class="k3">=</span>l<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>ll<span class="k3">+</span><span class="k3">=</span>l<span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span><span class="n">10</span><span class="k2">)</span><span class="k2">{</span>is-<span class="k3">=</span>is&gt;6?<span class="n">4</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>ll-<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>DL<span class="k2">(</span>y,d,c,sc,u<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span>j,<span class="n">16</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">)</span>cr</td></tr><tr><td class="number">13</td><td><span class="k3">=</span>cF<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>j<span class="k2">]</span>?cF<span class="k2">[</span>y<span class="k2">]</span><span class="k2">[</span>j<span class="k2">]</span><span class="k2">:</span>c<span class="k2">;</span><span class="k1">else</span> cr<span class="k3">=</span>c<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k3">&amp;</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>j<span class="k2">)</span><span class="k2">{</span>RF<span class="k2">(</span><span class="n">1</span>,<span class="n">1</span>,cr,<span class="n">6</span><span class="k2">)</span><span class="k2">;</span>RF<span class="k2">(</span><span class="n">3</span>,<span class="n">3</span>,cr<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">1</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span></td></tr><tr><td class="number">14</td><td><span class="k2">(</span>sc<span class="k2">)</span>RF<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,sc,<span class="n">8</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>PS<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>O,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">17</span>,<span class="n">0</span>,<span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%10d"</span>,S<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>h<span class="k2">)</span><span class="k2">{</span>cm<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>f<span class="k2">(</span></td></tr><tr><td class="number">15</td><td>i,<span class="n">4</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>p<span class="k2">]</span><span class="k2">[</span>o<span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>cm<span class="k3">=</span>cm<span class="k3">|</span><span class="k3">|</span>F<span class="k2">[</span>h-i<span class="k2">]</span><span class="k3">&amp;</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> cm<span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="k2">;</span></td></tr><tr><td class="number">16</td><td>F<span class="k2">[</span><span class="n">24</span><span class="k2">]</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><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">24</span><span class="k2">)</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><span class="n">2</span>,<span class="n">256</span>,<span class="n">400</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span>f<span class="k2">(</span>i</td></tr><tr><td class="number">17</td><td>,<span class="n">24</span><span class="k2">)</span>F<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">0xF003</span><span class="k2">;</span>O<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><span class="n">128</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><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><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span></td></tr><tr><td class="number">18</td><td>a<span class="k2">)</span><span class="k2">{</span>p<span class="k3">=</span>q<span class="k2">;</span>q<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>%<span class="n">7</span><span class="k2">;</span>o<span class="k3">=</span>no<span class="k2">;</span>no<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>%<span class="n">4</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>x<span class="k3">=</span><span class="n">6</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>w<span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h&gt;e<span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>w<span class="k3">=</span>x<span class="k2">;</span>rp</td></tr><tr><td class="number">19</td><td><span class="k3">=</span>o<span class="k2">;</span><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><span class="n">83</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>rt<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rt&gt;rtl<span class="k2">)</span><span class="k2">{</span>rt<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<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><span class="n">83</span><span class="k2">]</span>?<span class="n">1</span><span class="k2">:</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>rtl<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>rtl<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span></td></tr><tr><td class="number">20</td><td>rtl<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="n">75</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>k<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="k2">(</span>o<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">;</span>k<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">75</span><span class="k2">]</span><span class="k2">)</span>k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</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><span class="n">83</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">21</td><td>rtl<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>rt<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k2">}</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span>S<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span>is<span class="k2">;</span>g<span class="k3">=</span><span class="n">48</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>C<span class="k2">(</span>y-1<span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">22</td><td><span class="k2">{</span>x<span class="k3">=</span>w<span class="k2">;</span>o<span class="k3">=</span>rp<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>C<span class="k2">(</span>y<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>h<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> d<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d&gt;g<span class="k2">)</span><span class="k2">{</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span><span class="k2">{</span>F<span class="k2">[</span>y-i-1<span class="k2">]</span><span class="k3">|</span><span class="k3">=</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k2">;</span>f<span class="k2">(</span>j,<span class="n">16</span><span class="k2">)</span></td></tr><tr><td class="number">23</td><td><span class="k1">if</span><span class="k2">(</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x<span class="k3">&amp;</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>j<span class="k2">)</span>cF<span class="k2">[</span>y-i-1<span class="k2">]</span><span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>p<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span>cc<span class="k2">;</span><span class="k2">}</span>a<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">999</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>xo<span class="k3">=</span>yo<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>f<span class="k2">(</span>i,<span class="n">25</span><span class="k2">)</span>DL<span class="k2">(</span>i,F<span class="k3">&lt;</span>i&gt;,<span class="n">0xFFA6A6</span>,<span class="n">99</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span>DL<span class="k2">(</span>y-1-i,m<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="k3">&lt;</span>x,<span class="k2">(</span>p<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span>cc,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>UF<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>xo<span class="k3">=</span><span class="n">96</span></td></tr><tr><td class="number">25</td><td><span class="k2">;</span>yo<span class="k3">=</span><span class="n">72</span><span class="k2">;</span>f<span class="k2">(</span>i,<span class="n">4</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>ps<span class="k2">[</span>q<span class="k2">]</span><span class="k2">[</span>no<span class="k3">*</span><span class="n">4</span><span class="k3">+</span>i<span class="k2">]</span><span class="k2">;</span>DL<span class="k2">(</span><span class="n">5</span><span class="k3">-</span>i,m<span class="k3">&lt;</span>i&gt;,<span class="n">0xFFF</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>B<span class="k2">(</span><span class="n">15</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>

<span class="remote-thumbnail"><span class="json">{"name":"595251","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/4\/6\/46723a2f8e48800a1482a96668210f46.gif","w":264,"h":433,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/4\/6\/46723a2f8e48800a1482a96668210f46"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/4/6/46723a2f8e48800a1482a96668210f46-240.jpg" alt="595251" width="240" height="393" /></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Wed, 07 May 2008 05:54:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Very simple pong clone, in only 16 lines of code, but with collision bug:</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; // Ultra simple pong clone in only 16 lines of code - v1 //</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> rd<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</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">2</span><span class="k2">)</span>?<span class="n">1</span><span class="k2">:</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>s<span class="k2">;</span><span class="k1">struct</span> P<span class="k2">{</span><span class="k1">int</span> x,y<span class="k2">;</span><span class="k1">static</span> <span class="k1">const</span> <span class="k1">int</span> W<span class="k3">=</span><span class="n">8</span>,H</td></tr><tr><td class="number">3</td><td><span class="k3">=</span><span class="n">64</span><span class="k2">;</span>P<span class="k2">(</span><span class="k1">int</span> _x<span class="k2">)</span><span class="k2">:</span>x<span class="k2">(</span>_x<span class="k2">)</span>,y<span class="k2">(</span><span class="k2">(</span><span class="n">480</span><span class="k3">-</span>H<span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k2">}</span><span class="k1">void</span> m<span class="k2">(</span><span class="k1">int</span> d<span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span>y<span class="k3">=</span>MAX<span class="k2">(</span><span class="n">0</span>,y<span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span>MIN<span class="k2">(</span>y,<span class="n">480</span><span class="k3">-</span>H-1<span class="k2">)</span></td></tr><tr><td class="number">4</td><td><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> d<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>s,x,y,x<span class="k3">+</span>W-1,y<span class="k3">+</span>H-1,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">struct</span> B<span class="k2">{</span><span class="k1">int</span> x,y,dx,dy<span class="k2">;</span><span class="k1">static</span> <span class="k1">const</span> <span class="k1">int</span></td></tr><tr><td class="number">5</td><td>S<span class="k3">=</span><span class="n">8</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span>x<span class="k2">(</span><span class="k2">(</span><span class="n">640</span><span class="k3">-</span>S<span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k2">)</span>,y<span class="k2">(</span><span class="k2">(</span><span class="n">480</span><span class="k3">-</span>S<span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k2">)</span>,dx<span class="k2">(</span>rd<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>,dy<span class="k2">(</span>rd<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k2">}</span><span class="k1">void</span> idx<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>dx<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> idy</td></tr><tr><td class="number">6</td><td><span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>dy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> m<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">+</span><span class="k3">=</span>dx<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>dy<span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> d<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>s,x,y,x<span class="k3">+</span>S-1,y<span class="k3">+</span>S-1,<span class="n">14</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">int</span> cc<span class="k2">(</span>B</td></tr><tr><td class="number">7</td><td><span class="k3">&amp;</span>b,P<span class="k3">&amp;</span>p<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span><span class="k3">!</span><span class="k2">(</span>b.y&gt;p.y<span class="k3">+</span>P::H-1<span class="k3">|</span><span class="k3">|</span>b.y<span class="k3">+</span>B::S<span class="k3">&lt;</span>p.y<span class="k3">|</span><span class="k3">|</span>b.x&gt;p.x<span class="k3">+</span>P::W-1<span class="k3">|</span><span class="k3">|</span>b.x<span class="k3">+</span>B::S-1<span class="k3">&lt;</span>p.x<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">8</td><td><span class="k1">int</span> e<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">void</span> cbh<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</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="k2">;</span>install_keyboa\</td></tr><tr><td class="number">9</td><td>rd<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/set_close_button_callback" target="_blank"><span class="a">set_close_button_callback</span></a><span class="k2">(</span>cbh<span class="k2">)</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><span class="n">2</span>,<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>s<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></td></tr><tr><td class="number">10</td><td><span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> ls<span class="k3">=</span><span class="n">0</span>,rs<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>P pl<span class="k2">(</span><span class="n">0</span><span class="k2">)</span>,pr<span class="k2">(</span><span class="n">640</span><span class="k3">-</span>P::W<span class="k2">)</span><span class="k2">;</span>B b<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>e<span class="k2">)</span><span class="k2">{</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span>e<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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></td></tr><tr><td class="number">11</td><td><span class="n">23</span><span class="k2">]</span><span class="k2">)</span>pl.m<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">19</span><span class="k2">]</span><span class="k2">)</span>pl.m<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>pr.m<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>pr.m<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>b.m<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">12</td><td>b.x<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>b.x<span class="k3">+</span>B::S-1&gt;<span class="k3">=</span><span class="n">640</span><span class="k2">)</span><span class="k2">{</span>b.idx<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b.x<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>rs<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b.x<span class="k3">+</span>B::S-1&gt;<span class="k3">=</span><span class="n">640</span><span class="k2">)</span>ls<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span></td></tr><tr><td class="number">13</td><td><span class="k2">(</span>b.y<span class="k3">&lt;</span><span class="k3">=</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>b.y<span class="k3">+</span>B::S-1&gt;<span class="k3">=</span><span class="n">480</span><span class="k2">)</span>b.idy<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>cc<span class="k2">(</span>b,pl<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span>cc<span class="k2">(</span>b, pr<span class="k2">)</span><span class="k2">)</span>b.idx<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>pl.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>pr.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>b.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_centre_ex" target="_blank"><span class="a">textprintf_centre_ex</span></a><span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">640</span><span class="k3">/</span><span class="n">2</span>,<span class="n">1</span>,<span class="n">7</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%5i : %-5i"</span>,ls,rs<span class="k2">)</span></td></tr><tr><td class="number">15</td><td><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>s,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">}</span>END_OF_MA\</td></tr><tr><td class="number">16</td><td>IN<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="c">///////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">17</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">18</td><td><span class="c">/////////W A S T E D///S P A C E////////////////////////////////////////////////</span></td></tr><tr><td class="number">19</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">20</td><td><span class="c">////////////W A I T N G///T O///B E/////////////////////////////////////////////</span></td></tr><tr><td class="number">21</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">22</td><td><span class="c">////////////////U S E D/////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">23</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">24</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">25</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>

http://www.allegro.cc/files/attachment/595253
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tomasz Grajewski)</author>
		<pubDate>Wed, 07 May 2008 23:09:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Awesome entries, everyone. Especially the tetris games blow my mind <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Per Larsson)</author>
		<pubDate>Thu, 08 May 2008 14:32:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><i>Tomasz Grajewski</i>, the pads are barely visible and it takes a bit too long for the ball to go from one side to the other at that speed.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Thu, 08 May 2008 21:29:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Posting updated version:
</p><ul><li><p> faster gameplay (but still slow and easy)</p></li><li><p> pads and ball are better visible (I hope)</p></li><li><p> less code <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p></li><li><p> probably even more bugs to discover</p></li></ul><p>
</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; // Ultra simple pong clone in only 14 lines of code - v2 //</span></td></tr><tr><td class="number">2</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>s<span class="k2">;</span><span class="k1">int</span> e,ls,rs<span class="k2">;</span><span class="k1">struct</span> P<span class="k2">{</span><span class="k1">int</span> x,y<span class="k2">;</span><span class="k1">static</span> <span class="k1">const</span> <span class="k1">int</span> W<span class="k3">=</span><span class="n">8</span>,H<span class="k3">=</span><span class="n">64</span><span class="k2">;</span>P<span class="k2">(</span><span class="k1">int</span> z<span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>z<span class="k2">;</span>y<span class="k3">=</span><span class="k2">(</span></td></tr><tr><td class="number">3</td><td><span class="n">480</span><span class="k3">-</span>H<span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> m<span class="k2">(</span><span class="k1">int</span> d<span class="k2">)</span><span class="k2">{</span>y<span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span>y<span class="k3">=</span><span class="n">0</span><span class="k3">&gt;</span>?y<span class="k2">;</span>y<span class="k3">=</span>y<span class="k3">&lt;</span>?<span class="n">480</span><span class="k3">-</span>H-1<span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> d<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>s,x,y,x<span class="k3">+</span>W-1,</td></tr><tr><td class="number">4</td><td>y<span class="k3">+</span>H-1,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>pl<span class="k2">(</span><span class="n">0</span><span class="k2">)</span>,pr<span class="k2">(</span><span class="n">640</span><span class="k3">-</span>P::W<span class="k2">)</span><span class="k2">;</span><span class="k1">struct</span> B<span class="k2">{</span><span class="k1">int</span> x,y,dx,dy<span class="k2">;</span><span class="k1">static</span> <span class="k1">const</span> <span class="k1">int</span> S<span class="k3">=</span><span class="n">8</span><span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span></td></tr><tr><td class="number">5</td><td><span class="k2">(</span><span class="n">640</span><span class="k3">-</span>S<span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k3">=</span><span class="k2">(</span><span class="n">480</span><span class="k3">-</span>S<span class="k2">)</span><span class="k3">/</span><span class="n">2</span><span class="k2">;</span>dx<span class="k3">=</span>dy<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> idx<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>dx<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> idy<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>dy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> m<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x</td></tr><tr><td class="number">6</td><td><span class="k3">+</span><span class="k3">=</span>dx<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>dy<span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> d<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>s,x,y,x<span class="k3">+</span>S-1,y<span class="k3">+</span>S-1,<span class="n">14</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>b<span class="k2">;</span><span class="k1">int</span> cc<span class="k2">(</span>B<span class="k3">&amp;</span>b,P<span class="k3">&amp;</span>p<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span><span class="k3">!</span><span class="k2">(</span></td></tr><tr><td class="number">7</td><td>b.y&gt;p.y<span class="k3">+</span>P::H-1<span class="k3">|</span><span class="k3">|</span>b.y<span class="k3">+</span>B::S<span class="k3">&lt;</span>p.y<span class="k3">|</span><span class="k3">|</span>b.x&gt;p.x<span class="k3">+</span>P::W-1<span class="k3">|</span><span class="k3">|</span>b.x<span class="k3">+</span>B::S-1<span class="k3">&lt;</span>p.x<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>alleg\</td></tr><tr><td class="number">8</td><td>ro_init<span class="k2">(</span><span class="k2">)</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="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><span class="n">1</span>,<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>s<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><span class="n">640</span>,<span class="n">480</span></td></tr><tr><td class="number">9</td><td><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span>e<span class="k2">)</span><span class="k2">{</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span>e<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><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><span class="n">23</span><span class="k2">]</span><span class="k2">)</span>pl.m<span class="k2">(</span><span class="k3">-</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">19</span><span class="k2">]</span><span class="k2">)</span>pl.m<span class="k2">(</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">84</span><span class="k2">]</span><span class="k2">)</span>pr.</td></tr><tr><td class="number">10</td><td>m<span class="k2">(</span><span class="k3">-</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">85</span><span class="k2">]</span><span class="k2">)</span>pr.m<span class="k2">(</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span>b.m<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b.x<span class="k3">&lt;</span><span class="n">1</span><span class="k3">|</span><span class="k3">|</span>b.x<span class="k3">+</span>B::S&gt;640<span class="k2">)</span><span class="k2">{</span>b.idx<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b.x<span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span>rs<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>el\</td></tr><tr><td class="number">11</td><td>se <span class="k1">if</span><span class="k2">(</span>b.x<span class="k3">+</span>B::S&gt;640<span class="k2">)</span>ls<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>b.y<span class="k3">&lt;</span><span class="n">1</span><span class="k3">|</span><span class="k3">|</span>b.y<span class="k3">+</span>B::S&gt;480<span class="k2">)</span>b.idy<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>cc<span class="k2">(</span>b,pl<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span>cc<span class="k2">(</span>b,pr<span class="k2">)</span><span class="k2">)</span>b.</td></tr><tr><td class="number">12</td><td>idx<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>s,<span class="n">0</span>,<span class="n">0</span>,<span class="n">639</span>,<span class="n">479</span>,<span class="n">8</span><span class="k2">)</span><span class="k2">;</span>pl.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>pr.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>b.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>textprintf_cent\</td></tr><tr><td class="number">13</td><td>re_ex<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">319</span>,<span class="n">4</span>,<span class="n">7</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%5i : %-5i"</span>,ls,rs<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>s,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span></td></tr><tr><td class="number">14</td><td><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><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><span class="k2">;</span><span class="c">/////////////////////////////////</span></td></tr><tr><td class="number">15</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">16</td><td><span class="c">/////////W A S T E D///S P A C E////////////////////////////////////////////////</span></td></tr><tr><td class="number">17</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">18</td><td><span class="c">////////////W A I T I N G///T O///B E///////////////////////////////////////////</span></td></tr><tr><td class="number">19</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">20</td><td><span class="c">////////////////U S E D/////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">21</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">22</td><td><span class="c">///////////////////B U T///I///H A V E///N O///I D E A S////////////////////////</span></td></tr><tr><td class="number">23</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">24</td><td><span class="c">///////////////////////T O///I M P L E M E N T//////////////////////////////////</span></td></tr><tr><td class="number">25</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tomasz Grajewski)</author>
		<pubDate>Fri, 09 May 2008 01:06:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>That&#39;s better indeed <i>Tomasz Grajewski</i>. Well done.</p><p><i>Onewing</i>, it seems you can&#39;t move after pressing &#39;N&#39; to start a new game.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Fri, 09 May 2008 07:19:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Oh, what the hell? This thread is made of total awesomeness and win!</p><p>I totally suck in doing things like this, the compo really ain&#39;t for me but hell, it seems so much fun that I <b>have</b> to give it a shot <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" /> No matter is it still on or not, this is just ... great! <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" /></p><p>There should be more stuff like this. </p><p>I already got this idea in my head for an game <b>snicker</b><br />It&#39;s disturbing how awesome entries there are already. Doing fine guys, keep at it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Skywhy)</author>
		<pubDate>Fri, 09 May 2008 08:44:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Thread is still open, so this compo is still open. basically, if the thread gets closed, it&#39;s over, and voting will begin (I guess)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (MiquelFire)</author>
		<pubDate>Fri, 09 May 2008 19:06:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Keep it open! I want to do something for this, just haven&#39;t had time yet.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Paul Pridham)</author>
		<pubDate>Fri, 09 May 2008 19:57:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I already started mine yesterday at work, I just couldn&#39;t resist... <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" /></p><p>Got the basic idea going. Don&#39;t have the time to do this on saturday(today) but I&#39;ll wrap it up tomorrow(sunday) I guess...</p><p>Nomnom! Everybody polishing their entries or lost their interest already?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Skywhy)</author>
		<pubDate>Sat, 10 May 2008 13:09:57 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Mika Turunen said:</div><div class="quote"><p>
Everybody polishing their entries or lost their interest already?
</p></div></div><p>
The second.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Seppl)</author>
		<pubDate>Sat, 10 May 2008 20:42:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I actually sat down and worked on my old entry. I found a lot of places where I could save more space and I did add some basic syntax highlighting, but it wasn&#39;t really adding anything to the game <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Sat, 10 May 2008 22:30:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
</p><div class="quote_container"><div class="title">Mika Turunen said:</div><div class="quote"><p>

Everybody polishing their entries or lost their interest already?
</p></div></div><p>
The second.
</p></div></div><p>
I&#39;m thinking about another attempt.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Sun, 11 May 2008 01:36:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Too bad, I ended up messing my entry blargh... Would require some serious redoing of things if I wanted to get it in shape for real.</p><p>things that are missing: 
</p><ol><li><p>Death</p></li><li><p>Proper collision detection for the bullets. Now it&#39;s just THROWN together... </p></li><li><p>Logic locks (but I guess nobody really has these? just rest(x)? <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" />)</p></li><li><p>Redoing of the code so it would qualify for the 80x25</p></li></ol><p>

I&#39;m not entirely sure does this qualify for an compo entry but here goes.<br />screenshot of it:</p><p>http://users.evtek.fi/~mikaka/temp/bShot.png</p><p>and here is the code:
</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;//bShot something blargh   ////////////////////////////////</span></td></tr><tr><td class="number">2</td><td><span class="k1">volatile</span> <span class="k1">int</span> eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> eL<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>eT<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><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>eL<span class="k2">)</span>R<span class="k2">(</span>x<span class="k2">)</span><span class="k2">{</span><span class="k1">return</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>%x<span class="k2">;</span><span class="k2">}</span>D<span class="k2">(</span>x<span class="k2">)</span></td></tr><tr><td class="number">3</td><td><span class="k2">{</span><span class="k1">double</span> y<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>y<span class="k3">=</span><a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">250</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>y<span class="k3">=</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">250</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="c">///////</span></td></tr><tr><td class="number">4</td><td>y<span class="k3">=</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">250</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> y<span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>B<span class="k2">;</span><span class="k1">double</span> e<span class="k2">[</span><span class="n">30</span><span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="c">//</span></td></tr><tr><td class="number">5</td><td><span class="k2">{</span><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">}</span>,b<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k3">-</span><span class="n">5</span>,<span class="n">200</span><span class="k2">}</span>,h1<span class="k3">=</span><span class="n">96</span>,h2<span class="k3">=</span><span class="n">100</span>,pC,bC,eC<span class="k2">[</span><span class="n">30</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> A<span class="k2">[</span><span class="n">30</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span><span class="k2">}</span>,t,n,C<span class="k3">=</span><span class="n">0</span>,S<span class="k3">=</span><span class="n">0</span>,u<span class="k3">=</span><span class="n">0</span>,L</td></tr><tr><td class="number">6</td><td><span class="k3">=</span><span class="n">1</span>,w1<span class="k3">=</span><span class="n">25</span>,w2<span class="k3">=</span><span class="n">29</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="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="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="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span>eL</td></tr><tr><td class="number">7</td><td>,<span class="n">100</span><span class="k2">)</span><span class="k2">;</span><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><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">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>B<span class="k3">=</span></td></tr><tr><td class="number">8</td><td><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><span class="n">640</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>eL<span class="k2">)</span><span class="k2">;</span><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><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>B,<span class="n">20</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">34</span>,<span class="n">201</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">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><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_A<span class="k2">]</span><span class="k2">)</span>C<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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_S<span class="k2">]</span><span class="k2">)</span>C<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">10</td><td><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_D<span class="k2">]</span><span class="k2">)</span>C<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>pC<span class="k3">=</span>D<span class="k2">(</span>C<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">200</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">=</span><span class="n">2</span>.<span class="n">5</span><span class="k2">;</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">2</span>.<span class="n">5</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>B,<span class="n">26</span>,b<span class="k2">[</span><span class="n">0</span></td></tr><tr><td class="number">11</td><td><span class="k2">]</span>,<span class="n">1</span>,bC<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>B,<span class="n">26</span>,b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">1</span>,bC<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><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_F<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>bC<span class="k3">=</span>pC<span class="k2">;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>h2-2<span class="k2">;</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>h1<span class="k3">+</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">12</td><td><span class="k2">}</span><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_M<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h2<span class="k3">&lt;</span><span class="n">195</span><span class="k2">)</span>h1<span class="k3">+</span><span class="k3">=</span><span class="n">0</span>.<span class="n">5</span><span class="k2">;</span><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_K<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h1&gt;0<span class="k2">)</span>h1-<span class="k3">=</span><span class="n">0</span>.<span class="n">5</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>S&gt;300<span class="k2">)</span><span class="k2">{</span>w1<span class="k3">=</span><span class="n">20</span><span class="k2">;</span>w2<span class="k3">=</span></td></tr><tr><td class="number">13</td><td><span class="n">34</span><span class="k2">;</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">14</span><span class="k2">;</span>L<span class="k3">=</span><span class="n">6</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;0<span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>S&gt;200<span class="k3">&amp;</span><span class="k3">&amp;</span>S<span class="k3">&lt;</span><span class="k3">=</span><span class="n">300</span><span class="k2">)</span><span class="k2">{</span>w1<span class="k3">=</span><span class="n">21</span><span class="k2">;</span>w2<span class="k3">=</span><span class="n">33</span><span class="k2">;</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">12</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>L<span class="k3">=</span><span class="n">5</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;<span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>S&gt;150<span class="k3">&amp;</span><span class="k3">&amp;</span>S<span class="k3">&lt;</span><span class="k3">=</span><span class="n">200</span><span class="k2">)</span><span class="k2">{</span>w1<span class="k3">=</span><span class="n">22</span><span class="k2">;</span>w2<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">10</span><span class="k2">;</span>L<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;<span class="k3">=</span></td></tr><tr><td class="number">15</td><td><span class="n">4</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S&gt;100<span class="k3">&amp;</span><span class="k3">&amp;</span>S<span class="k3">&lt;</span><span class="k3">=</span><span class="n">150</span><span class="k2">)</span><span class="k2">{</span>w1<span class="k3">=</span><span class="n">23</span><span class="k2">;</span>w2<span class="k3">=</span><span class="n">31</span><span class="k2">;</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">8</span><span class="k2">;</span>L<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;<span class="k3">=</span><span class="n">6</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S&gt;50<span class="k3">&amp;</span><span class="k3">&amp;</span>S<span class="k3">&lt;</span><span class="k3">=</span><span class="n">100</span><span class="k2">)</span><span class="k2">{</span>w1<span class="k3">=</span><span class="n">24</span><span class="k2">;</span>w2<span class="k3">=</span><span class="n">30</span><span class="k2">;</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">6</span><span class="k2">;</span>L<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;<span class="k3">=</span><span class="n">8</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span></td></tr><tr><td class="number">17</td><td><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S<span class="k3">&lt;</span><span class="k3">=</span><span class="n">50</span><span class="k2">)</span><span class="k2">{</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">4</span><span class="k2">;</span>L<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;<span class="k3">=</span><span class="n">10</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">30</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">18</td><td><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>t<span class="k2">)</span><span class="k2">{</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">645</span><span class="k2">;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">195</span><span class="k2">)</span><span class="k2">;</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>eC<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span>D<span class="k2">(</span> R<span class="k2">(</span><span class="n">3</span><span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">19</td><td><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">30</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&gt;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&lt;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&gt;</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span></td></tr><tr><td class="number">20</td><td><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&lt;</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&gt;</span><span class="n">25</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&lt;</span><span class="n">30</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>bC<span class="k3">=</span><span class="k3">=</span>eC<span class="k2">[</span>n<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>S<span class="k3">+</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span></td></tr><tr><td class="number">21</td><td><span class="k1">if</span><span class="k2">(</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">-</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span> e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span>,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span>,</td></tr><tr><td class="number">22</td><td>eC<span class="k2">[</span>n<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">560</span>,<span class="n">5</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">250</span>,<span class="n">250</span>,<span class="n">0</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Scr: %d"</span></td></tr><tr><td class="number">23</td><td>,S<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">560</span>,<span class="n">185</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">250</span>,<span class="n">250</span>,<span class="n">0</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Lvl: %d"</span>,L<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,</td></tr><tr><td class="number">24</td><td>w1,h1,w2,h2,pC<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">640</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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><span class="c">////////</span></td></tr><tr><td class="number">25</td><td><span class="c">////WASTED SPACE... NOT ENOUGH ROOM FOR PLAYER DEATH :( ///////////////////////</span></td></tr></tbody></table></div></div><p>

It really did seem much more awesome in my head than it ended up being. I guess it&#39;s a pathetic attempt at some sort of shoot em up/rhythm game without music. How do you like that? <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>You can get the exe file from <a href="http://users.evtek.fi/~mikaka/temp/bShot.rar">here</a> with the alleg42.dll. Only for Win. </p><p><b>Controls:</b>
</p><ol><li><p><b>A</b> - change color to red</p></li><li><p><b>S</b> - change color to green</p></li><li><p><b>D</b> - change color to blue</p></li><li><p><b>F</b> - fire up and down</p></li><li><p><b>K</b> - move up</p></li><li><p><b>M</b> - move down</p></li></ol><p>

<b>Game idea:</b><br />Dodge enemies and shoot them with the same color bullets. Red bullets kill red enemies and so on... Since the player death is not implemented, you don&#39;t even have to dodge the enemies. Yahoo~. Endless ... &quot;fun&quot;... Ugh... As the game does on, you grow bigger and the enemies are supposed to grow bigger, the dodging gets harder, or atleast SHOULD get harder but really doesn&#39;t since you can&#39;t die <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /></p><p>I had my share of fun tinkering with this. Also, since it really doesn&#39;t have any sort of &quot;logic locks&quot;, only the rest(10), the results are that the game performance will vary on different machines ALOT. On some it&#39;s playable and on some it&#39;s not.  Too bad. Also since the bullet collision ain&#39;t that good, it might miss some of the hits you do <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Another thing I again noticed was that good variable names are <b>awesome</b>. I ended up doing alot of one letter/two letter variables to save up space and other even more stupid things to save up chars. Man this compo was nuts. </p><p>Oh yeah, final note: guys, your entries are awesome. I can&#39;t believe you came up with stuff like that. It really shows that in a small compo like this, the game idea is <i>everything</i>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Skywhy)</author>
		<pubDate>Sun, 11 May 2008 23:26:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;ve made another pong version, this time more playable and challenging:<br />http://www.allegro.cc/files/attachment/595282</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;math.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;allegro.h&gt; // Ultra simple pong clone in 20 lines of code - v3      //</span></td></tr><tr><td class="number">3</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>s<span class="k2">;</span><span class="k1">int</span> e,ls,rs<span class="k2">;</span><span class="k1">struct</span> B<span class="k2">{</span><span class="k1">int</span> r,c<span class="k2">;</span><span class="k1">float</span> x,y,vx,vy<span class="k2">;</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>r<span class="k3">=</span><span class="n">8</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>x<span class="k3">=</span>s-&gt;w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>y<span class="k3">=</span>s-&gt;</td></tr><tr><td class="number">4</td><td>h<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>vx<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">2</span><span class="k2">)</span>?<span class="k3">-</span><span class="n">4</span><span class="k2">:</span><span class="n">4</span><span class="k2">;</span>vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">virtual</span> <span class="k1">void</span> m<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">+</span><span class="k3">=</span>vx<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>vy<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span>r<span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>r<span class="k2">;</span>vx<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>rs</td></tr><tr><td class="number">5</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x&gt;s-&gt;w-r<span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>s-&gt;w-r<span class="k2">;</span>vx<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>ls<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span>r<span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span>r<span class="k2">;</span>vy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>y&gt;s-&gt;h-r<span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span>s-&gt;h-r</td></tr><tr><td class="number">6</td><td><span class="k2">;</span>vy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">virtual</span> <span class="k1">void</span> d<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>s,<span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>x,<span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>y,r,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">struct</span> P:public B<span class="k2">{</span></td></tr><tr><td class="number">7</td><td>P<span class="k2">(</span><span class="k1">int</span> _x<span class="k2">)</span><span class="k2">{</span>r<span class="k3">=</span><span class="n">96</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">5</span><span class="k2">;</span>x<span class="k3">=</span>_x<span class="k2">;</span>y<span class="k3">=</span>s-&gt;h<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>vx<span class="k3">=</span>vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">virtual</span> <span class="k1">void</span> m<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">+</span><span class="k3">=</span>vx<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>vy<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>y<span class="k3">=</span></td></tr><tr><td class="number">8</td><td><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y&gt;s-&gt;h-1<span class="k2">)</span>y<span class="k3">=</span>s-&gt;h-1<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">void</span> cc<span class="k2">(</span>B<span class="k3">&amp;</span>b,P<span class="k3">&amp;</span>p<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> cd<span class="k3">=</span>b.r<span class="k3">+</span>p.r<span class="k2">;</span><span class="k1">float</span> ad<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>p.x-b.x</td></tr><tr><td class="number">9</td><td><span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>p.x-b.x<span class="k2">)</span><span class="k3">+</span><span class="k2">(</span>p.y-b.y<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>p.y-b.y<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ad<span class="k3">&lt;</span>cd<span class="k2">)</span><span class="k2">{</span><span class="k1">float</span> na<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_50.html" target="_blank">atan2</a><span class="k2">(</span>p.y-b.y,p.x-b.x<span class="k2">)</span>,md<span class="k3">=</span>cd</td></tr><tr><td class="number">10</td><td><span class="k3">-</span>ad<span class="k2">;</span>b.x<span class="k3">+</span><span class="k3">=</span>md<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>na<span class="k3">+</span>M_PI<span class="k2">)</span><span class="k2">;</span>b.y<span class="k3">+</span><span class="k3">=</span>md<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>na<span class="k3">+</span>M_PI<span class="k2">)</span><span class="k2">;</span><span class="k1">float</span> nx<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>na<span class="k2">)</span>,ny<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>na<span class="k2">)</span>,a1<span class="k3">=</span>b.</td></tr><tr><td class="number">11</td><td>vx<span class="k3">*</span>nx<span class="k3">+</span>b.vy<span class="k3">*</span>ny,a2<span class="k3">=</span>p.vx<span class="k3">*</span>nx<span class="k3">+</span>p.vy<span class="k3">*</span>ny,op<span class="k3">=</span>a1-a2<span class="k2">;</span>b.vx<span class="k3">=</span><span class="k3">-</span>op<span class="k3">*</span>nx<span class="k2">;</span>b.vy<span class="k3">=</span><span class="k3">-</span>op<span class="k3">*</span>ny<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">12</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><span class="n">0</span><span class="k2">)</span><span class="k2">)</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="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="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><span class="n">1</span>,<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>s<span class="k3">=</span></td></tr><tr><td class="number">13</td><td><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>B b<span class="k2">;</span>P pl<span class="k2">(</span><span class="k3">-</span><span class="n">96</span><span class="k3">+</span><span class="n">15</span><span class="k2">)</span>,pr<span class="k2">(</span>s-&gt;w<span class="k3">+</span><span class="n">96</span><span class="k3">-</span><span class="n">16</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span>e<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>k\</td></tr><tr><td class="number">14</td><td>ey<span class="k2">[</span><span class="n">59</span><span class="k2">]</span><span class="k2">)</span>e<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><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_S<span class="k2">]</span><span class="k2">)</span>pl.vy<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">else</span> <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_W<span class="k2">]</span><span class="k2">)</span>pl.vy<span class="k3">=</span><span class="k3">-</span><span class="n">2</span><span class="k2">;</span><span class="k1">else</span> pl.vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><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></td></tr><tr><td class="number">15</td><td><span class="k2">[</span>KEY_DOWN<span class="k2">]</span><span class="k2">)</span>pr.vy<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">else</span> <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>pr.vy<span class="k3">=</span><span class="k3">-</span><span class="n">2</span><span class="k2">;</span><span class="k1">else</span> pr.vy<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>b.m<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>pl.m<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>pr.m<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">16</td><td><span class="k2">;</span>cc<span class="k2">(</span>b,pl<span class="k2">)</span><span class="k2">;</span>cc<span class="k2">(</span>b,pr<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>s,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>s,s-&gt;w<span class="k3">/</span><span class="n">2</span><span class="k3">-</span><span class="n">2</span>,<span class="n">0</span>,s-&gt;h-1,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>s,s</td></tr><tr><td class="number">17</td><td><span class="k3">-</span><span class="k3">&gt;</span>w<span class="k3">/</span><span class="n">2</span><span class="k3">-</span><span class="n">1</span>,<span class="n">0</span>,s-&gt;h-1,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span>b.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>pl.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>pr.d<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/textprintf_centre_ex" target="_blank"><span class="a">textprintf_centre_ex</span></a><span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,s-&gt;w<span class="k3">/</span><span class="n">2</span><span class="k3">-</span><span class="n">1</span>,<span class="n">4</span>,</td></tr><tr><td class="number">18</td><td><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%3i : %-3i"</span>,ls,rs<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>s,<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>,s-&gt;w,s-&gt;h<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>destroy_bit\</td></tr><tr><td class="number">19</td><td>map<span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><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><span class="c">//////////////////////////////////////////////////</span></td></tr><tr><td class="number">20</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">21</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">22</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">23</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">24</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tomasz Grajewski)</author>
		<pubDate>Sun, 11 May 2008 23:58:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Structures, variables with more than one letter, ... you guys are wasteful!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Mon, 12 May 2008 00:01:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Matthew Leverton said:</div><div class="quote"><p>

Structures, variables with more than one letter, ... you guys are wasteful!
</p></div></div><p>

Yeah, I know, now I&#39;m trying to minimalise mine code.</p><p>BTW, love C++ for things like that:</p><p>From
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span>r<span class="k2">)</span>
<span class="k2">{</span>
  y<span class="k3">=</span>r<span class="k2">;</span>
  vy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="k2">}</span>

<span class="k1">if</span><span class="k2">(</span>y&gt;s-&gt;h-r<span class="k2">)</span>
<span class="k2">{</span>
  y<span class="k3">=</span>s-&gt;h-r<span class="k2">;</span>
  vy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="k2">}</span>
</pre></div></div><p>

to</p><div class="source-code snippet"><div class="inner"><pre>y<span class="k3">=</span>y<span class="k3">&lt;</span>r?vy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,r:y&gt;s-&gt;h-r?vy<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,s-&gt;h-r:y<span class="k2">;</span>
</pre></div></div><p>

Four bytes saved <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tomasz Grajewski)</author>
		<pubDate>Mon, 12 May 2008 02:07:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Does C++ explicitly define what happens in the case of:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> a <span class="k3">=</span> b ? c, d <span class="k2">:</span> e, f<span class="k2">;</span>
</pre></div></div><p>
?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Mon, 12 May 2008 02:29:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Does C++ explicitly define what happens in the case of:<br /><span class="source-code"><span class="k1">int</span> a <span class="k3">=</span> b ? c, d <span class="k2">:</span> e, f<span class="k2">;</span></span><br />?
</p></div></div><p>

The comma separated values are evaluated from left to right, so <tt>d</tt> or <tt>f</tt> will be returned for <tt>a</tt>, if this is what you ask for. The ternary conditional is evaluated from right to left.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tomasz Grajewski)</author>
		<pubDate>Mon, 12 May 2008 02:47:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I was just wondering if the commas are well defined sequence points in that example, but I suppose they are. They aren&#39;t in function calls (e.g.: <tt>f(a(), b(), c())</tt>), but obviously that&#39;s a different situation.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Mon, 12 May 2008 03:53:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Næssén and Ted, your game is awesome. 80x25 or not, that game is really good.</p><p><s>-edit</s>-<br />I haven&#39;t played cursor*10 before, so part of the reason I like this game is that it seemed so original and innovative. Now that I&#39;ve tried cursor*10 this game doesn&#39;t seem as original (obviously) but I still prefer this one.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Karadoc ~~)</author>
		<pubDate>Mon, 12 May 2008 10:26:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Tasty update of not so tasty &quot;game&quot; ... <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;//ScreenHack08 entry - bShot///////////////////////////////</span></td></tr><tr><td class="number">2</td><td><span class="k1">volatile</span> <span class="k1">int</span> eT<span class="k3">=</span><span class="n">0</span>,gT<span class="k3">=</span><span class="n">0</span>,gU<span class="k2">;</span>eL<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>eT<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>gT<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>gU<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><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>eL<span class="k2">)</span>R<span class="k2">(</span>x<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span></td></tr><tr><td class="number">3</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%x<span class="k2">;</span><span class="k2">}</span>D<span class="k2">(</span>x<span class="k2">)</span><span class="k2">{</span><span class="k1">double</span> y<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span>y<span class="k3">=</span><a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">250</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>y<span class="k3">=</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">250</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">4</td><td><span class="k1">if</span><span class="k2">(</span>x<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>y<span class="k3">=</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">250</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> y<span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>B<span class="k2">;</span><span class="k1">double</span> e<span class="k2">[</span></td></tr><tr><td class="number">5</td><td><span class="n">60</span><span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">}</span>,b<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k3">-</span><span class="n">5</span>,<span class="n">200</span><span class="k2">}</span>,h1<span class="k3">=</span><span class="n">96</span>,h2<span class="k3">=</span><span class="n">100</span>,pC,bC,eC<span class="k2">[</span><span class="n">60</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> A<span class="k2">[</span><span class="n">60</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span><span class="k2">}</span>,t,n,C<span class="k3">=</span><span class="n">0</span>,S<span class="k3">=</span></td></tr><tr><td class="number">6</td><td><span class="n">0</span>,u<span class="k3">=</span><span class="n">0</span>,L<span class="k3">=</span><span class="n">1</span>,w1<span class="k3">=</span><span class="n">20</span>,w2<span class="k3">=</span><span class="n">34</span>,eu<span class="k3">=</span><span class="n">14</span>,pA<span class="k3">=</span><span class="n">1</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="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="k2">;</span><a href="http://www.allegro.cc/manual/install_int" target="_blank"><span class="a">install_int</span></a><span class="k2">(</span></td></tr><tr><td class="number">7</td><td>eL,<span class="n">100</span><span class="k2">)</span><span class="k2">;</span><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>B<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><span class="n">640</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span>B<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><span class="n">640</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">8</td><td><a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>eL<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>eT<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>gT<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>gU<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">9</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">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><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">10</td><td><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>pA<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>B,<span class="n">20</span>,<span class="k3">-</span><span class="n">1</span>,<span class="n">34</span>,<span class="n">201</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">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><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_A<span class="k2">]</span><span class="k2">)</span>C<span class="k3">=</span></td></tr><tr><td class="number">11</td><td><span class="n">0</span><span class="k2">;</span><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_S<span class="k2">]</span><span class="k2">)</span>C<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><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_D<span class="k2">]</span><span class="k2">)</span>C<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>pC<span class="k3">=</span>D<span class="k2">(</span>C<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">200</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">=</span><span class="n">2</span>.<span class="n">5</span><span class="k2">;</span>b<span class="k2">[</span></td></tr><tr><td class="number">12</td><td><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">2</span>.<span class="n">5</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>B,<span class="n">26</span>,b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,<span class="n">1</span>,bC<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>B,<span class="n">26</span>,b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">1</span>,bC<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><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_F<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>bC<span class="k3">=</span></td></tr><tr><td class="number">13</td><td>pC<span class="k2">;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>h2-2<span class="k2">;</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>h1<span class="k3">+</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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_M<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h2<span class="k3">&lt;</span><span class="n">195</span><span class="k2">)</span>h1<span class="k3">+</span><span class="k3">=</span><span class="n">0</span>.<span class="n">5</span><span class="k2">;</span><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_K<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h1&gt;0<span class="k2">)</span>h1-<span class="k3">=</span></td></tr><tr><td class="number">14</td><td><span class="n">0</span>.<span class="n">5</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>gT%<span class="n">100</span><span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k3">&amp;</span><span class="k3">&amp;</span>gU<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>eu-1&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>eu-<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>gU<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>gT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>L<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>S&gt;300<span class="k2">)</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">18</span><span class="k2">;</span><span class="k1">else</span></td></tr><tr><td class="number">15</td><td><span class="k1">if</span><span class="k2">(</span>S&gt;250<span class="k2">)</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">15</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S&gt;200<span class="k2">)</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">13</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S&gt;150<span class="k2">)</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">11</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S&gt;100<span class="k2">)</span></td></tr><tr><td class="number">16</td><td>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">9</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>S&gt;50<span class="k2">)</span>h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">7</span><span class="k2">;</span><span class="k1">else</span> h2<span class="k3">=</span>h1<span class="k3">+</span><span class="n">4</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>eT&gt;<span class="k3">=</span>eu<span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>eT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span></td></tr><tr><td class="number">17</td><td><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">60</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>t<span class="k2">)</span><span class="k2">{</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">645</span><span class="k2">;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">195</span><span class="k2">)</span><span class="k2">;</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>eC<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span>D<span class="k2">(</span>R<span class="k2">(</span><span class="n">3</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">18</td><td><span class="k2">}</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>n<span class="k3">&lt;</span><span class="n">60</span><span class="k2">;</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&gt;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&lt;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&gt;</span>b<span class="k2">[</span></td></tr><tr><td class="number">19</td><td><span class="n">1</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&lt;</span>b<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&gt;</span><span class="n">25</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span>.<span class="n">5</span><span class="k3">&lt;</span><span class="n">30</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>bC<span class="k3">=</span><span class="k3">=</span>eC<span class="k2">[</span>n<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span></td></tr><tr><td class="number">20</td><td><span class="n">0</span><span class="k2">;</span>S<span class="k3">+</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">-</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span><span class="k3">-</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span>,e<span class="k2">[</span></td></tr><tr><td class="number">21</td><td>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span>,eC<span class="k2">[</span>n<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> A<span class="k2">[</span>n<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&lt;</span>w2<span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span>w1<span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&gt;</span>h1<span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&lt;</span>h2<span class="k2">)</span></td></tr><tr><td class="number">22</td><td>pA<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&lt;</span>w2<span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span>w1<span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k3">&gt;</span>h1<span class="k3">&amp;</span><span class="k3">&amp;</span>e<span class="k2">[</span>n<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">5</span><span class="k3">&lt;</span>h2<span class="k2">)</span>pA<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span></td></tr><tr><td class="number">23</td><td>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">200</span>,<span class="n">190</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">250</span>,<span class="n">250</span>,<span class="n">0</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Scr: %d/Lvl: %d"</span>,S,L<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,w1,h1,w2</td></tr><tr><td class="number">24</td><td>,h2,pC<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>B,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">100</span>,<span class="n">90</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">250</span>,<span class="n">250</span>,<span class="n">0</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Scr:%d/Lvl:%d"</span></td></tr><tr><td class="number">25</td><td>,S,L<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>B,<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>,<span class="n">640</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><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>
Compiling the code gives pile of warnings since I had to cut through loads of things to even get this much done... I know there is room for even more improvements but the current improvements popped into my head last night. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Suddenly during the night I just got these ideas how to replace stuff and how to do things a bit differently to save even more space. </p><p>Added features: 
</p><ol><li><p>Death! Long waited player death. Now you can die. Start dodging <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p></li><li><p>After small period of time the enemy spawn rate starts getting higher and higher.</p></li><li><p>Scoring points grows your &quot;vessel&quot; bigger.</p></li></ol><p>

Things I should redo:
</p><ol><li><p>Proper collision for bullets, it&#39;s annoyingly hard to hit the enemies.</p></li><li><p>And change to different kind of bullets for easier hitting too. </p></li></ol><p>

I don&#39;t know, it&#39;s still not good but heyh.. got atleast something done. Might do even more updates on it. Don&#39;t know at the moment.</p><p>Oh yeah, and you feel like just playing it, you can get the updated exe + alleg42.dll from <a href="http://users.evtek.fi/~mikaka/temp/bShot.rar">here</a>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Skywhy)</author>
		<pubDate>Mon, 12 May 2008 11:43:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here&#39;s my second game. It&#39;s a side scroller shoot-em-up. You&#39;re the green triangle, and you must avoid the grey cavern walls and shoot as many yellow orbs as you can before you crash.</p><p>Control is with the mouse, left button to fire.</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;////////////Side scrolling shooter by HardTranceFan/////////</span></td></tr><tr><td class="number">2</td><td><span class="k1">int</span> i,j,h,w<span class="k3">=</span><span class="n">200</span>,d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,c<span class="k3">=</span><span class="n">0</span>,e<span class="k3">=</span><span class="n">1</span>,o<span class="k3">=</span><span class="n">0</span>,n<span class="k3">=</span><span class="n">1</span>,p<span class="k3">=</span><span class="n">1</span>,l<span class="k3">=</span><span class="n">0</span>,g<span class="k3">=</span><span class="n">13158600</span>,Y<span class="k3">=</span><span class="n">13158400</span>,mx,my,f<span class="k3">=</span><span class="n">0</span>,z,s</td></tr><tr><td class="number">3</td><td><span class="k3">=</span><span class="n">0</span>,oh,lh,dh,bx<span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,by<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>b,<span class="k3">*</span>k<span class="k2">;</span><span class="k1">int</span> q<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> <a href="http://www.allegro.cc/manual/_getpixel32" target="_blank"><span class="a">_getpixel32</span></a><span class="k2">(</span>k,x<span class="k3">+</span>o</td></tr><tr><td class="number">4</td><td>,y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> m<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">(</span>x,y<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>Y<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/_putpixel32" target="_blank"><span class="a">_putpixel32</span></a><span class="k2">(</span>k,x<span class="k3">+</span>o,y,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>m<span class="k2">(</span>x,y<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>m<span class="k2">(</span>x,y-1<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td>m<span class="k2">(</span>x-1,y<span class="k2">)</span><span class="k2">;</span>m<span class="k2">(</span>x<span class="k3">+</span><span class="n">1</span>,y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> v<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>c&gt;<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">20</span><span class="k2">)</span><span class="k3">+</span><span class="n">15</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span>h<span class="k3">&lt;</span><span class="n">15</span><span class="k3">|</span><span class="k3">|</span>h&gt;465-w<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">6</td><td>d<span class="k3">*</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>h<span class="k3">+</span><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">10</span><span class="k2">)</span><span class="k3">*</span>d<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>h&gt;oh<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/triangle" target="_blank"><span class="a">triangle</span></a><span class="k2">(</span>k,x,oh,y,h,x,h,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/triangle" target="_blank"><span class="a">triangle</span></a><span class="k2">(</span>k,x,oh<span class="k3">+</span></td></tr><tr><td class="number">7</td><td>w,y,oh<span class="k3">+</span>w,y,h<span class="k3">+</span>w,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>lh<span class="k3">=</span>h<span class="k2">;</span>dh<span class="k3">=</span>h-oh<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/triangle" target="_blank"><span class="a">triangle</span></a><span class="k2">(</span>k,x,oh,y,oh,y,h,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/triangle" target="_blank"><span class="a">triangle</span></a><span class="k2">(</span>k,x,oh</td></tr><tr><td class="number">8</td><td><span class="k3">+</span>w,x,h<span class="k3">+</span>w,y,h<span class="k3">+</span>w,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>lh<span class="k3">=</span>oh<span class="k2">;</span>dh<span class="k3">=</span>oh-h<span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>k,x,lh,y,lh<span class="k3">+</span>w-dh,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>oh<span class="k3">=</span>h<span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> T<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="c">////</span></td></tr><tr><td class="number">9</td><td><span class="k1">return</span> q<span class="k2">(</span>mx-5,my-5<span class="k2">)</span><span class="k3">|</span>q<span class="k2">(</span>mx<span class="k3">+</span><span class="n">5</span>,my<span class="k2">)</span><span class="k3">|</span>q<span class="k2">(</span>mx-5,my<span class="k3">+</span><span class="n">5</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> B<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>bx<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k1">return</span> q<span class="k2">(</span></td></tr><tr><td class="number">10</td><td>bx,by<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="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="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="k2">;</span><a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a></td></tr><tr><td class="number">11</td><td><span class="k2">(</span><span class="n">32</span><span class="k2">)</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><span class="n">2</span>,<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><a href="http://www.allegro.cc/manual/scare_mouse" target="_blank"><span class="a">scare_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>b<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><span class="n">640</span>, <span class="n">480</span><span class="k2">)</span><span class="k2">;</span>oh<span class="k3">=</span>h<span class="k2">;</span>h<span class="k3">=</span></td></tr><tr><td class="number">12</td><td><span class="n">140</span><span class="k2">;</span>k<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><span class="n">650</span>, <span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>k,g<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">65</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>v<span class="k2">(</span>i<span class="k3">*</span><span class="n">10</span>,i<span class="k3">*</span><span class="n">10</span><span class="k3">+</span></td></tr><tr><td class="number">13</td><td><span class="n">10</span><span class="k2">)</span><span class="k2">;</span>l<span class="k3">=</span>p<span class="k2">;</span><a href="http://www.allegro.cc/manual/position_mouse" target="_blank"><span class="a">position_mouse</span></a><span class="k2">(</span><span class="n">20</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>f<span class="k3">!</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>f<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/poll_mouse" target="_blank"><span class="a">poll_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>mx<span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k2">;</span>l--<span class="k2">;</span>my</td></tr><tr><td class="number">14</td><td><span class="k3">=</span><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>l<span class="k2">)</span><span class="k2">{</span>l<span class="k3">=</span>p<span class="k2">;</span>o<span class="k3">=</span><span class="k2">(</span>o<span class="k3">+</span>e<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>o&gt;10<span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>k,b,<span class="n">10</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,k,<span class="n">0</span>,<span class="n">0</span></td></tr><tr><td class="number">15</td><td>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>k,<span class="n">640</span>,<span class="n">0</span>,<span class="n">650</span>,<span class="n">480</span>,g<span class="k2">)</span><span class="k2">;</span>v<span class="k2">(</span><span class="n">640</span>,<span class="n">650</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>n%<span class="n">30</span><span class="k2">)</span><span class="k2">)</span>w<span class="k3">=</span><span class="k2">(</span>w-5<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span>?<span class="n">49</span><span class="k2">:</span></td></tr><tr><td class="number">16</td><td>w-5<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>n%<span class="n">200</span><span class="k2">)</span><span class="k2">)</span>e<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><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">100</span><span class="k2">)</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>k,<span class="n">644</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>%w<span class="k3">+</span>h,<span class="n">5</span>,Y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">17</td><td>bx<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>bx<span class="k3">=</span>mx<span class="k3">+</span><span class="n">2</span><span class="k2">;</span>by<span class="k3">=</span>my<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> bx<span class="k3">+</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>bx&gt;640<span class="k2">)</span>bx<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>k,b,o,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span></td></tr><tr><td class="number">18</td><td>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>T<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>f<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>B<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>s<span class="k3">+</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span>m<span class="k2">(</span>bx,by<span class="k2">)</span><span class="k2">;</span>bx<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><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>f<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/triangle" target="_blank"><span class="a">triangle</span></a><span class="k2">(</span></td></tr><tr><td class="number">19</td><td>b,mx-5,my-5,mx<span class="k3">+</span><span class="n">5</span>,my,mx-5,my<span class="k3">+</span><span class="n">5</span>,<span class="n">51200</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>bx&gt;0<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>b,bx,by,<span class="n">2</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><span class="c">/////////</span></td></tr><tr><td class="number">20</td><td><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">10</span>,<span class="n">460</span>,<span class="n">0</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Score: %d"</span>,s<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>f<span class="k2">)</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">280</span>,<span class="c">//</span></td></tr><tr><td class="number">21</td><td><span class="n">235</span>,<span class="n">16711680</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You crashed."</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>b,<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>,<span class="n">640</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="c">///////</span></td></tr><tr><td class="number">22</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><span class="c">///////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">23</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">24</td><td><span class="c">/////////////ZOMG!!!! Spare space!!! What a waste of [binary] trees!!///////////</span></td></tr><tr><td class="number">25</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr></tbody></table></div></div><p>
<span class="remote-thumbnail"><span class="json">{"name":"595290","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/8\/b85d32d32803630ad64ce5068b61d9a6.jpg","w":645,"h":504,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/8\/b85d32d32803630ad64ce5068b61d9a6"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/b/8/b85d32d32803630ad64ce5068b61d9a6-240.jpg" alt="595290" width="240" height="187" /></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Mon, 12 May 2008 13:55:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
ZOMG!!!! Spare space!!! What a waste of [binary] trees!!
</p></div></div><p>ZOMG! What a waste of corn!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Mon, 12 May 2008 14:09:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Attached is a little tool that takes some of the tedious work off your shoulders.</p><h2>What it does:</h2><p>
Reads a C or C++ source file, removes all unnecessary stuff (whitespace unless absolutely needed, comments), renames all identifiers that start with a dollar sign into the shortest possible set of identifiers (first a single underscore, then a through z, then A through Z, then combinations of these plus digits; most-often-used identifiers get the shortest names), replaces character literarals by their numeric counterparts (because for everything below 100 the latter are shorter, above 100 they&#39;re equally long), formats the whole thing to max. 80 characters wide, and sends it to stdout.</p><h2>How to use:</h2><p>
1. Unzip into a folder of your choice.<br />2. Compile using something like <tt>g++ *.cpp -o compress</tt><br />3. In your code, prepend all of your own identifiers you want replaced (types, variables, functions) with a $. Identifiers without a $ will be left alone.<br />4. Assuming your original, unoptimized source file is <tt>foo.c</tt>, use something like this: <tt>compress foo.c &gt; foo_compressed.c</tt></p><p>For example, my attempt at (yet another) snake:
</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">#define c(cond, code) case cond: code; break;</span></td></tr><tr><td class="number">3</td><td>&#160;</td></tr><tr><td class="number">4</td><td><span class="k1">typedef</span> <span class="k1">int</span> $var<span class="k2">;</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td>$var $val1024 <span class="k3">=</span> <span class="n">1024</span><span class="k2">;</span></td></tr><tr><td class="number">7</td><td>$var $val256 <span class="k3">=</span> <span class="n">256</span><span class="k2">;</span></td></tr><tr><td class="number">8</td><td>$var $val32 <span class="k3">=</span> <span class="n">32</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td>$var $backbuf<span class="k2">;</span></td></tr><tr><td class="number">10</td><td>$var $head <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td>$var $tail <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td>$var $tar_length <span class="k3">=</span> <span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td>$var $cur_length <span class="k3">=</span> <span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>$var $dir <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>$var $part_xy<span class="k2">[</span><span class="n">32</span><span class="k2">]</span> <span class="k3">=</span> <span class="k2">{</span> <span class="n">527</span>, <span class="n">528</span>, <span class="n">0</span> <span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>$var $coinpos<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td>$var $running<span class="k3">=</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>$var $newhead<span class="k2">;</span></td></tr><tr><td class="number">19</td><td>$var $paused <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>$var $speed <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td>$var $score <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>&#160;</td></tr><tr><td class="number">23</td><td>$var $multifunc0<span class="k2">(</span>$var $func<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">24</td><td>  <span class="k1">switch</span> <span class="k2">(</span>$func<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">25</td><td>    c<span class="k2">(</span><span class="n">0</span>, $coinpos <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> % $val1024<span class="k2">)</span></td></tr><tr><td class="number">26</td><td>    c<span class="k2">(</span><span class="n">1</span>, <span class="k1">return</span> <a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span> % $val256<span class="k2">)</span></td></tr><tr><td class="number">27</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">28</td><td><span class="k2">}</span></td></tr><tr><td class="number">29</td><td>&#160;</td></tr><tr><td class="number">30</td><td>$var $drawpixel<span class="k2">(</span>$var $xy, $var $color<span class="k2">)</span> <span class="k2">{</span> </td></tr><tr><td class="number">31</td><td>  <a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>$backbuf, $xy % $val32, $xy <span class="k3">&gt;</span><span class="k3">&gt;</span> <span class="n">5</span>, $color<span class="k2">)</span><span class="k2">;</span> <span class="k1">return</span> $color<span class="k2">;</span></td></tr><tr><td class="number">32</td><td><span class="k2">}</span></td></tr><tr><td class="number">33</td><td>&#160;</td></tr><tr><td class="number">34</td><td>$var $readpixel<span class="k2">(</span>$var $xy<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">35</td><td>  <span class="k1">return</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>$backbuf, $xy % $val32, $xy <span class="k3">&gt;</span><span class="k3">&gt;</span> <span class="n">5</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">36</td><td><span class="k2">}</span></td></tr><tr><td class="number">37</td><td>&#160;</td></tr><tr><td class="number">38</td><td>$var $set_head_or_tail<span class="k2">(</span>$ht, $color<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">39</td><td>  <span class="k1">return</span> </td></tr><tr><td class="number">40</td><td>    $drawpixel<span class="k2">(</span>$part_xy<span class="k2">[</span>$ht<span class="k2">]</span>, </td></tr><tr><td class="number">41</td><td>    $color<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td><span class="k2">}</span></td></tr><tr><td class="number">43</td><td>&#160;</td></tr><tr><td class="number">44</td><td>$var $display_number<span class="k2">(</span>$var $label, $var $number, $var $pos, $var $color<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">45</td><td>  <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_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="n">0</span>, $pos<span class="k3">*</span><span class="n">9</span>, $color, <span class="k3">-</span><span class="n">1</span>, <span class="s">"%s: %i"</span>, $label, $number<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">46</td><td><span class="k2">}</span></td></tr><tr><td class="number">47</td><td>&#160;</td></tr><tr><td class="number">48</td><td>$var main<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">49</td><td>  <span class="c">// $var $i;</span></td></tr><tr><td class="number">50</td><td>  </td></tr><tr><td class="number">51</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">52</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><span class="n">2</span>, $val256, $val256, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">53</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">54</td><td>  $backbuf <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>$val32, $val32<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">55</td><td>  clear<span class="k2">(</span>$backbuf<span class="k2">)</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="c">/*</span></td></tr><tr><td class="number">58</td><td><span class="c">  for ($i = 0; $i &lt; 16; ++$i)</span></td></tr><tr><td class="number">59</td><td><span class="c">    rectfill(screen, $i * 8, 0, ($i + 1) * 8, 8, $i);</span></td></tr><tr><td class="number">60</td><td><span class="c">  readkey();</span></td></tr><tr><td class="number">61</td><td><span class="c">  */</span></td></tr><tr><td class="number">62</td><td>  </td></tr><tr><td class="number">63</td><td>  <span class="c">// $coinpos = rand() % $val1024;</span></td></tr><tr><td class="number">64</td><td>  $multifunc0<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">65</td><td>  </td></tr><tr><td class="number">66</td><td>  $set_head_or_tail<span class="k2">(</span>$head, </td></tr><tr><td class="number">67</td><td>  $set_head_or_tail<span class="k2">(</span>$tail, </td></tr><tr><td class="number">68</td><td>    <span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">69</td><td>  $drawpixel<span class="k2">(</span>$coinpos, <span class="n">6</span><span class="k2">)</span><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">while</span> <span class="k2">(</span>$running<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">72</td><td>    <a href="http://www.allegro.cc/manual/stretch_blit" target="_blank"><span class="a">stretch_blit</span></a><span class="k2">(</span>$backbuf, <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>, $val32, $val32, <span class="n">0</span>, <span class="n">0</span>, $val256, $val256<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">73</td><td>    $display_number<span class="k2">(</span><span class="s">"Length"</span>, $cur_length, <span class="n">0</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">74</td><td>    $display_number<span class="k2">(</span><span class="s">"Speed"</span>, $speed, <span class="n">1</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">75</td><td>    $display_number<span class="k2">(</span><span class="s">"Score"</span>, $score, <span class="n">2</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">76</td><td>    <span class="k1">if</span> <span class="k2">(</span>$paused<span class="k2">)</span></td></tr><tr><td class="number">77</td><td>    <span class="c">// { readkey(); $paused = 0; }</span></td></tr><tr><td class="number">78</td><td>      $paused <span class="k3">=</span> <span class="k2">(</span>$multifunc0<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k3">&amp;</span>$val1024<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">79</td><td>    </td></tr><tr><td class="number">80</td><td>    <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span>$val1024 <span class="k3">/</span> <span class="k2">(</span>$speed <span class="k3">+</span> <span class="n">1</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">81</td><td>    <span class="k1">for</span> <span class="k2">(</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">82</td><td>      <span class="c">// switch (readkey() % $val256) {</span></td></tr><tr><td class="number">83</td><td>      <span class="k1">switch</span> <span class="k2">(</span>$multifunc0<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">84</td><td>        c<span class="k2">(</span><span class="n">27</span>,$running<span class="k3">=</span><span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">85</td><td>        c<span class="k2">(</span><span class="s">'a'</span>,$dir<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">86</td><td>        c<span class="k2">(</span><span class="s">'d'</span>,$dir<span class="k3">=</span><span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">87</td><td>        c<span class="k2">(</span><span class="s">'w'</span>,$dir<span class="k3">=</span><span class="k3">-</span>$val32<span class="k2">)</span></td></tr><tr><td class="number">88</td><td>        c<span class="k2">(</span><span class="s">'s'</span>,$dir<span class="k3">=</span>$val32<span class="k2">)</span></td></tr><tr><td class="number">89</td><td>      <span class="k2">}</span></td></tr><tr><td class="number">90</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">91</td><td>    $newhead <span class="k3">=</span> <span class="k2">(</span>$head <span class="k3">+</span> <span class="n">1</span><span class="k2">)</span> % $val32<span class="k2">;</span></td></tr><tr><td class="number">92</td><td>    $var $newpos <span class="k3">=</span> $part_xy<span class="k2">[</span>$newhead<span class="k2">]</span> <span class="k3">=</span> $part_xy<span class="k2">[</span>$head<span class="k2">]</span> <span class="k3">+</span> $dir<span class="k2">;</span></td></tr><tr><td class="number">93</td><td>    <span class="k1">switch</span> <span class="k2">(</span>$readpixel<span class="k2">(</span>$newpos<span class="k2">)</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">94</td><td>      <span class="k1">case</span> <span class="n">6</span><span class="k2">:</span></td></tr><tr><td class="number">95</td><td>        $score <span class="k3">+</span><span class="k3">=</span> $speed <span class="k3">*</span> $tar_length<span class="k2">;</span></td></tr><tr><td class="number">96</td><td>        <span class="k1">if</span> <span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>$tar_length <span class="k3">=</span><span class="k3">=</span> $val32<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">97</td><td>          clear<span class="k2">(</span>$backbuf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">98</td><td>          $head <span class="k3">=</span></td></tr><tr><td class="number">99</td><td>          $dir <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">100</td><td>          $tail <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">101</td><td>          $tar_length <span class="k3">=</span></td></tr><tr><td class="number">102</td><td>          $cur_length <span class="k3">=</span> <span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">103</td><td>          $part_xy<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span> <span class="n">527</span><span class="k2">;</span></td></tr><tr><td class="number">104</td><td>          $part_xy<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span> <span class="n">528</span><span class="k2">;</span></td></tr><tr><td class="number">105</td><td>          $set_head_or_tail<span class="k2">(</span>$head, </td></tr><tr><td class="number">106</td><td>          $set_head_or_tail<span class="k2">(</span>$tail, </td></tr><tr><td class="number">107</td><td>            <span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">108</td><td>          <span class="k3">+</span><span class="k3">+</span>$speed<span class="k2">;</span></td></tr><tr><td class="number">109</td><td>          $paused <span class="k3">=</span> <span class="n">1</span><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">for</span> <span class="k2">(</span>$multifunc0<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span> $readpixel<span class="k2">(</span>$coinpos<span class="k2">)</span><span class="k2">;</span> $multifunc0<span class="k2">(</span><span class="n">0</span><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>        $drawpixel<span class="k2">(</span>$coinpos, <span class="n">6</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">114</td><td>        <span class="k1">break</span><span class="k2">;</span></td></tr><tr><td class="number">115</td><td>      c<span class="k2">(</span><span class="n">0</span>, <span class="k2">)</span> <span class="c">// empty cell: pass through</span></td></tr><tr><td class="number">116</td><td>      default: $running<span class="k3">=</span><span class="n">0</span><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>    $head <span class="k3">=</span> $newhead<span class="k2">;</span></td></tr><tr><td class="number">119</td><td>    $set_head_or_tail<span class="k2">(</span>$head, <span class="n">2</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">120</td><td>    <span class="k1">if</span> <span class="k2">(</span>$cur_length <span class="k3">&lt;</span> $tar_length<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">121</td><td>      <span class="k3">+</span><span class="k3">+</span>$cur_length <span class="k3">=</span><span class="k3">=</span> <span class="n">32</span><span class="k2">;</span></td></tr><tr><td class="number">122</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">123</td><td>    <span class="k1">else</span> <span class="k2">{</span></td></tr><tr><td class="number">124</td><td>      $set_head_or_tail<span class="k2">(</span>$tail, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">125</td><td>      $tail <span class="k3">=</span> <span class="k2">(</span>$tail <span class="k3">+</span> <span class="n">1</span><span class="k2">)</span> % $val32<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>  <span class="k2">}</span></td></tr><tr><td class="number">128</td><td>  $display_number<span class="k2">(</span><span class="s">"Game Over. Score"</span>, $score, <span class="n">9</span>, <span class="n">13</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">129</td><td>  </td></tr><tr><td class="number">130</td><td>  <span class="c">// readkey();</span></td></tr><tr><td class="number">131</td><td>  $multifunc0<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">132</td><td><span class="k2">}</span></td></tr><tr><td class="number">133</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>
...is converted into this cryptic mess:
</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">#define c(cond, code) case cond: code; break;</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span> <span class="k1">int</span> _<span class="k2">;</span>_ u<span class="k3">=</span><span class="n">1024</span><span class="k2">;</span>_ k<span class="k3">=</span><span class="n">256</span><span class="k2">;</span>_ a<span class="k3">=</span><span class="n">32</span><span class="k2">;</span>_ d<span class="k2">;</span>_ b<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>_ g<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>_ p<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>_ n<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>_ f<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>_ l<span class="k2">[</span><span class="n">32</span><span class="k2">]</span><span class="k3">=</span></td></tr><tr><td class="number">4</td><td><span class="k2">{</span><span class="n">527</span>,<span class="n">528</span>,<span class="n">0</span><span class="k2">}</span><span class="k2">;</span>_ m<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>_ r<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>_ w<span class="k2">;</span>_ t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>_ q<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>_ s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>_ i<span class="k2">(</span>_ y<span class="k2">)</span><span class="k2">{</span><span class="k1">switch</span><span class="k2">(</span>y<span class="k2">)</span><span class="k2">{</span>c<span class="k2">(</span><span class="n">0</span>,m<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>%u<span class="k2">)</span></td></tr><tr><td class="number">5</td><td>c<span class="k2">(</span><span class="n">1</span>,<span class="k1">return</span> <a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span>%k<span class="k2">)</span><span class="k2">}</span><span class="k2">}</span>_ v<span class="k2">(</span>_ j,_ e<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>d,j%a,j&gt;&gt;5,e<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> e<span class="k2">;</span><span class="k2">}</span>_ x<span class="k2">(</span>_ j<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">6</td><td><span class="k1">return</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>d,j%a,j&gt;&gt;5<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>_ h<span class="k2">(</span>z,e<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> v<span class="k2">(</span>l<span class="k2">[</span>z<span class="k2">]</span>,e<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>_ o<span class="k2">(</span>_ A,_ C,_ B,_ e<span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">7</td><td><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_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="n">0</span>,B<span class="k3">*</span><span class="n">9</span>,e,<span class="k3">-</span><span class="n">1</span>,<span class="s">"%s: %i"</span>,A,C<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>_ main<span class="k2">(</span><span class="k2">)</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="k2">;</span></td></tr><tr><td class="number">8</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><span class="n">2</span>,k,k,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</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="k2">;</span>d<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,a<span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>d<span class="k2">)</span><span class="k2">;</span>i<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>h<span class="k2">(</span></td></tr><tr><td class="number">9</td><td>b,h<span class="k2">(</span>g,<span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>v<span class="k2">(</span>m,<span class="n">6</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>r<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/stretch_blit" target="_blank"><span class="a">stretch_blit</span></a><span class="k2">(</span>d,<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>,a,a,<span class="n">0</span>,<span class="n">0</span>,k,k<span class="k2">)</span><span class="k2">;</span>o<span class="k2">(</span><span class="s">"Length"</span>,n,<span class="n">0</span>,</td></tr><tr><td class="number">10</td><td><span class="n">7</span><span class="k2">)</span><span class="k2">;</span>o<span class="k2">(</span><span class="s">"Speed"</span>,q,<span class="n">1</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span>o<span class="k2">(</span><span class="s">"Score"</span>,s,<span class="n">2</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k2">)</span>t<span class="k3">=</span><span class="k2">(</span>i<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k3">&amp;</span>u<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span>u<span class="k3">/</span><span class="k2">(</span>q<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">)</span><span class="k2">{</span><span class="k1">switch</span><span class="k2">(</span>i<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>c<span class="k2">(</span><span class="n">27</span>,r<span class="k3">=</span><span class="n">0</span><span class="k2">)</span>c<span class="k2">(</span><span class="n">97</span>,f<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span>c<span class="k2">(</span><span class="n">100</span>,f<span class="k3">=</span><span class="n">1</span><span class="k2">)</span>c<span class="k2">(</span><span class="n">119</span>,f<span class="k3">=</span><span class="k3">-</span>a<span class="k2">)</span>c<span class="k2">(</span><span class="n">115</span>,f<span class="k3">=</span>a<span class="k2">)</span><span class="k2">}</span><span class="k2">}</span></td></tr><tr><td class="number">12</td><td>w<span class="k3">=</span><span class="k2">(</span>b<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%a<span class="k2">;</span>_ D<span class="k3">=</span>l<span class="k2">[</span>w<span class="k2">]</span><span class="k3">=</span>l<span class="k3">&lt;</span>b&gt;<span class="k3">+</span>f<span class="k2">;</span><span class="k1">switch</span><span class="k2">(</span>x<span class="k2">(</span>D<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">case</span> <span class="n">6</span><span class="k2">:</span>s<span class="k3">+</span><span class="k3">=</span>q<span class="k3">*</span>p<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>p<span class="k3">=</span><span class="k3">=</span>a<span class="k2">)</span><span class="k2">{</span>clear<span class="k2">(</span>d<span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span>f<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>g</td></tr><tr><td class="number">13</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>p<span class="k3">=</span>n<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>l<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">527</span><span class="k2">;</span>l<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span><span class="n">528</span><span class="k2">;</span>h<span class="k2">(</span>b,h<span class="k2">(</span>g,<span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>q<span class="k2">;</span>t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>x<span class="k2">(</span>m<span class="k2">)</span><span class="k2">;</span>i<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>v<span class="k2">(</span>m,<span class="n">6</span><span class="k2">)</span><span class="k2">;</span><span class="k1">break</span></td></tr><tr><td class="number">14</td><td><span class="k2">;</span>c<span class="k2">(</span><span class="n">0</span>,<span class="k2">)</span>default:r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>b<span class="k3">=</span>w<span class="k2">;</span>h<span class="k2">(</span>b,<span class="n">2</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>n<span class="k3">&lt;</span>p<span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>n<span class="k3">=</span><span class="k3">=</span><span class="n">32</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>h<span class="k2">(</span>g,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>g<span class="k3">=</span><span class="k2">(</span>g<span class="k3">+</span><span class="n">1</span><span class="k2">)</span>%a<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>o<span class="k2">(</span></td></tr><tr><td class="number">15</td><td><span class="s">"Game Over. Score"</span>,s,<span class="n">9</span>,<span class="n">13</span><span class="k2">)</span><span class="k2">;</span>i<span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><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>
BTW, that game lacks some very basic features like edge collision (or proper wrapping), but hey, I still have 10 lines left.</p><p>-- edit --</p><p>Oh, and one more thing: C has this &quot;nice&quot; feature called &quot;weak typing&quot;, which enables you to do things like this:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> b <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><span class="n">256</span>, <span class="n">256</span><span class="k2">)</span><span class="k2">;</span>
<span class="k1">int</span> c <span class="k3">=</span> <span class="s">"Hello world!"</span><span class="k2">;</span>
</pre></div></div><p>
In other words, pretty much anything can be an int.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tobias Dammers)</author>
		<pubDate>Tue, 13 May 2008 01:06:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I just edit my code exactly as you see in the 80x25 box. <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" /></p><p>I never use whitespace anyway since I end up just sitting there all day wondering if I should use tabs or spaces. <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Tue, 13 May 2008 01:08:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You mean like <a href="http://xkcd.com/378/">this</a>?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tobias Dammers)</author>
		<pubDate>Tue, 13 May 2008 01:11:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>No more entries? Some one needs to take us into the 3rd dimension with ray casting Castle Wolfenstein in 80x25....
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (nonnus29)</author>
		<pubDate>Mon, 19 May 2008 03:22:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Given this thread is still open, I may have a crack at another idea...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HardTranceFan)</author>
		<pubDate>Mon, 19 May 2008 06:12:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>A raycaster in 80x25? <img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Mon, 19 May 2008 06:17:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>This weekend I tried to turn my Tetris into 3D, but the Allegro 3D functions have long names and you have to call plenty of them, plus the vertex definitions and it easily went beyond the 25 lines. Even blitting from the buffer to the screen was annoying and the result wasn&#39;t even that great, not to mention how much slower it became, so I did quit.</p><p>Screenshot:<br /><span class="remote-thumbnail"><span class="json">{"name":"595366","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/1\/51bbe58adc86990fb5c2869534fd3d93.gif","w":263,"h":431,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/1\/51bbe58adc86990fb5c2869534fd3d93"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/5/1/51bbe58adc86990fb5c2869534fd3d93-240.jpg" alt="595366" width="240" height="393" /></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kenmasters1976)</author>
		<pubDate>Mon, 19 May 2008 21:34:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
No more entries? Some one needs to take us into the 3rd dimension with ray casting Castle Wolfenstein in 80x25....
</p></div></div><p>

Didn&#39;t Krzysztof Kluczek do exactly that for the previous ScreenHack?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jakub Wasilewski)</author>
		<pubDate>Tue, 20 May 2008 00:30:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think he did &#39;ray tracing&#39; in one line actually.    For raycasting, you only need to draw a line... repeatedly.  <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (nonnus29)</author>
		<pubDate>Tue, 20 May 2008 04:05:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Bit late, but here&#39;s what I&#39;ve worked on today and yesterday:</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;/* Breakout for Allegro ScreenHack 2008 - By James Stanley */</span></td></tr><tr><td class="number">2</td><td><span class="k1">float</span> x,y,m,X,Y<span class="k2">;</span><span class="k1">int</span> b,w<span class="k3">=</span><span class="n">100</span>,B<span class="k2">[</span><span class="n">24</span><span class="k2">]</span>,i,l<span class="k3">=</span><span class="n">1</span>,L<span class="k3">=</span><span class="n">3</span>,c,C<span class="k2">[</span><span class="n">5</span><span class="k2">]</span>,d<span class="k2">;</span>r<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="n">160</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">180</span><span class="k2">;</span>X<span class="k3">=</span><span class="k3">-</span>.<span class="n">5</span>,Y<span class="k3">=</span><span class="k3">-</span>.<span class="n">5</span></td></tr><tr><td class="number">3</td><td><span class="k2">;</span>b<span class="k3">=</span><span class="n">160</span><span class="k2">;</span><span class="k2">}</span>R<span class="k2">(</span><span class="k1">int</span> a, <span class="k1">int</span> e, <span class="k1">int</span> f,<span class="k1">int</span> g, <span class="k1">unsigned</span> <span class="k1">int</span> h<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>c,a,e,f,g,h<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>a<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">4</td><td><span class="k1">return</span> b-w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span>e<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> b<span class="k3">+</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span>o<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span><span class="k2">(</span><span class="k2">(</span>i%<span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">80</span><span class="k2">)</span><span class="k3">+</span><span class="n">5</span><span class="k2">;</span><span class="k2">}</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> <span class="k2">(</span><span class="k2">(</span>i<span class="k3">/</span><span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">20</span><span class="k2">)</span><span class="k3">+</span><span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td><span class="k2">}</span>main<span class="k2">(</span><span class="k2">)</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="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="k2">;</span><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">16</span><span class="k2">)</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><span class="n">2</span>,<span class="n">320</span></td></tr><tr><td class="number">6</td><td>,<span class="n">200</span>,<span class="n">320</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span>c<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><span class="n">320</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><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="n">125</span><span class="k3">-</span>i<span class="k3">*</span><span class="n">25</span><span class="k2">)</span><span class="k3">+</span></td></tr><tr><td class="number">7</td><td><span class="n">100</span>,l<span class="k3">*</span><span class="n">40</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">24</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>i<span class="k3">/</span><span class="n">5</span><span class="k2">;</span><span class="k2">}</span>r<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>c,<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">8</td><td><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>b-<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>b<span class="k3">+</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>a<span class="k2">(</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k3">=</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>e<span class="k2">(</span><span class="k2">)</span><span class="k3">&gt;</span><span class="n">320</span><span class="k2">)</span> b<span class="k3">=</span><span class="n">320</span><span class="k3">-</span>w<span class="k3">/</span><span class="n">2</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">=</span>X<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>Y<span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">if</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>X<span class="k3">=</span><span class="k3">-</span>X<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">{</span>y<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>Y<span class="k3">=</span><span class="k3">-</span>Y<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>x&gt;316<span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span><span class="n">316</span><span class="k2">;</span>X<span class="k3">=</span><span class="k3">-</span>X<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>y&gt;180<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>x&gt;a<span class="k2">(</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>x</td></tr><tr><td class="number">10</td><td><span class="k3">&lt;</span>e<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>Y<span class="k3">=</span><span class="k3">-</span>Y<span class="k2">;</span>y<span class="k3">=</span><span class="n">180</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>X-<span class="k3">=</span>.<span class="n">1</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>X<span class="k3">+</span><span class="k3">=</span>.<span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>x<span class="k3">+</span><span class="n">4</span><span class="k2">)</span><span class="k3">&gt;</span>a<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x-4<span class="k2">)</span></td></tr><tr><td class="number">11</td><td><span class="k3">&lt;</span>e<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span><span class="k3">-</span>X<span class="k2">;</span>Y<span class="k3">=</span><span class="k3">-</span>Y<span class="k2">;</span>y<span class="k3">=</span><span class="n">180</span><span class="k2">;</span><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><span class="n">82</span><span class="k2">]</span><span class="k2">)</span>X-<span class="k3">=</span>.<span class="n">2</span><span class="k2">;</span><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><span class="n">83</span><span class="k2">]</span><span class="k2">)</span>X<span class="k3">+</span><span class="k3">=</span>.<span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>y&gt;204<span class="k2">)</span><span class="k2">{</span>L--<span class="k2">;</span>r<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>d<span class="k3">=</span></td></tr><tr><td class="number">12</td><td><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">24</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x&gt;<span class="k2">(</span>o<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">70</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x-8<span class="k2">)</span><span class="k3">&lt;</span><span class="k2">(</span>o<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">70</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span><span class="k3">-</span>X<span class="k2">;</span>x<span class="k3">=</span>o<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">78</span><span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>y<span class="k3">+</span><span class="n">8</span><span class="k2">)</span><span class="k3">&gt;</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y<span class="k3">&lt;</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">=</span>X<span class="k2">;</span>X<span class="k3">=</span>Y<span class="k2">;</span>Y<span class="k3">=</span>m<span class="k2">;</span></td></tr><tr><td class="number">14</td><td>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>y-8<span class="k2">)</span><span class="k3">&lt;</span><span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;<span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">=</span>X<span class="k2">;</span>X<span class="k3">=</span><span class="k3">-</span>Y<span class="k2">;</span>Y<span class="k3">=</span><span class="k3">-</span>m<span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span></td></tr><tr><td class="number">15</td><td>x<span class="k3">&lt;</span>o<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k2">(</span>x<span class="k3">+</span><span class="n">8</span><span class="k2">)</span><span class="k3">&gt;</span>o<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span><span class="k3">-</span>X<span class="k2">;</span>x<span class="k3">=</span>o<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">8</span><span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>y<span class="k3">+</span></td></tr><tr><td class="number">16</td><td><span class="n">8</span><span class="k2">)</span><span class="k3">&gt;</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y<span class="k3">&lt;</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>m<span class="k3">=</span>X<span class="k2">;</span>X<span class="k3">=</span><span class="k3">-</span>Y<span class="k2">;</span>Y<span class="k3">=</span><span class="k3">-</span>m<span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>y-8<span class="k2">)</span><span class="k3">&lt;</span><span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;<span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">17</td><td>m<span class="k3">=</span>X<span class="k2">;</span>X<span class="k3">=</span>Y<span class="k2">;</span>Y<span class="k3">=</span>m<span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>y<span class="k3">+</span><span class="n">8</span><span class="k2">)</span><span class="k3">&gt;</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y<span class="k3">&lt;</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x&gt;o<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="k2">(</span>o<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">70</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>Y<span class="k3">=</span><span class="k3">-</span></td></tr><tr><td class="number">18</td><td>Y<span class="k2">;</span>y<span class="k3">=</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">8</span><span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>y-8<span class="k2">)</span><span class="k3">&lt;</span><span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>y&gt;<span class="k2">(</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span> <span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x&gt;o<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="k2">(</span>o<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span></td></tr><tr><td class="number">19</td><td><span class="n">70</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>Y<span class="k3">=</span><span class="k3">-</span>Y<span class="k2">;</span>y<span class="k3">=</span>p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">18</span><span class="k2">;</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>R<span class="k2">(</span>o<span class="k2">(</span><span class="k2">)</span>,p<span class="k2">(</span><span class="k2">)</span>,o<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">70</span>,p<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span>,C<span class="k2">[</span>B<span class="k3">&lt;</span>i&gt;<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>d<span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i</td></tr><tr><td class="number">20</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>C<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="k2">(</span>i<span class="k3">*</span><span class="n">25</span><span class="k2">)</span><span class="k3">+</span><span class="n">100</span>,l<span class="k3">*</span><span class="n">40</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">24</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>B<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>i<span class="k3">/</span><span class="n">5</span><span class="k2">;</span><span class="k2">}</span>L<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>r<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">21</td><td><span class="k2">;</span>w<span class="k3">*</span><span class="k3">=</span>.<span class="n">8</span><span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>c,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">4</span>,<span class="n">120</span>,<span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Lives: %d    Level: %d"</span>,L,l<span class="k2">)</span><span class="k2">;</span>R<span class="k2">(</span>x-4,y-4</td></tr><tr><td class="number">22</td><td>,x<span class="k3">+</span><span class="n">4</span>,y<span class="k3">+</span><span class="n">4</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span> R<span class="k2">(</span>a<span class="k2">(</span><span class="k2">)</span>, <span class="n">184</span>, e<span class="k2">(</span><span class="k2">)</span>,<span class="n">196</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span> <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>c, <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>,<span class="n">320</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>L<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">23</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>c,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"G A M E   O V E R"</span>,<span class="n">160</span>,<span class="n">100</span>,<span class="k3">-</span><span class="n">1</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span><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><span class="n">59</span><span class="k2">]</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span></td></tr><tr><td class="number">24</td><td>c,<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>,<span class="n">320</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><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><span class="c">/*Only 24 lines, never mind*/</span></td></tr></tbody></table></div></div><p>

Controls are Left and Right arrow. ESC to quit.</p><p>http://stanley.homelinux.org/images/80x25.png</p><p>EDIT:<br />Should&#39;ve said: there is no timing.<br />Run a busy wait in the background if it&#39;s too fast <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (James Stanley)</author>
		<pubDate>Wed, 21 May 2008 00:20:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hmm...I&#39;ll play!</p><p>I can&#39;t really work on it until I get home and don&#39;t have an idea anyway, but I have been thinking about some shortening tricks I haven&#39;t seen anyone do yet.  </p><p>In particular, I haven&#39;t seen anyone do something like this:
</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#define  I  int</span>
I<span class="k2">(</span><span class="k3">*</span>DS<span class="k2">)</span><span class="k2">(</span>I,I,I,I<span class="k2">)</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">;</span>I<span class="k2">(</span><span class="k3">*</span>CB<span class="k2">)</span><span class="k2">(</span>I,I<span class="k2">)</span><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>

<span class="c">/* and later on in your code */</span>

<a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>b<span class="k2">;</span>
b<span class="k3">=</span>CB<span class="k2">(</span><span class="n">64</span>,<span class="n">64</span><span class="k2">)</span><span class="k2">;</span>DS<span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,b,<span class="n">1</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
If you have a lot of calls to draw_sprite() or create_bitmap(), this might be a pretty significant space savings.  This should save people from burning the first few lines on #defines (a cautionary note: this WILL generate warnings, at least with gcc)</p><p>May entries assume that they&#39;ll be run from the same directory the source file is in?  I have some asset generation stupidity in mind...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (madpenguin)</author>
		<pubDate>Wed, 21 May 2008 04:35:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
#define  I  int
</p></div></div><p>
A waste of space. You lose 80 characters to save 2 bytes. Are you going to use int over 40 times? All variables should be global and then you only need one int. And all functions default to returning int with int parameters.</p><p>Almost every #define is a waste.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
I(*DS)(I,I,I,I)=draw_sprite;I(*CB)(I,I)=create_bitmap;
</p></div></div><p>
Again, how often do you really call those functions? I created a Tetris game with a single rectfill and a single blit.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Wed, 21 May 2008 04:55:05 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I actually have something somewhat sprite-heavy in mind; there might be a lot of calls to draw_sprite() (although the same trick would work for any routine with a long name and argument list that gets called a lot).  I&#39;m not sure if this will save me space or not, although it seems like it might (and yes, I agree that #defines are a huge space waster).  I didn&#39;t know that all functions defaulted to int arguments, though, that might come in handy.</p><p>I haven&#39;t quite cooked up a strategy for encoding stick figure animations yet; the game I&#39;m envisioning might not even be possible...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (madpenguin)</author>
		<pubDate>Wed, 21 May 2008 05:04:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Somoene needs to gather all the programs and put up a nice page on the wiki or some other site <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Maybe for all of the screenhacks as well.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Wed, 21 May 2008 11:51:47 +0000</pubDate>
	</item>
</rss>
